An error occurred while processing the template.
The following has evaluated to null or missing:
==> author  [in template "37304#37346#351634" at line 251, column 6]

----
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: #if author.getData()?has_content  [in template "37304#37346#351634" at line 251, column 1]
----
1<style> 
2 
3 
4.gal-art .swiper { 
5     
6    overflow: initial; 
7    /*overflow-x:clip;*/ 
8
9 
10.article-full .article-categories{margin-top:20px;margin-bottom:15px} 
11.article-full.video-art .article-categories{margin-top:0px;margin-bottom:15px} 
12.article-full .article-title {margin-bottom:30px} 
13.article-full .article-subtitle {margin-bottom:20px} 
14.article-full .article-author {margin-bottom:50px} 
15.article-full .article-content p {text-indent:60px}  
16.article-full .article-bio p {text-indent:0px;padding: 5px 0px} 
17.journal-content-article{padding-bottom:40px} 
18.article-full .article-content p:last-of-type{display:inline} 
19.article-full .article-content p:last-of-type:before {content: '';width: 60px;height: 20px;display: inline-block;} 
20.article-full .article-content { 
21    line-height: 1.3; 
22
23._article-full.video-art .article-content{margin-top:-100px} 
24._article-full.video-art .article-social{top:80%} 
25 
26.article-full .article-box { 
27padding: 16px 20px 9px 20px; 
28    top: unset; 
29
30.article-full.gal-art .article-box { 
31margin: 0 2px 2px;} 
32 
33 
34.article-full #artBox-zoom .article-dida { 
35     margin-bottom: unset;  
36    min-height: 50px; 
37    position: absolute; 
38    left: 20px; 
39    bottom: -80px; 
40        right: 110px; 
41
42 
43 
44 
45.article-full.podcast-art .article-header, 
46.article-full.video-art .article-header {display: flex; 
47    flex-direction: column; 
48    justify-content: center; 
49
50  
51/*.video-art .artBox-zoom .swiper-slide.gallery-image img*/ 
52.video-art .artBox-zoom .swiper-slide .vimeo-iframe 
53{height: 392px} 
54 
55.gal-art .artBox-zoom .swiper-slide.gallery-image .imgslide, 
56.video-art .artBox-zoom .swiper-slide.gallery-image .imgslide, 
57.podcast-art  .artBox-zoom .swiper-slide.gallery-image .imgslide{ 
58background-size:cover;height:392px 
59
60.gal-art .artBox-zoom.zoom .swiper-slide.gallery-image .imgslide, 
61.video-art .artBox-zoom.zoom .swiper-slide.gallery-image .imgslide, 
62.podcast-art  .artBox-zoom .swiper-slide.gallery-image .imgslide{ 
63padding-bottom:60%;height:auto} 
64 
65.article-full.gal-art .article-social { 
66    position: absolute; 
67    top: 100%; 
68    justify-content: flex-start; 
69    padding-right: 26px; 
70    min-height: 220px; 
71    z-index: 1; 
72
73 
74 
75.artBox-zoom.zoom{ background-color:transparent, -webkit-box-shadow:none;box-shadow:none} 
76/*.artBox-zoom.zoom .vimeo-iframe {_height: 920px; height:calc(100vh - 140px)}}*/ 
77 
78.video-art  .artBox-zoom.zoom .swiperGallery {height: calc(100vh - 140px);} 
79.video-art  .artBox-zoom.zoom, 
80.video-art  .artBox-zoom.zoom .vimeo-iframe, 
81.video-art .artBox-zoom.zoom .swiper-slide.gallery-image .imgslide 
82{ height:calc(100vh - 200px);min-height:unset;padding-bottom:0px} 
83 
84 
85.podcast-art  .artBox-zoom.zoom .swiperGallery {height: calc(100vh - 250px);} 
86.podcast-art  .artBox-zoom.zoom, 
87.podcast-art  .artBox-zoom.zoom .vimeo-iframe, 
88.podcast-art .artBox-zoom.zoom .swiper-slide.gallery-image .imgslide 
89{ height:calc(100vh - 310px);min-height:unset;padding-bottom:0px} 
90 
91 
92.article-full .article-content h1, 
93.article-full .article-content h2, 
94.article-full .article-content h3, 
95.article-full .article-content h4, 
96.article-full .article-content h5, 
97.article-full .article-content h6, 
98.article-full .article-content h7 {color: #00a} 
99 
100 
101.article-full .hideArrow {display:none !important;}  
102.article-full .swiper-button-disabled {opacity:0.2 !important;} 
103.article-full .swiper-prev, .article-full .swiper-next{cursor:pointer;display:inline-block} 
104 
105hr {border-color:black} 
106 
107.articles-entry .article-tag{margin-bottom:5px} 
108.articles-entry h3.article-title {color: black !important;} 
109.articles-entry  .article-author {font-size:9px !important} 
110 
111.video-art .vimeo-iframe {background-color:black !important;} 
112 
113.article-full .article-content .ico_internet { 
114    vertical-align: middle; 
115
116 
117@media(max-width:768px){ 
118    .article-full .article-title {margin-bottom: 5px;} 
119    .article-full .article-categories {margin-bottom: 5px;margin-top:0px} 
120    .article-full .article-author {margin-bottom: 20px;} 
121    .article-full .article-subtitle{margin-bottom:5px} 
122    .article-full .article-content .ico_internet { width: 16px;height: 16px;} 
123    .article-full .article-adt{top:20px;-webkit-box-shadow: unset;-moz-box-shadow: unset;box-shadow: unset;padding: 2rem 10px 1.25rem 10px;} 
124.article-full .article-content h3, .h3 { 
125    font-size: 20px; 
126
127.article-full.gal-art .article-social{position: relative; 
128top: unset; 
129min-height: initial;} 
130
131 
132.article-full.gal-art #artBox-zoom{ 
133overflow: hidden; 
134
135 
136.article-full.gal-art .article-dida { 
137    height: 30px; 
138    min-height:unset !important; 
139    bottom: -53px !important; 
140    right: 110px !important; 
141     
142    display: flex; 
143    align-items: center; 
144
145 
146</style> 
147 
148  
149<#assign artTitle = .vars['reserved-article-title'].data /> 
150<#assign artTitleUrl = .vars['reserved-article-url-title'].data /> 
151 
152<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
153<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
154<#assign artTitleUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
155 
156 
157<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService")/> 
158<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")/> 
159<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
160<#assign dLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") /> 
161<#assign browserSniffer = serviceLocator.findService("com.liferay.portal.kernel.servlet.BrowserSniffer") /> 
162 
163<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(scopeGroupId), .vars['reserved-article-id'].data)/> 
164<#assign articleID = article.getArticleId()/> 
165<#assign articlePK = article.getResourcePrimKey()/> 
166<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', articlePK) /> 
167 
168<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
169<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
170<#assign w3c_language_id = localeUtil.toW3cLanguageId(themeDisplay.getLanguageId())/> 
171<#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
172 
173<#assign namespace = "article-full"/> 
174<#assign articleSize = "" /> 
175 
176<@liferay_util["html-top"]>  
177 
178<#assign  twitterimage = ""> 
179 
180<#list artImage.getData()?split("/") as sValue> 
181   
182  <#if sValue?has_next> 
183    <#if !sValue?is_first>  
184    <#assign  twitterimage  = twitterimage + '/'> 
185    </#if> 
186  <#assign  twitterimage  = twitterimage+ sValue> 
187  </#if> 
188  
189</#list> 
190     
191    <meta property="og:type" content="article" /> 
192    <meta property="og:image" content="https://www.infrajournal.com${twitterimage}"> 
193    <#--meta property="og:image:url" content="https://www.infrajournal.com${twitterimage}"--> 
194     
195    <meta name="twitter:card" content="summary_large_image"> 
196    <meta name="twitter:site" content="@InfraJournal"> 
197    <meta name="twitter:creator" content="@InfraJournal"> 
198    <meta name="twitter:title" content="${artTitle}"> 
199    <meta name="twitter:description" content="${artSubtitle.getData()}"> 
200    <meta name="twitter:image" content="https://www.infrajournal.com${twitterimage}"> 
201    <meta name="twitter:image:src" content="https://www.infrajournal.com${twitterimage}"> 
202</@> 
203<#-- ?replace('+','%2B')--> 
204<img id="prima_immagine" src="https://www.infrajournal.com${twitterimage}" style="width:1px;height:1px;position:absolute;_top:0px;left:0px"> 
205 
206<#if artType.getData()?has_content> 
207    <#if artType.getData() == "img"> 
208        <#assign articleSize ="long-art" /> 
209    <#elseif artType.getData() == "imgS"> 
210        <#assign articleSize ="short-art" /> 
211    <#elseif artType.getData() == "vid"> 
212        <#assign articleSize ="video-art" /> 
213    <#elseif artType.getData() == "pod"> 
214        <#assign articleSize ="podcast-art" /> 
215    <#elseif artType.getData() == "gal"> 
216        <#assign articleSize ="gal-art" /> 
217    </#if> 
218</#if> 
219 
220<#--<#assign artLinkIN ="${artTitleUrl}" />--> 
221<#assign artLinkFB ="${artTitleUrl}" /> 
222<#assign artLinkLI ="${artTitleUrl}" /> 
223<#assign artLinkTW ="${artTitleUrl}" /> 
224 
225<#macro social> 
226<#--  <a id="instagram" class="social-icon ico_socialIN" href="${artLinkIN}" target="_blank"></a>--> 
227    <a id="twitter2" class="social-icon ico_socialTW" href="${artLinkFB}" target="_blank"></a> 
228    <a id="linkedin" class="social-icon ico_socialLI" href="${artLinkLI}" target="_blank"></a> 
229    <a id="facebook" class="social-icon ico_socialFB" href="${artLinkTW}" target="_blank"></a> 
230</#macro> 
231 
232<#macro assetRelated> 
233 
234    <h4 class="title-more"><#if w3c_language_id == 'it-IT' >Altri come questo<#else>More like this</#if></h4> 
235 
236    <#assign preferences = freeMarkerPortletPreferences.getPreferences({ 
237    "portletSetupPortletDecoratorId": "barebone", 
238    "groupId": themeDisplay.getCompanyGroupId()?string, 
239    "displayStyle": "ddmTemplate_ARTICLES-RELATED-FTL" 
240    }) /> 
241 
242    <@liferay_portlet["runtime"] 
243    defaultPreferences="${preferences}" 
244    portletProviderAction=portletProviderAction.VIEW 
245    portletName="com_liferay_asset_publisher_web_portlet_RelatedAssetsPortlet" 
246    /> 
247 
248</#macro> 
249 
250<#-- AUTORE --> 
251<#if author.getData()?has_content > 
252<#assign webContentData = jsonFactoryUtil.createJSONObject(author.getData()) /> 
253   
254<#assign NomeAutore =   webContentData.getString( "title") />   
255<#assign author_obj = journalArticleLocalService.getLatestArticle(webContentData.getLong( "classPK")) /> 
256<#assign document = saxReaderUtil.read(author_obj.getContentByLocale(locale))> 
257<#assign Author_description = document.valueOf("//dynamic-element[@name='Descrizione']/dynamic-content/text()") /> 
258</#if> 
259 
260<section class="${namespace} ${articleSize}"> 
261    <#if artType.getData()?has_content> 
262        <#if artType.getData() == "img" || artType.getData() == "imgS"> 
263            <#if artType.getData() == "imgS"> 
264                <div class="row"> 
265                    <div class="col-12 col-md-2"></div> 
266                    <div class="article-header col-12 col-md-7"> 
267                        <p class="article-categories"> 
268                            <#-- list asset.getCategories() as category> 
269                                <span class="cat-item">${category.name}</span> 
270                            </#list --> 
271                             
272                            <#list categories as category> 
273                                <#if (category.vocabularyId = 409321)> 
274                                <#assign categoria = category> 
275                                    <span class="cat-item" ><a href="/${category.getTitle(locale)}" style="text-decoration:underline">${category.getTitle(locale)}</a> 
276                                    <#if !category?is_last>&nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</#if></span> 
277                                </#if> 
278                        	</#list> 
279                            	 
280                            <#list categories as category> 
281                            <#if (category.vocabularyId = 408411)> 
282                            <#assign categoria = category> 
283                                <span class="cat-item">${category.getTitle(locale)} 
284                                <#if !category?is_last>&nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</#if></span> 
285                            </#if> 
286                        	</#list> 
287                        </p> 
288                        <h1 class="article-title">${artTitle}</h1> 
289                        <h3 class="article-subtitle">${artSubtitle.getData()}</h3> 
290                        <#if (artAuthor.getData()?has_content)> 
291                        <p class="article-author"> 
292                        <#if author.getData()?has_content > 
293                                    By <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> 
294                                    <#else> 
295                                    By ${artAuthor.getData()} 
296                                    </#if></p> 
297                        </#if> 
298 
299                        <#if  (browserSniffer.isMobile(request) || browserSniffer.isIphone(request))> 
300                            <div class="article-social-2"> 
301                                <@social/> 
302                            </div> 
303                        </#if> 
304                    </div> 
305                    <div class="col-12 col-md-3"></div> 
306                </div> 
307            </#if> 
308 
309            <div class="article-image"> 
310                <#if (artImage.getData())?? && artImage.getData() != ""> 
311                     
312                    <img alt="${artImage.getAttribute("alt")}" src="https://www.infrajournal.com${twitterimage?replace('+','%2B')}"/> 
313                    <#--img class="" alt="${artImage.getAttribute("alt")}" _data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /--> 
314                </#if> 
315            </div> 
316 
317            <div class="row"> 
318            <div class="col-12 col-md-2"></div> 
319            <div class="col-12 col-md-7"> 
320                <#if artCaption.getData()?has_content> 
321                    <p class="article-dida">${artCaption.getData()}</p> 
322                <#else> 
323                    <p class="article-dida">${artImage.getAttribute("alt")}</p> 
324                </#if> 
325            </div> 
326            <div class="col-12 col-md-3"></div> 
327 
328            <#if articleSize == "short-art"> 
329                <div class="article-social col-12 col-md-2"> 
330                    <@social/> 
331                </div> 
332 
333                <div class="article-content col-12 col-md-7"> 
334                    <#if artContent.getData()?has_content> 
335                        ${artContent.getData()} 
336                    </#if> 
337                    <span class="ico_internet"></span> 
338                    <#if artBio.getData()?has_content> 
339                    <hr> 
340                    <div class="article-bio"> 
341                         
342                            ${artBio.getData()} 
343                         
344                    </div> 
345                    <hr> 
346                    </#if> 
347                </div> 
348 
349                <div class="article-adt vert col-12 col-md-3"> 
350                    <@assetRelated/> 
351                </div> 
352 
353            <#else> 
354 
355            </#if> 
356 
357            <#if articleSize == "long-art"> 
358 
359                <div class="col-12 col-md-9 pad0"> 
360 
361                    <div class="row"> 
362                        <div class="col-12 Pcol22"> </div> 
363                        <div class="col-12 Pcol77"> 
364                            <#if artType.getData() == "img"> 
365                                <div class="article-header"> 
366                                    <p class="article-categories"> 
367                                        <#-- list asset.getCategories() as category> 
368                                            <span class="cat-item">${category.name}</span> 
369                                        </#list --> 
370                                        <#list asset.categories as category> 
371                                            <#if (category.vocabularyId = 409321)> 
372                                            <#assign categoria = category> 
373                                                <span class="cat-item" ><a href="/${category.getTitle(locale)}" style="text-decoration:underline">${category.getTitle(locale)}</a> 
374                                                &nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</span> 
375                                            </#if> 
376                                    	</#list> 
377                                        <#list asset.categories as category> 
378                                        <#if (category.vocabularyId = 408411)> 
379                                        <#assign categoria = category> 
380                                            <span class="cat-item">${category.getTitle(locale)}  
381                                            <#if !category?is_last>&nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</#if></span> 
382                                        </#if> 
383                                    	</#list> 
384                                    </p> 
385                                    <h1 class="article-title">${artTitle}</h1> 
386                                    <h3 class="article-subtitle">${artSubtitle.getData()}</h3> 
387                                    <#if (artAuthor.getData()?has_content)> 
388                                    <p class="article-author"> 
389                                     
390                                    <#--By ${artAuthor.getData()}--> 
391                                    <#if author.getData()?has_content > 
392                                    By <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> 
393                                    <#else> 
394                                    By ${artAuthor.getData()} 
395                                    </#if> 
396                                    </p> 
397                                    </#if> 
398                                </div> 
399                            </#if> 
400                        </div> 
401                        <div class="article-social col-12 Pcol22"> 
402                            <@social/> 
403                        </div> 
404                        <div class="article-content col-12 Pcol77"> 
405                            <#if artContent.getData()?has_content> 
406                                ${artContent.getData()} 
407                            </#if> 
408                            <span class="ico_internet"></span> 
409                            <#--if artBio.getData()?has_content--> 
410                            <hr> 
411                            <div class="article-bio"> 
412                                    <#if author.getData()?has_content > 
413                                    <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> - ${Author_description} 
414                                    <#else> 
415                                        ${artAuthor.getData()}  
416                                        <#if artBio.getData()?has_content > 
417                                            - ${artBio.getData()} 
418                                        </#if> 
419                                    </#if> 
420                                
421                            </div> 
422                            <hr> 
423                             <#--/ #if --> 
424                        </div> 
425                    </div> 
426                </div> 
427 
428                <div class="article-adt vert col-12 col-md-3"> 
429                    <@assetRelated/> 
430                </div> 
431            </#if> 
432 
433        </#if> 
434        <#if artType.getData() == "pod" || artType.getData() == "vid"> 
435 
436            <div class="row"> 
437 
438                <div class="article-header col-12 col-md-6"> 
439                    <p class="article-categories"> 
440                        <#-- list asset.getCategories() as category> 
441                            <span class="cat-item">${category.name}</span> 
442                        </#list --> 
443                        <#list asset.categories as category> 
444                                <#if (category.vocabularyId = 409321)> 
445                                <#assign categoria = category> 
446                                    <span class="cat-item" ><a href="/${category.getTitle(locale)}" style="text-decoration:underline">${category.getTitle(locale)}</a> 
447                                    &nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</span> 
448                                </#if> 
449                        	</#list> 
450                        <#list asset.categories as category> 
451                            <#if (category.vocabularyId = 408411)> 
452                            <#assign categoria = category> 
453                                <span class="cat-item">${category.getTitle(locale)} 
454                                <#if !category?is_last>&nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</#if></span> 
455                            </#if> 
456                    	</#list> 
457                    </p> 
458                    <h1 class="article-title">${artTitle}</h1> 
459                    <h3 class="article-subtitle"> ${artSubtitle.getData()}</h3> 
460                      
461                    <p class="article-author"> 
462                     <#if author.getData()?has_content > 
463                                    By <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> 
464                                    <#else> 
465                                    By ${artAuthor.getData()} 
466                                    </#if> 
467                     </p> 
468                     
469 
470                    <div class="article-social"> 
471                        <@social/> 
472                    </div> 
473                </div> 
474                <div class="article-sticky col-12 col-md-6"> 
475                    <div id="artBox-zoom" class="artBox-zoom"> 
476                        <span id="buttonClose" class="ico_close"></span> 
477                        <#--if getterUtil.getBoolean(checkGallery.getData())--> 
478                            <#if checkGallery.artGallery.getSiblings()?has_content> 
479                                <div class="swiper swiperGallery"> 
480                                    <div class="swiper-wrapper"> 
481                                        <#if artType.getData() == "vid"> 
482                                            <div class="swiper-slide gallery-image" data-target="0" > 
483                                                <#if (artVideo.getData())?? && artVideo.getData() != ""> 
484                                                    <div class="vimeo-iframe" style="_padding:56.25% 0 0 0;position:relative;" > 
485                                                        <iframe src="https://player.vimeo.com/video/${artVideo.getData()}?title=0&byline=0&portrait=0" style="position:absolute;top:0;left:0;width:100%;height:100%;" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe> 
486                                                    </div> 
487                                                    <#if artCaption.getData()?has_content> 
488                                                        <span class="article-dida">${artCaption.getData()}</span> 
489                                                    <#else> 
490                                                        <span class="article-dida">${artImage.getAttribute("alt")}</span> 
491                                                    </#if> 
492                                                </#if> 
493                                            </div> 
494                                        </#if> 
495                                        <div class="swiper-slide gallery-image" data-target="0"> 
496                                            <#if (artImage.getData())?? && artImage.getData() != ""> 
497                                                <#--img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /--> 
498                                                <div class="imgslide" style="background-image:url('${artImage.getData()}');"></div> 
499                                                <span class="article-dida">${artImage.getAttribute("alt")} </span> 
500                                            </#if> 
501                                        </div> 
502                                        <#list checkGallery.artGallery.getSiblings() as cur_checkGallery_artGallery> 
503                                            <#if (cur_checkGallery_artGallery.getData())?? && cur_checkGallery_artGallery.getData() != ""> 
504                                                <div class="swiper-slide gallery-image" data-target="${cur_checkGallery_artGallery?counter - 0}"> 
505                                                    <img alt="${cur_checkGallery_artGallery.getAttribute("alt")}" data-fileentryid="${cur_checkGallery_artGallery.getAttribute("fileEntryId")}" src="${cur_checkGallery_artGallery.getData()}" /> 
506                                                    <span class="article-dida">${cur_checkGallery_artGallery.getAttribute("alt")} </span> 
507                                                </div> 
508                                            </#if> 
509                                        </#list> 
510                                    </div> 
511                                </div> 
512                                <div class="article-box"> 
513                                    <div class="swiper-control"> 
514                                        <div class="swiper-prev ico_arrowLeft" tabindex="-1" role="button" aria-label="undefined" aria-controls="Previous slide"  aria-disabled="false"> </div> 
515                                        <div class="swiper-next ico_arrowRight" tabindex="0" role="button" aria-label="undefined" aria-controls="Next slide" aria-disabled="false"> </div> 
516                                    </div> 
517                                    <#if artType.getData() == "pod"> 
518                                        <div class="article-player"> 
519                                            <audio class="" width="100%" controls  controlsList="nodownload"> 
520                                                <source src="${artPodcast.getData()}" type="audio/mpeg"> 
521                                            </audio> 
522                                            <p class="article-dida">Audio: Listen to the podcast.</p> 
523                                        </div> 
524                                    </#if> 
525                                </div> 
526                            </#if> 
527                        <#--else> 
528                            <#if artType.getData() == "vid"> 
529                                <#if (artVideo.getData())?? && artVideo.getData() != ""> 
530                                    <div class="vimeo-iframe" style="padding:56.25% 0 0 0;position:relative;" > 
531                                        <iframe src="https://player.vimeo.com/video/${artVideo.getData()}?title=0&byline=0&portrait=0" style="position:absolute;top:0;left:0;width:100%;height:100%;" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe> 
532                                    </div> 
533                                    <#if artCaption.getData()?has_content> 
534                                        <span class="article-dida">${artCaption.getData()}</span> 
535                                    <#else> 
536                                        <span class="article-dida">${artImage.getAttribute("alt")}</span> 
537                                    </#if> 
538                                </#if> 
539                            </#if> 
540                            <#if artType.getData() == "pod"> 
541                                <#if (artImage.getData())?? && artImage.getData() != ""> 
542                                    <div class="swiper-slide gallery-image"> 
543                                        <img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /> 
544                                        <span class="article-dida">${artImage.getAttribute("alt")} </span> 
545                                    </div> 
546                                </#if> 
547                                <div class="article-player"> 
548                                    <audio class="" width="100%" controls  controlsList="nodownload"> 
549                                        <source src="${artPodcast.getData()}" type="audio/mpeg"> 
550                                    </audio> 
551                                    <p class="article-dida">Audio: Listen to the podcast. Also available on Spotify.</p> 
552                                </div> 
553                            </#if> 
554                            <#if artType.getData() == "img" || artType.getData() == "imgS"> 
555                                <#if (artImage.getData())?? && artImage.getData() != ""> 
556                                    <img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /> 
557                                    <span class="article-dida">${artImage.getAttribute("alt")} </span> 
558                                </#if> 
559                            </#if> 
560                        </#if--> 
561 
562                    </div> 
563 
564                </div> 
565                <div class="article-content col-12 col-md-6"> 
566                    <div class="article-block"></div> 
567                    <#if artContent.getData()?has_content> 
568                        ${artContent.getData()} 
569                    </#if> 
570                    <span class="ico_internet"></span> 
571                     
572                    <hr> 
573                    <div class="article-bio"> 
574                         
575                           <#if author.getData()?has_content > 
576                                    <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> - ${Author_description} 
577                                    <#else> 
578                                        <#if author.getData()?has_content > 
579                                    <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> - ${Author_description} 
580                                    <#else> 
581                                        ${artAuthor.getData()}  
582                                        <#if artBio.getData()?has_content > 
583                                            - ${artBio.getData()} 
584                                        </#if> 
585                                    </#if> 
586                                    </#if> 
587                         
588                    </div> 
589                    <hr> 
590                     
591                </div> 
592 
593                <div class="article-adt horiz notop col-12 col-md-10"> 
594                    <@assetRelated/> 
595                </div> 
596 
597            </div> 
598 
599        </#if> 
600		<#if artType.getData() == "gal"> 
601 
602            <div class="row"> 
603 
604                <div class="article-header col-12 col-md-6"> 
605                    <p class="article-categories"> 
606                        <#-- list asset.getCategories() as category> 
607                            <span class="cat-item">${category.name}</span> 
608                        </#list --> 
609                        <#list asset.categories as category> 
610                                <#if (category.vocabularyId = 409321)> 
611                                <#assign categoria = category> 
612                                    <span class="cat-item" ><a href="/${category.getTitle(locale)}" style="text-decoration:underline">${category.getTitle(locale)}</a> 
613                                    &nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</span> 
614                                </#if> 
615                        	</#list> 
616                        <#list asset.categories as category> 
617                            <#if (category.vocabularyId = 408411)> 
618                            <#assign categoria = category> 
619                                <span class="cat-item">${category.getTitle(locale)} 
620                                <#if !category?is_last>&nbsp;<span style="font-weight:100;font-family:Arial">|</span>&nbsp;</#if></span> 
621                            </#if> 
622                    	</#list> 
623                    </p> 
624                    <h1 class="article-title">${artTitle}</h1> 
625                    <h3 class="article-subtitle"> ${artSubtitle.getData()}</h3> 
626                      
627                    <p class="article-author"> 
628                     <#if author.getData()?has_content > 
629                                    By <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> 
630                                    <#else> 
631                                    By ${artAuthor.getData()} 
632                                    </#if> 
633                     </p> 
634                     
635 
636                    <div class="article-social"> 
637                        <@social/> 
638                    </div> 
639                </div> 
640                <div class="article-sticky col-12 col-md-6"> 
641                    <div id="artBox-zoom" class="artBox-zoom"> 
642                        <span id="buttonClose" class="ico_close"></span> 
643                        <#--if getterUtil.getBoolean(checkGallery.getData())--> 
644                            <#if checkGallery.artGallery.getSiblings()?has_content> 
645                                <div class="swiper swiperGallery"> 
646                                    <div class="swiper-wrapper"> 
647                                         
648                                         <#if (artImage.getData())?? && artImage.getData() != ""> 
649                                        <div class="swiper-slide gallery-image" data-target="0"> 
650                                            
651                                                <#--img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /--> 
652                                                <a class="expand" href="${artImage.getData()}" data-fancybox="gallery" data-caption="${artImage.getAttribute("alt")}"> 
653                                                <div class="imgslide" style="background-image:url('${artImage.getData()}');"></div> 
654                                                </a> 
655                                                <span class="article-dida">${artImage.getAttribute("alt")} </span> 
656                                             
657                                        </div> 
658                                        </#if> 
659                                        <#list checkGallery.artGallery.getSiblings() as cur_checkGallery_artGallery> 
660                                            <#if (cur_checkGallery_artGallery.getData())?? && cur_checkGallery_artGallery.getData() != ""> 
661                                                <div class="swiper-slide gallery-image" data-target="${cur_checkGallery_artGallery?counter - 0}"> 
662                                                <a class="expand" href="${cur_checkGallery_artGallery.getData()}" data-fancybox="gallery" data-caption="${cur_checkGallery_artGallery.getAttribute("alt")}"> 
663                                                    <img alt="${cur_checkGallery_artGallery.getAttribute("alt")}" data-fileentryid="${cur_checkGallery_artGallery.getAttribute("fileEntryId")}" src="${cur_checkGallery_artGallery.getData()}" /></a> 
664                                                     
665                                                    <span class="article-dida">${cur_checkGallery_artGallery.getAttribute("alt")} </span> 
666                                                </div> 
667                                            </#if> 
668                                        </#list> 
669                                    </div> 
670                                </div> 
671                                <div class="article-box"> 
672                                    <div class="swiper-control"> 
673                                        <div class="swiper-prev ico_arrowLeft" tabindex="-1" role="button" aria-label="undefined" aria-controls="Previous slide"  aria-disabled="false"> </div> 
674                                        <div class="swiper-next ico_arrowRight" tabindex="0" role="button" aria-label="undefined" aria-controls="Next slide" aria-disabled="false"> </div> 
675                                    </div> 
676                                    <#if artType.getData() == "pod"> 
677                                        <div class="article-player"> 
678                                            <audio class="" width="100%" controls  controlsList="nodownload"> 
679                                                <source src="${artPodcast.getData()}" type="audio/mpeg"> 
680                                            </audio> 
681                                            <p class="article-dida">Audio: Listen to the podcast.</p> 
682                                        </div> 
683                                    </#if> 
684                                </div> 
685                            </#if> 
686                        <#--else> 
687                            <#if artType.getData() == "vid"> 
688                                <#if (artVideo.getData())?? && artVideo.getData() != ""> 
689                                    <div class="vimeo-iframe" style="padding:56.25% 0 0 0;position:relative;" > 
690                                        <iframe src="https://player.vimeo.com/video/${artVideo.getData()}?title=0&byline=0&portrait=0" style="position:absolute;top:0;left:0;width:100%;height:100%;" frameborder="0" allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe> 
691                                    </div> 
692                                    <#if artCaption.getData()?has_content> 
693                                        <span class="article-dida">${artCaption.getData()}</span> 
694                                    <#else> 
695                                        <span class="article-dida">${artImage.getAttribute("alt")}</span> 
696                                    </#if> 
697                                </#if> 
698                            </#if> 
699                            <#if artType.getData() == "pod"> 
700                                <#if (artImage.getData())?? && artImage.getData() != ""> 
701                                    <div class="swiper-slide gallery-image"> 
702                                        <img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /> 
703                                        <span class="article-dida">${artImage.getAttribute("alt")} </span> 
704                                    </div> 
705                                </#if> 
706                                <div class="article-player"> 
707                                    <audio class="" width="100%" controls  controlsList="nodownload"> 
708                                        <source src="${artPodcast.getData()}" type="audio/mpeg"> 
709                                    </audio> 
710                                    <p class="article-dida">Audio: Listen to the podcast. Also available on Spotify.</p> 
711                                </div> 
712                            </#if> 
713                            <#if artType.getData() == "img" || artType.getData() == "imgS"> 
714                                <#if (artImage.getData())?? && artImage.getData() != ""> 
715                                    <img class="" alt="${artImage.getAttribute("alt")}" data-fileentryid="${artImage.getAttribute("fileEntryId")}" src="${artImage.getData()}" /> 
716                                    <span class="article-dida">${artImage.getAttribute("alt")} </span> 
717                                </#if> 
718                            </#if> 
719                        </#if--> 
720 
721                    </div> 
722 
723                </div> 
724                <div class="article-content col-12 col-md-6"> 
725                    <div class="article-block"></div> 
726                    <#if artContent.getData()?has_content> 
727                        ${artContent.getData()} 
728                    </#if> 
729                    <span class="ico_internet"></span> 
730                     
731                    <hr> 
732                    <div class="article-bio"> 
733                         
734                           <#if author.getData()?has_content > 
735                                    <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> - ${Author_description} 
736                                    <#else> 
737                                        <#if author.getData()?has_content > 
738                                    <a href="${themeDisplay.getPortalURL()}/${(themeDisplay.getLocale()[0..1])}/autori/-/content/${author_obj.getUrlTitle()}">${NomeAutore}</a> - ${Author_description} 
739                                    <#else> 
740                                        ${artAuthor.getData()}  
741                                        <#if artBio.getData()?has_content > 
742                                            - ${artBio.getData()} 
743                                        </#if> 
744                                    </#if> 
745                                    </#if> 
746                         
747                    </div> 
748                    <hr> 
749                     
750                </div> 
751 
752                <div class="article-adt horiz notop col-12 col-md-10"> 
753                    <@assetRelated/> 
754                </div> 
755 
756            </div> 
757 
758			</#if> 
759		 
760		 
761    </#if> 
762     
763 
764</section> 
765 
766<script> 
767$('.article-social #twitter2').on('click',function(e){ 
768        e.preventDefault(); 
769        window.open('https://twitter.com/intent/tweet?url='+linkshare, '','width=550,height=420'); 
770        return false; 
771    }); 
772 
773     
774    var swiperGallery = new Swiper('.swiper.swiperGallery', { 
775    autoHeight: true, 
776        slidesPerView: "1", 
777        navigation: { 
778            nextEl: ".swiper-next", 
779            prevEl: ".swiper-prev", 
780        }, 
781    }); 
782</script> 
783<script> 
784 
785	<#if artType.getData() != "gal"> 
786    function process(){ 
787        if( $(window).width() > 767){ 
788            $('.artBox-zoom .swiper').click(function(){ 
789                $('.artBox-zoom').addClass('zoom'); 
790            }); 
791            $('#buttonClose').click(function(e){ 
792                $('.artBox-zoom').removeClass('zoom'); 
793                e.stopPropagation(); 
794            }); 
795        } else { 
796
797
798    process(); 
799    $(window).resize(function(){ 
800        process() 
801    }); 
802     
803    </#if> 
804 
805    $( document ).ready(function() { 
806        if( $('#artRelated').length )         // use this if you are using id to check 
807        {        } 
808        else { 
809            $('.article-adt.vert').css("visibility","hidden"); 
810            $('.article-adt.horiz').css("display","none"); 
811
812    }); 
813</script> 
814<style> 
815#buttonClose { 
816 
817filter: invert(1); 
818    /*-webkit-filter: drop-shadow(1px 1px 0 white) 
819    drop-shadow(-1px 1px 0 white) 
820    drop-shadow(1px -1px 0 white) 
821    drop-shadow(-1px -1px 0 white); 
822 
823    filter: drop-shadow(1px 1px 0 white) 
824    drop-shadow(-1px 1px 0 white) 
825    drop-shadow(1px -1px 0 white) 
826    drop-shadow(-1px -1px 0 white);*/ 
827
828   
829  .article-adt.notop { 
830    top:0px; 
831    -webkit-box-shadow: none; 
832    -moz-box-shadow: none; 
833    box-shadow: none; 
834
835   
836  .article-full.video-art .row, 
837  .article-full.podcast-art .row{padding:0 0 0 20px !important} 
838  .vimeo-iframe:after { 
839    content: ' '; 
840    z-index: 10000; 
841    width: 100%; 
842    height: 83%; 
843    position: absolute; 
844    top: 0px; 
845    display: block; 
846      cursor:pointer 
847
848   
849  @media (max-width:768px){ 
850      .vimeo-iframe:after {content:none} 
851  }     
852  
853 .artBox-zoom.zoom { 
854    position: ABSOLUTE; 
855    width: calc(200% + 20px); 
856
857     
858  @media (max-width:768px){ 
859      .artBox-zoom.zoom {width:100%;} 
860  }     
861  @media (min-width: 768px){ 
862   
863    .artBox-zoom.zoom.zoom .vimeo-iframe { 
864    pointer-events: auto !important;} 
865    .article-sticky { 
866      position:-webkit-sticky; /* Safari */ 
867  position: sticky; 
868  top:0px; 
869  z-index:5; 
870
871
872@media (max-width: 767px){ 
873.article-full.podcast-art .article-sticky, .article-full.video-art .article-sticky { 
874    min-width: calc(100% + 20px);} 
875
876</style> 
877 
878<script> 
879jQuery(document).on('click', function(e) { 
880  if(jQuery(e.target).hasClass('hamNav')){ 
881      e.preventDefault(); 
882        return; 
883    } else { 
884        if(jQuery("#navigationCollapseIJ").hasClass('show')){ 
885            jQuery('#hamNav').click(); 
886
887
888});   
889</script> 

We do not use any technique for user profiling, but only technical cookies necessary for the proper functioning of the site and statistical tools. To learn more read our cookie policy.