1<#--
2Web content templates are used to lay out the fields defined in a web
3content structure.
4
5Please use the left panel to quickly add commonly used variables.
6Autocomplete is also available and can be invoked by typing "${".
7-->
8
9<#assign Data_Data = getterUtil.getString(Data.getData())>
10<#assign Data_Ora = "" />
11<#if Ora?? && Ora.getData()?? >
12 <#assign Data_Ora = getterUtil.getString(Ora.getData()) />
13</#if>
14
15
16<style>
17.vb-module-intro .occhiello-pos .subheading.occhiello {
18 /*display: none;*/
19}
20.subheading.orange {
21 color: #eb690b;
22}
23img.image-centered {
24 margin: 0 auto;
25}
26.titolo-sezione.titolo-large {
27 margin-bottom: 30px;
28}
29.titolo-sezione.titolo-large .heading3 {
30 color: #4d4d4d;
31}
32.vb-module-masthead .title-header-wrapper .heading1.small {
33 font-size: 42px;
34 line-height: 1.2em;
35}
36.vb-module-intro.news-detail {
37 padding-bottom: 10px;
38}
39.vb-module-intro.news-detail .row-padding-left {
40 padding-left: 17%;
41}
42
43.portlet-body .h2 {
44 display: none;
45}
46
47.box-icon-arrow {
48 margin-top: 10px;
49}
50
51.col-sm-12 .slider-controls .right-prev-arrow {
52 float: right;
53 position: absolute;
54 top: 20px;
55 right: 0px;
56}
57.col-sm-12 .slider-controls .left-next-arrow {
58 float: right;
59 position: absolute;
60 top: 20px;
61}
62.single-event .slick-dots {
63 right: 20px;
64 bottom: 20px;
65 text-align: right;
66}
67.single-event .slick-dots li button:before {
68 color: #C0C0C0;
69 font-size: 16px;
70}
71.single-event .container-slider-icone {
72 margin-bottom: 0px;
73 padding-bottom: 0px;
74}
75.single-event .slick-slider {
76 margin-bottom: 0px;
77}
78.single-event .slick-dots li {
79 margin: 0 15px;
80}
81.single-event .paragrafo-news {
82 padding-bottom: 40px;
83 padding-left: 0;
84 padding-right: 0;
85}
86.single-event .heading3 {
87 margin-top: 50px;
88 margin-bottom: 30px;
89}
90.single-event .paragrafo-news .heading3 {
91 margin-top: 20px;
92}
93.iframe-maps {
94 padding-top: 100px;
95}
96.wrap-contact-map {
97 margin-left: 25px;
98}
99.col-xs-12 .wrap-contact-map {
100 margin-left: 5px;
101}
102.contact-map {
103 height: 400px;
104 border: 0;
105 width: 100%;
106}
107
108.data-news {
109 /*color: #4d4d4d;*/
110 text-transform: none;
111}
112.news-detail .date-pull-right {
113 float: right;
114}
115
116.paragrafo-news .rich-text ul li::before {
117 left: 0;
118 line-height: 24px;
119 display: inline;
120}
121.paragrafo-news .rich-text ul li {
122 list-style: outside none none;
123 padding-left: 0;
124 text-indent: -18px;
125 margin-left: 16px;
126 line-height: 32px;
127 margin-bottom: 8px;
128}
129
130@media screen and (max-width: 480px){
131 .single-event .slick-dots li button:before {
132 color: initial;
133 font-size: 6px;
134 }
135 .single-event .slick-dots {
136 right: initial;
137 bottom: -40px;
138 text-align: center;
139 }
140 .slick-dots {
141 background-color: #fff;
142 }
143 .single-event .slick-dots li {
144 margin: 0 5px;
145 }
146 .news-detail .date-pull-right {
147 float: left;
148 }
149}
150</style>
151
152
153<div class="container vb-module-masthead no-img">
154 <div class="row no-img">
155 <div class="col-xs-12">
156 <div class="title-header-wrapper">
157 <div class="row ">
158 <div class="col-xs-offset-1 col-xs-10 col-md-offset-2 col-md-8">
159 <div class="subheading-category row-padding-left">
160 <div class="vb-bread-header vb-bread-pos">
161 <@liferay.breadcrumbs />
162 </div>
163 </div>
164 </div>
165 <div class="col-xs-12 col-md-offset-2 col-md-8 pos-head">
166 <div class="col-xs-offset-1 col-xs-10 col-md-offset-0 col-md-12">
167 <h1 class="heading1 small">${.vars['reserved-article-title'].data}</h1>
168 </div>
169 </div>
170 </div>
171 </div>
172 </div>
173 </div>
174</div>
175
176
177<#-- assign assetEntryLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService") /-->
178<#-- assign journalArticleLocalService = serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService") /-->
179
180<#-- assign article = journalArticleLocalService.getArticle(getterUtil.getLong(scopeGroupId), .vars['reserved-article-id'].data) -->
181<#-- assign asset = assetEntryLocalService.getEntry('com.liferay.portlet.journal.model.JournalArticle', article.resourcePrimKey) -->
182
183
184<#assign journalArticleId = .vars['reserved-article-id'].data />
185<!-- <p>Article ID: ${journalArticleId}</p> -->
186
187<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"] />
188
189<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId) />
190<!-- <p>Article PK: ${articleResourcePK}</p> -->
191
192<#assign assetTagLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetTagLocalServiceUtil"] />
193
194<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"] />
195
196<#assign tagList = assetTagLocalServiceUtil.getTags("com.liferay.journal.model.JournalArticle", articleResourcePK) />
197
198<#assign categoryList = assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle", articleResourcePK) />
199
200<#list tagList as tag>
201 <!-- <p>Tag: ${tag.name}</p> -->
202</#list>
203
204<#assign catValues = []>
205<#list categoryList as category>
206 <!-- <p>Category: ${category.getDescription(locale)}</p> -->
207 <#assign catValues = catValues + [ category.getName() ] />
208</#list>
209
210<!-- <p>Categorie totali: ${categoryList.size()}</p> -->
211<!-- <p>Lista nomi categorie: ${catValues?join(", ")}</p> -->
212
213<#assign occhiello_categoria = "" />
214
215<#if catValues?seq_index_of("price-sensitive") gte 0 >
216 <#assign seqIndex = catValues?seq_index_of("price-sensitive") />
217 <#assign occhiello_categoria = categoryList[seqIndex].getDescription(locale) />
218<#elseif catValues?seq_index_of("comunicato-stampa") gte 0 >
219 <#assign seqIndex = catValues?seq_index_of("comunicato-stampa") />
220 <#assign occhiello_categoria = categoryList[seqIndex].getDescription(locale) />
221<#elseif catValues?seq_index_of("news") gte 0 >
222 <#assign seqIndex = catValues?seq_index_of("news") />
223 <#assign occhiello_categoria = categoryList[seqIndex].getDescription(locale) />
224</#if>
225
226<#assign occhiello_editoriale = getterUtil.getString(occhiello.getData()) />
227<#assign occhiello_primo = "" />
228<#assign occhiello_html = "" />
229
230<#if occhiello_editoriale?has_content >
231 <!-- <p>Occhiello editoriale: ${occhiello_editoriale}</p> -->
232 <#assign occhiello_html = occhiello_editoriale />
233<#else>
234 <#assign occhiello_primo = categoryList[0].getDescription(locale)!'valore default' />
235 <!-- <p>Occhiello editoriale non inserito, prima categoria trovata: ${occhiello_primo}</p> -->
236 <!-- <p>Occhiello editoriale non inserito, categoria selezionata: ${occhiello_categoria}</p> -->
237 <#assign occhiello_html = occhiello_categoria />
238</#if>
239
240
241<#if titolostrillo?? && titolostrillo.getData()?? && titolostrillo.getData() != "">
242<div class="container vb-module-container vb-module-intro bkg-white news-detail">
243
244 <div class="row">
245 <div class="col-xs-offset-1 col-xs-4 col-md-offset-2 col-md-4"> <!-- col-xs-offset-1 col-xs-10 col-md-offset-1 col-md-4 -->
246 <div class="occhiello-pos EX__row-padding-left">
247 <span class="subheading occhiello no__orange">${occhiello_html}</span>
248 </div>
249 </div>
250 <#if validator.isNotNull(Data_Data)>
251 <div class="col-xs-offset-1 col-xs-5 col-md-offset-0 col-md-5"> <!-- col-xs-offset-1 col-xs-10 col-md-offset-0 col-md-4 -->
252 <div class="occhiello-pos date-pull-right">
253 <p class="subheading data-news no__orange">
254 <@liferay.language key="news.leaf.label.pubblicato-il" />
255 <#assign Data_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Data, locale)>
256 ${dateUtil.getDate(Data_DateObj, "dd/MM/yyyy", locale)}
257 <#if validator.isNotNull(Data_Ora)>
258 <@liferay.language key="news.leaf.label.alle-ore-prefix" /> ${Data_Ora} <@liferay.language key="news.leaf.label.alle-ore-suffix" />
259 </#if>
260 </p>
261 </div>
262 </div>
263 </#if>
264 </div>
265
266 <div class="row">
267 <div class="col-xs-offset-1 col-xs-10 col-md-offset-2 col-md-9">
268 <div class="titolo-sezione titolo-sezione-pos titolo-large">
269 <h3 class="heading3">${titolostrillo.getData()}</h3>
270 </div>
271 </div>
272 </div>
273
274 <div class="row">
275 <div class="col-xs-10 col-xs-offset-1 col-md-offset-2 col-md-4">
276 <!--
277 <div class="titolo-sezione rientro titolo-sezione-pos">
278 <h2 class="heading2">${titolostrillo.getData()}</h2>
279 </div>
280 -->
281 <div class="text-regular rientro text-wrapper text_regular">
282 ${strillo.getData()}
283 </div>
284 <div class="cta-wrapper">
285 <#if download.getData()?? && download.getData() != "">
286 <a class="btn btn-default btn-volk btn-full _btn-icon_" href="${download.getData()}">Download<!-- icon: get_app<i class="material-icons"></i> --></a>
287 </#if>
288 </div>
289 </div>
290 <div class="clearfix hidden-md hidden-lg"></div>
291 <div class="col-md-5">
292 <#if image.getData()?? && image.getData() != "">
293 <#assign altImg = .vars['reserved-article-title'].data/>
294 <div class="aspect-ratio aspect-ratio-16-to-9 aspect-ratio-adjust">
295 <img alt="${altImg}" src="${image.getData()}" class="img-responsive image-centered" />
296 </div>
297 </#if>
298 </div>
299 </div>
300
301</div>
302
303<#else>
304
305<div class="container vb-module-container vb-module-intro bkg-white news-detail">
306
307 <div class="row">
308 <div class="col-xs-offset-1 col-xs-4 col-md-offset-2 col-md-4">
309 <div class="occhiello-pos EX_row-padding-left">
310 <span class="subheading occhiello">${occhiello_html}</span> <!-- News -->
311 </div>
312 </div>
313 <#if validator.isNotNull(Data_Data)>
314 <div class="col-xs-offset-1 col-xs-5 col-md-offset-0 col-md-5">
315 <div class="occhiello-pos date-pull-right">
316 <p class="subheading data-news">
317 <@liferay.language key="news.leaf.label.pubblicato-il" />
318 <#assign Data_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Data, locale)>
319 ${dateUtil.getDate(Data_DateObj, "dd/MM/yyyy", locale)}
320 <#if validator.isNotNull(Data_Ora)>
321 <@liferay.language key="news.leaf.label.alle-ore-prefix" /> ${Data_Ora} <@liferay.language key="news.leaf.label.alle-ore-suffix" />
322 </#if>
323 </p>
324 </div>
325 </div>
326 </#if>
327 </div>
328
329 <#if image.getData()?? && image.getData() != "">
330 <div class="row">
331 <div class="col-xs-10 col-xs-offset-1 col-md-offset-2 col-md-4">
332 <!-- no titolo strillo -->
333 <div class="text-regular rientro text-wrapper text_regular">
334 ${strillo.getData()}
335 </div>
336 <div class="cta-wrapper">
337 <#if download.getData()?? && download.getData() != "">
338 <a class="btn btn-default btn-volk btn-full _btn-icon_" href="${download.getData()}">Download<!-- icon: get_app<i class="material-icons"></i> --></a>
339 </#if>
340 </div>
341 </div>
342 <div class="clearfix hidden-md hidden-lg"></div>
343 <div class="col-md-5">
344 <#if image.getData()?? && image.getData() != "">
345 <#assign altImg = .vars['reserved-article-title'].data/>
346 <div class="aspect-ratio aspect-ratio-16-to-9 aspect-ratio-adjust">
347 <img alt="${altImg}" src="${image.getData()}" class="img-responsive image-centered" />
348 </div>
349 </#if>
350 </div>
351 </div>
352 </#if>
353
354</div>
355</#if>
356
357
358<div class="container single-event">
359<#if galley?? && galley.getSiblings()?first.getData()?? && galley.getSiblings()?first.getData() !="">
360<!-- Inizo Slider -->
361 <div class="box-slider container container-slider-icone vb-module-container vb-double-related-cta vb-module-benefits bkg-white">
362
363 <div class="row">
364
365 <div class="col-md-offset-1 col-md-1 col-sm-12 ">
366 <div id="slider-controls-evento" class="slider-controls"></div>
367 </div>
368
369 <div class="col-md-8 border col-no-padding">
370
371 <section id="slider-evento-singolo" class="slider-evento-singolo">
372
373 <!-- inizio singlo slide -->
374
375 <#if galley.getSiblings()?has_content>
376 <#list galley.getSiblings() as cur_galley>
377 <#if cur_galley.getData()?? && cur_galley.getData() != "">
378 <div class="ruolo">
379 <div class="row">
380 <div class="col-md-12">
381 <img alt="${cur_galley.getAttribute("alt")}" src="${cur_galley.getData()}" class="img-responsive" />
382 </div>
383 </div>
384 </div>
385 </#if>
386 </#list>
387 </#if>
388
389 </section>
390 </div>
391
392 </div>
393 </div>
394<!-- Fine Slider-->
395</#if>
396 <div class="row NO__paragrafo-svento paragrafo-news vb-module-masthead">
397 <#if titolotesto?? && titolotesto.getData() != "">
398 <div class="col-xs-offset-1 col-xs-10 col-sm-offset-2 col-sm-8">
399 <h3 class="heading3">
400 ${titolotesto.getData()}
401 </h3>
402 </div>
403 </#if>
404 <div class="col-xs-offset-1 col-xs-10 col-sm-offset-2 col-sm-9">
405 <div class="rich-text">
406 <p class="text-regular text-compact">
407 ${Testo.getData()}
408 </p>
409 </div>
410 </div>
411 <div class="col-xs-offset-1 col-xs-10 col-sm-offset-2 col-sm-8">
412 <#if ExtraDownloadables?has_content>
413 <#list ExtraDownloadables.getSiblings() as extraDownloadable>
414 <#assign extraDownloadableLabel = extraDownloadable.ctaLabel />
415 <#if extraDownloadableLabel?? && extraDownloadableLabel.getData()?has_content>
416 <div class="cta-wrapper">
417 <a class="btn btn-default btn-volk btn-full" target="_blank" href="${extraDownloadable.getData()}">
418 ${extraDownloadableLabel.getData()}
419 </a>
420 </div>
421 </#if>
422 </#list>
423 </#if>
424 </div>
425 </div>
426</div>
427
428<script type="text/javascript">
429$(document).ready(function(){
430
431 <#if getterUtil.getBoolean(nonvisibile.getData())>
432 var url ='https://'+window.location.host;
433 $(location).prop('href', url);
434 </#if>
435
436
437 $('#slider-evento-singolo').slick({
438 speed: 500,
439 fade: true,
440 cssEase: 'linear',
441 infinite: true,
442 slidesToShow: 1,
443 slidesToScroll: 1,
444 appendArrows : $("#slider-controls-evento"),
445 prevArrow:'<div class="slick-prev box-icon-arrow"><i class="material-icons">arrow_back</i></div>',
446 nextArrow:'<div class="slick-next box-icon-arrow"><i class="material-icons">arrow_forward</i></div>',
447 infinite:false,
448 dots: true,
449 responsive: [
450 {
451 breakpoint: 1024,
452 settings: {
453 slidesToShow: 1,
454 slidesToScroll: 1,
455 infinite: true,
456 dots: true
457 }
458 },
459 {
460 breakpoint: 768,
461 settings: {
462 slidesToShow: 1,
463 slidesToScroll: 1,
464 appendArrows : $("#slider-controls-evento"),
465 nextArrow: '<i class="material-icons right-prev-arrow">keyboard_arrow_right</i>',
466 prevArrow: '<i class="material-icons left-next-arrow">keyboard_arrow_left</i>',
467 dots: true
468 }
469 },
470 {
471 breakpoint: 480,
472 settings: {
473 slidesToShow: 1,
474 slidesToScroll: 1,
475 appendArrows : $("#slider-controls-evento"),
476 nextArrow: '<i class="material-icons right-prev-arrow">keyboard_arrow_right</i>',
477 prevArrow: '<i class="material-icons left-next-arrow">keyboard_arrow_left</i>',
478 dots: true
479 }
480 }
481 // You can unslick at a given breakpoint now by adding:
482 // settings: "unslick"
483 // instead of a settings object
484 ]
485 });
486
487});
488</script>