Financing the system - Mobility Observatory in Catalonia (OMC)
An error occurred while processing the template.
Can't convert this string to number: "" The blamed expression: ==> cur_AgrupaciónDocumentos.Año.getData()?number [in template "20097#20123#107771" at line 246, column 56] ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign arrAnyos2 = arrAnyos2 + [cur_... [in template "20097#20123#107771" at line 246, column 21] ----
1<#assign journalArticleId = .vars['reserved-article-id'].data>
2<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
3<#assign journalArticleResourceLocalServiceUtil = serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")>
4<#assign assetCategoryLocalServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
5<#assign assetVocabularyLocalServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")>
6
7<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/>
8<#assign categoryList=assetCategoryLocalServiceUtil.getCategories("com.liferay.journal.model.JournalArticle",articleResourcePK) >
9<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', articleResourcePK) >
10<#assign languageId= themeDisplay.getLanguageId() />
11<#assign languageId=languageId?split('_')[0]/>
12
13<#if (themeDisplay.getLanguageId() == 'es_ES')>
14 <#assign encuestasMovilidad = 'Encuestas de movilidad'/>
15 <#assign ultimaActualizacion = 'Última actualización'/>
16 <#assign CompartirEsteContenido = 'COMPARTIR ESTE CONTENIDO'/>
17 <#assign seleccioneElAno = 'Selecciona el año que quieres consultar'/>
18 <#assign OMCPublicaciones = 'OMC Publicaciones' />
19 <#assign Publicaciones = 'Publicaciones' />
20 <#assign Encuestas = 'Encuestas' />
21 <#assign ver = "Ver" />
22 <#assign compartirEn = "Compartir en" />
23 <#assign copiarUrl = "Copiar url" />
24</#if>
25<#if (themeDisplay.getLanguageId() == 'ca_ES')>
26 <#assign encuestasMovilidad = 'Enquestes de mobilitat'/>
27 <#assign ultimaActualizacion = 'Darrera actualització'/>
28 <#assign CompartirEsteContenido = 'COMPARTEIX AQUEST CONTINGUT'/>
29 <#assign seleccioneElAno = "Selecciona l´any que vols consultar"/>
30 <#assign OMCPublicaciones = 'OMC Publicacions' />
31 <#assign Publicaciones = 'Publicacions' />
32 <#assign Encuestas = 'Enquestes' />
33 <#assign ver = "Veure" />
34 <#assign compartirEn = "Compartir a" />
35 <#assign copiarUrl = "Copiar url" />
36</#if>
37<#if (themeDisplay.getLanguageId() == 'en_US')>
38 <#assign encuestasMovilidad = 'Mobility surveys'/>
39 <#assign ultimaActualizacion = 'Last update'/>
40 <#assign CompartirEsteContenido = 'SHARE THIS CONTENT'/>
41 <#assign seleccioneElAno = 'Select the year you want to consult'/>
42 <#assign OMCPublicaciones = 'OMC Publications' />
43 <#assign Publicaciones = 'Publications' />
44 <#assign Encuestas = 'Surveys' />
45 <#assign ver = "See" />
46 <#assign compartirEn = "Share on" />
47 <#assign copiarUrl = "Copy url" />
48</#if>
49<#assign breadcrumbList = false />
50<#list asset.getCategories() as category>
51
52
53<#--<#if (category.vocabularyId == 104188)>-->
54 <#if (category.name=='Tipo de Publicacion')>
55 <#-- <#assign breadcrumbList = true />-->
56 </#if>
57 <#if (category.name=='Estudios') || (category.name=='Estudis')>
58 <#--<#if (category.categoryId == 104189)>-->
59 <#assign tipoCat = OMCPublicaciones>
60
61 <#assign urlTipoCat = '/web/observatori/publicacions'>
62 </#if>
63<#--<#if (category.categoryId == 104190)>-->
64 <#if (category.name=='Encuestas')>
65 <#assign tipoCat = Encuestas>
66 <#assign urlTipoCat = '/web/observatori/enquestes-de-mobilitat'>
67 </#if>
68</#list>
69
70<#if (breadcrumbList = true)>
71
72 <ol class="breadcrumb">
73 <li class="breadcrumb-item">
74 <a class="breadcrumb-link" href="${urlTipoCat}" title="Encuestas de movilidad">
75 <span class="breadcrumb-text-truncate">${tipoCat}</span>
76
77 </a>
78 </li>
79
80 <li class="breadcrumb-item">
81 <span class="active ">${Nombre.getData()}</span>
82 </li>
83 </ol>
84<#else>
85<#list asset.getCategories() as category2>
86
87<div style="display:none">${category2.name} --</div>
88 <#if category2.name=='Estudis' || category2.name=='Estudios'>
89 <ol class="breadcrumb">
90 <li class="breadcrumb-item">
91 <a class="breadcrumb-link" href="/${languageId}/web/observatori" title="Servicios">
92 <#-- <span class="breadcrumb-text-truncate">OMC</span>-->
93 <span class="breadcrumb-text-truncate"> <i class="fa fa-home" aria-hidden="true"></i></span>
94 </a>
95 </li>
96 <li class="breadcrumb-item 1">
97 <a class="breadcrumb-link" href="/publicaciones/" title="Publicaciones">
98 <span class="active">${Publicaciones}</span>
99 </a>
100 </li>
101 <li class="breadcrumb-item 2">
102 <span class="active ">${Nombre.getData()}</span>
103 </li>
104 </ol>
105
106 </#if>
107
108 <#if category2.name=='Enquestes' || category2.name=='Encuestas'>
109
110 <ol class="breadcrumb">
111 <li class="breadcrumb-item">
112 <a class="breadcrumb-link" href="/${languageId}/web/observatori" title="Servicios">
113 <#-- <span class="breadcrumb-text-truncate">OMC</span>-->
114 <span class="breadcrumb-text-truncate"> <i class="fa fa-home" aria-hidden="true"></i></span>
115 </a>
116 </li>
117 <li class="breadcrumb-item 1">
118 <a class="breadcrumb-link" href="/web/observatori/enquestes-de-mobilitat" title="Enquestes">
119 <span class="breadcrumb-text-truncate">${Encuestas}</span>
120
121 </a>
122 </li>
123
124
125 <li class="breadcrumb-item 2">
126 <span class="active ">${Nombre.getData()}</span>
127 </li>
128 </ol>
129
130 </#if>
131</#list>
132<div style="display:none">
133 <ol class="breadcrumb">
134 <li class="breadcrumb-item">
135 <span class="active ">${Nombre.getData()}</span>
136 </li>
137 </ol>
138 </div>
139</#if>
140
141<section class="head-section -white pt-0 container-encuesta">
142 <div class="container pt-0" tabindex="0">
143 <section class="align-items-start d-flex flex-wrap justify-content-between title-section w-100">
144 <h1>${Nombre.getData()}</h1>
145 <#assign categories = false>
146 <#list asset.getCategories() as category>
147 <#if (category.name=='Tipo de estudio')>
148 <#-- <#if (category.vocabularyId == 81649)>-->
149 <#assign categories = true>
150 </#if>
151 </#list>
152 <#if categories = true>
153 <div class="box-categorias">
154 <#list asset.getCategories() as category>
155 <#--<#if (category.vocabularyId == 81649)>-->
156 <#if (category.name=='Tipo de estudio')>
157
158 <#-- <#if (category.categoryId == 81650)>-->
159 <#if (category.name=='Estudios OMC')>
160 <span class="yellow-light">${category.getTitle(themeDisplay.getLocale())}</span>
161 </#if>
162 <#--<#if (category.categoryId == 81651)>-->
163 <#if (category.name=='Estudios externos')>
164 <span class="blue-light">${category.getTitle(themeDisplay.getLocale())}</span>
165 </#if>
166 </#if>
167 </#list>
168 </div>
169 </#if>
170 </section>
171 <section class="ficha-template">
172 <#assign arrAnyos = [] />
173 <#assign anyo = false>
174 <#list AgrupaciónDocumentos.getSiblings() as cur_AgrupaciónDocumentos>
175 <#if (cur_AgrupaciónDocumentos.Año?exists) && (cur_AgrupaciónDocumentos.Año.getData()?? && cur_AgrupaciónDocumentos.Año.getData() != "")>
176 <#assign arrAnyos = arrAnyos + [ cur_AgrupaciónDocumentos.Año.getData()?number ] />
177 <#assign maxAnyo = arrAnyos?max />
178 <#assign anyo = true>
179 </#if>
180 </#list>
181 <#if (anyo = true)>
182 <!-- <p class="subtitle">${ultimaActualizacion}: ${maxAnyo}</p>-->
183
184 <p class="subtitle">${ultimaActualizacion}: ${dateUtil.getDate(asset.getPublishDate(), "yyyy", locale)}</p>
185 </#if>
186
187
188 <#if (Descripción?exists)>
189 <div class="description">
190 ${Descripción.getData()}
191 </div>
192 </#if>
193 <#if (CajaDeTexto18gz?exists) &&(CajaDeTexto18gz.getSiblings()?has_content) &&(CajaDeTexto18gz.getData()?? && CajaDeTexto18gz.getData() != "")>
194 <#list CajaDeTexto18gz.getSiblings() as cur_CajaDeTexto18gz>
195 <div class="list-item -encuesta">
196 <a href="${cur_CajaDeTexto18gz.Texto19yx.getData()}" class="d-block w-100">
197 <strong class="title-section -blue w-100"> ${cur_CajaDeTexto18gz.getData()}</strong>
198 <span class="link-arrow" >${ver}</span>
199 </a>
200 </div>
201 </#list>
202
203 </#if>
204 <#assign categories = false>
205 <#list asset.getCategories() as category>
206
207
208 <#-- <#if (category.vocabularyId == 104265) || (category.vocabularyId == 104192)>-->
209 <#if (category.name=='Ámbito territorial') || (category.name=='Temática Publicaciones')>
210 <#assign categories = true>
211 </#if>
212 </#list>
213 <#if categories = true>
214 <div class="box-categorias">
215 <#list asset.getCategories() as category>
216 ${category}
217 <#--<#if (category.vocabularyId == 104192)>-->
218 <#if (category.name=='Temática Publicaciones')>
219 <span>${category.getTitle(themeDisplay.getLocale())}</span>
220 </#if>
221 <#--<#if (category.vocabularyId == 104265)>-->
222 <#if (category.name=='Ámbito territorial')>
223 <span>${category.getTitle(themeDisplay.getLocale())}</span>
224 </#if>
225 </#list>
226 </div>
227 </#if>
228 <#assign documents = false />
229 <#list AgrupaciónDocumentos.getSiblings() as cur_AgrupaciónDocumentos>
230 <#list cur_AgrupaciónDocumentos.AgrupaciónDocumentos1.getSiblings() as cur_nombreAgrupacion>
231 <#if (cur_nombreAgrupacion.NombreDocumento?exists) && (cur_nombreAgrupacion.NombreDocumento.getData()?? && cur_nombreAgrupacion.NombreDocumento.getData() != "") && (cur_nombreAgrupacion.NombreDocumento.getSiblings()?has_content) && (cur_nombreAgrupacion.NombreDocumento.Documento?exists) && (cur_nombreAgrupacion.NombreDocumento.Documento.getData()?? && cur_nombreAgrupacion.NombreDocumento.Documento.getData() != "") >
232 <#assign documents = true />
233 </#if>
234 </#list>
235 <#list cur_AgrupaciónDocumentos.AgrupaciónDocumentos1.getSiblings() as cur_nombreAgrupacion>
236 <#if (cur_nombreAgrupacion.NombreEnlace?exists) && (cur_nombreAgrupacion.NombreEnlace.getData()?? && cur_nombreAgrupacion.NombreEnlace.getData() != "") && (cur_nombreAgrupacion.NombreEnlace.getSiblings()?has_content) && (cur_nombreAgrupacion.NombreEnlace.Documento?exists) && (cur_nombreAgrupacion.NombreEnlace.EnlaceInterno.getData()?? && cur_nombreAgrupacion.NombreEnlace.EnlaceInterno.getData() != "") >
237 <#assign documents = true />
238 </#if>
239 </#list>
240 </#list>
241
242 <#if (anyo = true) && (documents = true)>
243 <#assign arrAnyos2 = []/>
244 <#list AgrupaciónDocumentos.getSiblings() as cur_AgrupaciónDocumentos>
245 <#if (cur_AgrupaciónDocumentos.Año?has_content)>
246 <#assign arrAnyos2 = arrAnyos2 + [ cur_AgrupaciónDocumentos.Año.getData()?number ] />
247 <#assign anyosOrder = arrAnyos2?sort?reverse />
248 </#if>
249 </#list>
250 <div class=" d-flex flex-wrap justify-content-center list-inform" tabindex="0">
251 <div class="d-flex w-100 select-anio align-items-center">
252 <strong class="legend-select ">${seleccioneElAno}:</strong>
253 <div class="align-items-center border-arrow-blue d-flex" id="nav-facturacion" >
254 <span class="option"><strong>${maxAnyo}</strong>
255 <ul class="d-none">
256 <#list anyosOrder as anyo>
257 <li data-value="${anyo}"><span>${anyo}</span></li>
258 </#list>
259 </ul>
260 </span>
261 </div>
262 </div>
263
264 <#list anyosOrder as anyo>
265 <#if (maxAnyo == anyo)>
266 <div class="container-documents w-100 " data-anyo="${anyo}">
267 <#else>
268 <div class="container-documents w-100 d-none" data-anyo="${anyo}">
269 </#if>
270 <#list AgrupaciónDocumentos.getSiblings() as cur_AgrupaciónDocumentos>
271 <div class="d-flex flex-wrap justify-content-between align-items-start">
272 <#if (cur_AgrupaciónDocumentos.Año.getData()?number == anyo)>
273 <p class="title-section w-100">${cur_AgrupaciónDocumentos.NombreEncuesta.getData()}</p>
274
275 <#if (cur_AgrupaciónDocumentos.AgrupaciónDocumentos1?exists)>
276 <#list cur_AgrupaciónDocumentos.AgrupaciónDocumentos1.getSiblings() as cur_nombreAgrupacion>
277 <#if (cur_nombreAgrupacion.NombreDocumento?exists) && (cur_nombreAgrupacion.NombreDocumento.getData()?? && cur_nombreAgrupacion.NombreDocumento.getData() != "") && (cur_nombreAgrupacion.NombreDocumento.getSiblings()?has_content) && (cur_nombreAgrupacion.NombreEnlace?exists) && (cur_nombreAgrupacion.NombreEnlace.getData()?? && cur_nombreAgrupacion.NombreEnlace.getData() != "")&& (cur_nombreAgrupacion.NombreEnlace.getSiblings()?has_content)>
278 <div class="container-agrupacion">
279 <p><strong> ${cur_nombreAgrupacion.NombreAgrupación.getData()}</strong></p>
280 <#assign docName = ''>
281 <#list cur_nombreAgrupacion.NombreDocumento.getSiblings() as cur_NombreDocumento>
282 <#if ((cur_NombreDocumento.Documento.getData())?? && cur_NombreDocumento.Documento.getData() != "")>
283 <#assign url = cur_NombreDocumento.Documento.getData()>
284 <#assign part = stringUtil.split(url, "/")>
285 <#assign docName = part[4]>
286 <#assign parts = stringUtil.split(part[4],".")>
287 <#list parts as k>
288 <#assign part = k>
289 </#list>
290 <a target="_blank" class="link-download ${part} d-flex" href="${cur_NombreDocumento.Documento.getData()}" >
291 ${cur_NombreDocumento.getData()}
292 </a>
293 </#if>
294 </#list>
295 <#list cur_nombreAgrupacion.NombreEnlace.getSiblings() as cur_NombreEnlace>
296 <a target="_blank" class="d-flex link-arrow mb-2 pl-3" href="${cur_NombreEnlace.EnlaceInterno.getData()}">
297 ${cur_NombreEnlace.getData()}
298 </a>
299 </#list>
300 </div>
301 <#else>
302 <#if (cur_nombreAgrupacion.NombreDocumento?exists) && (cur_nombreAgrupacion.NombreDocumento.getData()?? && cur_nombreAgrupacion.NombreDocumento.getData() != "") && (cur_nombreAgrupacion.NombreDocumento.getSiblings()?has_content) >
303 <div class="container-agrupacion">
304 <p><strong> ${cur_nombreAgrupacion.NombreAgrupación.getData()}</strong></p>
305 <#assign docName = ''>
306 <#list cur_nombreAgrupacion.NombreDocumento.getSiblings() as cur_NombreDocumento>
307 <#if ((cur_NombreDocumento.Documento.getData())?? && cur_NombreDocumento.Documento.getData() != "")>
308 <#assign url = cur_NombreDocumento.Documento.getData()>
309 <#assign part = stringUtil.split(url, "/")>
310 <#assign docName = part[4]>
311 <#assign parts = stringUtil.split(part[4],".")>
312 <#list parts as k>
313 <#assign part = k>
314 </#list>
315 <a target="_blank" class="link-download ${part} d-flex" href="${cur_NombreDocumento.Documento.getData()}">
316 ${cur_NombreDocumento.getData()}
317 </a>
318 </#if>
319 </#list>
320 </div>
321 </#if>
322 <#if (cur_nombreAgrupacion.NombreEnlace?exists) && (cur_nombreAgrupacion.NombreEnlace.getData()?? && cur_nombreAgrupacion.NombreEnlace.getData() != "")&& (cur_nombreAgrupacion.NombreEnlace.getSiblings()?has_content)>
323 <div class="container-agrupacion">
324 <p><strong> ${cur_nombreAgrupacion.NombreAgrupación.getData()}</strong></p>
325 <#list cur_nombreAgrupacion.NombreEnlace.getSiblings() as cur_NombreEnlace>
326 <a target="_blank" class="d-flex link-arrow mb-2 pl-3" href="${cur_NombreEnlace.EnlaceInterno.getData()}">
327 ${cur_NombreEnlace.getData()}
328 </a>
329 </#list>
330 </div>
331 </#if>
332 </#if>
333 </#list>
334 </#if>
335 </#if>
336 </div>
337
338 </#list>
339
340
341
342 </div>
343 </#list>
344 </#if>
345
346 </section>
347 <div class="share justify-content-start">
348 <br></br> <br></br> <br></br>
349 <span><strong>${CompartirEsteContenido}:</strong></span>
350 <a title="${compartirEn} twitter" arial-label="${compartirEn} twitter"
351 target="_blank"
352 href="https://twitter.com/intent/tweet?text=${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}"
353 ><i class="fa fa-twitter" aria-hidden="true"></i
354 ></a>
355 <a title="${compartirEn} facebook" arial-label="${compartirEn} facebook"
356 target="_blank"
357 href="https://www.facebook.com/sharer/sharer.php?u=${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}"
358 ><i class="fa fa-facebook" aria-hidden="true"></i
359 ></a>
360 <a title="${compartirEn} whatssap" arial-label="${compartirEn} whatssap"
361 target="_blank"
362 href="https://wa.me/?text=${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}"
363 ><i class="fa fa-whatsapp" aria-hidden="true"></i
364 ></a>
365 <a title="${copiarUrl}" arial-label="${copiarUrl}" href='javascript:void();' onclick='var a=document.createElement("input");a.setAttribute("value",window.location.href.split("?")[0].split("#")[0]),document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a);var c=document.createElement("style"),e=document.createTextNode("#av{position:fixed;z-index:999999;width:120px;top:15%;left:50%;margin-left:-60px;padding:10px;background:#F6AE2D;border-radius:8px;font-size: 14px;color:white;text-align:center}");c.appendChild(e),document.head.appendChild(c);var av=document.createElement("div");av.setAttribute("id","av");var c=document.createTextNode("URL copiada");av.appendChild(c),document.body.appendChild(av),window.load=setTimeout("document.body.removeChild(av)",2e3);'
366 ><i class="fa fa-link" aria-hidden="true"></i ></a>
367 </div>
368 </div>
369
370</section>
371<script>
372 $("#nav-facturacion").click(function(){
373 $(this).toggleClass('active')
374 $(this).find('ul').toggleClass('d-none')
375
376 })
377 $("#nav-facturacion ul li").click(function(){
378 var textoOption = $(this).text()
379 var valueOption = $(this).attr('data-value')
380 $('#nav-facturacion .option strong').text(textoOption)
381 $('.container-documents').addClass('d-none')
382 $('.container-documents[data-anyo="'+valueOption+'"]').removeClass('d-none')
383 })
384
385
386</script>
387<style>
388.breadcrumb-item,.breadcrumb-link{
389 color:black;
390}
391.breadcrumb-text-truncate{
392 font-weight: bold;
393}
394.breadcrumb:first-child {
395
396 display:none;
397}
398.breadcrumb-item:first-child+.breadcrumb-item::before{
399
400 display:none;
401}
402
403 #nav-facturacion{
404 margin: 0;
405 cursor: pointer;
406 display: flex;
407 justify-content: flex-end;
408 padding: 20px;
409 position: relative;
410 min-height: 85px;
411 width:120px;
412 }
413 #nav-facturacion.active .option, #calidad.active .option {
414 background-color: white;
415 border: 1px solid #F6AE2D;
416 background-image: url(/o/atmobservatorithemeliferay/images/arrow-orange-up.svg);
417 background-repeat: no-repeat;
418 background-size: 18px;
419 background-position: 85% 19px;
420 max-height: 150px;
421 overflow-y: scroll;
422 border-radius: 7px;
423 }
424 #nav-facturacion.active .option::-webkit-scrollbar {
425 -webkit-appearance: none;
426 }
427
428 #nav-facturacion.active .option::-webkit-scrollbar:vertical {
429 width:5px;
430 }
431 #nav-facturacion.active .option::-webkit-scrollbar-button:increment,#nav-facturacion.active .option::-webkit-scrollbar-button {
432 display: none;
433 }
434
435 #nav-facturacion.active .option::-webkit-scrollbar:horizontal {
436 height: 10px;
437 margin: 5px 0;
438 }
439
440 #nav-facturacion.active .option::-webkit-scrollbar-thumb {
441 background-color:#F6AE2D;
442 border-radius: 20px;
443 border: 2px solid #F6AE2D;
444 }
445
446 #nav-facturacion.active .option::-webkit-scrollbar-track {
447 border-radius: 10px;
448 }
449 #nav-facturacion .option ul{
450 z-index: 1;
451 background: white;
452 width: 100%;
453 list-style: none;
454 margin-bottom:0;
455 padding-left: 0;
456 }
457 #nav-facturacion .option ul li{
458 padding: 2px 15px;
459 }
460 #nav-facturacion .option{
461 font-size: 16px;
462 padding: 10px;
463 border-radius: 24px;
464 border: 1px solid linear-gradient(64deg,#053b66 4%,#002fff 74%,#01e7ff 114%);
465 padding-right: 55px;
466 width: 100%;
467 max-width: 400px;
468 display: block;
469 background: white;
470 border: 1px solid #efefef;
471 background-image: url(/o/atmobservatorithemeliferay/images/arrow-orange.svg);
472 background-repeat: no-repeat;
473 background-size: 18px;
474 background-position: 85% 19px;
475 -webkit-animation-name: fadeIn;
476 animation-name: fadeIn;
477 position: absolute;
478 top: 20px;
479 right: 20px;
480 z-index: 2;
481
482 }
483 #nav-facturacion.active .option strong,#nav-facturacion .option strong{
484 padding: 5px 15px;
485 }
486 #nav-facturacion.active .option strong{
487 color: #212529;
488 }
489 #nav-facturacion .option ul li:hover span{
490 color: #F6AE2D;
491 }
492 .legend-select{
493 padding-right:35px;
494 }
495 .head-section.-white .title-section, .head-section.-white .title-section h1 {
496 color: #323333;
497 width: calc(100% - 220px);
498 }
499
500
501</style>
It may interest you