Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing: ==> dataActivitatF [in template "10311#10344#ACTIVITATS" at line 79, column 102] ---- 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 dataActivitat = "Del " + data... [in template "10311#10344#ACTIVITATS" at line 79, column 29] ----
1<#assign journalArticleLocalService= serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
2<#assign assetCategoryServiceUtil= serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
3<#assign assetTagServiceUtil= serviceLocator.findService("com.liferay.asset.kernel.service.AssetTagLocalService")>
4<#assign groupModelUtil= serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
5
6<#assign currentArticle= journalArticleLocalService.getArticle( getterUtil.getLong( groupId), .vars["reserved-article-id"].data)>
7<#assign category= assetCategoryServiceUtil.getCategories("com.liferay.journal.model.JournalArticle", getterUtil.getLong( currentArticle.getResourcePrimKey()))>
8
9<#assign tag= assetTagServiceUtil.getTags("com.liferay.journal.model.JournalArticle", getterUtil.getLong( currentArticle.getResourcePrimKey()))>
10<#assign currentGroup= groupModelUtil.getGroup( groupId)>
11
12
13<meta name="og:title" content="${htmlUtil.escape(act_titol.getData())}" />
14<meta name="og:description" content="${htmlUtil.escape(htmlUtil.stripHtml(stringUtil.trim(act_descripcio.getData())))}" />
15<meta name="twitter:title" content="${htmlUtil.escape(act_titol.getData())}" />
16<meta name="twitter:description" content="${htmlUtil.escape(htmlUtil.stripHtml(stringUtil.trim(act_descripcio.getData())))}" />
17<meta name="twitter:card" content="summary_large_image" />
18<section>
19 <article>
20 <div class="row">
21 <div class="col-12 col-lg-7">
22
23 <#if category?has_content>
24 <p style="color:#006163">
25 <#list category as categoria>
26 <#if categoria.vocabularyId== getterUtil.getLong("32255")>
27 ${categoria.name}
28 <#break>
29 </#if>
30 </#list>
31 </p>
32 </#if>
33
34 <h2 class="section_cab mb-3 h3" style="margin:0 0 0 0;color:#006163">${act_titol.getData()}</h2>
35 <#if category?has_content>
36 <div class="categories mb-3">
37 <span>
38 <#assign primeraCat=true>
39 <#list category as categoria>
40 <#if categoria.vocabularyId== getterUtil.getLong("32620")>
41 <#if !primeraCat>
42 |
43 </#if>
44 ${categoria.name}
45 <#assign primeraCat=false>
46 </#if>
47 </#list>
48 </span> <br>
49 </div>
50 </#if>
51 <!--Dades-->
52 <div class="dades-activitat">
53 <div class="row py-3">
54 <div class="col-6 col-esquerra">
55 <div class="data mt-2">
56 <#assign dataInicial_Data= getterUtil.getString( dataInicial.getData())>
57 <#if dataInicial_Data?has_content>
58 <#assign dataInicial_DateObj= dateUtil.parseDate("yyyy-MM-dd", dataInicial_Data, locale)>
59 </#if>
60
61 <#assign dataFinal_Data= getterUtil.getString( dataFinal.getData())>
62
63 <#if dataFinal_Data?has_content>
64 <#assign dataFinal_DateObj= dateUtil.parseDate("yyyy-MM-dd", dataFinal_Data, locale)>
65 <#assign dataActivitatF = dateUtil.getDate(dataFinal_DateObj,"dd/MM/yyyy",locale)>
66 </#if>
67
68 <#if dataInicial_DateObj?? && dataInicial_DateObj?has_content>
69 <#assign dia= dateUtil.getDate(dataInicial_DateObj,"dd",locale)>
70 <#assign anyo= dateUtil.getDate(dataInicial_DateObj,"yyyy", locale)>
71 <#assign nommes= dateUtil.getDate(dataInicial_DateObj,"MMM", locale)>
72 <#assign dataActivitat = dateUtil.getDate(dataInicial_DateObj,"dd/MM/yyyy",locale)>
73 </#if>
74 <#if dataInicial_Data!= dataFinal_Data>
75
76 <#assign finsText>
77 <@liferay.language key="parc.activitat.fins" />
78 </#assign>
79 <#assign dataActivitat = "Del " + dataActivitat + " " + finsText + " " + dataActivitatF>
80
81 </#if>
82
83 <#if dataActivitat??>
84 <p class="font-weight-bold"><i class="fa-solid fa-calendar-days icon-large"></i> ${dataActivitat}</p>
85 </#if>
86 <#if act_horari_complet?? && act_horari_complet.getData()?has_content>
87 <p><i class="fa-solid fa-clock icon-large"></i> ${act_horari_complet.getData()}</p>
88 <#elseif act_horari?? && act_horari.getData()?has_content>
89 <p><i class="fa-solid fa-clock icon-large"></i> ${act_horari.getData()}</p>
90 </#if>
91 </div>
92
93
94 <#if act_acces.getData()?has_content>
95 <#if stringUtil.equals(act_acces.getData(),"Gratuit")>
96 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.acces"/>:</span> <@liferay.language key= "parc.activitat.gratuit"/></p>
97 <#elseif stringUtil.equals(act_acces.getData(),"Pagant")>
98 <p><span class="font-weight-bold"><@liferay.language key="parc.activitat.acces"/>:</span> <@liferay.language key= "parc.activitat.pagant"/>
99 <#if act_acces_preu.getData()?has_content>
100 - ${act_acces_preu.getData()}
101 </#if>
102 </p>
103 </#if>
104 </#if>
105
106 <#if act_public?? && act_public.getData()?has_content>
107 <#if stringUtil.equals(act_public.getData(),"G")>
108 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.general"/></p>
109 </#if>
110 <#if stringUtil.equals(act_public.getData(),"F")>
111 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.familiar"/></p>
112 </#if>
113 <#if stringUtil.equals(act_public.getData(),"E")>
114 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.escolar"/></p>
115 </#if>
116 <#if stringUtil.equals(act_public.getData(),"N")>
117 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.naturalista"/></p>
118 </#if>
119 <#if stringUtil.equals(act_public.getData(),"V")>
120 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.viuen"/></p>
121 </#if>
122 <#if stringUtil.equals(act_public.getData(),"O")>
123 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.grups"/></p>
124 </#if>
125 <#if stringUtil.equals(act_public.getData(),"C")>
126 <p><span class="font-weight-bold"><@liferay.language key= "parc.activitat.tipuspublic"/>:</span> <@liferay.language key= "parc.activitat.cientifics"/></p>
127 </#if>
128 </#if>
129 </div>
130 <div class="col-6 col-dreta">
131 <#if act_lloc1?? && act_lloc1.getData()?has_content>
132 <i class="fa-solid fa-location-dot icon-large"></i> ${act_lloc1.getData()}<br />
133 ${act_lloc2.getData()}<br />
134 <#if act_poblacio?? && act_poblacio.getData()?has_content>
135 <p>${act_poblacio.getData()}</p>
136 </#if>
137 </#if>
138 <#if act_trobada1.getData()?has_content>
139 <p><span class="font-weight-bold"><@liferay.language key="parc.activitat.lloc-trobada"/>:</span> ${act_trobada1.getData()} <br />${act_trobada2.getData()}</p>
140 </#if>
141 <#if act_organitzador.getData()?has_content>
142 <p><span class="font-weight-bold"><@liferay.language key="agenda.organitzadors"/>:</span> ${act_organitzador.getData()}</p>
143 </#if>
144
145 <#if act_telefon.getData()?has_content>
146 <p><i class="fa-solid fa-phone"></i> ${act_telefon.getData()}</p>
147 </#if>
148 <#assign isEmail=false>
149 <#list act_adreca.getSiblings() as email>
150 <#if email.getData()?has_content>
151 <#assign isEmail=true>
152 <#break>
153 </#if>
154 </#list>
155 <#if isEmail>
156 <p>
157 <#list act_adreca.getSiblings() as email>
158 <i class="fa-solid fa-envelope"></i><a href="mailto:${email.getData()}"> ${email.getData()}</a>
159 </#list>
160 </p>
161 </#if>
162 </div>
163 </div>
164
165 </div>
166
167
168 </div>
169
170
171
172 <div class="col-12 col-lg-5">
173
174
175 <#assign urlImgEntry= act_img_interior.getData()>
176 <#if !urlImgEntry?has_content || urlImgEntry?length ==0>
177 <#if act_img_interior.urlExterna?? && act_img_interior.urlExterna.getData()?has_content>
178 <#assign urlImgEntry= act_img_interior.urlExterna.getData()>
179 <#if urlImgEntry?has_content && urlImgEntry?length gt 0>
180 <meta property="og:image" content="${urlImgEntry}" />
181 <meta name="twitter:image" content="${urlImgEntry}" />
182 </#if>
183 </#if>
184 <#else>
185 <#if urlImgEntry?has_content && urlImgEntry?length gt 0>
186 <meta property="og:image" content="https://parcs.diba.cat${urlImgEntry}" />
187 <meta name="twitter:image" content="https://parcs.diba.cat${urlImgEntry}" />
188 </#if>
189 </#if>
190 <#if urlImgEntry?has_content>
191 <#if act_img_interior.act_img_alt.getData()?has_content>
192 <#assign altAuxImg= act_img_interior.act_img_alt.getData()>
193 </#if>
194 <div class="imagen_float_left">
195 <#-------------------------------------------------------------------------UNIFICACION PLANTILLAS METAINFO IMATGES INI------------------------------------------------------------------------->
196 <#if urlImgEntry?has_content>
197
198
199
200
201
202
203
204 <#----------------------------METAINFO_IMG_GETINFO INI---------------------------->
205 <#assign DLFileEntryUtil= serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>
206
207 <#assign uuIdImagen= staticUtil['com.liferay.portal.kernel.util.HttpComponentsUtil'].getParameter( urlImgEntry,"uuid",false)>
208 <#if uuIdImagen?has_content>
209
210 <#assign groupIdImagen= staticUtil['com.liferay.portal.kernel.util.HttpComponentsUtil'].getParameter( urlImgEntry,"groupId",false)>
211
212
213
214 <#assign current= DLFileEntryUtil.fetchDLFileEntryByUuidAndGroupId( uuIdImagen, getterUtil.getLong( groupIdImagen))>
215
216 </#if>
217
218 <#----------------------------METAINFO_IMG_GETINFO FIN---------------------------->
219
220 <#if current?has_content>
221
222
223 <#assign structureId="IMATGES">
224 <#assign templateId="IMATGES">
225
226
227
228
229 <#----------------------------METAINFO_EXIST_CONTENT INI---------------------------->
230
231 <#assign journalArticleLocalService= serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
232
233 <#assign companyId= current.getCompanyId()>
234 <#assign groupId= (current.getScopeGroupId())!scopeGroupId>
235 <#assign title= current.getDescription()>
236 <#assign end=-1>
237 <#assign start=-1>
238 <#assign keywords="">
239 <#assign type="general">
240 <#assign isEmpty=true>
241 <#assign articles="">
242 <#assign currentArticle="">
243
244 <#assign folders=[]>
245 <#assign andOperator=true>
246 <#assign articles= journalArticleLocalService.search(getterUtil.getLong(companyId), getterUtil.getLong(groupId), folders, 0, null, null, title, null, type, structureId, templateId, null, null, 0, null, andOperator, -1, -1, null)>
247
248 <#list articles as article>
249 <#if stringUtil.equalsIgnoreCase(article.getTitle(),title)>
250 <#if isEmpty>
251 <#assign isEmpty=false>
252 <#assign currentArticle= article>
253
254 <#else> <#if currentArticle.getVersion()< article.getVersion()>
255 <#assign currentArticle= article>
256 </#if>
257 </#if>
258 </#if>
259 </#list>
260 <#----------------------------METAINFO_EXIST_CONTENT FIN-------------------------- -->
261 <#if !currentArticle?has_content >
262 <#assign altText="">
263 <#if altAuxImg?has_content>
264 <#assign altText= altAuxImg>
265 </#if>
266 <img src="${urlImgEntry}" alt="${altText}" title="" />
267 <#if altAuxImg?has_content>
268 <p style="font-size: 0.7rem">${altAuxImg}</p>
269 </#if>
270
271 <#else><#----------------------------IMATGES FIN-------------------------- -->
272
273 <#assign document= saxReaderUtil.read( currentArticle.getContent())>
274
275 <#assign img_autor= document.selectSingleNode("/root/dynamic-element[@name='img_autor']/dynamic-content[@language-id=' locale']")>
276 <#assign img_titol= document.selectSingleNode("/root/dynamic-element[@name='img_titol']/dynamic-content[@language-id=' locale']")>
277 <#assign img_alt= document.selectSingleNode("/root/dynamic-element[@name='img_alt']/dynamic-content[@language-id=' locale']")>
278 <#assign img_imatge= document.selectSingleNode("/root/dynamic-element[@name='img_imatge']/dynamic-content")>
279
280
281 <img src="${img_imatge.getText()}" class="image_border" alt="${img_alt.getText()}" title="${img_alt.getText()}" >
282 <p>${img_titol.getText()}<br />${img_autor.getText()}</p>
283
284 <#----------------------------IMATGES FIN-------------------------- -->
285 </#if>
286
287 <#else> <#assign altText="">
288 <#if altAuxImg?has_content>
289 <#assign altText= altAuxImg>
290 </#if>
291 <img src="${urlImgEntry}" alt="${altText}" title="" />
292 <#if altAuxImg?has_content>
293 <p style="font-size: 0.7rem">${altAuxImg}</p>
294 </#if>
295 </#if>
296 </#if>
297 <#-------------------------------------------------------------------------UNIFICACION PLANTILLAS METAINFO IMATGES INI------------------------------------------------------------------------->
298
299 </div>
300 </#if>
301 </div>
302 <div class="col-12 col-lg-7">
303 <#if act_descripcio?? && act_descripcio.getData()?has_content>
304 <span class="font-weight-bold">Descripció: </span>
305 <div class="mt-1">${act_descripcio.getData()}</div>
306 </#if>
307 <#if act_requisit?? && act_requisit.getData()?has_content>
308 <span class="font-weight-bold"><@liferay.language key="parc.activitat.requisits"/>:</span>
309 <div class="mt-1">${act_requisit.getData()}</div>
310 </#if>
311 <#if act_url?? && act_url.getData()?has_content>
312 <span class="font-weight-bold"><@liferay.language key="parc.activitat.mesurl"/>:</span> <a href="${act_url.getData()}" target="_blank">${act_url.getData()}</a>
313 </#if>
314 <br />
315 </div>
316 <div class="col-12 col-lg-5">
317 <#if (act_latitud?? && act_latitud.getData()?has_content) && (act_longitud?? && act_longitud.getData()?has_content)>
318 <link rel="stylesheet" href="https://unpkg.com/leaflet@1.3.4/dist/leaflet.css" integrity="sha512-puBpdR0798OZvTTbP4A8Ix/l+A4dHDD0DGqYW6RQ+9jxkRFclaxxQb/SJAWZfWAkuyeQUytO7+7N4QKrDh+drA==" crossorigin="anonymous">
319 <script src="https://unpkg.com/leaflet@1.3.4/dist/leaflet.js" integrity="sha512-nMMmRyTVoLYqjP9hrbed9S+FzjZHW5gY1TWCHA5ckwXZBadntCNs8kEqAWdrb9O7rxbCaA4lKTIWjDXZxflOcA==" crossorigin="anonymous"></script>
320 <div id="map_canvas${.vars["reserved-article-id"].data}" class="embed-responsive embed-responsive-16by9" style="clear:both;margin:10px 0"></div>
321 <script>
322 jQuery(document).ready(function() {
323 // Llista de cartografies.
324 var googleStreets = L.tileLayer("https://{s}.google.com/vt/lyrs=m&x={x}&y={y}&z={z}", {
325 maxZoom: 20,
326 subdomains: ["mt0", "mt1", "mt2", "mt3"],
327 attribution: "© Diputació de Barcelona"
328 });
329 // Punt central del mapa.
330 var latlng${.vars["reserved-article-id"].data} = L.latLng(${act_latitud.getData()},${act_longitud.getData()});
331 var map_canvas${.vars["reserved-article-id"].data} = L.map("map_canvas${.vars["reserved-article-id"].data}", {center: latlng${.vars["reserved-article-id"].data}, zoom: 15, layers: [googleStreets]});
332
333 var titol = "${htmlUtil.escapeJS(act_titol.getData())}" + " (${act_latitud.getData()}, ${act_longitud.getData()})";
334 <#assign indicacions= languageUtil.get( locale,"agenda.indicacions")>
335 <#assign marcador="<a href=https://www.google.es/maps/place/"+ act_latitud.getData()+","+ act_longitud.getData()+" target=_blank >"+ indicacions+"</a>">
336
337 L.marker([${act_latitud.getData()},${act_longitud.getData()}],{title: titol}).addTo(map_canvas${.vars["reserved-article-id"].data}).bindPopup("${htmlUtil.escapeJS(marcador)}");
338 });
339 <#assign indicacions= languageUtil.get( locale,"agenda.indicacions")>
340 <#assign marcador="<a href=https://www.google.es/maps/place/"+ act_latitud.getData()+","+ act_longitud.getData()+" target=_blank >"+ indicacions+"</a>">
341 </script>
342 </#if>
343 </div>
344 </div>
345</div>
346
347 <div class="icos_noti">
348
349 <div class="ico_redes" style="display:flex;justify-content: end">
350 <span>compartir</span>
351 <#-- AddToAny Button BEGIN -->
352 <div class="a2a_kit a2a_default_style data-a2a-title="${htmlUtil.escape(.vars["reserved-article-title"].data)}">
353 <a class="a2a_button_google_gmail"></a>
354
355 <a class="a2a_button_facebook"></a>
356 <a class="a2a_button_pinterest"></a>
357 <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
358 </div>
359 </div>
360 <script>
361 var a2a_config = a2a_config || {};
362 a2a_config.locale = "es";
363 </script>
364 <script async src="https://static.addtoany.com/menu/page.js"></script>
365 <script data-senna-track="temporary">
366 Liferay.on("beforeNavigate", function(event) { location.href=event.path; });
367 </script>
368 <#-- AddToAny Button END -->
369
370
371 </div>
372 <#if tag?has_content>
373 <div class="bloque_info_dch">
374 </div>
375 </#if>
376 <#assign hasRecursos=false>
377 <#if act_recurso.getSiblings()?has_content>
378 <#list act_recurso.getSiblings() as item>
379 <#if (item?? && item.getData()?has_content) ||
380 (item.act_recurso_url?? && item.act_recurso_url.getData()?has_content) ||
381 (item.act_recurso_email?? && item.act_recurso_email.getData()?has_content) ||
382 (item.act_recurso_documento?? && (item.act_recurso_documento.getData()?has_content ||
383 item.act_recurso_documento.urlExterna3?? && item.act_recurso_documento.urlExterna3.getData()?has_content))>
384 <#assign hasRecursos=true>
385 <#break>
386 </#if>
387 </#list>
388 </#if>
389 <#if hasRecursos>
390 <div class="recursos">
391 <span class="font-weight-bold">Recursos.</span>
392 <div class="mt-2">
393 <#list act_recurso.getSiblings() as item>
394 <#assign img_recurso="">
395 <#if item.getData()?has_content>
396 <#assign img_recurso= item.getData()>
397 <#elseif item.urlExterna4?? && item.urlExterna4.getData()?has_content>
398 <#assign img_recurso= item.urlExterna4.getData()>
399 </#if>
400 <#assign img_recurso_alt= "">
401 <#if item.act_recurso_alt?? && item.act_recurso_alt.getData()?has_content>
402 <#assign img_recurso_alt= item.act_recurso_alt.getData()>
403 </#if>
404 <#assign tipo_recurso= "Mateixa_finestra">
405 <#if item.act_recurso_tipo?? && item.act_recurso_tipo.getData()?has_content>
406 <#assign tipo_recurso= item.act_recurso_tipo.getData()>
407 </#if>
408 <#if item.act_recurso_url?? && item.act_recurso_url.getData()?has_content>
409 <p>
410 <#if img_recurso!="">
411 <img class="mr-1" src="${img_recurso}" alt="${img_recurso_alt}" />
412 <#else>
413 <i class="icon-file-text icon-large"></i>
414 </#if>
415 <a href="${item.act_recurso_url.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
416 ${img_recurso_alt}
417 </a>
418 </p>
419 <#elseif item.act_recurso_email?? && item.act_recurso_email.getData()?has_content>
420 <p>
421
422 <#if img_recurso!="">
423 <img class="mr-1" src="${img_recurso}" alt="${img_recurso_alt}" />
424 <#else>
425 <i class="icon-file-text icon-large"></i>
426 </#if>
427 <a href="${item.act_recurso_email.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
428 ${img_recurso_alt}
429 </a>
430 </p>
431 <#elseif (item.act_recurso_documento?? && item.act_recurso_documento.getData()?has_content) || (item.act_recurso_documento?? && item.act_recurso_documento.urlExterna3?? && item.act_recurso_documento.urlExterna3.getData()?has_content)>
432 <#if item.act_recurso_documento?? && item.act_recurso_documento.getData()?has_content>
433 <p>
434 <img class="mr-1" src="${img_recurso}" alt=${img_recurso_alt} />
435 <a href="${item.act_recurso_documento.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
436 ${img_recurso_alt}
437 </a>
438 </p>
439 <#elseif item.act_recurso_documento.urlExterna3?? && item.act_recurso_documento.urlExterna3.getData()?has_content>
440 <p>
441 <img class="mr-1" src="${img_recurso}" alt=${img_recurso_alt} />
442 <a href="${item.act_recurso_documento.urlExterna3.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
443 ${img_recurso_alt}
444 </a>
445 </p>
446 </#if>
447 </#if>
448 </#list>
449 </div>
450 </div>
451 </#if>
452 </article>
453</section>