Contenuto prova formazione Monza
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing: ==> immagine [in template "492144#492178#141675" at line 44, column 18] ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #if immagine.getData() != "" [in template "492144#492178#141675" at line 44, column 13] ----
1<#assign groupService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#-- Get themeDisplay -->
3<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() />
4<#assign themeDisplay = serviceContext.getThemeDisplay() />
5
6<#-- Get Tag -->
7<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
8<#assign assetTagLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagLocalService")>
9
10<#-- Get info File -->
11<#assign dLFileLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
12<#assign textFormatter = staticUtil["com.liferay.portal.kernel.util.TextFormatter"]>
13
14<#-- Get Related Asset -->
15 <#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") />
16 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
17<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) />
18 <#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() />
19 <#assign tagList=assetTagLocalService.getTags("com.liferay.journal.model.JournalArticle",currentArticleResourcePrimKey) >
20 <#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) />
21 <#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() />
22<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) />
23
24<#assign countNota = 0 />
25<#list currentArticleRelatedLinks as related_entry>
26 <#assign relatedAssetEntry = assetEntryLocalService.getEntry(related_entry.getEntryId2()) />
27 <#assign relatedArticle = journalArticleLocalService.getLatestArticle(relatedAssetEntry.getClassPK()) />
28 <#assign relatedArticleStructureName = relatedArticle.getDDMStructure().getName(locale) />
29 <#if relatedArticleStructureName == 'Asset Nota'>
30 <#assign countNota = countNota + 1 />
31 </#if>
32</#list>
33
34<#assign arcaLocalService = serviceLocator.findService("it.arca.service.service.ArcaLocalService") />
35<#assign classeColore = arcaLocalService.getSelettoreCss(.vars['reserved-article-id'].data,'0') />
36<#assign arcaSezioniBackgroundcolorCss = 'arca-sezioni-backgroundcolor-' + classeColore />
37<#assign arcaSezioniColorCss = 'arca-sezioni-color-' + classeColore />
38<#assign arcaSezioniBorderColorCss = 'arca-sezioni-bordercolor-' + classeColore />
39<#assign arcaSezioniHrcolor = 'arca-sezioni-hrcolor-' + classeColore />
40
41<div class="detail">
42 <div class="row media-title">
43 <div class="col-md-10 col-md-offset-1">
44 <#if immagine.getData() !=''>
45 <figure class="text-center">
46 <img src="${immagine.getData()}" alt="${titolo.getData()}" />
47 <#assign file=getDlFileEntry(immagine.getData()) />
48 <figcaption>${file.getDescription()}</figcaption>
49 </figure>
50 </#if>
51 <#if titolo.getData() !=''>
52 <h1 class="hr text-center ${arcaSezioniColorCss} ${arcaSezioniHrcolor}">
53 ${titolo.getData()}
54 </h1>
55 </#if>
56
57 <#if countNota > 0 >
58 <div class="related-info">
59 <#list currentArticleRelatedLinks as related_entry>
60 <#assign relatedAssetEntry = assetEntryLocalService.getEntry(related_entry.getEntryId2()) />
61 <#assign relatedArticle = journalArticleLocalService.getLatestArticle(relatedAssetEntry.getClassPK()) />
62 <#assign relatedArticleStructureName = relatedArticle.getDDMStructure().getName(locale) />
63 <#assign doc = saxReaderUtil.read(relatedArticle.getContentByLocale(localeUtil.toLanguageId(localeUtil.getDefault()))) />
64 <#assign rootElement = doc.getRootElement() />
65 <#if relatedArticleStructureName == 'Asset Nota'>
66 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='titolo']") />
67 <#assign titoloNota = xPathSelector.selectSingleNode(rootElement).getStringValue() />
68 <#assign xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='descrizione']/dynamic-content") />
69 <#assign testoNota = xPathSelector.selectSingleNode(rootElement).getStringValue() />
70
71 <p><strong>${titoloNota}:</strong></p>
72 <p>${testoNota}</p>
73 </#if>
74 </#list>
75 </div>
76 </#if>
77
78 <#if descrizione.getData() !=''>
79 <#if getterUtil.getBoolean(descrizione.flAccordionDescrizione.getData() == "true") >
80 <#assign descrLength = descrizione.getData()?length />
81
82
83 <div class="eus-read-more module">
84 <div role="heading" class="collapse" id="${themeDisplay.getPortletDisplay().getId()}_collapseExample" aria-expanded="false">
85 <div id="${themeDisplay.getPortletDisplay().getId()}_id-arca-shadow" class="arca-shadow"></div>
86 <p>${descrizione.getData()}</p>
87 </div>
88 <a role="button" class="${arcaSezioniColorCss} collapsed ${themeDisplay.getPortletDisplay().getId()}_lastLink lastLink" data-toggle="collapse" href="#${themeDisplay.getPortletDisplay().getId()}_collapseExample" aria-expanded="false" aria-controls="${themeDisplay.getPortletDisplay().getId()}_collapseExample"></a>
89 </div>
90
91
92 <#else>
93 <div class="eus-read-more">
94 <p>${descrizione.getData()}</p>
95 </div>
96 </#if>
97 </#if>
98
99 <#if tagList??>
100 <div class="tags">
101 <#list tagList as tagList>
102 <span class="tag">${tagList.getName()}</span>
103 </#list>
104 </div>
105 </#if>
106 </div>
107 </div>
108 <div class="media">
109 <article class="owl-carousel owl-theme" id="${themeDisplay.getPortletDisplay().getId()}_owl-carousel">
110 <#if media.getData() !=''>
111 <#list media.getSiblings() as node>
112 <div class="content-slide">
113 <div class="slide" style="background-image:url(${node.getData()})"></div>
114 <#assign file=getDlFileEntry(node.getData()) />
115 <#if file.getDescription() !=''>
116 <div class="title">
117 <p>${file.getDescription()}</p>
118 </div>
119 </#if>
120 </div>
121 </#list>
122 </#if>
123 <#if VideoMedia.getData() !=''>
124 <#list VideoMedia.getSiblings() as video>
125 <div class="item-video">
126 <a class="slide owl-video" href="${video.getData()}"></a>
127 </div>
128 </#list>
129 </#if>
130 </article>
131 </div>
132</div>
133
134<script type="text/javascript" src="/o/arca-theme/js/owlcarousel/owl.carousel.min.js"></script>
135<script type="text/javascript" src="/o/arca-theme/js/owlcarousel/owlcarousel2-a11ylayer.js"></script>
136<script>
137 $(document).ready(function() {
138 var owl = $('#${themeDisplay.getPortletDisplay().getId()}_owl-carousel');
139 owl.owlCarousel({
140 items:1,
141 loop:true,
142 dots:true,
143 autoplay:false,
144 autoplayTimeout:4000,
145 autoplayHoverPause:true,
146 video:true
147 });
148
149 var idCollapseExample = '#${themeDisplay.getPortletDisplay().getId()}_collapseExample';
150 var idArcaShadow = '#${themeDisplay.getPortletDisplay().getId()}_id-arca-shadow';
151 var lastLink = '.${themeDisplay.getPortletDisplay().getId()}_lastLink';
152
153
154 if ($(idCollapseExample) && $(idCollapseExample)[0] && $(idCollapseExample)[0].scrollHeight && $(idCollapseExample).innerHeight() )
155 {
156 if ($(idCollapseExample)[0].scrollHeight > $(idCollapseExample).innerHeight()) {
157 //$('#id-arca-shadow').show();
158 //$('#lastLink').show();
159 }
160 else
161 {
162 $(idArcaShadow).hide();
163 $(lastLink).hide();
164 $(idCollapseExample).removeClass("collapse");
165 }
166 }
167 })
168</script>
169
170<script type="text/javascript">
171 AUI().use('aui-base', function(A) {
172 if(A.one('.text .accordion')){
173
174 var allps = A.one('.text .accordion').all('p');
175 var pHeight = 0;
176
177 if(allps){
178
179 allps.each(function(p){
180 pHeight = pHeight + p.height();
181 });
182
183 if(pHeight > 170){
184 A.one(".text .icon-angle-down").show();
185 }else{
186 A.one(".text .icon-angle-down").hide();
187 }
188 }
189
190 A.one(".text .icon-angle-down").on('click', function(event) {
191 A.one(".accordion").setStyle('height', 'auto');
192 A.one(".text .icon-angle-down").hide();
193 A.one(".text .icon-angle-up").show();
194 A.one(".text .gradient").hide();
195 });
196 A.one(".text .icon-angle-up").on('click', function(event) {
197 A.one(".accordion").setStyle('height', '190px');
198 A.one(".text .icon-angle-down").show();
199 A.one(".text .icon-angle-up").hide();
200 A.one(".text .gradient").show();
201 });
202
203 }
204 });
205</script>
206
207<#function getDlFileEntry url>
208 <#assign parts=url?string?split("/") />
209 <#assign uuid=parts[5]?string?split("?")[0] />
210 <#assign dlFileEntry=dLFileLocalService.fetchDLFileEntryByUuidAndGroupId(uuid, groupId)! />
211 <#return dlFileEntry />
212</#function>
213
214<#function getRelatedAsset related>
215 <#assign parts=url?string?split("/") />
216 <#assign uuid=parts[5]?string?split("?")[0] />
217 <#assign dlFileEntry=dLFileLocalService.fetchDLFileEntryByUuidAndGroupId(uuid, groupId)! />
218 <#return dlFileEntry />
219</#function>