Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> relatedLuoghi[0]  [in template "20095#20121#43167" at line 131, column 30]

----
Tip: It's the final [] step that caused this error, not those before it.
----
Tip: If the failing expression is known to 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: relatedLuogo = relatedLuoghi[0]  [in template "20095#20121#43167" at line 131, column 17]
----
1<#assign 
2    FriendlyURLEntryLocalService = serviceLocator.findService("com.liferay.friendly.url.service.FriendlyURLEntryLocalService") 
3    ClassNameService = serviceLocator.findService("com.liferay.portal.kernel.service.ClassNameService") 
4    LayoutLocalService=serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") 
5    JournalArticleLocalService=serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") 
6    journalArticleId=.vars['reserved-article-id'].data 
7    journalArticleResourceLocalServiceUtil=staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"] 
8    assetCategoryLocalServiceUtil=staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"] 
9    articleResourcePK=journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId) 
10    categorie_notizia=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) 
11    AssetVocabularyLocalServiceUtil=staticUtil["com.liferay.asset.kernel.service.AssetVocabularyLocalServiceUtil"] 
12/> 
13 
14<#setting locale=themeDisplay.getLanguageId() /> 
15<#-- gestione dei breadcrumbs --> 
16<#assign 
17    paginaPadre=LayoutLocalService.getLayout(groupId, PaginaPadre.getData()?eval.privateLayout, PaginaPadre.getData()?eval.layoutId?number) 
18    ancestors=paginaPadre.getAncestors() 
19    sorted_ancestors = [] 
20/> 
21<#list ancestors as parente> 
22    <#assign 
23        sorted_ancestors += 
24        [{ 
25            "name": parente.name, 
26            "ancestors": parente.getAncestors()?size, 
27            "data": parente 
28        }] 
29    /> 
30</#list> 
31 
32<div class="container finmatica-breadcrumb-container mb-4"> 
33    <div class="row justify-content-center"> 
34        <div class="col-12 col-lg-10"> 
35            <div class="cmp-breadcrumbs" role="navigation"> 
36                <nav class="breadcrumb-container" aria-label="breadcrumb"> 
37                    <ol class="breadcrumb p-0" data-element="breadcrumb"> 
38                        <li class="breadcrumb-item"><a 
39                                href="${themeDisplay.getThemeSetting('Home URL')}"> 
40                                <span class="breadcrumb-text-truncate">Home</span> 
41                            </a> 
42                            <span class="separator">/</span> 
43                        </li> 
44                        <#list sorted_ancestors?sort_by("ancestors") as ancestor> 
45                            <li class="breadcrumb-item"><a 
46                                    href="/portal${ancestor.data.getFriendlyURL()}"> 
47                                    <span class="breadcrumb-text-truncate"> 
48                                        ${ancestor.data.getName()} 
49                                    </span> 
50                                </a> 
51                                <span class="separator">/</span> 
52                            </li> 
53                        </#list> 
54                        <li class="breadcrumb-item"><a 
55                                href="/portal${paginaPadre.getFriendlyURL()}"> 
56                                <span class="breadcrumb-text-truncate"> 
57                                    ${paginaPadre.getName()} 
58                                </span> 
59                            </a> 
60                            <span class="separator">/</span> 
61                        </li> 
62                        <li class="breadcrumb-item">${Titolo.getData()}</li> 
63                    </ol> 
64                </nav> 
65            </div> 
66        </div> 
67    </div> 
68</div> 
69 
70<#assign argomenti=[] /> 
71<#list categorie_notizia as categoryEntry> 
72    <#assign 
73        vocabulary = AssetVocabularyLocalServiceUtil.getVocabulary(categoryEntry.getVocabularyId()) 
74        className = ClassNameService.fetchClassName("com.liferay.asset.kernel.model.AssetCategory") 
75        friendlyUrlEntry = FriendlyURLEntryLocalService.getMainFriendlyURLEntry(className.getClassNameId(), categoryEntry.categoryId) 
76        friendlyUrlList = FriendlyURLEntryLocalService.getFriendlyURLEntryLocalizations(friendlyUrlEntry.friendlyURLEntryId) 
77        cat_name = categoryEntry.name 
78        cat_localized_name = categoryEntry.getTitle(themeDisplay.getLocale(), true), 
79        cat_url = friendlyUrlList[0].urlTitle 
80    /> 
81    <#if 
82        vocabulary.getDescription()=="tassonomia argomenti" 
83        || vocabulary.getTitle()?lower_case=="tassonomia argomento" 
84        || vocabulary.getName()?lower_case=="tassonomia argomento" 
85    > 
86        <#assign 
87            argomenti += 
88            [{ 
89                "name": cat_localized_name, 
90                "url": cat_url 
91            }] 
92        /> 
93    </#if> 
94</#list> 
95 
96<#-- GET PERSONE NOTIZIA --> 
97<#assign persone_Notizia=[] /> 
98<#if Persone.getData()?has_content> 
99    <#list Persone.getSiblings() as cur_Persone> 
100        <#assign 
101            cur_persona_data=jsonFactoryUtil.createJSONObject(cur_Persone.getData()) 
102            relatedPersone=JournalArticleLocalService.getArticlesByResourcePrimKey(cur_persona_data.classPK?number) 
103            relatedPersona=relatedPersone[0] 
104            document=saxReaderUtil.read(relatedPersona.getContent()) 
105            rootElement=document.getRootElement() 
106        /> 
107        <#list rootElement.elements() as dynamicElement> 
108            <#if dynamicElement.attributeValue("field-reference")=="Nome"> 
109                <#assign nome_persona=dynamicElement.element("dynamic-content").getText() /> 
110            <#elseif dynamicElement.attributeValue("field-reference")=="Cognome"> 
111                <#assign cognome_persona=dynamicElement.element("dynamic-content").getText() /> 
112            </#if> 
113        </#list> 
114        <#assign 
115            persone_Notizia += 
116            [{ 
117                "nome" : nome_persona + " " + cognome_persona, 
118                "url" : "${cur_Persone.getFriendlyUrl()}" 
119            }] 
120        /> 
121    </#list> 
122</#if> 
123 
124<#-- SEZIONE GET LUOGHI --> 
125    <#assign luoghi_data=[] /> 
126    <#if Luoghi.getData()?has_content> 
127        <#list Luoghi.getSiblings() as cur_luogo> 
128            <#assign 
129                cur_luogo_data=jsonFactoryUtil.createJSONObject(cur_luogo.getData()) 
130                relatedLuoghi=JournalArticleLocalService.getArticlesByResourcePrimKey(cur_luogo_data.classPK?number) 
131                relatedLuogo=relatedLuoghi[0] 
132                document=saxReaderUtil.read(relatedLuogo.getContent()) 
133                rootElement=document.getRootElement() 
134                nome_cur_luogo="" 
135                indirizzo_cur_luogo="" 
136                orari_cur_luogo="" 
137                immagine_cur_luogo="" 
138                urlImmagine_cur_luogo="" 
139            /> 
140            <#list rootElement.elements() as dynamicElement> 
141                <#if dynamicElement.attributeValue("field-reference")=="Titolo"> 
142                    <#assign nome_cur_luogo=dynamicElement.element("dynamic-content").getText() /> 
143                <#elseif dynamicElement.attributeValue("field-reference")=="Indirizzo"> 
144                    <#assign indirizzo_cur_luogo=dynamicElement.element("dynamic-content").getText() /> 
145                <#elseif dynamicElement.attributeValue("field-reference")=="OrarioPerIlPubblico"> 
146                    <#assign orari_cur_luogo=dynamicElement.element("dynamic-content").getText() /> 
147                <#elseif dynamicElement.attributeValue("field-reference")=="Immagine"> 
148                    <#assign immagine=dynamicElement.element("dynamic-content").getData() /> 
149                    <#if immagine?has_content> 
150                        <#assign immagine=jsonFactoryUtil.createJSONObject(immagine) /> 
151                        <#if immagine?has_content> 
152                            <#assign immagine=immagine?eval /> 
153                        </#if> 
154                    </#if> 
155                </#if> 
156            </#list> 
157            <#assign 
158                luoghi_data += 
159                [{ 
160                    "nome" : nome_cur_luogo, 
161                    "indirizzo" : indirizzo_cur_luogo, 
162                    "orari" : orari_cur_luogo, 
163                    "immagine" : immagine, 
164                    "urlPagina" : "/portal/${relatedLuogo.getUrlTitle()}" 
165                }] 
166            /> 
167        </#list> 
168    </#if> 
169<#-- GET DATI UO --> 
170<#assign 
171    data_UO=jsonFactoryUtil.createJSONObject(ACuraDi.getData()) 
172    has_UO=data_UO?eval?has_content 
173/> 
174<#if has_UO> 
175    <#assign 
176        relatedArticles=JournalArticleLocalService.getArticlesByResourcePrimKey(data_UO.classPK?number) 
177        relatedArticle=relatedArticles[0] 
178        document=saxReaderUtil.read(relatedArticle.getContent()) 
179        rootElement=document.getRootElement() 
180        url_UO=relatedArticle.getUrlTitle() 
181        nome_UO="" 
182        descrizione_UO="" 
183        immagine_UO="" 
184        urlImmagine_UO="" 
185        competenze_UO="" 
186        indirizzo_UO="" 
187        contatti_UO=[] 
188    /> 
189    <#if rootElement.elements()?has_content> 
190        <#list rootElement.elements() as dynamicElement> 
191            <#if dynamicElement.attributeValue("field-reference")=="Titolo"> 
192                <#assign nome_UO=dynamicElement.element("dynamic-content").getText() /> 
193            <#elseif dynamicElement.attributeValue("field-reference")=="DescrizioneBreve"> 
194                <#assign descrizione_UO=dynamicElement.element("dynamic-content").getText() /> 
195            <#elseif dynamicElement.attributeValue("field-reference")=="Immagine"> 
196                <#assign immagine_UO=jsonFactoryUtil.createJSONObject(dynamicElement.element("dynamic-content").getData()) /> 
197                <#if immagine_UO.uuid?has_content> 
198                    <#assign urlImmagine_UO="/portal/c/document_library/get_file?uuid=" + immagine_UO.uuid + "&amp;groupId=" + immagine_UO.groupId /> 
199                </#if> 
200            <#elseif dynamicElement.attributeValue("field-reference")=="Competenze"> 
201                <#assign competenze_UO=dynamicElement.element("dynamic-content").getText() /> 
202            <#elseif dynamicElement.attributeValue("field-reference")=="SedePrincipale"> 
203                <#assign 
204                    sede_UO_data=jsonFactoryUtil.createJSONObject(dynamicElement.element("dynamic-content").getData()) 
205                    relatedSedi=JournalArticleLocalService.getArticlesByResourcePrimKey(sede_UO_data.classPK?number) 
206                    relatedSede=relatedSedi[0] 
207                    document=saxReaderUtil.read(relatedSede.getContent()) 
208                    rootElement=document.getRootElement() 
209                /> 
210                <#list rootElement.elements() as dynamicElement> 
211                    <#if dynamicElement.attributeValue("field-reference")=="Indirizzo"> 
212                        <#assign indirizzo_UO=dynamicElement.element("dynamic-content").getText() /> 
213                    </#if> 
214                </#list> 
215            <#elseif dynamicElement.attributeValue("field-reference")=="Contatti"> 
216                <#assign 
217                    valore_contatto="" 
218                    contatti_UO_data=jsonFactoryUtil.createJSONObject(dynamicElement.element("dynamic-content").getData()) 
219                    relatedContatti=JournalArticleLocalService.getArticlesByResourcePrimKey(contatti_UO_data.classPK?number) 
220                    relatedContatto=relatedContatti[0] 
221                    document=saxReaderUtil.read(relatedContatto.getContent()) 
222                    rootElement=document.getRootElement() 
223                /> 
224                <#list rootElement.elements() as dynamicElement> 
225                    <#if dynamicElement.element("dynamic-content").getText()?has_content> 
226                        <#assign 
227                            tipo_contatto=(dynamicElement.attributeValue("field-reference")=="URL" )?string("Sito Web", dynamicElement.attributeValue("field-reference")) 
228                            contatti_UO += 
229                            [{ 
230                                "tipo" : tipo_contatto, 
231                                "valore" : dynamicElement.element("dynamic-content").getText() 
232                            }] 
233                        /> 
234                    </#if> 
235                </#list> 
236            </#if> 
237        </#list> 
238    </#if> 
239</#if> 
240 
241<#-- GET ALLEGATI --> 
242<#assign 
243    has_allegati=Allegati.getSiblings()?has_content 
244    allegati=[] 
245/> 
246<#if has_allegati> 
247<#list Allegati.getSiblings() as cur_allegato> 
248    <#if cur_allegato.File.getData()?? && cur_allegato.File.getData()?has_content> 
249        <#assign 
250            allegato_data=jsonFactoryUtil.createJSONObject(cur_allegato.File.data) 
251            url_allegato=cur_allegato.File.getData() 
252            nome_allegato=cur_allegato.Etichetta.getData()?has_content?string("${cur_allegato.Etichetta.getData()}", "${allegato_data.getString('title')}" ) 
253            allegati += 
254            [{ 
255                "nome": nome_allegato, 
256                "url": url_allegato 
257            }] 
258        /> 
259    </#if> 
260</#list> 
261</#if> 
262 
263<#-- GET VIDEOGALLERY --> 
264<#assign videogallery=[] /> 
265<#if GalleriaDiVideo.getData()?has_content> 
266    <#list GalleriaDiVideo.getSiblings() as cur_GalleriaDiVideo> 
267        <#assign videogallery +=[cur_GalleriaDiVideo.getData()] /> 
268    </#list> 
269</#if> 
270 
271<#-- GET PHOTOGALLERY --> 
272<#assign photogallery=[] /> 
273<#if GalleriaDiImmagini.getSiblings()?has_content> 
274    <#list GalleriaDiImmagini.getSiblings() as cur_GalleriaDiImmagini> 
275        <#if cur_GalleriaDiImmagini.getData()?? && cur_GalleriaDiImmagini.getData() !=""> 
276            <#assign 
277                photogallery += 
278                [{ 
279                    "alt" : cur_GalleriaDiImmagini.getAttribute("alt"), 
280                    "fileentryid" : cur_GalleriaDiImmagini.getAttribute("fileEntryId"), 
281                    "src" : cur_GalleriaDiImmagini.getData() 
282                }] 
283            /> 
284        </#if> 
285    </#list> 
286</#if> 
287 
288<#assign datasets = [] /> 
289<#if Dataset.getSiblings()?has_content> 
290  <#list Dataset.getSiblings() as cur_Dataset> 
291    <#assign cur_dataset_Data = jsonFactoryUtil.createJSONObject(cur_Dataset.getData()) /> 
292    <#if cur_dataset_Data.classPK?? && cur_dataset_Data?has_content> 
293        <#assign 
294            relatedDatasetS = JournalArticleLocalService.getArticlesByResourcePrimKey(cur_dataset_Data.classPK?number) 
295            relatedDataset = relatedDatasetS[0] 
296            document = saxReaderUtil.read(relatedDataset.getContent()) 
297            rootElement = document.getRootElement() 
298            nome_cur_dataset = "" 
299            immagine_cur_dataset = "" 
300            descrizione_cur_dataset = "" 
301        /> 
302        <#list rootElement.elements() as dynamicElement> 
303            <#if dynamicElement.attributeValue("field-reference") == "Titolo"> 
304                <#assign nome_cur_dataset = dynamicElement.element("dynamic-content").getText() /> 
305            </#if> 
306        </#list> 
307        <#assign 
308            datasets += 
309            [{ 
310                "nome": nome_cur_dataset, 
311                "url": "${cur_Dataset.getFriendlyUrl()}" 
312            }] 
313        /> 
314    </#if> 
315  </#list> 
316</#if> 
317 
318<div class="container"> 
319    <div class="row"> 
320 
321        <div class="col-12 col-lg-10"> 
322            <div class="cmp-heading pb-3 pb-lg-4"> 
323                <div class="row"> 
324                    <div class="col-lg-8 px-lg-4 py-lg-2"> 
325                        <h1> 
326                            ${Titolo.getData()} 
327                        </h1> 
328                        <h2 class="visually-hidden"><@liferay.language key="details" />:</h2> 
329                        <p> 
330                            ${DescrizioneBreve.getData()} 
331                        </p> 
332                        <div class="row mt-5 mb-4"> 
333                            <div class="col"> 
334                                <small><@liferay.language key="date" />:</small> 
335                                <p class="fw-semibold font-monospace"> 
336                                    <#assign DataDellaNotizia_Data = getterUtil.getString(DataDellaNotizia.getData())> 
337 
338                                    <#if validator.isNotNull(DataDellaNotizia_Data)> 
339                                    <#assign DataDellaNotizia_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataDellaNotizia_Data, locale)> 
340 
341                                    ${dateUtil.getDate(DataDellaNotizia_DateObj, "dd/MM/yyyy", locale)} 
342                                    </#if> 
343                                </p> 
344                            </div> 
345 
346                            <#assign DataDiScadenza_Data = getterUtil.getString(DataDiScadenza.getData())> 
347                            <#if validator.isNotNull(DataDiScadenza_Data)> 
348                            <div class="col"> 
349                                <small><@liferay.language key="expiration-date" />:</small> 
350                                <p class="fw-semibold font-monospace"> 
351 
352                                    <#assign DataDiScadenza_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataDiScadenza_Data, locale)> 
353 
354                                    ${dateUtil.getDate(DataDiScadenza_DateObj, "dd/MM/yyyy", locale)} 
355                                </p> 
356                            </div> 
357                            </#if> 
358 
359                            <#if TempoDiLettura.getData() !=""> 
360                            <div class="col"> 
361                                <small><@liferay.language key="reading-time" />:</small> 
362                                <p class="fw-semibold">${TempoDiLettura.getData()} min</p> 
363                            </div> 
364                            </#if> 
365                            <#if NumeroProgressivoComunicatoStampa.getData() !=""> 
366                            <div class="col"> 
367                                <small><@liferay.language key="press-progressive-number" />:</small> 
368                                <p class="fw-semibold"> 
369                                    ${NumeroProgressivoComunicatoStampa.getData()} 
370                                </p> 
371                            </div> 
372                            </#if> 
373                        </div> 
374                    </div> 
375 
376                    <div class="col-lg-3 offset-lg-1 mt-5 mt-lg-0"> 
377                        <div class="dropdown" id="fallback-share"> 
378                            <button 
379                                aria-label="condividi sui social" 
380                                class="btn btn-dropdown dropdown-toggle text-decoration-underline d-inline-flex align-items-center fs-6 text-primary" 
381                                type="button" 
382                                id="shareActions" 
383                                data-bs-toggle="dropdown" 
384                                aria-haspopup="true" 
385                                aria-expanded="false" 
386                            > 
387                                <svg class="icon icon-primary" aria-hidden="true"> 
388                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-share"></use> 
389                                </svg> 
390                                <small><@liferay.language key="share" /></small> 
391                            </button> 
392                            <div class="dropdown-menu shadow-lg" aria-labelledby="shareActions"> 
393                                <div class="link-list-wrapper"> 
394                                    <ul class="link-list" role="menu"> 
395                                        <li role="none"> 
396                                            <button class="list-item text-primary px-3 fs-6" role="menuitem" onclick="shareOn('facebook')"> 
397                                                <svg class="icon icon-primary" aria-hidden="true"> 
398                                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-facebook"></use> 
399                                                </svg> 
400                                                <span>Facebook</span> 
401                                            </button> 
402                                        </li> 
403                                        <li role="none"> 
404                                            <button class="list-item text-primary px-3 fs-6" role="menuitem" onclick="shareOn('twitter')"> 
405                                                <svg class="icon icon-primary" aria-hidden="true"> 
406                                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-twitter"></use> 
407                                                </svg> 
408                                                <span><@liferay.language key="Twitter" /></span> 
409                                            </button> 
410                                        </li> 
411                                        <li role="none"> 
412                                            <button class="list-item text-primary px-3 fs-6" role="menuitem" onclick="shareOn('whatsapp')"> 
413                                                <svg class="icon icon-primary" aria-hidden="true"> 
414                                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-whatsapp"></use> 
415                                                </svg> 
416                                                <span>Whatsapp</span> 
417                                            </button> 
418                                        </li> 
419                                    </ul> 
420                                </div> 
421                            </div> 
422                        </div> 
423 
424                        <div class="dropdown"> 
425                            <button 
426                                aria-label="vedi azioni da compiere sulla pagina" 
427                                class="btn btn-dropdown dropdown-toggle text-decoration-underline d-inline-flex align-items-center fs-0" 
428                                type="button" 
429                                id="viewActions" 
430                                data-bs-toggle="dropdown" 
431                                aria-haspopup="true" 
432                                aria-expanded="false" 
433                            > 
434                                <svg class="icon icon-primary" aria-hidden="true"> 
435                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-more-items"></use> 
436                                </svg> 
437                                <small><@liferay.language key="actions" /></small> 
438                            </button> 
439                            <div class="dropdown-menu shadow-lg" aria-labelledby="viewActions"> 
440                                <div class="link-list-wrapper"> 
441                                    <ul class="link-list" role="menu"> 
442                                        <li role="none"> 
443                                            <button class="list-item px-3 fs-6 text-primary" onclick="window.print()" role="menuitem"> 
444                                                <svg class="icon icon-primary" aria-hidden="true"> 
445                                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-print"></use> 
446                                                </svg> 
447                                                <span><@liferay.language key="print" /></span> 
448                                            </button> 
449                                        </li> 
450                                        <li role="none"> 
451                                            <a class="list-item mail-anchor px-3 fs-6" href="mailto:" role="menuitem"> 
452                                                <svg class="icon icon-primary" aria-hidden="true"> 
453                                                    <use xlink:href="${themeDisplay.getPathThemeImages()}/sprite.svg#it-mail"></use> 
454                                                </svg> 
455                                                <span><@liferay.language key="send" /></span> 
456                                            </a> 
457                                        </li> 
458                                    </ul> 
459                                </div> 
460                            </div> 
461                        </div> 
462 
463                        <#list argomenti> 
464                        <div class="mt-4 mb-3"> 
465                            <div class="mb-2 small fw-semibold"><@liferay.language key="topics" />:</div> 
466                            <ul> 
467                                <#items as argomento> 
468                                <li> 
469                                    <a href="${argomento.url}" class="chip chip-simple" data-element="service-topic"> 
470                                        <span class="chip-label"> 
471                                            ${argomento.name} 
472                                        </span> 
473                                    </a> 
474                                </li> 
475                                </#items> 
476                            </ul> 
477                        </div> 
478                        </#list> 
479                    </div> 
480                </div> 
481            </div> 
482        </div> 
483    </div> 
484</div> 
485 
486<#if Immagine.getData()?? && Immagine.getData() !=""> 
487<div class="container-fluid my-3"> 
488    <div class="row"> 
489        <figure class="figure px-0 img-full"> 
490            <img src="${Immagine.getData()}" class="figure-img img-fluid" alt="${Immagine.getAttribute("alt")}"> 
491            <figcaption class="figure-caption text-center pt-3"> 
492                ${Immagine.getAttribute("alt")} 
493            </figcaption> 
494        </figure> 
495    </div> 
496</div> 
497</#if> 
498 
499<div class="container"> 
500    <div class="row border-top border-light row-column-border row-column-menu-left"> 
501        <aside class="col-12 col-lg-3 mb-4 border-col"> 
502            <div class="cmp-navscroll sticky-top" aria-labelledby="accordion-title-one"> 
503                <nav 
504                    class="navbar it-navscroll-wrapper navbar-expand-lg" 
505                    data-bs-navscroll="" 
506                    aria-labelledby="page-index-btn" 
507                > 
508                    <div class="navbar-custom" id="navbarNavProgress"> 
509                        <div class="menu-wrapper"> 
510                            <div class="link-list-wrapper"> 
511                                <div class="accordion"> 
512                                    <div class="accordion-item"> 
513                                        <span class="accordion-header" id="accordion-title-one"> 
514                                            <button class="accordion-button pb-10 px-3" type="button" data-bs-toggle="collapse" data-bs-target="#collapse-one" aria-expanded="true" aria-controls="collapse-one" 
515                                                id="page-index-btn" 
516                                            > 
517                                                <@liferay.language key="page-index" /> 
518                                                <svg class="icon icon-xs right" viewBox="0 0 24 24"> 
519                                                    <path d="M11.6 15.4L6 9.8l.7-.8 4.9 4.9L16.5 9l.7.8z"></path> 
520                                                </svg> 
521                                            </button> 
522                                        </span> 
523                                        <div class="progress"> 
524                                            <div class="progress-bar it-navscroll-progressbar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%;"></div> 
525                                        </div> 
526                                        <div id="collapse-one" class="accordion-collapse collapse show" role="region" aria-labelledby="accordion-title-one"> 
527                                            <div class="accordion-body"> 
528                                                <ul class="link-list" data-element="page-index"> 
529 
530                                                    <#if Descrizione.getData()?has_content> 
531                                                    <li class="nav-item"> 
532                                                        <a class="nav-link active" href="#description"> 
533                                                            <span class="title-medium"><@liferay.language key="description" /></span> 
534                                                        </a> 
535                                                    </li> 
536                                                    </#if> 
537 
538                                                    <#if luoghi_data?size gt 0> 
539                                                    <li class="nav-item"> 
540                                                        <a class="nav-link active" href="#places"> 
541                                                            <span class="title-medium"><@liferay.language key="places" /></span> 
542                                                        </a> 
543                                                    </li> 
544                                                    </#if> 
545 
546                                                    <#if photogallery?size gt 0> 
547                                                    <li class="nav-item"> 
548                                                        <a class="nav-link active" href="#photogallery"> 
549                                                            <span class="title-medium"><@liferay.language key="image-gallery" /></span> 
550                                                        </a> 
551                                                    </li> 
552                                                    </#if> 
553 
554                                                    <#if videogallery?size gt 0> 
555                                                    <li class="nav-item"> 
556                                                        <a class="nav-link active" href="#videogallery"> 
557                                                            <span class="title-medium"><@liferay.language key="video-gallery" /></span> 
558                                                        </a> 
559                                                    </li> 
560                                                    </#if> 
561 
562                                                    <#if has_UO> 
563                                                    <li class="nav-item"> 
564                                                        <a class="nav-link" href="#office"> 
565                                                            <span class="title-medium"><@liferay.language key="edited-by" /></span> 
566                                                        </a> 
567                                                    </li> 
568                                                    </#if> 
569 
570                                                    <#if has_allegati> 
571                                                    <li class="nav-item"> 
572                                                        <a class="nav-link" href="#attachments"> 
573                                                            <span class="title-medium"><@liferay.language key="attachments" /></span> 
574                                                        </a> 
575                                                    </li> 
576                                                    </#if> 
577 
578                                                    <#if datasets?size gt 0> 
579                                                    <li class="nav-item"> 
580                                                        <a class="nav-link" href="#datasets"> 
581                                                            <span class="title-medium"><@liferay.language key="dataset" /></span> 
582                                                        </a> 
583                                                    </li> 
584                                                    </#if> 
585 
586                                                </ul> 
587                                            </div> 
588                                        </div> 
589                                    </div> 
590                                </div> 
591                            </div> 
592                        </div> 
593                    </div> 
594                </nav> 
595            </div> 
596        </aside> 
597        <div class="col-12 col-lg-8 offset-lg-1"> 
598            <div class="it-page-sections-container"> 
599 
600                <#if Descrizione.getData()?has_content> 
601                <section class="it-page-section mb-30" id="description"> 
602                    <h2 class="title-xxlarge mb-3"><@liferay.language key="description" /></h2> 
603                    <div class="richtext-wrapper lora"> 
604                        ${Descrizione.getData()} 
605                    </div> 
606                </section> 
607                </#if> 
608 
609                <#list luoghi_data> 
610                <section class="it-page-section mb-30" id="places"> 
611                    <h2 class="title-xxlarge mb-3"><@liferay.language key="places" /></h2> 
612                    <div class="row"> 
613                        <#items as luogo> 
614                            <div class="col-12 col-lg-6"> 
615                                <div class="card-wrapper rounded h-auto mt-10"> 
616                                    <div class="card card-teaser card-teaser-info rounded shadow-sm p-3"> 
617                                        <div class="card-body pe-3"> 
618                                            <a class="card-title text-paragraph-regular-medium-semi mb-3 primary-color-b3" href="${luogo.urlPagina}"> 
619                                                ${luogo.nome} 
620                                            </a> 
621                                            <div class="card-text"> 
622                                                ${luogo.indirizzo} 
623                                            </div> 
624                                        </div> 
625                                        <#if luogo.immagine?has_content> 
626                                            <div class="avatar size-xl"> 
627                                                <#assign url_immagine="${luogo.immagine.url}" /> 
628                                                <a href="${luogo.urlPagina}"> 
629                                                    <img 
630                                                        src="${luogo.immagine.url}" 
631                                                        style="aspect-ratio: 1;" 
632                                                        alt="${luogo.immagine.alt}" 
633                                                    /> 
634                                                </a> 
635                                            </div> 
636                                        </#if> 
637                                    </div> 
638                                </div> 
639                            </div> 
640                        </#items> 
641                    </div> 
642                </section> 
643                </#list> 
644 
645                <#list photogallery> 
646                <section class="it-page-section mb-30" id="photogallery"> 
647                    <h2 class="title-xxlarge mb-3"><@liferay.language key="image-gallery" /></h2> 
648                    <div class="it-carousel-wrapper it-carousel-landscape-abstract-three-cols splide splide--slide splide--ltr splide--draggable is-active is-initialized mb-4" data-bs-carousel-splide="" id="splide01"> 
649                        <div class="splide__track" id="splide01-track" style="padding-left: 0px; padding-right: 0px;"> 
650                            <ul class="splide__list it-carousel-all" id="splide01-list" style="transform: translateX(0px);"> 
651                                <#items as img> 
652                                    <li class="splide__slide is-active is-visible h-100" id="splide01-slide0${img?counter}" style="margin-right: 24px; width: calc(calc(100% / 3) - 16px);" tabindex="0" data-focus-mouse="false"> 
653                                        <div class="it-single-slide-wrapper"> 
654                                            <figure> 
655                                                <a href="${img.src}" target="_blank" rel="noopener noreferrer"> 
656                                                    <img src="${img.src}" alt="${img.alt}" class="img-fluid" style="width: 100%; aspect-ratio: 1; object-fit: cover; object-position: center;" loading="lazy"> 
657                                                </a> 
658                                                <figcaption class="figure-caption mt-2"> 
659                                                    ${img.alt} 
660                                                </figcaption> 
661                                            </figure> 
662                                        </div> 
663                                    </li> 
664                                </#items> 
665                            </ul> 
666                        </div> 
667                    </div> 
668                </section> 
669                </#list> 
670 
671                <#list videogallery> 
672                <section class="it-page-section mb-30" id="videogallery"> 
673                    <h2 class="mb-3"><@liferay.language key="video-gallery" /></h2> 
674                    <div id="iframe-wrapper"> 
675                        <#items as cur_Sezione_URLVideo> 
676                            <div class="iframe-element"> 
677                                ${cur_Sezione_URLVideo} 
678                            </div> 
679                        </#items> 
680                    </div> 
681                </section> 
682                </#list> 
683 
684                <#if has_UO || persone_Notizia?size gt 0> 
685                <section class="it-page-section mb-30" id="office"> 
686                    <h2 class="mb-3"><@liferay.language key="edited-by" /></h2> 
687                    <div class="row"> 
688                        <#if has_UO> 
689                        <div class="col-12 col-lg-6"> 
690                            <div class="card-wrapper rounded h-auto mt-10"> 
691                                <div class="card card-teaser card-teaser-info rounded shadow-sm p-3"> 
692                                    <div class="card-body pe-3"> 
693                                        <div class="mb-3"> 
694                                            <a class="card-title text-paragraph-regular-medium-semi primary-color-b3" href="/portal/-/${url_UO}"> 
695                                                ${nome_UO} 
696                                            </a> 
697                                            <#if indirizzo_UO?has_content> 
698                                                <small class="d-block"> 
699                                                    ${indirizzo_UO} 
700                                                </small> 
701                                            </#if> 
702                                        </div> 
703                                        <div class="card-text"> 
704                                            <#list contatti_UO> 
705                                            <div class="col-12 rounded p-0"> 
706                                                <#items as contatto> 
707                                                <div> 
708                                                    <#assign url_type="" /> 
709                                                    <#if 
710                                                        contatto.tipo=="Email" 
711                                                        || contatto.tipo=="PEC" 
712                                                    > 
713                                                        <#assign url_type="mailto:" /> 
714                                                    <#elseif 
715                                                        contatto.tipo=="Telefono" 
716                                                        || contatto.tipo=="Whatsapp" 
717                                                        || contatto.tipo=="Telegram" 
718                                                    > 
719                                                        <#assign url_type="tel:" /> 
720                                                    </#if> 
721                                                    <span class="fw-semibold"> 
722                                                        <@liferay.language key="${contatto.tipo?replace(' ', '-')}" />:</span> 
723                                                    <span class="ms-1"> 
724                                                        <a 
725                                                            href="${url_type}${contatto.valore}" 
726                                                            target="_blank" 
727                                                            class="t-primary" 
728                                                        > 
729                                                            ${contatto.valore} 
730                                                        </a> 
731                                                    </span> 
732                                                </div> 
733                                                </#items> 
734                                            </div> 
735                                            </#list> 
736                                        </div> 
737                                    </div> 
738                                    <#if urlImmagine_UO !=""> 
739                                    <div class="avatar size-xl"> 
740                                        <a href="#"> 
741                                            <img 
742                                                alt="Immagine unità organizzativa responsabile" 
743                                                src="${urlImmagine_UO}" 
744                                                style="aspect-ratio: 1;" 
745                                            /> 
746                                        </a> 
747                                    </div> 
748                                    </#if> 
749                                </div> 
750                            </div> 
751                        </div> 
752                        </#if> 
753                        <#list persone_Notizia> 
754                        <div class="col-12 col-lg-6"> 
755                            <div class="mb-2"><@liferay.language key="people" />:</div> 
756                            <ul> 
757                                <#items as persona> 
758                                <li> 
759                                    <a href="${persona.url}" class="chip chip-simple" data-element="service-topic"> 
760                                        <span class="chip-label"> 
761                                            ${persona.nome} 
762                                        </span> 
763                                    </a> 
764                                </li> 
765                                </#items> 
766                            </ul> 
767                        </div> 
768                        </#list> 
769                    </div> 
770                </section> 
771                </#if> 
772 
773                <#list allegati> 
774                <section class="it-page-section mb-30" id="attachments"> 
775                    <h2 class="mb-3"><@liferay.language key="attachments" /></h2> 
776                    <div class="col-12"> 
777                        <ul class="p-3 my-3 shadow rounded"> 
778                            <#items as allegato> 
779                            <li group="attachments"> 
780                                <div class="d-flex align-items-center ${allegato?has_next?string(' mb-2', '')}"> 
781                                    <a class="text-decoration_none fw-semibold t-primary" target="_blank" href="${allegato.url}"> 
782                                        <svg class="icon icon-primary icon-lh me-2 d-inline" aria-hidden="true" viewBox="0 0 24 24"> 
783                                            <path d="M12,14.2L7.7,9.9l0.7-0.7l3.1,3.1V3h1v9.2l3.1-3l0.7,0.7L12,14.2z M19,12v7.5c0,0.3-0.2,0.5-0.5,0.5h-13C5.2,20,5,19.8,5,19.5V12H4v7.5C4,20.3,4.7,21,5.5,21h13c0.8,0,1.5-0.7,1.5-1.5V12H19z" /> 
784                                        </svg> 
785                                        ${allegato.nome} 
786                                    </a> 
787                                </div> 
788                            </li> 
789                            </#items> 
790                        </ul> 
791                    </div> 
792                </section> 
793                </#list> 
794 
795                <#list datasets> 
796                <section class="it-page-section mb-30" id="datasets"> 
797                    <h2 class="mb-3"><@liferay.language key="dataset" /></h2> 
798                    <div class="col-12"> 
799                        <ul class="p-3 my-3 shadow rounded"> 
800                            <#items as dataset> 
801                            <li group="attachments"> 
802                                <div class="d-flex align-items-center ${dataset?has_next?string(' mb-2', '')}"> 
803                                    <a class="text-decoration_none fw-semibold t-primary" target="_blank" href="${dataset.url}"> 
804                                        <svg class="icon icon-primary me-2" aria-hidden="true"> 
805                                            <use xlink:href="/portal/o/agid-liferay-theme/images/sprite.svg#it-external-link"></use> 
806                                        </svg> 
807                                        ${dataset.nome} 
808                                    </a> 
809                                </div> 
810                            </li> 
811                            </#items> 
812                        </ul> 
813                    </div> 
814                </section> 
815                </#list> 
816 
817            </div> 
818            <div class="mt-3"> 
819                <#assign 
820                    modifiedDate=.vars['reserved-article-modified-date'].getData()?split(", ")[1]?split(" +")[0] 
821                    displayModifiedDate=modifiedDate?datetime("dd MMM yyyy hh:mm:ss") 
822                /> 
823                <p class="text-paragraph-small mb-0 lora"> 
824                    <span class="fw-semibold"><@liferay.language key="last-updated" />:</span> 
825                    <span> 
826                        ${displayModifiedDate?string["dd/MM/yyyy, HH:mm"]} 
827                    </span> 
828                </p> 
829            </div> 
830        </div> 
831    </div> 
832</div> 
833 
834<script defer> 
835document.querySelectorAll(".mail-anchor").forEach(anchor => anchor.href = "mailto:&subject=${Titolo.getData()}&body=" + window.location.href) 
836 
837function shareOn(type) { 
838    let articleUrl = window.location.href; 
839    const mapping = { 
840        "facebook": "https://facebook.com/sharer/sharer.php?u=" + articleUrl, 
841        "twitter": "https://twitter.com/intent/tweet/?text=" + articleUrl, 
842        "linkedin": "http://www.linkedin.com/sharing/share-offsite/?url=" + articleUrl, 
843        "whatsapp": "whatsapp://send?text=" + articleUrl 
844    } 
845 
846    window.open(mapping[type], "_blank"); 
847    return 
848} 
849</script> 
850 
851<style> 
852.container-fluid.my-3 { 
853    padding: 0; 
854} 
855 
856#iframe-wrapper { 
857    display: grid; 
858    gap: 0.125rem; 
859    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); 
860} 
861 
862#iframe-wrapper .iframe-element iframe { 
863    width: 100%; 
864} 
865 
866.chip.chip-simple .chip-label { 
867    translate: 0 -25%; 
868} 
869</style>