Journée de la Recherche Clinique 2023 - CHD Vendée
Une erreur s'est produite lors du traitement du modèle.
Can't convert this string to number: "Etapes+cl%C3%A9s+de+la+recherche+clinique.pdf" The blamed expression: ==> x?number [in template "20101#20127#CONTENU_ACCORDEON" at line 83, column 144] ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign groupId = x?number [in template "20101#20127#CONTENU_ACCORDEON" at line 83, column 125] ----
1<#--
2Web content templates are used to lay out the fields defined in a web
3content structure.
4
5Please use the left panel to quickly add commonly used variables.
6Autocomplete is also available and can be invoked by typing "${".
7-->
8<#-- Récupération des services -->
9<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") >
10<#assign journalArticleResourceLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService") />
11<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.link.service.AssetLinkLocalService") >
12
13<#-- Récupération du contenu relatif -->
14<#assign journalArticleId = .vars['reserved-article-id'].data>
15<#assign articleResourcePK = journalArticleResourceLocalService.getArticleResourcePrimKey(groupId, journalArticleId)/>
16<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", articleResourcePK) />
17<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() />
18<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) />
19<#-- Boolean pour la deuxième colonne -->
20<#assign hasBlockWithData = false />
21<#-- Retourne TRUE si un bloc de la 2ème colonne contient des données -->
22<#if TitreDeLaZoneDeLien.getSiblings()?has_content >
23 <#list TitreDeLaZoneDeLien.getSiblings() as titre >
24 <#if ((titre.LienLaPagee700.getSiblings()?size gt 0 && titre.LienLaPagee700.getData() !="") || (titre.LienExterne.getSiblings()?size gt 0 && titre.LienExterne.getData() !="")) && titre.getData()?has_content>
25 <#assign hasBlockWithData = true />
26 </#if>
27 </#list>
28</#if>
29<#assign isBlocRightVisible = (<#-- TitreDeLaZoneDesContenusRelatifs.getData()?has_content && --> currentArticleRelatedLinks?size gt 0) || hasBlockWithData />
30
31<div class="row">
32 <#if Image8lqa.getData()?? && Image8lqa.getData() != "">
33 <div class="col-md-12 articleStandartHeader">
34 <h2>${TitreDeLaPage.getData()}</h2>
35 <div>
36 <img alt="${Image8lqa.getAttribute('alt')}" data-fileentryid="${Image8lqa.getAttribute('fileEntryId')}" src="${Image8lqa.getData()}" />
37 </div>
38 </div>
39 <#else>
40 <div class="col-md-12">
41 <h2>${TitreDeLaPage.getData()}</h2>
42 <div></div>
43 </div>
44 </#if>
45</div>
46
47<div class="row">
48 <div class="${isBlocRightVisible?then('col-md-8','col-md-12')} accordeonArticle">
49 <#if descriptionDeLaPage.getData()?has_content>
50 <div class="accordeonDesc">${descriptionDeLaPage.getData()}</div>
51 </#if>
52 <div class="accordion" id="${randomNamespace}accordion">
53 <#if TitreDeBloc.getSiblings()?has_content>
54 <#list TitreDeBloc.getSiblings() as cur_TitreDeBloc>
55 <#if cur_TitreDeBloc.getData() != "" && cur_TitreDeBloc.getData()?has_content>
56 <div class="card" id="${randomNamespace}toggler-${cur_TitreDeBloc?counter}">
57 <div class="card-header" id="${randomNamespace}heading-${cur_TitreDeBloc?counter}">
58 <h5 class="mb-0">
59 <button class="btn btn-link accordeonBtn collapsed" aria-expanded="false" aria-controls="${randomNamespace}collapse-${cur_TitreDeBloc?counter}"
60 data-target="#${randomNamespace}collapse-${cur_TitreDeBloc?counter}" data-toggle="liferay-collapse" data-parent="#${randomNamespace}accordion">
61 <div>${cur_TitreDeBloc.getData()}</div>
62 <i class="upDown fas fa-chevron-down"></i>
63 </button>
64 </h5>
65 </div>
66 <div class="collapse" id="${randomNamespace}collapse-${cur_TitreDeBloc?counter}" aria-expanded="false" aria-labelledby="${randomNamespace}heading-${cur_TitreDeBloc?counter}">
67 <div class="card-body">${cur_TitreDeBloc.ContenuDuBloc.getData()}
68 <#if cur_TitreDeBloc.Image7lr1.getSiblings()?has_content>
69 <#list cur_TitreDeBloc.Image7lr1.getSiblings() as ilustration>
70 <#if ilustration.getData()?? && ilustration.getData() != "">
71 <img alt="${ilustration.getAttribute('alt')}"
72 data-fileentryid="${ilustration.getAttribute('fileEntryId')}"
73 src="${ilustration.getData()}"
74 class="img-fluid"/>
75 </#if>
76 </#list>
77 </#if>
78 <#if cur_TitreDeBloc.DocumentsEtMdiasiuvz.getSiblings()?has_content>
79 <#list cur_TitreDeBloc.DocumentsEtMdiasiuvz.getSiblings() as doc>
80 <#if doc.getData()?has_content>
81 <#assign attachmentUrl="${doc.getData()}"?replace("?", "/") >
82 <#list "${attachmentUrl}"?split("/") as x>
83 <#if x?counter == 5><#assign groupId = x?number ></#if>
84 <#if x?counter == 8><#assign uuid = x?string></#if>
85 </#list>
86 <#attempt>
87 <#assign dlFileEntryService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>
88 <#assign file = dlFileEntryService.getFileEntryByUuidAndGroupId("${uuid}",groupId) >
89 <#if file.getMimeType() == "video/mp4">
90 <video controls width="600" src="${doc.getData()}"></video>
91 <#elseif file.getMimeType() == "image/jpeg" || file.getMimeType() == "image/png" || file.getMimeType() == "image/jpeg" >
92 <img src="${doc.getData()}" class="img-fluid">
93 <#else>
94 <a href="${doc.getData()}"> ${languageUtil.format(locale, "download-x", "Documents et médias", false)} </a>
95 </#if>
96 <#recover>
97 </#attempt>
98 </#if>
99 </#list>
100 </#if>
101 </div>
102 </div>
103 </div>
104 </#if>
105 </#list>
106 </#if>
107 </div>
108 </div>
109 <#if isBlocRightVisible == true >
110 <div class="col-md-4">
111 <#-- Zone de contenu relatifs-->
112 <div class="articleAsset">
113 <#if TitreDeLaZoneDesContenusRelatifs.getData()?has_content && currentArticleRelatedLinks?size gt 0>
114 <h5 id="${randomNamespace}related-source-title"><i class="fas fa-wave-square"></i>${TitreDeLaZoneDesContenusRelatifs.getData()}</h5>
115 <br>
116 <#if TitreDeLaZoneDesContenusRelatifs.DescriptionDuContenuRelatif.getData()?has_content>
117 ${TitreDeLaZoneDesContenusRelatifs.DescriptionDuContenuRelatif.getData()}
118 <br>
119 </#if>
120 </#if>
121 <#list currentArticleRelatedLinks as related_entry>
122 <#assign relatedAssetEntryId = related_entry.getEntryId2() />
123 <#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) />
124 <#assign url = "/c/document_library/get_file?uuid=" + relatedAssetEntry.getClassUuid() + "&groupId=" + relatedAssetEntry.getGroupId()>
125 <a href="${url}">${relatedAssetEntry.getTitle()}</a><br>
126 </#list>
127 </div>
128 <#if TitreDeLaZoneDeLien.getSiblings()?has_content>
129 <#list TitreDeLaZoneDeLien.getSiblings() as titre>
130 <#if ((titre.LienLaPagee700.getSiblings()?size gt 0 && titre.LienLaPagee700.getData() !="") || (titre.LienExterne.getSiblings()?size gt 0 && titre.LienExterne.getData() !="")) && titre.getData()?has_content>
131 <#-- Zone de lien -->
132 <div class="articleAsset">
133 <#if titre.getData()?has_content>
134 <h5 id="${randomNamespace}related-source-title"><i class="fas fa-link"></i>${titre.getData()}</h5>
135 </#if>
136 <br>
137 <#if titre.DescriptionDeLaZoneDeLien.getData()?has_content>
138 <p>${titre.DescriptionDeLaZoneDeLien.getData()?replace("\n", "<br>")}</p>
139 </#if>
140 <#if titre.LienLaPagee700.getSiblings()?has_content>
141 <#list titre.LienLaPagee700.getSiblings() as lien>
142 <#if lien.getFriendlyUrl()?has_content>
143 <a href="${lien.getFriendlyUrl()}">
144 <#if lien.TexteDuLien.getData()?has_content>
145 ${lien.TexteDuLien.getData()}
146 <#else>
147 lien interne
148 </#if>
149 </a>
150 <br>
151 </#if>
152 </#list>
153 </#if>
154 <#if titre.LienExterne.getSiblings()?has_content>
155 <#list titre.LienExterne.getSiblings() as lien>
156 <#if lien.getData()?has_content>
157 <a href="${lien.getData()}">
158 <#if lien.TexteDuLienExterne.getData()?has_content>
159 ${lien.TexteDuLienExterne.getData()}
160 <#else>
161 lien externe
162 </#if>
163 </a>
164 <br>
165 </#if>
166 </#list>
167 </#if>
168 </div>
169 </#if>
170 </#list>
171 </#if>
172 </div>
173 </#if>
174</div>