Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> docXml  [in template "10154#10192#18700566" at line 396, column 61]

----
Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign allegati = docXml.getRootElem...  [in template "10154#10192#18700566" in macro "getLinkAndAllegati" at line 396, column 41]
	- Reached through: @getLinkAndAllegati  [in template "10154#10192#18700566" at line 169, column 9]
----
1<#setting time_zone=timeZone.ID> 
2<#setting locale=locale.toString()> 
3 
4 
5<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
6<#assign DLFileEntryLocalServiceUtil =  serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryLocalService') />  
7 
8<#assign journalArticleId = .vars['reserved-article-id'].data/>  
9<#assign article = JournalArticleLocalService.getArticle(groupId, journalArticleId) /> 
10<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
11<#assign entry = assetEntryLocalService.fetchEntry("com.liferay.journal.model.JournalArticle", article.resourcePrimKey) /> 
12 
13<#assign assetRenderer = entry.getAssetRenderer() /> 
14<#assign entryTitle = htmlUtil.escape(entry.getTitle(locale)?html) /> 
15 
16 
17<#assign AssetCategoryLocalServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")> 
18<#assign categoryList = AssetCategoryLocalServiceUtil.getAssetEntryAssetCategories(entry.entryId) /> 
19 
20<#assign rivoltoAChi = [] /> 
21<#assign temi = [] /> 
22 
23<#list categoryList as category> 
24    <#assign AssetVocabularyServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyService")> 
25    <#assign assetVocabulary = AssetVocabularyServiceUtil.getVocabulary(category.getVocabularyId()) /> 
26    <#if assetVocabulary.getName() == "Temi"> 
27        <#assign temi = temi + [category] /> 
28    <#elseif assetVocabulary.getName() == "Rivolto a chi"> 
29        <#assign rivoltoAChi = rivoltoAChi + [category] /> 
30    </#if> 
31</#list> 
32 
33<style> 
34.header-title{ 
35    display:none; 
36
37.header-back-to{ 
38    display:none; 
39
40 
41.hide-content{ 
42    visibility:hidden; 
43    height : 0; 
44    padding: 0px !important; 
45
46</style> 
47 
48<div class="rt-subheader rt-subheader--no-bg rt-subheader--updates"> 
49    <div class="rt-subheader__wrapper"> 
50        <div class="rt-container"> 
51            <div class="rt-subheader__content"> 
52                <#if temi?? && (temi?size > 0) && (temi[0].getName()?? && temi[0].getName() != "") > 
53    				<div class="rt-subheader__taxonomy"> 
54    					<strong class="rt-subheader__taxonomy-label"> Aggiornamento in: </strong> 
55    					<#list temi as category> 
56    						<#if category.getParentCategory()??> 
57								<#assign childCategory1 = category.getName()/> 
58								<#if parentCategory1??> 
59									<#if category.getParentCategory().getName() != parentCategory1> 
60										<i aria-hidden="true" class="fas fa-circle"></i> 
61										<#assign parentCategory1 = category.getParentCategory().getName()/> 
62										<span class="rt-subheader__taxonomy-main"> 
63											<a title="Vai alla categoria ${parentCategory1}" aria-label="Vai alla categoria ${parentCategory1}" href="/${parentCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
64												${parentCategory1} 
65											</a> 
66										</span> 
67									</#if> 
68								<#else> 
69									<#assign parentCategory1 = category.getParentCategory().getName()/> 
70									<span class="rt-subheader__taxonomy-main"> 
71										<a title="Vai alla categoria ${parentCategory1}" aria-label="Vai alla categoria ${parentCategory1}" href="/${parentCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
72											${parentCategory1} 
73										</a> 
74									</span> 
75								</#if> 
76								<span class="rt-subheader__taxonomy-secondary"> 
77									<a title="Vai alla categoria ${childCategory1}" aria-label="Vai alla categoria ${childCategory1}" href="/${childCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
78										${childCategory1} 
79									</a> 
80								</span> 
81							<#else> 
82								<#if parentCategory1??> 
83									<#if category.getName() != parentCategory1> 
84										<#assign parentCategory1 = category.getName()/> 
85										<i aria-hidden="true" class="fas fa-circle"></i> 
86										<span class="rt-subheader__taxonomy-main"> 
87											<a title="Vai alla categoria ${parentCategory1}" aria-label="Vai alla categoria ${parentCategory1}" href="/${parentCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
88												${parentCategory1} 
89											</a> 
90										</span> 
91									</#if> 
92								<#else> 
93									<#if category.getParentCategory()??> 
94										<#assign parentCategory1 = category.getParentCategory().getName()/> 
95										<span class="rt-subheader__taxonomy-main"> 
96											<a title="Vai alla categoria ${parentCategory1}" aria-label="Vai alla categoria ${parentCategory1}" href="/${parentCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
97												${parentCategory1} 
98											</a> 
99										</span> 
100									<#else> 
101										<#assign parentCategory1 = category.getName()/> 
102										<span class="rt-subheader__taxonomy-main"> 
103											<a title="Vai alla categoria ${parentCategory1}" aria-label="Vai alla categoria ${parentCategory1}" href="/${parentCategory1?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
104												${parentCategory1} 
105											</a> 
106										</span> 
107									</#if> 
108								</#if> 
109							</#if> 
110    					</#list> 
111    				</div> 
112                </#if> 
113 
114                <h2 class="rt-subheader__title">${.vars['reserved-article-title'].data} <@getEditIcon /></h2> 
115                <div class="rt-subheader__text">${entry.getSummary(locale)}</div> 
116                <#if TipologiaAggiornamento?? && TipologiaAggiornamento.getData() != ""> 
117                    <div class="rt-subheader__category"> 
118                    </div> 
119                </#if> 
120                <div class="rt-btn rt-btn-light rt-btn-round rt-btn-share" id="sharebtn"> 
121                    <span class="rt-btn-round__label">Condividi</span> <i aria-hidden="true" class="fas fa-share"></i> 
122                </div> 
123            </div> 
124        </div> 
125    </div> 
126</div>     
127 
128<section class="container rt-content" id="content"> 
129    <div class="row"> 
130        <div class="col-md-8 portlet-column portlet-column-first" id="column-2"> 
131            <div class="rt-page__content rt-page-content--left"> 
132                <div class="rt-page__content-text"> 
133					<#if TitoloSecondario?? && TitoloSecondario?has_content && TitoloSecondario.getData() != "" && TitoloSecondario.getData()?trim != ""> 
134						<div class="rt-page__content-emphasis"> 
135							${TitoloSecondario.getData()} 
136						</div> 
137					</#if> 
138 
139                    <#if UsaImmagine?? && UsaImmagine.getData() == "true" > 
140						<#if ImmagineCopertina?? && ImmagineCopertina.getData() != ""> 
141							<#if ImmagineCopertina.getAttribute("alt")??> 
142								<#assign altImg = ImmagineCopertina.getAttribute("alt") /> 
143							<#else> 
144								<#assign altImg = "" /> 
145							</#if> 
146 
147							<#if ImmagineCopertina.getAttribute("fileEntryId")??> 
148								<#assign fileEntryId = ImmagineCopertina.getAttribute("fileEntryId") /> 
149							<#else> 
150								<#assign fileEntryId = "" /> 
151							</#if> 
152 
153							<div class="rt-page__content-main-image"> 
154								<img alt="${altImg}" data-fileentryid="${fileEntryId}" src="${ImmagineCopertina.getData()}" /> 
155							</div> 
156						</#if> 
157                    </#if> 
158 
159                    <#if ContenutoPrincipale??> 
160                        ${ContenutoPrincipale.getData()?remove_beginning("<p>&nbsp;</p>")} 
161                    </#if> 
162					 
163                </div> 
164            </div> 
165 
166            <!-- TODO : INSERIRE PARTE MANCANTE --> 
167        </div> 
168		 
169	<@getLinkAndAllegati /> 
170     
171    <div class="col-md-12 portlet-column portlet-column-last" id="column-2"> 
172        <#if VideoGallery?? && VideoGallery.getData()?has_content> 
173            <#assign galleriaVideoJson = jsonFactoryUtil.createJSONObject(VideoGallery.getData()) /> 
174            <#assign classPKGalleriaVideo = galleriaVideoJson.getLong("classPK") /> 
175            <#if (classPKGalleriaVideo > 0)> 
176                <#assign galleriaVideoAsset = assetEntryLocalService.fetchEntry("com.liferay.journal.model.JournalArticle", classPKGalleriaVideo) /> 
177                <#if galleriaVideoAsset?? > 
178                    <#assign assetRendererGalleriaVideo = galleriaVideoAsset.getAssetRenderer() /> 
179                    <#assign articleGalleriaVideo = assetRendererGalleriaVideo.getArticle() />  
180                    <#assign articleContentVideo = journalContentUtil.getContent(articleGalleriaVideo.groupId, articleGalleriaVideo.articleId, "", locale.toString(), themeDisplay) /> 
181                     
182                    ${articleContentVideo} 
183                </#if> 
184            </#if>  
185        </#if> 
186 
187		<#if FotoGallery?? && FotoGallery.getData()?has_content> 
188            <#assign galleriaFotoJson = jsonFactoryUtil.createJSONObject(FotoGallery.getData()) /> 
189            <#assign classPKGalleriaFoto = galleriaFotoJson.getLong("classPK") /> 
190            <#if (classPKGalleriaFoto > 0)> 
191                <#assign galleriaFotoAsset = assetEntryLocalService.fetchEntry("com.liferay.journal.model.JournalArticle", classPKGalleriaFoto) /> 
192                <#if galleriaFotoAsset?? > 
193                    <#assign assetRendererGalleriaFoto = galleriaFotoAsset.getAssetRenderer() /> 
194                    <#assign articleGalleriaFoto = assetRendererGalleriaFoto.getArticle() />  
195                    <#assign articleContentFoto = journalContentUtil.getContent(articleGalleriaFoto.groupId, articleGalleriaFoto.articleId, "", locale.toString(), themeDisplay) /> 
196                     
197                    ${articleContentFoto} 
198                </#if> 
199            </#if>  
200        </#if> 
201    </div> 
202 
203<div class="rt-update-informations"> 
204    <div class="rt-update-informations__row"> 
205        <#if temi?? && (temi?size > 0) && (temi[0].getName()?? && temi[0].getName() != "") > 
206            <div class="rt-update-informations__info"> 
207                <i aria-hidden="true" class="far fa-code-branch"></i> 
208                <div class="rt-update-informations__info-label">Questo aggiornamento lo trovi in:</div> 
209                <div class="rt-update-informations__info-value"> 
210    				<#list temi as category> 
211    					<#if category.getParentCategory()??> 
212    							<#assign childCategory = category.getName()/> 
213    							<#if parentCategory??> 
214    								<#if category.getParentCategory().getName() != parentCategory> 
215										<br> 
216    									<#assign parentCategory = category.getParentCategory().getName()/> 
217    									<a class="rt-update-informations__info-category" title="Vai alla categoria ${parentCategory}" aria-label="Vai alla categoria ${parentCategory}" href="/${parentCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
218    										<strong>${parentCategory}</strong> 
219    									</a> 
220    								</#if> 
221    							<#else> 
222    								<#assign parentCategory = category.getParentCategory().getName()/> 
223    								<a class="rt-update-informations__info-category" title="Vai alla categoria ${parentCategory}" aria-label="Vai alla categoria ${parentCategory}" href="/${parentCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
224    									<strong>${parentCategory}</strong> 
225    								</a> 
226    							</#if> 
227    							<a class="rt-update-informations__info-category" title="Vai alla categoria ${childCategory}" aria-label="Vai alla categoria ${childCategory}" href="/${childCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
228    								/${childCategory} 
229    							</a> 
230    					<#else> 
231    						<#if parentCategory??> 
232    							<#if category.getName() != parentCategory> 
233    								<#assign parentCategory = category.getName()/> 
234    								<br> 
235    								<a class="rt-update-informations__info-category" title="Vai alla categoria ${parentCategory}" aria-label="Vai alla categoria ${parentCategory}" href="/${parentCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
236    									<strong>${parentCategory}</strong> 
237    								</a> 
238    							</#if> 
239    						<#else> 
240    							<#if category.getParentCategory()??> 
241    								<#assign parentCategory = category.getParentCategory().getName()/> 
242    								<a class="rt-update-informations__info-category" title="Vai alla categoria ${parentCategory}" aria-label="Vai alla categoria ${parentCategory}" href="/${parentCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
243    									<strong>${parentCategory}</strong> 
244    								</a> 
245    							<#else> 
246    								<#assign parentCategory = category.getName()/> 
247    								<a class="rt-update-informations__info-category" title="Vai alla categoria ${parentCategory}" aria-label="Vai alla categoria ${parentCategory}" href="/${parentCategory?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> 
248    									<strong>${parentCategory}</strong> 
249    								</a> 
250    							</#if> 
251    						</#if> 
252    					</#if> 
253    				</#list> 
254                </div> 
255            </div> 
256        </#if> 
257        <div class="rt-update-informations__info rt-update-informations__info--updated"> 
258            <i aria-hidden="true" class="far fa-calendar-edit"></i> 
259            <div class="rt-update-informations__info-label">Aggiornato al:</div> 
260            <div class="rt-update-informations__info-value"><strong>${article.modifiedDate?string["dd.MM.yyyy"]}</strong></div> 
261		</div> 
262 
263		 <div class="rt-update-informations__info rt-update-informations__info--id"> 
264                <i aria-hidden="true" class="far fa-hashtag"></i> 
265            <div class="rt-update-informations__info-label">Article ID:</div> 
266            <div class="rt-update-informations__info-value"><strong>${article.getArticleId()}</strong></div> 
267        </div> 
268    </div> 
269 
270    <#if rivoltoAChi?? && (rivoltoAChi?size > 0) > 
271        <div class="rt-update-informations__info rt-update-informations__info--interest"> 
272            <i aria-hidden="true" class="far fa-user-friends"></i> 
273            <div class="rt-update-informations__info-label">Interessa a:</div> 
274            <div class="rt-update-informations__info-value"> 
275            <#list rivoltoAChi as category> 
276                <a class="rt-update-informations__info-category" title="Vai alla categoria ${category.getName()}" aria-label="Vai alla categoria ${category.getName()}" href="/${category?replace('\'', '-')?replace(' ', '-')?replace('à', 'a')?replace('ò', 'o')?replace('è', 'e')?replace('é', 'e')?replace('ù', 'u')?replace(',', '')?lower_case}"> <strong> ${category.getName()}</strong> </a> 
277            </#list> 
278            </div> 
279        </div> 
280    </#if> 
281</div> 
282 
283</section> 
284 
285<#macro getLinkAndAllegati> 
286	<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") /> 
287	<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
288	<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
289	 
290	<#assign currentArticle = JournalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) /> 
291	<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() /> 
292	<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) /> 
293	<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() /> 
294	<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) /> 
295 
296	<#assign hasAllegato = "false" /> 
297	<#assign hasLink = "false" /> 
298	<#if currentArticleRelatedLinks?? && currentArticleRelatedLinks?has_content> 
299		<#list currentArticleRelatedLinks as related_entry> 
300			<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
301			<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
302			<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
303 
304			<#if relatedAssetEntry.getClassName() == 'com.liferay.document.library.kernel.model.DLFileEntry' > 
305				<#assign hasAllegato = "true" /> 
306			<#elseif relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' > 
307				<#assign hasLink = "true" /> 
308			</#if> 
309		</#list> 
310	</#if> 
311 
312	<#if (TitoloLinkUtile?? && TitoloLinkUtile.getData()?has_content && TitoloLinkUtile.getSiblings()?has_content) 
313		|| (hasLink == "true") || (TitoloAllegato?? && TitoloAllegato.getData()?has_content && TitoloAllegato.getSiblings()?has_content) 
314		|| (hasAllegato == "true")> 
315		<div class="col-md-4 portlet-column portlet-column-last" id="column-3"> 
316		<div class="rt-section rt-section--sidebar" aria-label="Lista dei link utili"> 
317			<div class="rt-section-title-wrapper"> 
318				<h2 class="rt-section-title">Link e allegati</h2> 
319			</div> 
320				 
321				<#if (TitoloLinkUtile?? && TitoloLinkUtile.getData()?has_content && TitoloLinkUtile.getSiblings()?has_content)> 
322 
323					<#assign links = docXml.getRootElement().selectNodes("//dynamic-element[@name='TitoloLinkUtile']") /> 
324					<#list links as linkXML> 
325						<#assign titoloLink = linkXML.elementText("dynamic-content") /> 
326						<#assign link = linkXML.valueOf("//dynamic-element[@name='Link']/dynamic-content/text()") /> 
327						 
328						<#assign subfields = linkXML.elements("dynamic-element")> 
329						<#list subfields as subfield > 
330							<#if subfield.attributeValue("name") == "Link" && titoloLink?? && titoloLink != ""> 
331								<#assign link = subfield.elementText("dynamic-content") /> 
332								<div class="rt-box rt-box--link"> 
333									<div class="rt-box__header"> 
334										<div class="rt-box__wrapper"> 
335											<div class="rt-box__title"> 
336												<#if link?html?starts_with("www")> 
337													<a target="_blank" href="//${link?html}" aria-label="Vedi ${titoloLink?html}" title="Vedi ${titoloLink?html}"> 
338														${titoloLink?html} 
339													</a> 
340												<#else> 
341													<a target="_blank" href="${link?html}" aria-label="Vedi ${titoloLink?html}" title="Vedi ${titoloLink?html}"> 
342														${titoloLink?html} 
343													</a> 
344												</#if> 
345												 
346											</div> 
347										</div> 
348 
349										<div class="rt-box__icon"> 
350											<i aria-hidden="true" class="far fa-link"></i> 
351										</div> 
352									</div> 
353								</div> 
354 
355								 
356							</#if>                             
357						</#list> 
358					</#list> 
359 
360					 
361				</#if> 
362				 
363				 
364				<#if hasLink == "true"> 
365					<#list currentArticleRelatedLinks as related_entry> 
366						<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
367						<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
368						<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
369 
370						<#if relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' > 
371							<#assign relatedArticle = JournalArticleLocalService.getLatestArticle(relatedAssetEntryPrimKey) /> 
372							<#if relatedArticle?? && relatedArticle != ""> 
373								<div class="rt-box rt-box--link"> 
374									<div class="rt-box__header"> 
375										<div class="rt-box__wrapper"> 
376											<div class="rt-box__title"> 
377												<a target="_blank" href="/-/${relatedArticle.getUrlTitle()}" aria-label="Vedi ${relatedArticle.getTitle()}" title="Vedi ${relatedArticle.getTitle()}"> 
378													${relatedArticle.getTitle()} 
379												</a> 
380											</div> 
381										</div> 
382 
383										<div class="rt-box__icon"> 
384											<i aria-hidden="true" class="far fa-link"></i> 
385										</div> 
386									</div> 
387								</div> 
388							</#if> 
389						</#if> 
390					</#list> 
391				</#if> 
392 
393 
394				<#if (TitoloAllegato?? && TitoloAllegato.getData()?has_content && TitoloAllegato.getSiblings()?has_content)> 
395 
396					<#assign allegati = docXml.getRootElement().selectNodes("//dynamic-element[@name='TitoloAllegato']") /> 
397					<#list allegati as allegatoXML> 
398					 
399						<#assign titoloAllegato = allegatoXML.elementText("dynamic-content") /> 
400						<#assign allegato = allegatoXML.valueOf("//dynamic-element[@name='Allegato']/dynamic-content/text()") /> 
401						 
402						<#assign subfields = allegatoXML.elements("dynamic-element")> 
403						<#list subfields as subfield > 
404							<#if subfield.attributeValue("name") == "Allegato" && titoloAllegato?? && titoloAllegato != ""> 
405								<#assign allegato = subfield.elementText("dynamic-content") /> 
406								<#assign json = jsonFactoryUtil.createJSONObject(allegato) /> 
407											 
408								<#assign nameImg = json.getString("name") /> 
409								<#assign altImg = json.getString("alt") /> 
410								<#assign fileEntryId = json.getLong("fileEntryId") /> 
411								<#assign uuiD = json.getString("uuid") /> 
412								<#assign groupId = json.getLong("groupId") /> 
413 
414								<#if fileEntryId != 0> 
415									<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(fileEntryId) />  
416									<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />  
417								<#else> 
418									<#if groupId != 0 && uuiD != ""> 
419										<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntryByUuidAndGroupId(uuiD,groupId) /> 
420										<#if fileEntry?? > 
421											<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />  
422										</#if> 
423									</#if> 
424								</#if> 
425								<div class="rt-box rt-box--link"> 
426									<div class="rt-box__header"> 
427										<div class="rt-box__wrapper"> 
428											<div class="rt-box__title"> 
429												<a target="_blank" href="${fileUrl}" aria-label="Vedi ${titoloAllegato?html}" title="Vedi ${titoloAllegato?html}"> 
430													${titoloAllegato?html} 
431												</a> 
432											</div> 
433										</div> 
434										<div class="rt-box__icon"> 
435											<i aria-hidden="true" class="far fa-download"></i> 
436										</div> 
437									</div> 
438								</div> 
439 
440							</#if> 
441						</#list>		 
442					</#list> 
443 
444				</#if> 
445 
446				<#if hasAllegato == "true"> 
447					<#list currentArticleRelatedLinks as related_entry> 
448						<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
449						<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
450						<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
451 
452						<#if relatedAssetEntry.getClassName() == 'com.liferay.document.library.kernel.model.DLFileEntry' > 
453							<#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(relatedAssetEntryPrimKey) /> 
454							<#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() /> 
455							<#if fileEntry?? && fileUrl != ""> 
456								<div class="rt-box rt-box--link"> 
457									<div class="rt-box__header"> 
458										<div class="rt-box__wrapper"> 
459											<div class="rt-box__title"> 
460												<a target="_blank" href="${fileUrl}" aria-label="Vedi ${fileEntry.getTitle()}" title="Vedi ${fileEntry.getTitle()}"> 
461													${fileEntry.getTitle()} 
462												</a> 
463											</div> 
464										</div> 
465 
466										<div class="rt-box__icon"> 
467											<i aria-hidden="true" class="far fa-download"></i> 
468										</div> 
469									</div> 
470								</div> 
471							</#if> 
472						</#if> 
473					</#list> 
474				</#if> 
475		</div> 
476		</div> 
477	</#if> 
478 
479</#macro> 
480 
481 
482<#macro getEditIcon> 
483	 
484	<#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
485		<#if renderResponse??>  
486			<#assign redirectURL = renderResponse.createRenderURL() /> 
487 
488			${redirectURL.setParameter("mvcPath", "/add_asset_redirect.jsp")} 
489			${redirectURL.setWindowState("pop_up")} 
490 
491			<#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" /> 
492 
493			<#if validator.isNotNull(editPortletURL)> 
494				<#assign title = languageUtil.format(locale, "edit-x", entryTitle, false) /> 
495 
496				<@liferay_ui["icon"] 
497					cssClass="icon-monospaced visible-interaction" 
498					icon="pencil" 
499					markupView="lexicon" 
500					message=title 
501					url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});" 
502				/> 
503			</#if> 
504		</#if>	 
505	</#if> 
506</#macro>