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="icon-calendar icon-large"></i> ${dataActivitat}</p>
85 </#if>
86 <#if act_horari_complet?? && act_horari_complet.getData()?has_content>
87 <p><i class="icon-time icon-large"></i> ${act_horari_complet.getData()}</p>
88 <#elseif act_horari?? && act_horari.getData()?has_content>
89 <p><i class="icon-time 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="icon-map-marker 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="icon-phone icon-large"></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="icon-envelope-alt icon-large"></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 <p><strong>Descripció: </strong>${act_descripcio.getData()}</p>
305 </#if>
306 <#if act_requisit?? && act_requisit.getData()?has_content>
307 <p><span class="font-weight-bold"><@liferay.language key="parc.activitat.requisits"/>:</span> ${act_requisit.getData()}</p>
308 </#if>
309 <#if act_url?? && act_url.getData()?has_content>
310 <p><span><@liferay.language key="parc.activitat.mesurl"/>:</span> <a href="${act_url.getData()}" target="_blank">${act_url.getData()}</a></p>
311 </#if>
312 <br />
313 </div>
314 <div class="col-12 col-lg-5">
315 <#if (act_latitud?? && act_latitud.getData()?has_content) && (act_longitud?? && act_longitud.getData()?has_content)>
316 <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">
317 <script src="https://unpkg.com/leaflet@1.3.4/dist/leaflet.js" integrity="sha512-nMMmRyTVoLYqjP9hrbed9S+FzjZHW5gY1TWCHA5ckwXZBadntCNs8kEqAWdrb9O7rxbCaA4lKTIWjDXZxflOcA==" crossorigin="anonymous"></script>
318 <div id="map_canvas${.vars["reserved-article-id"].data}" class="embed-responsive embed-responsive-16by9" style="clear:both;margin:10px 0"></div>
319 <script>
320 jQuery(document).ready(function() {
321 // Llista de cartografies.
322 var googleStreets = L.tileLayer("https://{s}.google.com/vt/lyrs=m&x={x}&y={y}&z={z}", {
323 maxZoom: 20,
324 subdomains: ["mt0", "mt1", "mt2", "mt3"],
325 attribution: "© Diputació de Barcelona"
326 });
327 // Punt central del mapa.
328 var latlng${.vars["reserved-article-id"].data} = L.latLng(${act_latitud.getData()},${act_longitud.getData()});
329 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]});
330
331 var titol = "${htmlUtil.escapeJS(act_titol.getData())}" + " (${act_latitud.getData()}, ${act_longitud.getData()})";
332 <#assign indicacions= languageUtil.get( locale,"agenda.indicacions")>
333 <#assign marcador="<a href=https://www.google.es/maps/place/"+ act_latitud.getData()+","+ act_longitud.getData()+" target=_blank >"+ indicacions+"</a>">
334
335 L.marker([${act_latitud.getData()},${act_longitud.getData()}],{title: titol}).addTo(map_canvas${.vars["reserved-article-id"].data}).bindPopup("${htmlUtil.escapeJS(marcador)}");
336 });
337 <#assign indicacions= languageUtil.get( locale,"agenda.indicacions")>
338 <#assign marcador="<a href=https://www.google.es/maps/place/"+ act_latitud.getData()+","+ act_longitud.getData()+" target=_blank >"+ indicacions+"</a>">
339 </script>
340 </#if>
341 </div>
342 </div>
343</div>
344
345 <div class="icos_noti">
346
347 <div class="ico_redes" style="display:flex;justify-content: end">
348 <span>compartir</span>
349 <#-- AddToAny Button BEGIN -->
350 <div class="a2a_kit a2a_default_style data-a2a-title="${htmlUtil.escape(.vars["reserved-article-title"].data)}">
351 <a class="a2a_button_google_gmail"></a>
352
353 <a class="a2a_button_facebook"></a>
354 <a class="a2a_button_pinterest"></a>
355 <a class="a2a_dd" href="https://www.addtoany.com/share"></a>
356 </div>
357 </div>
358 <script>
359 var a2a_config = a2a_config || {};
360 a2a_config.locale = "es";
361 </script>
362 <script async src="https://static.addtoany.com/menu/page.js"></script>
363 <script data-senna-track="temporary">
364 Liferay.on("beforeNavigate", function(event) { location.href=event.path; });
365 </script>
366 <#-- AddToAny Button END -->
367
368
369 </div>
370 <#if tag?has_content>
371 <div class="bloque_info_dch">
372 </div>
373 </#if>
374 <#assign hasRecursos=false>
375 <#if act_recurso.getSiblings()?has_content>
376 <#list act_recurso.getSiblings() as item>
377 <#if (item?? && item.getData()?has_content) ||
378 (item.act_recurso_url?? && item.act_recurso_url.getData()?has_content) ||
379 (item.act_recurso_email?? && item.act_recurso_email.getData()?has_content) ||
380 (item.act_recurso_documento?? && (item.act_recurso_documento.getData()?has_content ||
381 item.act_recurso_documento.urlExterna3?? && item.act_recurso_documento.urlExterna3.getData()?has_content))>
382 <#assign hasRecursos=true>
383 <#break>
384 </#if>
385 </#list>
386 </#if>
387 <#if hasRecursos>
388 <div class="recursos">
389 <span class="font-weight-bold">Recursos.</span>
390 <div class="mt-2">
391 <#list act_recurso.getSiblings() as item>
392 <#assign img_recurso="">
393 <#if item.getData()?has_content>
394 <#assign img_recurso= item.getData()>
395 <#elseif item.urlExterna4?? && item.urlExterna4.getData()?has_content>
396 <#assign img_recurso= item.urlExterna4.getData()>
397 </#if>
398 <#assign img_recurso_alt= "">
399 <#if item.act_recurso_alt?? && item.act_recurso_alt.getData()?has_content>
400 <#assign img_recurso_alt= item.act_recurso_alt.getData()>
401 </#if>
402 <#assign tipo_recurso= "Mateixa_finestra">
403 <#if item.act_recurso_tipo?? && item.act_recurso_tipo.getData()?has_content>
404 <#assign tipo_recurso= item.act_recurso_tipo.getData()>
405 </#if>
406 <#if item.act_recurso_url?? && item.act_recurso_url.getData()?has_content>
407 <p>
408 <#if img_recurso!="">
409 <img class="mr-1" src="${img_recurso}" alt="${img_recurso_alt}" />
410 <#else>
411 <i class="icon-file-text icon-large"></i>
412 </#if>
413 <a href="${item.act_recurso_url.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
414 ${img_recurso_alt}
415 </a>
416 </p>
417 <#elseif item.act_recurso_email?? && item.act_recurso_email.getData()?has_content>
418 <p>
419
420 <#if img_recurso!="">
421 <img class="mr-1" src="${img_recurso}" alt="${img_recurso_alt}" />
422 <#else>
423 <i class="icon-file-text icon-large"></i>
424 </#if>
425 <a href="${item.act_recurso_email.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
426 ${img_recurso_alt}
427 </a>
428 </p>
429 <#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)>
430 <#if item.act_recurso_documento?? && item.act_recurso_documento.getData()?has_content>
431 <p>
432 <img class="mr-1" src="${img_recurso}" alt=${img_recurso_alt} />
433 <a href="${item.act_recurso_documento.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
434 ${img_recurso_alt}
435 </a>
436 </p>
437 <#elseif item.act_recurso_documento.urlExterna3?? && item.act_recurso_documento.urlExterna3.getData()?has_content>
438 <p>
439 <img class="mr-1" src="${img_recurso}" alt=${img_recurso_alt} />
440 <a href="${item.act_recurso_documento.urlExterna3.getData()}" title="${img_recurso_alt}" target="${tipo_recurso}">
441 ${img_recurso_alt}
442 </a>
443 </p>
444 </#if>
445 </#if>
446 </#list>
447 </div>
448 </div>
449 </#if>
450 </article>
451</section>