see

Culture and Tourism
Loading ...
Uploading map in progress

cosa fare in questi giorni

An error occurred while processing the template.
The following has evaluated to null or missing:
==> startDates  [in template "20097#20123#908103" at line 55, column 12]

----
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: #list startDates as sd  [in template "20097#20123#908103" at line 55, column 5]
----
1<#assign eventiTemplateId = "TARANTO-TIMELINE-CAROUSEL-EVENTI-ITEM-TEMPLATE"> 
2<#if entries?has_content> 
3<div id="tt-event-carousel"> 
4  <div class="container max-container-1410"> 
5 
6    <div class="tt-event-carousel-content"> 
7         
8        <#assign apDisplayContext = renderRequest.getAttribute("ASSET_PUBLISHER_DISPLAY_CONTEXT") /> 
9        <#assign order = apDisplayContext.getOrderByColumn1() /> 
10        <#assign startDates = [] /> 
11        <#assign priorities = [] /> 
12                      
13	    <#list entries as curEntry> 
14	        <#assign 
15	            assetRenderer = curEntry.getAssetRenderer() 
16	            journalArticle = assetRenderer.getAssetObject()     
17	            priority = curEntry.getPriority() 
18	           	 
19	        /> 
20	         
21            <#assign  
22	            document = saxReaderUtil.read(journalArticle.getContent()) 
23                rootElement = document.getRootElement() 
24                xPathSelector = saxReaderUtil.createXPath("dynamic-element[@name='endDate']") 
25                endDate = getterUtil.getString(xPathSelector.selectSingleNode(rootElement).getStringValue()) 
26                xPathSelector2 = saxReaderUtil.createXPath("dynamic-element[@name='startDate']") 
27                startDate = getterUtil.getString(xPathSelector2.selectSingleNode(rootElement).getStringValue()) 
28            /> 
29             
30            <#assign startDate_DateObj = dateUtil.parseDate("yyyy-MM-dd", startDate, locale)> 
31	         
32                <@liferay_journal["journal-article"] 
33                    articleId=journalArticle.getArticleId() 
34                    ddmTemplateKey=eventiTemplateId 
35                    groupId=journalArticle.getGroupId() 
36                /> 
37                 
38            <#assign startDates = startDates + [startDate_DateObj?datetime?string('yyyy-MM-dd')] /> 
39            <#assign priorities = priorities + [priority] /> 
40	                                
41	     </#list> 
42    </div><#-- /.tt-event-carousel-content --> 
43 
44	<div class="t-btn d-flex justify-content-end"><a class="b-arrow-cyan" href="/web${themeDisplay.getScopeGroup().getFriendlyURL()}/eventi" ><span><@liferay.language key="it.taranto.tic2.newsevents.vedi-tutti-gli-eventi"/></span></a></div> 
45  </div><#-- /.container --> 
46</div><#-- /#tt-event-carousel --> 
47</#if> 
48 
49 
50<script> 
51 
52  jQuery(document).ready(function() { 
53       
54    var startDatesJS = []; 
55    <#list startDates as sd> 
56        startDatesJS.push(new Date('${sd}')); 
57    </#list> 
58     
59    var prioritiesJS = []; 
60    <#list priorities as p> 
61        prioritiesJS.push(${p}); 
62    </#list> 
63     
64    for(var i = 0; i < prioritiesJS.length; i++){ 
65        $('.tt-event-carousel-item').eq(i).addClass('priority' + prioritiesJS[i]); 
66
67 
68    var fixFocus = function(theTarget, currentSlide, nextSlide) { 
69      if (nextSlide > currentSlide){ 
70        $(theTarget).find("button.slick-prev.slick-arrow").focus(); 
71      } else if (nextSlide < currentSlide) { 
72        $(theTarget).find("button.slick-next.slick-arrow").focus(); 
73
74
75 
76    var _previouSlide; 
77 
78    jQuery('#wrapper').css('overflow','hidden'); 
79     
80    var fixIds = function() { 
81      jQuery('.tt-event-carousel-content .slick-slide').removeClass('slick-active-01 slick-active-02 slick-active-03');         
82      var activeSlides = $('.tt-event-carousel-content .slick-slide.slick-active'); 
83      activeSlides.each(function( index ) { 
84        if (index>2){return false;} 
85        jQuery(this).addClass('slick-active-0'+(index+1)); 
86      }); 
87
88     
89    jQuery('.tt-event-carousel-content').on('init', function(event, slick) { 
90      fixIds(); 
91      accFeature.fixSlickAcc("<@liferay.language key='previous'/>", "<@liferay.language key='next'/>"); 
92      _previouSlide = 0; 
93    }); 
94     
95    <#if order?contains("modifiedDate")> 
96     
97    var elem = $('.tt-event-carousel-content .journal-content-article').sort(sortMe); 
98    $('.tt-event-carousel-content').prepend(elem); 
99 
100    function sortMe(a, b) { 
101        var classA = $(a).find('.tt-event-carousel-item').attr('class').split("startDate-")[1]; 
102        var classB = $(b).find('.tt-event-carousel-item').attr('class').split("startDate-")[1]; 
103        var classPriorityA = $(a).find('.tt-event-carousel-item').attr('class').split("priority")[1]; 
104        var classPriorityB = $(b).find('.tt-event-carousel-item').attr('class').split("priority")[1]; 
105        var startA = classA.substring(0,10); 
106        var startB = classB.substring(0,10); 
107        var priorityA = classPriorityA.substring(0,1); 
108        var priorityB = classPriorityB.substring(0,1); 
109        var splitA = startA.split('-'); 
110        var splitB = startB.split('-'); 
111         
112        var dateA = new Date(splitA[1] + '-' + splitA[0] + '-' + splitA[2]); 
113        var dateB = new Date(splitB[1] + '-' + splitB[0] + '-' + splitB[2]); 
114 
115        if(priorityA < priorityB){ 
116            return 1; 
117        }else if(priorityA > priorityB){ 
118            return -1; 
119        }else if(priorityA === priorityB){ 
120            if(dateA < dateB){ 
121                return 1; 
122            }else if(dateA > dateB){ 
123                return -1; 
124            }else if(dateA.getTime() === dateB.getTime()){ 
125                return 0; 
126
127
128
129     
130    </#if> 
131     
132    var theSlick = jQuery('.tt-event-carousel-content').slick({ 
133      slidesToShow: 3, 
134      slidesToScroll: 3, 
135      autoplay: false, 
136      dots: true, 
137      arrows: true, 
138      infinite: false, 
139      responsive: [ 
140
141          breakpoint: 1025, 
142          settings: { 
143            slidesToShow: 2, 
144            slidesToScroll: 2, 
145            dots: false 
146
147        }, 
148
149          breakpoint: 768, 
150          settings: { 
151            slidesToShow: 1, 
152            slidesToScroll: 1, 
153            dots: false 
154
155
156
157    }); 
158 
159    theSlick.on("afterChange", function(event, slick, currentSlide) { 
160      fixIds(); 
161      fixFocus(event.target, _previouSlide, currentSlide); 
162      accFeature.fixSlickAcc("<@liferay.language key='previous'/>", "<@liferay.language key='next'/>"); 
163    }); 
164 
165    theSlick.on('beforeChange', function (event, slick, currentSlide, nextSlide) { 
166      _previouSlide = currentSlide; 
167    }); 
168 
169  }); 
170 
171</script> 

scopri taranto dall'alto

Visita Taranto attraverso la telecamera di un drone, i virtual tour dei principali attrattori e vivi la magia di fare un viaggio alla scoperta del  passato

    

notizie e informazioni