La innovación no se detiene y podría aumentar gracias a la IA
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing: ==> assetRenderer [in template "10155#10193#NOTICIA" at line 24, column 27] ---- 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 journalArticle = assetRendere... [in template "10155#10193#NOTICIA" at line 24, column 1] ----
1<#assign colorSite = getterUtil.getString(themeDisplay.getThemeSetting("color-site")) />
2<script type="text/javascript" src="/documents/6323808/129176989/jquery.captionate.js"></script>
3<script>
4function extractYouTubeParameter(url) {
5 // Expresión regular para YouTube y Shorts
6 var regExp = /(?:youtube\.com\/(?:shorts\/|watch\?v=)|youtu\.be\/)([^&?#]+)/;
7 var match = url.match(regExp);
8
9 if (match && match[1]) {
10 // Devuelve el ID del video con cualquier parámetro de consulta adicional
11 var paramIndex = url.indexOf('?');
12 return paramIndex !== -1 ? match[1] + url.substring(paramIndex) : match[1];
13 } else {
14 return null;
15 }
16}
17</script>
18<#assign zona = timeZoneUtil.getTimeZone("Europe/Madrid") />
19
20<#assign AssetEntryLocalservice = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
21<#assign journalLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
22<#assign viewURL = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() />
23<#assign groupId = getterUtil.getLong(groupId)/>
24<#assign journalArticle = assetRenderer.getArticle() />
25
26<#-- apliquem les traduccions -->
27
28<#switch themeDisplay.getLocale()>
29<#case "ca_ES">
30 <#assign translations = {
31 "categories", "Categories",
32 "multimedia", "Multimèdia",
33 "perfils", "Perfils dels protagonistes",
34 "info", "Per a més informació",
35 "noticies", "Notícia publicada per",
36 "unitat", "Oficina de Comunicació",
37 "ods", "ODS - Objectius de desenvolupament sostenible",
38 "odsupf","Els ODS a la UPF"
39 }/>
40 <#break>
41<#case "es_ES">
42 <#assign translations = {
43 "categories", "Categorías",
44 "multimedia", "Multimedia",
45 "perfils", "Perfiles de los protagonistas",
46 "info", "Para más información",
47 "noticies", "Noticia publicada por",
48 "unitat", "Oficina de Comunicación",
49 "ods", "ODS - Objetivos de desarrollo sostenible",
50 "odsupf","Els ODS a la UPF"
51 }/>
52 <#break>
53<#default>
54<#assign translations = {
55 "categories", "Categories",
56 "multimedia", "Multimedia",
57 "perfils", "Profiles of the protagonists",
58 "info", "For more information",
59 "noticies", "News published by",
60 "unitat", "Communication Office",
61 "ods", "SDG - Sustainable Development Goals",
62 "odsupf","Els ODS a la UPF"
63 }/>
64</#switch>
65
66<#--<#assign site = groupId />-->
67<#assign site = groupId />
68
69<#if ( site?is_number) >
70 <#assign resourcePrimKey =
71 journalLocalService.getArticle(getterUtil.getLong(site), .vars['reserved-article-id'].data).resourcePrimKey />
72 <#assign entry = AssetEntryLocalservice.getEntry("com.liferay.journal.model.JournalArticle", getterUtil.getLong(resourcePrimKey)) />
73 <#if entry.getPublishDate()?? >
74 <#assign fecha_de_creacion = entry.getPublishDate()?string("dd.MM.yyyy")/>
75 <#else>
76 <#assign fecha_de_creacion = .now?string("dd.MM.yyyy")/>
77 </#if>
78
79 <#if entry.getModifiedDate()?? >
80 <#assign fecha_de_modificacion = entry.getModifiedDate()?string("dd.MM.yyyy")/>
81 <#else>
82 <#assign fecha_de_modificacion = .now?string("dd.MM.yyyy")/>
83 </#if>
84</#if>
85
86<#assign cat = "" />
87<#assign listaCategorias = entry.getCategories() />
88<#list listaCategorias as categoria >
89 <#if stringUtil.equalsIgnoreCase("OpenCms", categoria.name) >
90 <#assign cat = categoria.name />
91 </#if>
92</#list>
93<div class="container noticia-maximized nova">
94 <div id="nom_page">
95 <h1>${.vars['reserved-article-title'].data}</h1>
96 </div>
97 <div class="contingut subtitol">
98 <#if .vars['Resum']?? >
99 ${.vars['Resum'].getData()}
100 </#if>
101 </div>
102 <div class="data_flex">
103 <#if ( fecha_de_creacion?length == 10) >
104 <div class="data">${fecha_de_creacion}</div>
105 </#if>
106 <div class="xarxes-socials">
107 <script type="text/javascript">
108 var url_link = window.location.href;
109 var encode_url_link = encodeURIComponent(url_link);
110 var titular = `${.vars['reserved-article-title'].data}`;
111 var encode_titular = encodeURIComponent(titular);
112 function copiar() {
113 navigator.clipboard.writeText(url_link);
114 }
115 function carrega() {
116 document.querySelectorAll('.ft-btn-rrss--whatsapp').forEach(function(element) {
117 element.href = `https://api.whatsapp.com/send?text='%C2%BF`+encode_titular+`%22%20`+encode_url_link+`%3Futm_source%3Dwhatsapp%26utm_medium%3Dsocial%26utm_campaign%3Dbtn-share`;
118 });
119 document.querySelectorAll('.ft-btn-rrss--facebook').forEach(function(element) {
120 element.href = `https://www.facebook.com/sharer/sharer.php?u=`+encode_url_link;
121 element.setAttribute('data-href', url_link);
122 });
123 document.querySelectorAll('.ft-btn-rrss--twitter').forEach(function(element) {
124 element.href = `https://twitter.com/intent/tweet?original_referer=https%3A%2F%2Fupf.edu%2F&ref_src=twsrc%5Etfw%7Ctwcamp%5Ebuttonembed%7Ctwterm%5Eshare%7Ctwgr%5E&text=`+encode_titular+`&url=`+encode_url_link;
125 });
126 document.querySelectorAll('.ft-btn-rrss--email').forEach(function(element) {
127 element.href = `mailto:?subject=`+encode_titular+`&body=`+url_link;
128 });
129 };
130 if (document.readyState !== "loading") {
131 carrega();
132 }
133 document.addEventListener("DOMContentLoaded", function(){
134 carrega();
135 });
136 </script>
137 <div class="ft-mol-rrss-column__items">
138 <a href="#" target="_blank" title="WhatsApp" class="ft-btn-rrss ft-btn-rrss--whatsapp" rel="nofollow" data-share-button="whatsapp">
139 <span class="fa-stack"><i class="fa-solid fa-circle fa-stack-2x"></i><i class="fa-brands fa-whatsapp fa-stack-1x"></i></span>
140 <span class="ft-btn-rrss__text"> RRSS WhatsApp</span>
141 </a>
142 <a href="#" target="_blank" title="Twitter" class="ft-btn-rrss ft-btn-rrss--twitter" rel="nofollow" data-share-button="twitter">
143 <span class="fa-stack"><i class="fa-solid fa-circle fa-stack-2x"></i><i class="fa-brands fa-x-twitter fa-stack-1x "></i></span>
144 <span class="ft-btn-rrss__text"> RRSS Twitter</span>
145 </a>
146 <a href="#" target="_blank" title="Facebook" class="fb-share-button ft-btn-rrss--facebook" rel="nofollow" data-share-button="facebook" data-type="facebook">
147 <span class="fa-stack"><i class="fa-solid fa-circle fa-stack-2x"></i><i class="fa-brands fa-facebook-f fa-stack-1x "></i></span>
148 <span class="ft-btn-rrss__text"> RRSS Facebook</span>
149 </a>
150 <a href="#" target="_blank" title="email" class="ft-btn-rrss ft-btn-rrss--email" rel="nofollow" data-share-button="mail">
151 <span class="fa-stack"><i class="fa-solid fa-circle fa-stack-2x"></i><i class="fa-regular fa-envelope fa-stack-1x"></i></span>
152 <span class="ft-btn-rrss__text"> RRSS email</span>
153 </a>
154 <a href="javascript: copiar()" title="Copiar URL" class="ft-btn-nav ft-btn-nav--copy ft-btn-nav--bordered" data-share-button="url">
155 <span class="fa-stack"><i class="fa-solid fa-circle fa-stack-2x"></i><i class="fa-regular fa-copy fa-stack-1x"></i></span>
156 <span class="ft-btn-nav__text">Copiar URL</span>
157 </a>
158 </div>
159 </div>
160 </div>
161<div class="row">
162 <div class="asset-full-content col-md-8 left">
163 <#-- end xarxes socials-->
164 <div class="content" id="content">
165 <#if .vars['separadorimatge']?? >
166 <#attempt>
167 <#if ( .vars['separadorimatge'].getChild('url_youtube').getData() != "") >
168 <!--zona youtube-->
169 <p id="youtube" class="youtube">
170 <script type="text/javascript">
171 function getYoutube() {
172 var id = $(this).parent('p').attr("id");
173 var url = "${.vars['separadorimatge'].getChild('url_youtube').getData()}"
174 var parm_youtube = extractYouTubeParameter(url)
175 if (parm_youtube.length != 0 ) {
176 return '<iframe title="Youtube video player" width="560" height="315" src="https://www.youtube.com/embed/'+ parm_youtube +'" frameborder="0" allowfullscreen></iframe>';
177 } else {
178 return '';
179 }
180 }
181 document.getElementById("youtube").innerHTML = getYoutube();
182 </script>
183 </p>
184 <#elseif (.vars['separadorimatge'].getChild('Imatge_inicial').getData() != "" && .vars['separadorimatge'].getChild('url_youtube').getData() == "" ) >
185 <p><img alt="Imatge inicial - ${.vars['separadorimatge'].getChild('Imatge_inicial').getChild('peufoto').getData()}" title="${.vars['separadorimatge'].getChild('Imatge_inicial').getChild('peufoto').getData()}" src="${.vars['separadorimatge'].getChild('Imatge_inicial').getData()}" width="100%" /></p>
186 </#if>
187 <#recover>
188 </#attempt>
189 </#if>
190 <#if .vars['Noticia']?? >
191 <div class="content-body">${.vars['Noticia'].getData()}</div>
192 </#if>
193 </div>
194 </div>
195
196 <#-- Mostrem les categories que siguin filles de la categoria "Notícies"-->
197 <#-- Preparació url dels enllaços a les categories-->
198 <#assign wordCategories = languageUtil.get(locale, "categories-nom-page")>
199 <#assign wordCategories = wordCategories?lower_case />
200 <#assign catUrl = "/web/focus/" + wordCategories + "?p_p_id=122_INSTANCE_4xkc6d8xhKAC&p_p_lifecycle=0&p_p_state=normal&p_p_mode=view&p_p_col_id=column-1&p_r_p_564233524_resetCur=true&p_r_p_564233524_categoryId=" />
201 <#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
202
203<div class="col-md-4" id="right">
204 <#if .vars['Camps_addicionalsb']?? && .vars['Camps_addicionalsb'].getChild('text_dreta')??>
205 ${.vars['Camps_addicionalsb'].getChild('text_dreta').getData()}
206 </#if>
207 <h2 class="audio">${translations["multimedia"]}</h2>
208 <div class="audio">
209 <div id="media"></div>
210 </div>
211 <#if .vars['Camps_addicionalsb']?? >
212 <#attempt>
213 <#assign prota = .vars['Camps_addicionalsb'].getChild('Protagonistes') />
214 <#if ( prota.getChild('nomperfil').getData() != "") >
215 <h2>${translations["perfils"]}:</h2>
216 <#list prota.getChild('nomperfil').getSiblings() as perfil >
217 <div class="names">
218 <div class="nom">
219 ${perfil.getData()}
220 </div>
221 <div class="xarxes">
222 <#list perfil.getChild('urlperfil').getSiblings() as sub_element >
223
224 <#-- Formatem l'enllaç perquè no el tracti com si fos una subpàgina -->
225 <#assign enllac = sub_element.getData() />
226 <#if !enllac?starts_with("http") >
227 <#assign enllac = "http://" + enllac />
228 </#if>
229
230 <a href="${enllac}" title="${enllac}" target="_blank">
231 <#if (enllac?contains("facebook") ) >
232 <img alt="Facebook UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/facebook.png" width="16">
233 <#elseif ( enllac?contains("twitter") ) >
234 <img alt="Twitter UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/twitter.png" width="16">
235 <#elseif ( enllac?contains("instagram") ) >
236 <img alt="Instagram UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/instagram.png" width="16">
237 <#elseif ( enllac?contains("youtube") ) >
238 <img alt="Youtube UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/youtube_new.png" width="16">
239 <#elseif ( enllac?contains("linkedin") ) >
240 <img alt="Linkedin UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/linkedin.png" width="16">
241 <#elseif ( enllac?contains("flickr") ) >
242 <img alt="Flickr UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/flickr.png" width="16">
243 <#elseif ( enllac?contains("vimeo") ) >
244 <img alt="Vimeo UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/vimeo.png" width="16">
245 <#elseif ( enllac?contains("pinterest") ) >
246 <img alt="Pinterest UPF" height="16" src="//www.upf.edu/documents/213531008/213545108/pinterest.png" width="16">
247 <#else>
248 <i class="fa-solid fa-link" aria-label="enllacos"></i>
249
250 </#if>
251 </a>
252 </#list>
253 </div>
254 </div>
255 </#list>
256 </#if>
257 <#recover>
258 </#attempt>
259 </#if>
260 <div class="categories">
261 <h2>${translations["categories"]}:</h2>
262
263 <#list listaCategorias as categoria >
264
265 <#if categoria.getParentCategoryId() != 0 > <#--arreglo CG -->
266
267 <#assign assetCategory = "" />
268 <#assign assetCategory = assetCategoryLocalService.getCategory(categoria.getParentCategoryId()) />
269 <#if (assetCategory.getName() == "Notícies") >
270 <div class="tipus"><a href="${catUrl}${categoria.getCategoryId()}">${categoria.getTitle(locale)}</a></div>
271 </#if>
272
273 </#if>
274
275 </#list>
276 </div>
277
278 <div class="block_ods">
279 <h2>${translations["ods"]}:</h2>
280 <#list listaCategorias as categoria >
281 <#if categoria.getParentCategoryId() != 0 > <#--arreglo CG -->
282 <#assign assetCategory = "" />
283 <#assign assetCategory = assetCategoryLocalService.getCategory(categoria.getParentCategoryId()) />
284 <#if (assetCategory.getName() == "ODS") >
285
286 <#if categoria.getTitle(locale)?contains('01.')>
287 <div class="ods_01">${categoria.getTitle(locale)}</div>
288 <#elseif categoria.getTitle(locale)?contains('02.')>
289 <div class="ods_02">${categoria.getTitle(locale)}</div>
290 <#elseif categoria.getTitle(locale)?contains('03.')>
291 <div class="ods_03">${categoria.getTitle(locale)}</div>
292 <#elseif categoria.getTitle(locale)?contains('04.')>
293 <div class="ods_04">${categoria.getTitle(locale)}</div>
294 <#elseif categoria.getTitle(locale)?contains('05.')>
295 <div class="ods_05">${categoria.getTitle(locale)}</div>
296 <#elseif categoria.getTitle(locale)?contains('06.')>
297 <div class="ods_06">${categoria.getTitle(locale)}</div>
298 <#elseif categoria.getTitle(locale)?contains('07.')>
299 <div class="ods_07">${categoria.getTitle(locale)}</div>
300 <#elseif categoria.getTitle(locale)?contains('08.')>
301 <div class="ods_08">${categoria.getTitle(locale)}</div>
302 <#elseif categoria.getTitle(locale)?contains('09.')>
303 <div class="ods_09">${categoria.getTitle(locale)}</div>
304 <#elseif categoria.getTitle(locale)?contains('10.')>
305 <div class="ods_10">${categoria.getTitle(locale)}</div>
306 <#elseif categoria.getTitle(locale)?contains('11.')>
307 <div class="ods_11">${categoria.getTitle(locale)}</div>
308 <#elseif categoria.getTitle(locale)?contains('12.')>
309 <div class="ods_12">${categoria.getTitle(locale)}</div>
310 <#elseif categoria.getTitle(locale)?contains('13.')>
311 <div class="ods_13">${categoria.getTitle(locale)}</div>
312 <#elseif categoria.getTitle(locale)?contains('14.')>
313 <div class="ods_14">${categoria.getTitle(locale)}</div>
314 <#elseif categoria.getTitle(locale)?contains('15.')>
315 <div class="ods_15">${categoria.getTitle(locale)}</div>
316 <#elseif categoria.getTitle(locale)?contains('16.')>
317 <div class="ods_16">${categoria.getTitle(locale)}</div>
318 <#elseif categoria.getTitle(locale)?contains('17.')>
319 <div class="ods_17">${categoria.getTitle(locale)}</div>
320 </#if>
321 </#if>
322
323 </#if>
324 </#list>
325 <a href="/web/responsabilitat-social/agenda-2030-ods" target="_blank" class="btn button_ods">${translations["odsupf"]} <i class="fa-solid fa-chevron-right" aria-hidden="true"></i></a>
326 </div>
327<h2 class="mark">Contact</h2>
328<#if .vars['Camps_addicionalsb']?? >
329 <#attempt>
330 <#if .vars['Camps_addicionalsb'].getChild('espremsa').getData() == "true">
331 <div class="caixa-contacte">
332 <p><strong>${translations["noticies"]}:</strong></p>
333 <p>${translations["unitat"]}</p>
334 <ul>
335 <li><a href="tel:616107518">616 107 518</a></li>
336 <li><a class="correuContacte" href="mailto:[email protected]">[email protected]</a></li>
337 </ul>
338 </div>
339
340 </#if>
341 <#recover>
342 </#attempt>
343</#if>
344
345 </div>
346</div>
347</div>
348
349
350<#-- decidim si pintem la zona youtube o ivoox -->
351 <#if .vars['Camps_addicionalsb']?? >
352 <#attempt>
353 <#assign multi = .vars['Camps_addicionalsb'].getChild('Multimedia') />
354 <#list multi.getChild('youtubelist').getSiblings() as videos >
355 <#if ( videos.getChild('urlyoutubelist').getData()?contains("youtu") ) >
356 <script type="text/javascript">
357 function getYoutube() {
358 var id = $(this).parent('p').attr("id");
359 var url = "${videos.getChild('urlyoutubelist').getData()}"
360 var parm_youtube = extractYouTubeParameter(url)
361 if (parm_youtube.length != 0) {
362 return "<p>${videos.getChild("titolyoutubelist").getData()}</p><iframe title='Youtube video player' width='560' height='315' src='https://www.youtube.com/embed/"+ parm_youtube +"' frameborder='0' allowfullscreen></iframe>";
363 } else {
364 return 'error';
365 }
366 }
367 document.getElementById("media").innerHTML += getYoutube();
368 </script>
369 <#elseif ( videos.getChild('urlyoutubelist').getData()?contains("ivoox") ) >
370 <script type="text/javascript">
371 function getIvoox() {
372 if (!"${videos.getChild('urlyoutubelist').getData()}".includes("rf_")) {
373 return "<p class='titol'>${videos.getChild("titolyoutubelist").getData()}</p><br /> Error. Use a valid audio URL";
374 } else {
375 var Y = "rf_"
376 var X = "${videos.getChild('urlyoutubelist').getData()}"
377 var Z = X.slice(X.indexOf(Y) + Y.length)
378 return "<p class='titol'>${videos.getChild("titolyoutubelist").getData()}</p><iframe title='Youtube video player' width='238' height='48' frameborder='0' allowfullscreen='' scrolling='no' src='https://www.ivoox.com/player_ek_" + Z + "'></iframe>";
379 }
380 }
381 document.getElementById("media").innerHTML += getIvoox();
382 </script>
383 </#if>
384 </#list>
385 <#recover>
386 </#attempt>
387 </#if>
388<script>
389
390 if (!('remove' in Element.prototype)) {
391 Element.prototype.remove = function() {
392 if (this.parentNode) {
393 this.parentNode.removeChild(this);
394 }
395 };
396 }
397 // Si tenim els bookmarks posicionats d forma horitzontal, els movem
398 if($(".taglib-social-bookmarks").length != 0){
399 $(".taglib-social-bookmarks").prependTo(".asset-full-content");
400 $(".taglib-social-bookmarks").get(0).remove();
401 }
402
403 ajustaRelatedContentFullSize();
404
405
406 // Eliminem seccions si no n'hi ha cap
407 if ($(".categories div").length == 0){
408 $(".categories").remove();
409 }
410 if ($(".block_ods div").length == 0){
411 $(".block_ods").remove();
412 }
413 if($('#media').is(':empty')) {
414 $("h2.audio").hide();
415 }
416
417 $('#content img[title]').captionate(); // imatges amb class caption mostraran la descripció
418
419 function ajustaRelatedContentFullSize(){
420 if ($(".list-group.sidebar-list-group").length!= 0){
421 $(".asset-links").appendTo("#right").insertAfter('.categories');
422 $(".asset-links").css("padding-left","0px !important");
423 }else{
424 setTimeout(function(){ajustaRelatedContentFullSize();},100);
425 }
426 }
427
428/*Treure el títol de la pàgina 7.2*/
429
430document.querySelector(".upf__titol-pagina")?.remove()
431</script>
432
433<script type="application/ld+json">
434{
435 "@context": "https://schema.org",
436 "@type": "NewsArticle",
437 "mainEntityOfPage":"${viewURL}",
438 "url":"${viewURL}",
439 <#if .vars['reserved-article-title']?? >"headline":"${.vars['reserved-article-title'].data}",</#if>
440 "datePublished": "${journalArticle.getCreateDate()?datetime?iso_utc}",
441 "dateModified":"${journalArticle.getModifiedDate()?datetime?iso_utc}",
442 <#if .vars['Resum']?? >"description":"${.vars['Resum'].getData()}",</#if>
443 "publisher":{
444 "@type":"Organization",
445 "name":"Universitat Pompeu Fabra (UPF)",
446 "logo":{
447 "@type":"ImageObject",
448 "url":"https://www.upf.edu/o/upf-2016-theme/images/upf/logo.png"
449 }
450 },
451
452 <#if .vars['separadorimatge'].getChild('Imatge_inicial')?? >"image": {
453 "@type":"ImageObject",
454 "url":"https://www.upf.edu${.vars['separadorimatge'].getChild('Imatge_inicial').getData()}"</#if>
455 }
456
457}
458</script>
459
460<style>
461 /*Xarxes socials*/
462 .data_flex {
463 display: flex;
464 flex-direction: row;
465 flex-wrap: nowrap;
466 align-items: center;
467 justify-content: space-between;
468 }
469 .ft-mol-rrss-column__items span.ft-btn-rrss__text,.ft-mol-rrss-column__items .ft-btn-nav__text {
470 display: none;
471 }
472 .ft-mol-rrss-column__items {
473 text-align: end;
474 }
475 .ft-mol-rrss-column__items a {
476 text-decoration: none;
477 }
478 .ft-mol-rrss-column__items .fa-stack > i {
479 color: ${colorSite};
480 }
481 .ft-mol-rrss-column__items .fa-stack > i:first-child {
482 background-color: transparent;
483 color: transparent;
484 }
485 /*Unificar estils de padding*/
486 .layout-content > section > div, .layout-content > section > div .row > div, .container.noticia-maximized.nova .left {
487 padding-left: 0 !important;
488 padding-right: 0 !important;
489 }
490 /*Fix notícies relacionades*/
491 ul.list-group.sidebar-list-group .autofit-col .list-group-title:only-child {
492 height: auto;
493 }
494 ul.list-group.sidebar-list-group .text-truncate-inline .text-truncate {
495 display: inline-block;
496 color: #363733;
497 text-decoration: none;
498 max-width: 100%;
499 overflow: auto;
500 text-overflow: initial;
501 vertical-align: bottom;
502 white-space: normal;
503 word-wrap: normal;
504 }
505 ul.list-group.sidebar-list-group .text-truncate-inline .text-truncate:hover {
506 color: #8c8f85;
507 }
508 /*FI fix notícies relacionades*/
509
510 #media p {
511 margin: 10px 0 5px;
512 }
513 /* ----- Estil per adaptar a themes que no són UPF 2016 ----- */
514 #nom_page h1 {
515 color: ${colorSite} !important;
516 font-size: 23px;
517 font-weight: bold;
518 line-height: normal;
519 margin-bottom: 15px;
520 margin-top: 0;
521 padding: 0;
522 }
523 .contingut.subtitol, .contingut.subtitol p, .contingut.subtitol ul, .contingut.subtitol ol {
524 color: ${colorSite} !important;
525 }
526
527 .data {
528 color: #989b8f;
529 }
530 #right h2 {
531 font-weight: normal;
532 font-size: 20px;
533 color: ${colorSite};
534 line-height: normal;
535 margin-bottom: 1em !important;
536 margin-top: 1em !important;
537 text-decoration: none;
538 text-transform: none;
539 padding: 0;
540 }
541 #right h2:first-child {
542 margin-top: 0 !important;
543 }
544 .tipus a {
545 text-decoration: none !important;
546 }
547
548 li.list-group.sidebar-list-group-item a {
549 color: ${colorSite} !important;
550 }
551
552 span.taglib-text {
553 color: ${colorSite};
554 }
555
556 .categories div.tipus a{
557 background-color: ${colorSite};
558 margin-bottom: 5px;
559 margin-right: 5px;
560 max-width: 100%;
561 position: relative;
562 display: inline-block;
563 text-decoration: none;
564 color: #FFFFFF;
565 padding: 5px 10px;
566 }
567
568
569 /* ----- Fi estil per adaptar a themes que no són UPF 2016 ----- */
570
571 /* En aplicar aquesta class a un div .container, limitem amb auto per no ser sempre 1170px */
572 .noticia-maximized{
573 max-width: 1280px !important;
574 width: auto !important;
575 }
576 .noticia-maximized .row {
577 align-items: stretch;
578 align-content: stretch;
579 }
580
581 #nom_page{
582 display:block !important;
583 }
584 #contingut > #nom_page{
585 display:none !important;
586 }
587
588 /* Per treure la icona de davant del títol Continguts relacionats*/
589 .asset-links h2{
590 background:none !important;
591 }
592 .asset-links{
593 padding-left: 4px;
594 margin-top: 0px;
595 }
596 .list-group.sidebar-list-group{
597 padding-left: 25px !important;
598 }
599 .list-group.sidebar-list-group-item{
600 list-style: initial !important;
601 }
602 .list-group.sidebar-list-group-item img{
603 display:none;
604 }
605 .contingut.subtitol, .contingut.subtitol p, .contingut.subtitol ul, .contingut.subtitol ol {
606 font-weight: normal;
607 padding-top: 0;
608 line-height: normal !important;
609 }
610
611 .contingut.subtitol {
612 border-bottom: 1px solid #ddd;
613 margin-bottom: 10px;
614 padding-bottom: 10px;
615 }
616 .asset-full-content .tipus > a {
617 background-color: ${colorSite} !important;
618 margin-right: 5px;
619 margin-bottom: 5px;
620 position: relative;
621 max-width:100%;
622 text-decoration:none;
623 }
624 .asset-full-content .tipus > a:hover {
625 color: #ffffff !important;
626 }
627
628 .asset-full-content .tipus{
629 display: inline;
630 }
631
632 .taglib-social-bookmarks {
633 display: block;
634 float: right;
635 background:none;
636 margin-top:0px;
637 }
638 .taglib-social-bookmarks a{
639 margin-bottom: 0px;
640 }
641 .taglib-social-bookmarks ul{
642 padding:0px;
643 margin-bottom:0px;
644 }
645 .taglib-social-bookmarks ul li{
646 margin-right:0px;
647 }
648 .asset-full-content .content {
649 border-bottom: 0px solid #fff;
650 margin-bottom: 20px;
651 padding-bottom: 10px;
652 padding-left: 12px;
653 padding-right: 12px;
654 width: 100%;
655 }
656 div#content img {
657 max-width: 100%;
658 }
659 .asset-full-content .content::before {
660 content: "";
661 display: inline-table;
662 width: 100%;
663 }
664 .asset-full-content .content h3 {
665 font-size: 18px;
666 font-weight: normal;
667 }
668 .categories::after {
669 content: "";
670 display: inline-table;
671 width: 100%;
672 }
673 .categories h2, .sheet-tertiary-title{
674 color: ${colorSite} !important;
675 }
676
677
678 @media (min-width: 979px) and (max-width: 1200px) {
679
680 }
681 @media (max-width: 978px) {
682 .asset-full-content .data {
683 display:inline-table;}
684 }
685 @media (max-width: 480px) {
686 .asset-full-content .tipus > a {
687 float:none;}
688 }
689
690 /*Nova notícia*/
691 .nova .names a {
692 text-decoration: none !important;
693 transition: 0.4s all;
694 }
695 .nova .names a:hover img, .nova .names a:hover i {
696 transform: translateY(-4px)!important;
697 transition: 0.2s all;
698 }
699 .nova .names {
700 display: table;
701 box-sizing: border-box;
702 width: 100%;
703}
704 .nova .names .nom {
705 width: 50%;
706 display: inline-table;
707 }
708 .nova .names .xarxes {
709 width: 50%;
710 display: inline-table;
711 }
712 .nova p.youtube {
713 margin: 0 0 20px;
714 }
715 .nova p.subtitol:after {
716 content: "";
717 width: 100%;
718 height: 1px;
719 background-color: #ddd;
720 position: relative;
721 display: table;
722 }
723 .nova #right {
724 padding-top: 25px;
725 }
726 .nova .asset-full-content figure {
727 display: inline-block;
728 margin-bottom: 20px;
729 border: 1px solid transparent;
730 margin-right: 0;
731 margin-left: 0;
732 margin-top: 0;
733 }
734 .nova .asset-full-content figcaption {display: block; text-align: center; font-size: 0.8em; font-style: italic; }
735 .nova .fa-caret-down:before {
736 content: "\f0d7" !important;
737 }
738 @media (max-width: 480px) {
739 .nova .asset-full-content figure {
740 float: none !important;
741 }
742 }
743 .nova .asset-full-content .content .content-body > p:nth-child(1):first-letter {
744 color: ${colorSite};
745 float: left;
746 font-family: Georgia;
747 font-size: 5rem;
748 line-height: 4rem;
749 padding-top: 0;
750 padding-right: 1rem;
751 padding-left: 0px;
752 padding-bottom: 0px;
753 margin-top: -1rem;
754 }
755
756 ul.list-group.sidebar-list-group {
757 list-style: none !important;
758 margin: 0 !important;
759 padding: 0 !important;
760}
761.asset-links .list-group.sidebar-list-group-item {
762 list-style: none !important;
763}
764.asset-links li.list-group.sidebar-list-group-item a {
765 color: #353430 !important;
766 text-decoration: none !important;
767 border: 1px solid #ddd;
768 border-radius: 4px;
769 display: block;
770 padding: 10px;
771 background-color: #eee;
772}
773.asset-links .list-group.sidebar-list-group-item a:hover {
774 text-decoration: none !important;
775}
776.asset-links .list-group.sidebar-list-group-item a:before {
777 content: "\f0c1";
778 font-family: 'fontawesome-alloy';
779 font-size: 25px;
780 display: inline-block;
781 margin-right: 4px;
782 width: 10%;
783 vertical-align: middle;
784}
785.asset-links li.list-group.sidebar-list-group-item a span.taglib-text {
786 color: #353430 !important;
787 display: inline-block;
788 width: 80%;
789 vertical-align: middle;
790 text-decoration: none;
791}
792
793.asset-links .list-group.sidebar-list-group-item:hover a, .asset-links .list-group.sidebar-list-group-item:hover a span.taglib-text {
794 background-color: #353430 !important;
795 color: #eee !important;
796 text-decoration: none;
797}
798
799/*Caixa contacte*/
800.caixa-contacte {
801 border: 1px solid #ddd;
802 padding: 10px;
803 margin-bottom: 20px;
804 margin-top: 30px;
805 top: 60px;
806 position: -webkit-sticky;
807 position: sticky;
808 box-sizing: border-box !important;
809}
810h2.mark {
811 display: block;
812 font-size: 0 !important;
813 color: #fff !important;
814 background-color: #fff !important;
815}
816
817/*Elements notícia*/
818/*cita*/
819.nova cite {
820 margin-top: 30px;
821 margin-bottom: 30px;
822 font-size: 20px;
823 color: #666;
824 padding-left: 10px;
825 box-sizing: border-box;
826 vertical-align: middle;
827 display: inline-block;
828 border-left: 3px solid #666;
829 padding-top: 10px;
830 padding-bottom: 10px;
831 width: 80%;
832 margin-left: 20%;
833 line-height: normal !important;
834}
835 .nova .asset-full-content .content h3 {
836 font-size: 18px;
837 font-weight: normal;
838 line-height: normal;
839 margin-top: 40px;
840 margin-bottom: 20px;
841 color: ${colorSite};
842}
843.nova .asset-full-content .content h4 {
844 font-size: 16px;
845 font-weight: normal;
846 line-height: normal;
847 margin-top: 30px;
848 margin-bottom: 10px;
849 color: ${colorSite};
850}
851
852/*ODS*/
853@import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro&display=swap');
854
855[class*=ods_] {
856 font-family: 'Source Sans Pro', sans-serif;
857 font-weight: bold;
858 line-height: normal;
859 text-transform: uppercase;
860 font-size: 10px;
861 color: white;
862 display: inline-table;
863 width: calc(50% - 4px);
864 max-width: 130px;
865 height: 130px;
866 padding: 1em;
867 box-sizing: border-box;
868 background-color: grey;
869 background-repeat: no-repeat;
870 background-position: bottom;
871 background-size: 100%;
872 margin-left: 4px;
873 margin-bottom: 4px;
874}
875.ods_01 {
876 background-color: #e5233d;
877 background-image: url(/documents/10193/252729907/ods_01.png);
878}
879.ods_02 {
880 background-color: #dda73a;
881 background-image: url(/documents/10193/252729907/ods_02.png);
882}
883.ods_03 {
884 background-color: #4ca146;
885 background-image: url(/documents/10193/252729907/ods_03.png);
886}
887.ods_04 {
888 background-color: #c7212f;
889 background-image: url(/documents/10193/252729907/ods_04.png);
890}
891.ods_05 {
892 background-color: #ef402d;
893 background-image: url(/documents/10193/252729907/ods_05.png);
894}
895.ods_06 {
896 background-color: #27bfe6;
897 background-image: url(/documents/10193/252729907/ods_06.png);
898}
899.ods_07 {
900 background-color: #fbc412;
901 background-image: url(/documents/10193/252729907/ods_07.png);
902}
903.ods_08 {
904 background-color: #a31c44;
905 background-image: url(/documents/10193/252729907/ods_08.png);
906}
907.ods_09 {
908 background-color: #f26a2e;
909 background-image: url(/documents/10193/252729907/ods_09.png);
910}
911.ods_10 {
912 background-color: #dd1667;
913 background-image: url(/documents/10193/252729907/ods_10.png);
914}
915.ods_11 {
916 background-color: #f89d2a;
917 background-image: url(/documents/10193/252729907/ods_11.png);
918}
919.ods_12 {
920 background-color: #bf8d2c;
921 background-image: url(/documents/10193/252729907/ods_12.png);
922}
923.ods_13 {
924 background-color: #407f46;
925 background-image: url(/documents/10193/252729907/ods_13.png);
926}
927.ods_14 {
928 background-color: #1f97d4;
929 background-image: url(/documents/10193/252729907/ods_14.png);
930}
931.ods_15 {
932 background-color: #59ba47;
933 background-image: url(/documents/10193/252729907/ods_15.png);
934}
935.ods_16 {
936 background-color: #136a9f;
937 background-image: url(/documents/10193/252729907/ods_16.png);
938}
939.ods_17 {
940 background-color: #14496b;
941 background-image: url(/documents/10193/252729907/ods_17.png);
942}
943
944a.btn.button_ods {
945 position: relative;
946 display: table !important;
947 width: auto;
948 margin-top: 1em;
949 margin-bottom: 0;
950 background-image: none;
951 background-color: ${colorSite};
952 color: #fff;
953 text-shadow: none;
954 border: none !important;
955 float: none;
956 font-size: inherit;
957 border-radius: 0;
958}
959a.btn.button_ods:hover, a.btn.button_ods:focus {
960 background-image: none;
961 background-color: ${colorSite}70;
962 color: #fff;
963}
964
965</style>