Willis Carrier, l'inventore dell'aria condizionata | Hera Comm
Si è verificato un errore nell'elaborarazione del modello.
Java method "static it.reply.open.hera.template.context.contributor.context.contributor.HeraContributorLocalService.getLayout(long, boolean, long)" threw an exception; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: pageLayoutArticolo1 = heraContributor... [in template "20099#20135#38317002" at line 166, column 5] ----
1<#assign displaydate = .vars['reserved-article-display-date'].data>
2 <#assign originalLocale = .locale>
3 <#setting locale = localeUtil.getDefault()>
4 <#assign displaydate = displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
5 <#assign locale2 = originalLocale>
6
7 <section>
8 <div class="canva">
9 <#if ImmagineSfondo?? && ImmagineSfondo.getData()?? && ImmagineSfondo.getData() != "">
10 <div class="canvaContainer">
11 <img loading="lazy" src="${ImmagineSfondo.getData()}" style="
12 object-fit: cover;
13 top: 0;
14 left: 0;
15 position: absolute;
16 width: 100%;
17 height: 100%;
18 object-position: center right;
19"></img>
20 <#else>
21 <div class="canvaContainer">
22 </#if>
23 <div class="canva__txtWrapper">
24 <#if LinkBreadcrumb?? && LinkBreadcrumb.getSiblings()?has_content>
25 <ul class="breadcrumbs">
26 <#list LinkBreadcrumb.getSiblings() as cur_LinkBreadcrumb>
27 <#assign
28 link = (cur_LinkBreadcrumb.getFriendlyUrl()??)?then(cur_LinkBreadcrumb.getFriendlyUrl(), "")
29 />
30 <#if link?has_content>
31 <li class="breadcrumbs__item">
32 <a class="breadcrumbs__itemLink" href="${link}">
33 ${cur_LinkBreadcrumb.LabelLink.getData()}
34 </a>
35 </li>
36 </#if>
37 </#list>
38 </ul>
39 </#if>
40
41 <#if ImmagineTesto?? && ImmagineTesto.getData()?? && ImmagineTesto.getData() != "">
42 <img alt="${ImmagineTesto.getAttribute('alt')}"
43 src="${ImmagineTesto.getData()}" class="canva__img"/>
44 </#if>
45 </div>
46 </div>
47 </section>
48 <section class="wrapper wrapper--small">
49 <div class="tagIcon">
50 <#if .vars['reserved-article-asset-tag-names']?? &&
51 .vars['reserved-article-asset-tag-names'].data?has_content >
52 <#list .vars['reserved-article-asset-tag-names'].data?split(",") as tagName>
53 <a href="/ricerca-tag-page/-/tag/${tagName}">
54 <button class="tagIcon__button">${tagName}</button>
55 </a>
56 </#list>
57 </#if>
58 <#if getterUtil.getBoolean(Condividi.getData())>
59 <span class="tagIcon__icon">${Condividi.TestoCondividi.getData()}</span>
60 </#if>
61 </div>
62 <div class="freeTextHtml">
63 <h1>${Titolo.getData()}</h1>
64 ${PrimaSezioneTesto.getData()}
65 <#if ImmaginePrincipale.getData()?? && ImmaginePrincipale.getData() != "">
66 <figure>
67 <img alt="${ImmaginePrincipale.getAttribute("alt")}"
68 src="${ImmaginePrincipale.getData()}" loading="lazy"/>
69 <#if ImmaginePrincipale.ImageCaption.getData()?? &&
70 ImmaginePrincipale.ImageCaption.getData()?has_content>
71 <figcaption>Via Pagina Facebook @SustainableKelseaYoga</figcaption>
72 </#if>
73 </figure>
74 </#if>
75 ${SecondaSezioneTesto.getData()}
76 <p>Articolo pubblicato il: ${displaydate?string["dd/MM/yyyy"]}</p>
77 </div>
78 </section>
79
80 <#assign jsonFasciaMagenta=jsonFactoryUtil.createJSONObject(FasciaMagenta.getData()) />
81 <#if jsonFasciaMagenta.classPK??>
82 <#attempt>
83
84 <#assign classPK=jsonFasciaMagenta.classPK />
85 <#assign fasciaMagenta=heraContributorLocalService.getLatestArticle(classPK?number)
86 docXml=saxReaderUtil.read(fasciaMagenta.getContentByLocale(locale.toString()))
87 TitoloBanner=docXml.valueOf("//dynamic-element[@name='TitoloBanner' ]/dynamic-content/text()")
88 SottotitoloBanner=docXml.valueOf("//dynamic-element[@name='SottotitoloBanner' ]/dynamic-content/text()")
89 LabelBottoneBanner=docXml.valueOf("//dynamic-element[@name='LabelBottoneBanner' ]/dynamic-content/text()")
90 AttivaLinkEsterno=docXml.valueOf("//dynamic-element[@name='AttivaLinkEsterno' ]/dynamic-content/text()")
91 LinkBannerEsterno=docXml.valueOf("//dynamic-element[@name='LinkBannerEsterno' ]/dynamic-content/text()")
92 LinkBottoneBannerOBJ=docXml.valueOf("//dynamic-element[@name='LinkBottoneBanner' ]/dynamic-content/text()")
93
94
95 layoutIDBottoneBanner=LinkBottoneBannerOBJ?split("@")?first
96 layoutIDJsonObject = jsonFactoryUtil.createJSONObject(layoutIDBottoneBanner)
97 groupIDlinkBott=LinkBottoneBannerOBJ?split("@")?last
98 groupIDJsonObject = jsonFactoryUtil.createJSONObject(groupIDlinkBott)
99 pageLayoutBottoneBanner=heraContributorLocalService.getLayout(groupIDJsonObject.getLong("groupId"), false, layoutIDJsonObject.getLong('layoutId'))
100 LinkBottoneBanner=pageLayoutBottoneBanner.getFriendlyURL(local)
101 target=""
102 />
103 <#recover>
104 </#attempt>
105
106
107
108
109
110 <section>
111 <div class="bannerLogo">
112 <div class="bannerLogo__wrapper">
113 <div class="bannerLogo__textWrapper">
114 <#if TitoloBanner??>
115 <h3 class="bannerLogo__title">${TitoloBanner}</h3>
116 </#if>
117 <#if SottotitoloBanner??>
118 <div class="bannerLogo__text">${SottotitoloBanner}</div>
119 </#if>
120 </div>
121 <#if LabelBottoneBanner?? && AttivaLinkEsterno?? && AttivaLinkEsterno=="false">
122
123 <div class="bannerLogo__btnWrapper">
124 <a class="bannerLogo__button" href="${LinkBottoneBanner}">${LabelBottoneBanner}</a>
125 </div>
126 </#if>
127
128 <#if LabelBottoneBanner?? && AttivaLinkEsterno?? && AttivaLinkEsterno=="true">
129
130 <div class="bannerLogo__btnWrapper">
131 <a class="bannerLogo__button" href="${LinkBannerEsterno}">${LabelBottoneBanner}</a>
132 </div>
133
134 </#if>
135
136 </div>
137 </div>
138 </section>
139 </#if>
140
141 <#assign jsonArticoliCorrelati=jsonFactoryUtil.createJSONObject(ArticoliCorrelati.getData()) />
142<#if jsonArticoliCorrelati.classPK??>
143 <#assign classPK=jsonArticoliCorrelati.classPK />
144 <#assign articoliCorrelati=heraContributorLocalService.getLatestArticle(classPK?number)
145 docXml=saxReaderUtil.read(articoliCorrelati.getContentByLocale(locale.toString()))
146
147 TitoloArticoliCorrelati=docXml.valueOf("//dynamic-element[@name='TitoloArticoliCorrelati' ]/dynamic-content/text()")
148
149 Articolo1OBJ=docXml.valueOf("//dynamic-element[@name='Articolo1' ]/dynamic-content/text()")
150 ImmagineArticolo1OBJ=docXml.valueOf("//dynamic-element[@name='ImmagineArticolo1' ]/dynamic-content/text()")
151
152 Articolo2OBJ=docXml.valueOf("//dynamic-element[@name='Articolo2' ]/dynamic-content/text()")
153 ImmagineArticolo2OBJ=docXml.valueOf("//dynamic-element[@name='ImmagineArticolo2' ]/dynamic-content/text()")
154 Articolo3OBJ=docXml.valueOf("//dynamic-element[@name='Articolo3' ]/dynamic-content/text()")
155 ImmagineArticolo3OBJ=docXml.valueOf("//dynamic-element[@name='ImmagineArticolo3'
156 ]/dynamic-content/text()")
157
158
159
160
161
162 layoutIDarticolo1=LinkBottoneBannerOBJ?split("@")?first
163 layoutIDJsonObject = jsonFactoryUtil.createJSONObject(layoutIDarticolo1)
164 groupIDarticolo1=LinkBottoneBannerOBJ?split("@")?last
165 groupIDJsonObject = jsonFactoryUtil.createJSONObject(groupIDarticolo1)
166 pageLayoutArticolo1=heraContributorLocalService.getLayout(groupIDJsonObject.getLong("groupId"), false, layoutIDJsonObject.getLong('layoutId'))
167 LinkArticolo1=pageLayoutArticolo1.getFriendlyURL(local) target=""
168 target=""
169
170
171 layoutIDarticolo2=LinkBottoneBannerOBJ?split("@")?first
172 layoutIDJsonObject = jsonFactoryUtil.createJSONObject(layoutIDarticolo2)
173 groupIDarticolo2=LinkBottoneBannerOBJ?split("@")?last
174 groupIDJsonObject = jsonFactoryUtil.createJSONObject(groupIDarticolo2)
175 pageLayoutArticolo2=heraContributorLocalService.getLayout(groupIDJsonObject.getLong("groupId"), false, layoutIDJsonObject.getLong('layoutId'))
176 LinkArticolo2=pageLayoutArticolo2.getFriendlyURL(local) target=""
177 target=""
178
179
180 layoutIDarticolo3=LinkBottoneBannerOBJ?split("@")?first
181 layoutIDJsonObject = jsonFactoryUtil.createJSONObject(layoutIDarticolo3)
182 groupIDarticolo3=LinkBottoneBannerOBJ?split("@")?last
183 groupIDJsonObject = jsonFactoryUtil.createJSONObject(groupIDarticolo3)
184 pageLayoutArticolo3=heraContributorLocalService.getLayout(groupIDJsonObject.getLong("groupId"), false, layoutIDJsonObject.getLong('layoutId'))
185 LinkArticolo3=pageLayoutArticolo3.getFriendlyURL(local) target=""
186 target=""
187 />
188
189 <#if ImmagineArticolo1OBJ?has_content>
190 <#assign
191 immageOBJ1 = jsonFactoryUtil.createJSONObject(ImmagineArticolo1OBJ)
192 uuidImgArt1 = immageOBJ1.uuid
193 groupImgArt1 = immageOBJ1.groupId
194 img1Name = immageOBJ1.name
195 descImg1 = immageOBJ1.alt
196
197 fileEntryImage1 = heraContributorLocalService.fetchDLFileEntryByUuidAndGroupId(uuidImgArt1, groupImgArt1?number)
198
199 folderIDimg1 = fileEntryImage1.getFolderId()
200
201
202 immagineUrl1 = "/documents/" + groupImgArt1 + "/" + folderIDimg1 + "/" + img1Name + "/" + uuidImgArt1
203 />
204 </#if>
205 <#attempt>
206 <#if ImmagineArticolo2OBJ?has_content>
207 <#assign
208 immageOBJ2 = jsonFactoryUtil.createJSONObject(ImmagineArticolo2OBJ)
209 uuidImgArt2 = immageOBJ2.getString("uuid")
210 groupImgArt2 = immageOBJ2.getString("groupId")?number
211 img2Name = immageOBJ2.getString("name")
212 descImg2=immageOBJ2.getString("alt")
213 fileEntryImage2 = heraContributorLocalService.fetchDLFileEntryByUuidAndGroupId(uuidImgArt2, groupImgArt2)
214 folderIDimg2 = fileEntryImage2.getFolderId()
215 immagineUrl2 = "/documents/" + groupImgArt2+ "/" + folderIDimg2 + "/" + img2Name + "/" + uuidImgArt2
216 />
217 </#if>
218 <#recover>
219 </#attempt>
220
221 <#if ImmagineArticolo3OBJ?? && ImmagineArticolo3OBJ != "">
222
223 <#assign
224 immageOBJ3 = jsonFactoryUtil.createJSONObject(ImmagineArticolo3OBJ)
225 uuidImgArt3 = immageOBJ3.uuid
226 groupImgArt3 = immageOBJ3.groupId
227 img3Name = immageOBJ3.name
228
229 fileEntryImage3 = heraContributorLocalService.fetchDLFileEntryByUuidAndGroupId(uuidImgArt3, groupImgArt3?number)
230
231 folderIDimg3 = fileEntryImage3.getFolderId()
232
233 descImg3=immageOBJ3.alt
234 immagineUrl3 = "/documents/" + groupImgArt3+ "/" + folderIDimg3 + "/" + img3Name + "/" + uuidImgArt3
235 />
236 </#if>
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276 <section class="extraContentFullWrapper">
277 <div class="card">
278 <div class="card__exteranalWrapper">
279 <div class="card__titleWrapper">
280 <#if TitoloArticoliCorrelati?? >
281 <h3 class="card__title">${TitoloArticoliCorrelati}</h3>
282 </#if>
283 </div>
284 <div class="card__allCardscontainer">
285
286
287 <#if Articolo1OBJ?? && Articolo1OBJ != "" && ImmagineArticolo1OBJ?? && ImmagineArticolo1OBJ != "">
288
289 <a class="card__wrapper" href="${LinkArticolo1}">
290 <div class="card__internalWrapper">
291 <img loading="lazy" src="${immagineUrl1}" alt="${descImg1}" class="card__img">
292 <div class="card__details">
293 <p class="card__description">${descImg1}</p>
294 </div>
295 </div>
296 </a>
297
298 </#if>
299 <#attempt>
300 <#if Articolo2OBJ?? && Articolo2OBJ != "" && ImmagineArticolo2OBJ?? && ImmagineArticolo2OBJ != "">
301
302 <a class="card__wrapper" href="${LinkArticolo2}">
303 <div class="card__internalWrapper">
304 <img loading="lazy" src="${immagineUrl2}" alt="${descImg2}" class="card__img">
305 <div class="card__details">
306 <p class="card__description">${descImg2}</p>
307 </div>
308 </div>
309 </a>
310 </#if>
311 <#recover>
312 </#attempt>
313 <#if Articolo3OBJ?? && Articolo3OBJ != "" && ImmagineArticolo3OBJ?? && ImmagineArticolo3OBJ != "">
314
315 <a class="card__wrapper" href="${LinkArticolo3}">
316 <div class="card__internalWrapper">
317 <img loading="lazy" src="${immagineUrl3}" alt="${descImg3}" class="card__img">
318 <div class="card__details">
319 <p class="card__description">${descImg3}</p>
320 </div>
321 </div>
322 </a>
323 </#if>
324 </#if>
325
326
327 </div>
328 </div>
329 </div>
330 </section>
331
332 <style>
333 a.bannerLogo__button {
334 background: white;
335 padding: 14px 32px;
336 border-radius: 50px;
337}
338
339
340 </style>
341
342
343 <script>
344 $('.card__description').each(function() {
345 var title = $(this).text();
346 var index = title.search(/\\u2019/i);
347
348 if(index !== -1){
349 var newText = title.replace("u2019", "")
350 var cardTitle = newText.replace(/\\/g, "'")
351 $(this).text(cardTitle)
352 }
353 });
354 </script>