For "." left-hand operand: Expected a hash, but this has evaluated to a number (wrapper: f.t.SimpleNumber): ==> layout [in template "20115#20151#FULLARTICLE" at line 320, column 54] ---- FTL stack trace ("~" means nesting-related): - Failed at: #if layout.name?? && layout.name?trim... [in template "20115#20151#FULLARTICLE" at line 320, column 49] ----
1<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()>
2<#if serviceContext.getThemeDisplay().getThemeSetting("v2-look-and-feel")?has_content && serviceContext.getThemeDisplay().getThemeSetting("v2-look-and-feel")!="">
3 <#assign v2_enabled = serviceContext.getThemeDisplay().getThemeSetting("v2-look-and-feel")?boolean />
4<#else>
5 <#assign v2_enabled = false />
6</#if>
7
8<#if v2_enabled>
9
10
11<!-- Article -->
12 <#assign url="#">
13 <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] />
14 <#assign url=PortalUtil.getCurrentCompleteURL(request) />
15 <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
16 <#assign portalURL = serviceContext.getThemeDisplay().getPortalURL() />
17 <#assign description=.vars['reserved-article-description'].data />
18 <#--
19 <#assign themeDisplay = serviceContext.getThemeDisplay() />
20 <#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() />
21 -->
22 <#-- Header section -->
23 <#-- TODO: if we have related content, then we should had the class ".t_fullArticle--hasAside" to the article element right below -->
24 <#assign hasRelated=false />
25 <#if (relatedArticles.relatedLinkToPage)?has_content && relatedArticles.relatedLinkToPage.getSiblings()?first.getData()?has_content>
26 <#assign hasRelated=true />
27 <article class="article-full">
28 <#else>
29 <article class="article-full"> <#-- OR -->
30 </#if>
31
32 <!-- hero-banner hero-banner--slim -->
33 <div class="hero-banner">
34 <div class="hero-banner__mask">
35 <picture>
36 <img class="lazyload" src="${header.Visual.getData()}" data-fileentryid="${header.Visual.getAttribute("fileEntryId")}" data-src="${header.Visual.getData()}" data-srcset="${header.Visual.getData()}" />
37 </picture>
38 <div class="hero-banner__mask">
39 <div class="hero-banner__container">
40 <div class="hero-banner__content text-left">
41 <#if TopContent?has_content>
42 <#-- BREADCRUMBS -->
43 <@liferay.breadcrumbs />
44 </#if>
45 <h1 class="font-bold-publicoheadline font-display-4 color-white">${header.Visual.MainText.getData()}</h1>
46 <#if header.Visual.TextCenter.getData()?? && header.Visual.TextCenter.getData() != "">
47 <p class="hero-banner__text font-medium color-white">${header.Visual.TextCenter.getData()}</p>
48 </#if>
49 </div>
50 </div>
51 </div>
52 </div>
53 </div>
54 <!-- /hero-banner -->
55
56 <div class="article-full__content pb-4">
57 <div class="article-full__container container">
58
59 <!-- tag -->
60 <#if TopContent?has_content>
61 <div class="tg__tag">
62 <div class="tg__tag--container">
63 <#assign journalArticleId = .vars['reserved-article-id'].data>
64 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
65 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
66 <#assign articleResourcePK = journalArticleLocalService.getArticle(groupId,journalArticleId).getArticleResourceUuid()>
67 <#assign categoryList = assetEntryLocalService.fetchEntry(groupId,articleResourcePK).getCategories()>
68 <ul class="tg__tag--list">
69 <#list categoryList as category>
70 <li class="tg__tag--element">
71 <a class="t_tag__link">
72 ${category.getTitle(locale)}
73 </a>
74 </li>
75 </#list>
76 </ul>
77 </div>
78 </div>
79 </#if>
80 <!-- tag -->
81
82 <#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content>
83 <div class="article-full__row">
84 <#else>
85 <div class="article-full__row--">
86 </#if>
87 <div class="article-full__left">
88
89 <div class="article-full__text">
90 ${TopContent.getData()}
91 </div>
92
93 <#-- Mid content -->
94 <#if mid_content.getData()?has_content>
95 <section class="article-full__text">
96 <p>${mid_content.getData()}</p>
97 </section>
98 </#if>
99
100 <#-- Bottom content -->
101 <#if bottom_content.getData()?has_content>
102 <section class="article-full__text">
103 <p>${bottom_content.getData()}</p>
104 </section>
105 </#if>
106
107 </div>
108
109 <#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content>
110 <div class="article-full__right">
111 <!-- Detail 1 -->
112
113 <#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content>
114 <#list relatedArticles.relatedLinkToPage.getSiblings() as relatedArticle>
115 <#if relatedArticle?index=0 && relatedArticle.getData()?has_content>
116 <aside class="article-full__detail mb-3">
117 <div class="article-full__container color-white">
118 <div class="pb-3"><span class="font-bold-publicoheadline font-display-5"><@liferay.language key="related-assets" /></span></div>
119 <div class="article-full__detail--data font-normal">
120 <#assign layout = relatedArticle.getData()?eval/>
121 <#if layout.name?? && layout.name?trim!="">
122 <#assign pageTitle = layout.name />
123 <#elseif layout.label?? && layout.label?trim!="">
124 <#assign pageTitle = layout.label />
125 <#else>
126 <#assign pageTitle = "---" />
127 </#if>
128 <p class="article-full__detail--title"><a class="color-white" href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
129 <#elseif relatedArticle.getData()?has_content>
130 <#assign layout = relatedArticle.getData()?eval/>
131 <#if layout.name?? && layout.name?trim!="">
132 <#assign pageTitle = layout.name />
133 <#elseif layout.label?? && layout.label?trim!="">
134 <#assign pageTitle = layout.label />
135 <#else>
136 <#assign pageTitle = "---" />
137 </#if>
138 <p class="article-full__detail--title"><a class="color-white" href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
139 </#if>
140 </#list>
141 <#if hasRelated>
142 </div>
143 </div>
144 </aside>
145 </#if>
146 </#if>
147
148 </div>
149 </#if>
150 </div>
151 </div>
152 </div>
153
154 <#-- Get Quote section -->
155 <section class="t_block t_quote t_quote--xlarge" style="background-color:${quoting_block.background_color.getData()}">
156 <div class="t_block__inner t_quote__inner">
157 <h2 class="t_quoteTitle font-display-5 color-white font-medium-publicoheadline">${quoting_block.Title.getData()}</h2>
158 <p class="t_mainText color-white font-medium">${quoting_block.paragraph.getData()}</p>
159 <#if quoting_block.Button.LinkText.getData()?? && quoting_block.Button.LinkText.getData() != "">
160 <div class="mt-2">
161 <a href="${quoting_block.Button.getFriendlyUrl()}" class="btn btn--light-white text-uppercase">
162 ${quoting_block.Button.LinkText.getData()}
163 </a>
164 </div>
165 </#if>
166 </div>
167 </section>
168 <#-- Get Quote section -->
169
170 <#-- Splitted images section -->
171 <#if (splitted_images.split_image.getSiblings())?has_content>
172 <!-- pictures-->
173 <section class="pictures mt-5">
174 <div class="pictures__inline pictures__inline--container">
175 <#list splitted_images.split_image.getSiblings() as image_splitted>
176 <#if (image_splitted.getData()?has_content
177 && image_splitted.getAttribute("fileEntryId")?has_content
178 && image_splitted.getAttribute("fileEntryId")?has_content
179 && image_splitted.getAttribute("alt")?has_content)>
180 <div class="pictures__inline pictures__inline--img-fluid">
181 <figure class="t_picture__element">
182 <img class="pictures__inline pictures__inline--card-img-top lazyload" data-fileentryid="${image_splitted.getAttribute("fileEntryId")}" alt="${image_splitted.getAttribute("alt")}" data-src="${image_splitted.getData()}" />
183 </figure>
184 <div class="pictures__inline pictures__inline--card-img-overlay">
185 <p class="pictures__inline pictures__inline--card-title color-white font-bold-publicoheadline font-display-5 pb-3">${image_splitted.split_image_text.getData()}</p>
186 </div>
187 </div>
188 </#if>
189 </#list>
190 </div>
191 </section>
192 <!-- pictures-->
193 </#if>
194
195 <#if bottom_links.Picture.getSiblings()?has_content>
196 <section class="mt-1">
197 <h2 class="font-display-4 text-center font-medium-publicoheadline pt-3 pb-5">${bottom_links.bottom_content_title.getData()}</h2>
198
199 <div class="article-inline">
200
201 <#list bottom_links.Picture.getSiblings() as cur_Picture>
202 <div class="article-inline__card">
203 <div class="article-inline__image">
204 <#if cur_Picture.getData()?? && cur_Picture.getData() != "">
205 <img class="lazyload t_insurance__listElement__picture" data-fileentryid="${cur_Picture.getAttribute("fileEntryId")}" alt="${cur_Picture.getAttribute("alt")}" data-src="${cur_Picture.getData()}" />
206 </#if>
207 </div>
208 <div class="article-inline__card-body">
209 <h3 class="article-inline__title h2">${cur_Picture.bottom_content_subtitle.getData()}</h3>
210 <p class="article-inline__card-text">
211 ${cur_Picture.Text.getData()}
212 </p>
213 <#if cur_Picture.Link.TextLink.getData()?? && cur_Picture.Link.TextLink.getData() != "">
214 <div><a href="${cur_Picture.Link.getFriendlyUrl()}"class="link link--secondary-link icons--right icons--east">${cur_Picture.Link.TextLink.getData()}</a></div>
215 </#if>
216 </div>
217 </div>
218 </#list>
219 </div>
220 </section>
221 </#if>
222
223
224</article>
225
226<!-- /Article -->
227
228<#else>
229 <#assign url="#">
230 <#assign PortalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"] />
231 <#assign url=PortalUtil.getCurrentCompleteURL(request) />
232 <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
233 <#assign portalURL = serviceContext.getThemeDisplay().getPortalURL() />
234 <#assign description=.vars['reserved-article-description'].data />
235 <#--
236 <#assign themeDisplay = serviceContext.getThemeDisplay() />
237 <#assign currentUrl = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() />
238 -->
239 <#-- Header section -->
240 <#-- TODO: if we have related content, then we should had the class ".t_fullArticle--hasAside" to the article element right below -->
241 <#assign hasRelated=false />
242 <#if (relatedArticles.relatedLinkToPage)?has_content && relatedArticles.relatedLinkToPage.getSiblings()?first.getData()?has_content>
243 <#assign hasRelated=true />
244 <article class="t_fullArticle t_fullArticle--hasAside">
245 <#else>
246 <article class="t_fullArticle"> <#-- OR -->
247 </#if>
248
249 <header>
250 <#if header.Visual.getData()?? && header.Visual.getData() != "">
251 <div class="t_introduction t_block" style="background-image: url('${header.Visual.getData()}')">
252 <#else>
253 <div class="t_introduction t_block">
254 </#if>
255 <#if (header.Visual.backgroundUrl.getData())?? && (header.Visual.backgroundUrl.getData()) != "" >
256 <a class="t_introduction_background_url_img" href="${header.Visual.backgroundUrl.getData()}" ></a>
257 </#if>
258 <div class="t_introduction__inner t_block__inner">
259 <#if header.Visual.TextCenter.getData()?? && header.Visual.TextCenter.getData() != "">
260 <p class="t_introduction__subtitle">${header.Visual.TextCenter.getData()}</p>
261 </#if>
262 <ul class="t_introduction__informations">
263 <li class="t_introduction__information">
264 <p class="t_introduction__informationWording t_introduction__informationWording--author">${header.Visual.TextLeft.getData()}</p>
265 </li>
266 <li class="t_introduction__information">
267 <p class="t_introduction__informationWording">${header.Visual.TextRight.getData()}</p>
268 </li>
269 </ul>
270 <h1 class="t_secondaryTitle">${header.Visual.MainText.getData()}</h1>
271 <div class="t_introduction__ctas">
272 <#if header.Visual.ButtonLeft.ButtonLeftText.getData()?? && header.Visual.ButtonLeft.ButtonLeftText.getData() != "">
273 <a href="${header.Visual.ButtonLeft.getFriendlyUrl()}" class="t_button t_button--secondary">
274 <span class="t_button__label">${header.Visual.ButtonLeft.ButtonLeftText.getData()}</span>
275 </a>
276 </#if>
277 <#if header.Visual.ButtonRight.ButtonRightText.getData()?? && header.Visual.ButtonRight.ButtonRightText.getData() != "">
278 <a href="${header.Visual.ButtonRight.getFriendlyUrl()}" class="t_button t_button--ghost">
279 <span class="t_button__label">${header.Visual.ButtonRight.ButtonRightText.getData()}</span>
280 </a>
281 </#if>
282 </div>
283 </div>
284 </div>
285 <#-- Top content -->
286 <#if TopContent?has_content>
287 <div class="t_article t_block__inner">
288 <#-- BREADCRUMBS -->
289 <@liferay.breadcrumbs />
290 <#-- CATEGORIES -->
291 <#assign journalArticleId = .vars['reserved-article-id'].data>
292 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
293 <#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
294 <#assign articleResourcePK = journalArticleLocalService.getArticle(groupId,journalArticleId).getArticleResourceUuid()>
295 <#assign categoryList = assetEntryLocalService.fetchEntry(groupId,articleResourcePK).getCategories()>
296 <ul class="t_tags">
297 <#list categoryList as category>
298 <li class="t_tag">
299 <a class="t_tag__link" href="#">
300 ${category.getTitle(locale)}
301 </a>
302 </li>
303 </#list>
304 </ul>
305
306 </div>
307 </header>
308
309 <section class="t_article__content">
310 <div class="t_article__text">
311 ${TopContent.getData()}
312 </div>
313 <#if (relatedArticles.relatedLinkToPage.getSiblings())?has_content>
314 <#list relatedArticles.relatedLinkToPage.getSiblings() as relatedArticle>
315 <#if relatedArticle?index=0 && relatedArticle.getData()?has_content>
316 <aside class="t_article__related t_article__related--desktop">
317 <h2 class="t_article__relatedTitle"><@liferay.language key="related-assets" /></h2>
318 <div class="t_article__relatedInner">
319 <#assign layout = relatedArticle.getData()?eval/>
320 <#if layout.name?? && layout.name?trim!="">
321 <#assign pageTitle = layout.name />
322 <#elseif layout.label?? && layout.label?trim!="">
323 <#assign pageTitle = layout.label />
324 <#else>
325 <#assign pageTitle = "---" />
326 </#if>
327 <p class="t_smallText"><a href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
328 <#elseif relatedArticle.getData()?has_content>
329 <#assign layout = relatedArticle.getData()?eval/>
330 <#if layout.name?? && layout.name?trim!="">
331 <#assign pageTitle = layout.name />
332 <#elseif layout.label?? && layout.label?trim!="">
333 <#assign pageTitle = layout.label />
334 <#else>
335 <#assign pageTitle = "---" />
336 </#if>
337 <p class="t_smallText"><a href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
338 </#if>
339 </#list>
340 <#if hasRelated>
341 </div>
342 </aside>
343 </#if>
344 </#if>
345 </section>
346 </#if>
347 <#-- Get Quote section -->
348 <section class="t_block t_quote is-colored" style="background-color:${quoting_block.background_color.getData()}">
349 <div class="t_block__inner t_quote__inner">
350 <h2 class="t_quoteTitle">${quoting_block.Title.getData()}</h2>
351 <p class="t_mainText">${quoting_block.paragraph.getData()}</p>
352 <#if quoting_block.Button.LinkText.getData()?? && quoting_block.Button.LinkText.getData() != "">
353 <a href="${quoting_block.Button.getFriendlyUrl()}" class="t_button t_button--ghost">
354 <span class="t_button__label">${quoting_block.Button.LinkText.getData()}</span>
355 </a>
356 </#if>
357 </div>
358 </section>
359 <#-- Mid content -->
360 <#if mid_content.getData()?has_content>
361 <section class="t_text">
362 ${mid_content.getData()}
363 </section>
364 </#if>
365 <#-- Splitted images section -->
366 <#if (splitted_images.split_image.getSiblings())?has_content>
367 <ul class="t_picture t_block">
368 <#list splitted_images.split_image.getSiblings() as image_splitted>
369 <#if (image_splitted.getData()?has_content
370 && image_splitted.getAttribute("fileEntryId")?has_content
371 && image_splitted.getAttribute("fileEntryId")?has_content
372 && image_splitted.getAttribute("alt")?has_content)>
373 <li class="t_picture__item">
374 <figure class="t_picture__element">
375 <img class="lazyload t_picture__visual" data-fileentryid="${image_splitted.getAttribute("fileEntryId")}" alt="${image_splitted.getAttribute("alt")}" data-src="${image_splitted.getData()}" />
376 <figcaption class="t_picture__legend">${image_splitted.split_image_text.getData()}</figcaption>
377 </figure>
378 </li>
379 </#if>
380 </#list>
381 </ul>
382 </#if>
383 <#-- Bottom content -->
384 <#if bottom_content.getData()?has_content>
385 <section class="t_text">
386 ${bottom_content.getData()}
387 </section>
388 </#if>
389 <#-- Bottom links section -->
390 <#if bottom_links?has_content>
391 <section class="t_insurance">
392 <h2 class="t_secondaryTitle">${bottom_links.bottom_content_title.getData()}</h2>
393 <ul class="t_insurance__list">
394 <#if bottom_links.Picture.getSiblings()?has_content>
395 <#list bottom_links.Picture.getSiblings() as cur_Picture>
396 <li class="t_insurance__listElement">
397 <#if cur_Picture.getData()?? && cur_Picture.getData() != "">
398 <img class="lazyload t_insurance__listElement__picture" data-fileentryid="${cur_Picture.getAttribute("fileEntryId")}" alt="${cur_Picture.getAttribute("alt")}" data-src="${cur_Picture.getData()}" />
399 </#if>
400 <div class="t_insurance__listElement__inner">
401 <h3 class="t_simpleTitle t_insurance__listElement__title">${cur_Picture.bottom_content_subtitle.getData()}</h3>
402 <p class="t_smallText">
403 ${cur_Picture.Text.getData()}
404 </p>
405 <a href="${cur_Picture.Link.getFriendlyUrl()}" class="t_link t_insurance__listElement__cta">${cur_Picture.Link.TextLink.getData()}
406 <svg width="14" height="14" class="t_link__picto" xmlns="http://www.w3.org/2000/svg" role="presentation">
407 <use xlink:href="#full-arrow" href="#full-arrow" />
408 </svg>
409 </a>
410 </div>
411 </li>
412 </#list>
413 </#if>
414 </ul>
415 </section>
416 </#if>
417 <#-- TODO: if we have related content, then we should had the same content in here (notice the difference in css class) -->
418 <#if (relatedArticles.relatedLinkToPage)?has_content>
419 <#list relatedArticles.relatedLinkToPage.getSiblings() as relatedArticle>
420 <#if relatedArticle?index=0 && relatedArticle.getData()?has_content>
421 <aside class="t_article__related">
422 <h2 class="t_article__relatedTitle"><@liferay.language key="related-assets" /></h2>
423 <div class="t_article__relatedInner">
424 <#assign layout = relatedArticle.getData()?eval/>
425 <#if layout.name?? && layout.name?trim!="">
426 <#assign pageTitle = layout.name />
427 <#elseif layout.label?? && layout.label?trim!="">
428 <#assign pageTitle = layout.label />
429 <#else>
430 <#assign pageTitle = "---" />
431 </#if>
432 <p class="t_smallText"><a href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
433 <#elseif relatedArticle.getData()?has_content>
434 <#assign layout = relatedArticle.getData()?eval/>
435 <#if layout.name?? && layout.name?trim!="">
436 <#assign pageTitle = layout.name />
437 <#elseif layout.label?? && layout.label?trim!="">
438 <#assign pageTitle = layout.label />
439 <#else>
440 <#assign pageTitle = "---" />
441 </#if>
442 <p class="t_smallText"><a href="${relatedArticle.getFriendlyUrl()}">${pageTitle}</a></p>
443 </#if>
444 </#list>
445 <#if hasRelated>
446 </div>
447 </aside>
448 </#if>
449 </#if>
450 </article>
451 <script>
452 function googleplusbtn(url) {
453 sharelink = "https://plus.google.com/share?url="+url;
454 newwindow=window.open(sharelink,'name','height=350,width=520');
455 if (window.focus) {newwindow.focus()}
456 return false;
457 }
458 </script>
459 <script>
460 function fbShare(url, title, descr, image, winWidth, winHeight) {
461 var winTop = (screen.height / 2) - (winHeight / 2);
462 var winLeft = (screen.width / 2) - (winWidth / 2);
463 window.open('http://www.facebook.com/sharer.php?s=100&p[title]=' + title + '&p[summary]=' + descr + '&p[url]=' + url + '&p[images][0]=' + image, 'sharer', 'top=' + winTop + ',left=' + winLeft + ',toolbar=0,status=0,width=' + winWidth + ',height=' + winHeight);
464 }
465 </script>
466 <script>
467 $('.popup').click(function(event) {
468 var width = 575,
469 height = 400,
470 left = ($(window).width() - width) / 2,
471 top = ($(window).height() - height) / 2,
472 url = this.href,
473 opts = 'status=1' +
474 ',width=' + width +
475 ',height=' + height +
476 ',top=' + top +
477 ',left=' + left;
478
479 window.open(url, 'twitter', opts);
480
481 return false;
482 });
483 </script>
484</#if>
Qualche consiglio per i nostri viaggiatori!
Documenti: Documenti per andare a Londra | La patente internazionale| Passaporto per minorenni e bambini | Documenti per il passaporto italiano
Tips & Tricks: Viaggiare Sicuri all'Estero | Cosa portare in viaggio? | Viaggi con bambini | Viaggiare sicuri nel mondo | 10 consigli indispensabili per preparare al meglio il vostro viaggio | Fuso orario
Problemi in viaggio: Imprevisti durante le vacanze | Smarrimento passaporto, prima della partenza o in viaggio: ecco cosa fare! | Smarrimento carta di identità: cosa fare |Bagaglio in ritardo, smarrito o danneggiato in volo |
Salute: Ti senti male all'estero: cosa fare | Kit di pronto soccorso da viaggio | Spese mediche all'estero | Viaggiare in gravidanza | Assicurazione medica per gli USA | Vaccinazione di viaggio| Vaccinazione SudAfrica