Header: Girona emprèn

Girona Emprèn

Visualització del menú

Xarxes: Girona emprèn

Publicador de continguts

S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing:
==> cur_link.getChild('document')  [in template "20116#20160#127560" at line 163, column 29]

----
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: #assign array_botons = array_botons +...  [in template "20116#20160#127560" at line 159, column 13]
----
1<style> 
2    ul.breadcrumb.fil-ariadna li:last-child, 
3    .component-title.h4, 
4		.metadata-author{ 
5        display: none; 
6
7</style> 
8<@liferay_util["html-top"]>     
9		<meta property="og:description" content="${subtitol.getData()}"> 
10		<meta property="og:locale" content="ca_ES"> 
11		<meta property="og:locale:alternate" content="ca_ES"> 
12		<meta property="og:site_name" content="Ajuntament de Girona"> 
13		<meta property="og:title" content="${titol.getData()} - Ajuntament de Girona"> 
14		<meta property="og:type" content="website"> 
15		<meta property="og:url" content="https://web.girona.cat${themeDisplay.getURLCurrent()}"> 
16		<meta property="twitter:card" content="summary_large_image"> 
17		<meta property="twitter:description" content="${subtitol.getData()}"> 
18		<meta property="twitter:title" content="${titol.getData()} - Ajuntament de Girona"> 
19		<meta property="twitter:site" content="@Girona_Cat"> 
20		<meta property="twitter:image" content="https://web.girona.cat${imatge.getData()}"> 
21		<meta property="twitter:creator" content="@Girona_Cat"> 
22		<meta property="og:image" content="https://web.girona.cat${imatge.getData()}"> 
23		<meta property="og:image:url" content="https://web.girona.cat${imatge.getData()}"> 
24</@> 
25 
26 
27<#assign journalArticleId = .vars['reserved-article-id'].data/> 
28 
29<div class='web-ajuntament-girona-template'> 
30<#if titol?? && titol.getData() != ""> 
31    <h1>${titol.getData()}</h1> 
32    <script> 
33        document.title = "${titol.getData()}"; 
34    </script> 
35</#if> 
36 
37<#if subtitol?? && subtitol.getData() != ""> 
38		<p class="news_intro2">${subtitol.getData()}</p> 
39</#if> 
40 
41    <div class="entradeta"> 
42 
43<#-- OBTENCIÓ I PRESENTACIÓ DATA PUBLICACIÓ --> 
44<#assign articleDisplayDate = .vars['reserved-article-display-date'].data> 
45<#assign originalLocale = locale> 
46<#setting locale = 'ca_ES'> 
47<#assign date = articleDisplayDate?date("EEE, dd MMM yyyy HH:mm:ss zzz")> 
48<#assign dateTimeFormat = languageUtil.get(originalLocale, "EEEE dd/MM/yyyy - H.mm 'h'")> 
49<#assign data_hivern = (date?long  + 1*3600*1000)?number_to_date> 
50<#assign data_hivern = data_hivern?string(dateTimeFormat)> 
51<#assign data_estiu = (date?long  + 2*3600*1000)?number_to_date> 
52<#assign data_estiu = data_estiu?string(dateTimeFormat)> 
53<#assign dateTimeFormat = languageUtil.get(originalLocale, "yyyy/MM/dd/H/mm")> 
54<#assign data_js = date?long?number_to_date> 
55<#assign data_js = data_js?string(dateTimeFormat)> 
56<#setting locale = originalLocale> 
57        <p class="news_data2" id="data_noticia"></p> 
58<script> 
59    if (UTC_offset("${data_js}") == 1) document.getElementById('data_noticia').innerText = "${data_hivern?cap_first}"; 
60    else document.getElementById('data_noticia').innerText = "${data_estiu?cap_first}"; 
61</script> 
62<#-- FI DATA PUBLICACIÓ --> 
63 
64    </div> 
65     
66<#-- MANIPULACIÓ FOTOS --> 
67<#if imatge??> 
68<#assign peu_foto="" text_alt=""> 
69    <#if imatge.getData()?? && imatge.getData() != ""> 
70        <#if imatge.getAttribute('alt') != "" && imatge.getAttribute('alt')[0..2] == "(c)"> 
71            <#assign peu_foto = "" text_alt = imatge.getAttribute('alt')> 
72        </#if> 
73        <#if imatge.getAttribute('alt') != "" && imatge.getAttribute('alt')[0..2] != "(c)"> 
74            <#assign peu_foto = imatge.getAttribute('alt') text_alt = imatge.getAttribute('alt')> 
75        </#if> 
76        <div class="foto_box" id="AUIgaleria"> 
77            <div class="grossa" style="background-image: url(/o/si?&i=${imatge.getData()})"> 
78                <a href="/o/si?&i=${imatge.getData()}" title="${text_alt}" class="AUI${journalArticleId}"><img src="/o/si?&i=${imatge.getData()}" style="display: none" alt=""><img src="/o/ajuntament-theme/img/b.gif" alt=""></a> 
79            </div> 
80            <#if peu_foto != ""> 
81    	    <div class="peu_foto">${peu_foto}</div> 
82    	    </#if> 
83    <#if imatges?? && imatges.getData() != "">   
84        <#if imatges.getSiblings()?has_content> 
85            <#if peu_foto == ""> 
86        	    <div class="peu_foto"></div> 
87        	</#if> 
88        	<#list imatges.getSiblings() as cur_imatges> 
89        		<#if cur_imatges.getData()?? && cur_imatges.getData() != ""> 
90        		 
91                <div class="petita" style="background-image: url(/o/si?&i=${cur_imatges.getData()})"><a href="/o/si?&i=${cur_imatges.getData()}" title="${cur_imatges.getAttribute('alt')}" class="AUI${journalArticleId}"><img src="/o/si?&i=${cur_imatges.getData()}" style="display: none" alt=""><img src="/o/ajuntament-theme/img/b.gif" alt=""></a></div> 
92         
93        		</#if> 
94        	</#list> 
95        </#if>    	     
96    </#if>    	     
97    	    <div class="reset"></div> 
98 
99        </div> 
100        <script> 
101            AUI().use( 
102              'aui-image-viewer', 
103              function(Y) { 
104                new Y.ImageViewer( 
105
106                    caption: '${titol.getData()?js_string}', 
107                    captionFromTitle: true, 
108                    centered: true, 
109                    imageAnim: { 
110                     duration: 1, 
111                     easing: 'easeIn' 
112                    }, 
113                    intervalTime: 2, 
114                    links: '#AUIgaleria a.AUI${journalArticleId}', 
115                    playing: false, 
116                    preloadAllImages: true, 
117                    preloadNeighborImages: true, 
118                    showInfo: true, 
119                    showPlayer: true, 
120                    zIndex: 1 
121
122                ).render(); 
123
124            ); 
125        </script> 
126 
127    </#if> 
128</#if> 
129 
130<#if descPrincipal1.getData()?? && descPrincipal1.getData() != ""> 
131    <div class='supernoticia'> 
132     
133    <#-- Vídeo --> 
134	<#if video?? && video.getData() != ""> 
135	    <#assign codi_video = video.getData()> 
136	    <#if codi_video[0..4] == "list="> 
137            <#-- CODI PLAYLIST --> 
138		    <div class="video-noticies"> 
139   		        <iframe width="583" height="300" src="https://www.youtube.com/embed/videoseries?list=${codi_video[5..]}&autoplay=0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen style="border: none"></iframe> 
140   	        </div> 
141    	<#else> 
142		    <div class="video-noticies"> 
143			    <iframe width="583" height="300" src="https://www.youtube.com/embed/${codi_video}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> 
144		    </div> 
145	    </#if> 
146    </#if> 
147     
148        ${descPrincipal1.getData()} 
149    </div> 
150</#if> 
151 
152 
153<#-- ENLLAÇOS I DOCUMENTS --> 
154<#-- preparant array amb valors dels botons --> 
155<#assign array_botons = []> 
156<#if text_boto?? && text_boto.getData() != "">	  
157    <#if text_boto.getSiblings()?has_content> 
158    	<#list text_boto.getSiblings() as cur_link> 
159            <#assign array_botons = array_botons + [{ 
160                "nom": cur_link.getData(), 
161                "ordre": cur_link.getChild('ordre').getData(), 
162                "url": cur_link.getChild('url').getData(), 
163                "document": cur_link.getChild('document').getData() 
164            }]> 
165        </#list> 
166    </#if> 
167</#if> 
168<#-- reordenant botons i presentant-los --> 
169<#list array_botons?sort_by("ordre") as cur_boto> 
170    <#if cur_boto.url != "" || cur_boto.document != ""> 
171        <#if cur_boto.document != ""> 
172            <#assign link = "https://web.girona.cat"+cur_boto.document icona = "file"> 
173        <#else> 
174            <#assign link = cur_boto.url> 
175            <#if link?lower_case?contains(".pdf") || link?lower_case?contains(".xls") || link?lower_case?contains(".xlsx") || link?lower_case?contains(".pps") || link?lower_case?contains(".ppt") || link?lower_case?contains(".pptx")> 
176	            <#assign icona = "file"> 
177	        <#else> 
178	            <#assign icona = "new-window"> 
179	        </#if> 
180        </#if> 
181        <a href="${link}" target="_blank" class="btn btn-pdf" role="button"><span class="glyphicon glyphicon-${icona}"></span> ${cur_boto.nom}</a><br> 
182    </#if> 
183</#list> 
184<a id="volver-atras" class="btn" href="#" role="button" title="Tornar">Tornar</a> 
185<script> 
186    const urlActual = window.location.href; 
187    const indexAsset = urlActual.indexOf("/-/"); 
188    const indexQuery = urlActual.indexOf("?"); 
189    let urlBase = urlActual; 
190    if (indexAsset !== -1) { 
191        urlBase = urlActual.substring(0, indexAsset); 
192    } else if (indexQuery !== -1) { 
193        urlBase = urlActual.substring(0, indexQuery); 
194    }     
195    document.getElementById("volver-atras").href = urlBase; 
196</script> 
197</div>