S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> imagen.BajaResolucionFieldSet.urlExterna3 [in template "10132#10165#PLANTILLA_NOTAS_PRENSA" at line 160, column 46] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- 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 imgBajaURL = imagen.BajaResol... [in template "10132#10165#PLANTILLA_NOTAS_PRENSA" at line 160, column 25] ----
1<#assign paginalistado="noticies">
2
3 <#assign paginaboletin="el-diari-de-la-diputacio">
4
5 <#assign vocabularioCategoriasTematicas="Tema_notes_premsa">
6
7 <#assign groupUtil= serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
8 <#assign group= groupUtil.getGroup( groupId)>
9
10 <#assign listadoURL="/web/sala-de-premsa/"+ paginalistado>
11
12 <#assign DLFileEntryUtil= serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>
13 <#assign assetCategoryPropertyLocalService= serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService")>
14
15 <#--Datos obtenidos del Journal-->
16 <#assign display_date=dateUtil.parseDate("EEE,dd MMM yyyy HH:mm:ss Z", .vars["reserved-article-display-date"].data, languageUtil.getLocale("ca"))>
17 <#assign fecha=dateUtil.getDate( display_date,"dd/MM/yyyy HH:mm ", languageUtil.getLocale("ca"), company.getTimeZone())+"h.">
18 <div id="actualidad" class="notasPrensa">
19
20 <#--Obtener categorías temáticas-->
21
22 <#assign journalArticleLocalService= serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
23 <#assign journalArticle= journalArticleLocalService.getArticle( groupId, .vars["reserved-article-id"].data)>
24
25
26 <#assign assetEntryService= serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
27 <#assign assetEntry= assetEntryService.getEntry("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey())>
28
29
30 <#assign assetCategoryService= serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
31 <#assign categorias= assetCategoryService.getEntryCategories( assetEntry.getEntryId())>
32 <#assign hasOds=false>
33
34
35 <#assign assetVocabularyService= serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")>
36
37
38 <p>
39 <#list categorias as categoria>
40 <#assign assetVocabulary= assetVocabularyService.getAssetVocabulary( categoria.getVocabularyId())>
41
42 <#if stringUtil.equals(assetVocabulary.getName(),vocabularioCategoriasTematicas)&&groupId==assetVocabulary.getGroupId()>
43 ${categoria.getName()} -
44 </#if>
45 <#if categoria.getVocabularyId()==308057240>
46 <#assign hasOds=true>
47 </#if>
48 </#list>
49
50
51 <#--FIN Obtener categorías temáticas-->
52
53
54 ${fecha} -
55 <#assign autorText= .vars["reserved-article-author-name"].data>
56 <#assign emailContacte= .vars["reserved-article-author-email-address"].data>
57 <#if Autor?? && Autor.getData()?has_content>
58 <#assign splitAutor= stringUtil.split(Autor.getData(),"|")>
59 <#if splitAutor?size gt 1>
60 <#assign autorText= splitAutor[0]>
61 <#assign emailContacte= splitAutor[1]>
62 </#if>
63 </#if>
64
65
66 <a href="mailto:${emailContacte}">${autorText}</a></p>
67 <strong> ${Antetitulo.getData()} </strong>
68 <#if hasOds>
69 <div class="row">
70 <#assign assetCategoryPropertyLocalService= serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService")>
71
72 <div class="col-fluid">
73 <a id="titolOds" class="btn" data-toggle="collapse" href="#categoryOds" role="button" aria-expanded="true" aria-controls="collapseExample" title="ODS">
74 <img src="/documents/167993676/170794330/sdgs-circle.jpg/ea64b0d5-7bfd-4147-a3f1-69156340b53b?t=1528792056902"/><i class="icon-large fa-solid fa-chevron-right"></i>
75 </a>
76 </div>
77 <div class="col collapse show" id="categoryOds">
78 <#list categorias as categoria>
79 <#if categoria.getVocabularyId()==308057240>
80 <#assign icon= assetCategoryPropertyLocalService.getCategoryProperty(categoria.getCategoryId(),"icon")>
81 <#assign url= assetCategoryPropertyLocalService.getCategoryProperty(categoria.getCategoryId(),"url")>
82 <#if icon?has_content && url?has_content>
83 <#assign imageOds="/documents/167993676/170793813/"+ icon.getValue()+".jpg">
84 <#assign urlOds="https://www.diba.cat/web/ods/"+ url.getValue()>
85 <a href="${urlOds}" title="${categoria.getDescription(locale, true)}" target="_blank">
86 <img src=${imageOds} alt="${categoria.getDescription(locale, true)}" class="mb-2">
87 </a>
88 </#if>
89 </#if>
90 </#list>
91 </div>
92 <br />
93
94 </div>
95 </#if>
96 <h2>${Titulo.getData()}</h2>
97
98 <#-- AddToAny Button BEGIN-->
99 <div class="row">
100 <div class="col-12">
101 <div id="socialShare" class="btn-group share-group pull-right">
102 <a data-toggle="dropdown" class="btn btn-default">
103 <img src="/o/DibaMenuVertical-theme/images/recursos/share.png" class="no-lazy" alt="Comparteix" style="margin:0;width:16px"/>
104 </a>
105 <button href="#" data-toggle="dropdown" class="btn btn-default dropdown-toggle">
106 <span class="caret" style="margin:0;"></span>
107 </button>
108 <div class="a2a_kit a2a_kit_size_32 a2a_default_style dropdown-menu dropdown-menu-right" data-a2a-url="${themeDisplay.getPortalURL()}${themeDisplay.getURLCurrent()}" data-a2a-title="${htmlUtil.escape(.vars["reserved-article-title"].data)}">
109 <a class="a2a_button_facebook"></a>
110 <a class="a2a_button_x"></a>
111 <a class="a2a_button_whatsapp"></a>
112 <a class="a2a_button_linkedin"></a>
113 </div>
114 <script>
115 var a2a_config = a2a_config || {};
116 a2a_config.locale = "es";
117 </script>
118 <script async src="https://static.addtoany.com/menu/page.js"></script>
119 <script data-senna-track="temporary">
120 Liferay.on("beforeNavigate", function(event) { location.href=event.path; });
121 </script>
122 <style>
123 .a2a_svg, .a2a_count { border-radius: 16px !important; }
124 .a2a_kit.show {display:inline-flex}
125 </style>
126 </div>
127 </div>
128 </div>
129 <#-- AddToAny Button END -->
130 <#assign descripcio=" ">
131 <#if Entradilla?? && Entradilla.getData()?has_content>
132 <#assign descripcio=htmlUtil.escape(htmlUtil.stripHtml(stringUtil.trim(Entradilla.getData())))>
133 </#if>
134 <meta property="og:title" content="${htmlUtil.escape(Titulo.getData())}" />
135 <meta property="og:description" content="${descripcio}" />
136 <meta name="twitter:title" content="${htmlUtil.escape(Titulo.getData())}" />
137 <meta name="twitter:description" content="${descripcio}" />
138 <#assign metaImgs=false>
139 <#if ImagenPortada?? && ImagenPortada.getData()?has_content>
140 <#assign metaImgs=true>
141 <meta property="og:image" content="https://www.diba.cat${ImagenPortada.getData()}" />
142 <meta name="twitter:image" content="https://www.diba.cat${ImagenPortada.getData()}" />
143 <meta name="twitter:card" content="summary_large_image" />
144 </#if>
145
146 ${Entradilla.getData()}
147 ${Cuerpo.getData()}
148
149
150 <div id="galeriaPremsa">
151
152 <#list ListaImagenesFieldSet.ImagenFieldSet.getSiblings() as imagen>
153
154 <#assign imgAltaURL= imagen.AltaResolucionFieldSet.AltaResolucion.getData()!"">
155 <#if imagen.AltaResolucionFieldSet.urlExterna2?? && (!imgAltaURL?has_content || imgAltaURL?length ==0)>
156 <#assign imgAltaURL= imagen.AltaResolucionFieldSet.urlExterna2.getData()>
157 </#if>
158 <#assign imgBajaURL= imagen.BajaResolucionFieldSet.BajaResolucion.getData()!"">
159 <#if !imgBajaURL?has_content || imgBajaURL?length ==0>
160 <#assign imgBajaURL= imagen.BajaResolucionFieldSet.urlExterna3.getData()>
161 </#if>
162
163 <#assign titol="">
164 <#assign dlFileEntryId=-1>
165 <#if imagen.BajaResolucionFieldSet.BajaResolucion.getData()?has_content && imagen.BajaResolucionFieldSet.BajaResolucion.getData()?length gt 0>
166 <#assign jsonImatge= stringUtil.trim(imagen.BajaResolucionFieldSet.BajaResolucion.get("data"))>
167 <#if jsonImatge?has_content && jsonImatge?has_content && stringUtil.startsWith(jsonImatge,"{")>
168 <#assign dlFileEntryId= jsonFactoryUtil.createJSONObject( jsonImatge).getLong("fileEntryId")>
169 <#if dlFileEntryId == 0>
170 <#assign dlFileEntryId= jsonFactoryUtil.createJSONObject( jsonImatge).getLong("classPK")>
171 </#if>
172 <#attempt>
173 <#assign imagenIGImage= DLFileEntryUtil.fetchDLFileEntry(dlFileEntryId)!"">
174 <#recover>
175 <#assign imagenIGImage= "">
176 </#recover>
177 <#if imagenIGImage?has_content && imagenIGImage.getDescription()?has_content>
178 <#assign titol= htmlUtil.escape(imagenIGImage.getDescription())>
179 </#if>
180 </#if>
181 </#if>
182
183
184
185 <#if imgAltaURL?has_content>
186 <#if !metaImgs>
187 <#assign metaImgs=true>
188 <meta property="og:image" content="https://www.diba.cat${imgAltaURL}" />
189 <meta property="twitter:image" content="https://www.diba.cat${imgAltaURL}" />
190 <meta name="twitter:card" content="summary_large_image" />
191 </#if>
192 <a href="${imgAltaURL}" title="${titol}">
193 <#else> <#if !metaImgs>
194 <#assign metaImgs=true>
195 <meta property="og:image" content="https://www.diba.cat${imgBajaURL}" />
196 <meta property="twitter:image" content="https://www.diba.cat${imgBajaURL}" />
197 <meta name="twitter:card" content="summary_large_image" />
198 </#if>
199 <a href="${imgBajaURL}" title="${titol}">
200 </#if>
201 <img <#if dlFileEntryId gt 0> data-fileentryid="${dlFileEntryId}" </#if> src="${imgBajaURL}" style="width:120px" alt="${titol}" title="${titol}" data-toggle="tooltip" data-placement="top" data-html="true" />
202 </a>
203
204
205 </#list>
206 <#--
207 <div class="nextControl"><i class="fa-solid fa-chevron-right text-white fa-xl"></i></div>
208 <div class="prevControl"><i class="fa-solid fa-chevron-left text-white fa-xl"></i></div>
209 -->
210 <script type="text/javascript">
211 AUI().ready("aui-image-viewer", function(A) {
212 var galeriaImatges= new A.ImageViewer({
213 links: "#galeriaPremsa a",
214 caption: "",
215 captionFromTitle: true,
216 preloadAllImages: true,
217 //controlNext: A.one('div.nextControl'),
218 //controlPrevious: A.one('div.prevControl'),
219 infoTemplate: '<@liferay.language key="image"/> {current} <@liferay.language key="of"/> {total}',
220 intervalTime: 2,
221 zIndex: 1
222 });
223
224 galeriaImatges.TPL_CLOSE = galeriaImatges.TPL_CLOSE.replace(/<\s*span[^>]*>(.*?)<\s*\/\s*span>/,
225 Liferay.Util.getLexiconIconTpl('times', 'icon-monospaced text-white') );
226
227 var TPL_PLAYER_PAUSE = '<span>' + Liferay.Util.getLexiconIconTpl('pause', 'glyphicon') + '</span>';
228 var TPL_PLAYER_PLAY = '<span>' + Liferay.Util.getLexiconIconTpl('play', 'glyphicon') + '</span>';
229
230 galeriaImatges.TPL_PLAYER = TPL_PLAYER_PLAY;
231
232 galeriaImatges._syncPlaying = function () {
233 if (this.get('playing')) {
234 this._player.setHTML(TPL_PLAYER_PAUSE);
235 }
236 else {
237 this._player.setHTML(TPL_PLAYER_PLAY);
238 }
239 };
240 galeriaImatges.render();
241
242 $(function () {
243 $('#galeriaPremsa img[data-toggle="tooltip"]').tooltip();
244 });
245 });
246 </script>
247
248 </div>
249
250
251 <#if Documento?? && (Documento.getData()?has_content || Documento.urlExterna.getData()?has_content)>
252 <div id="documentsAdjunts">
253 <h4>Documents adjunts</h4>
254
255 <ul>
256 <#list Documento.getSiblings() as doc>
257 <#if doc.getData()?has_content && doc.getData()?length gt 0>
258
259 <#assign splitName= stringUtil.split(doc.getData(),"/")>
260 <#assign ultimo= splitName?size>
261 <#if splitName?size lt 6>
262 <#--LR 6.0 SP1-->
263 <#assign ultimo= ultimo-1>
264 <#else> <#--LR 6.1-->
265 <#assign ultimo= ultimo-2>
266 </#if>
267 <#if splitName?size gt 2>
268
269 <#assign docgroupid= getterUtil.getLong( splitName[2])>
270 <#assign docfolderid= getterUtil.getLong( splitName[3])>
271 <#assign docnombre= staticUtil['com.liferay.portal.kernel.util.HttpComponentsUtil'].decodeURL( splitName[ultimo])>
272
273
274 <li><a href="${doc.getData()}">${staticUtil['com.liferay.portal.kernel.util.HttpComponentsUtil'].decodeURL(splitName[ultimo])}</a></li>
275
276 </#if>
277 <#elseif doc.urlExterna.getData()?has_content && doc.urlExterna.getData()?length gt 0 >
278 <li><a href="${doc.urlExterna.getData()}">${doc.urlExterna.getData()}</a></li>
279 </#if>
280
281 </#list>
282 </ul>
283 </div>
284 </#if>
285
286 <p class="text-right"><a href="${listadoURL}"><< Tornar al llistat de notes de premsa</a></p>
287
288 <p>Desitgeu rebre les notes de premsa a la vostra adreça electrònica?<a href="/web/sala-de-premsa/${paginaboletin}/-/butlleti/suscripcio"> Subscriviu-vos-hi</a></p>
289
290 </div>
Cedim les imatges (vídeo i fotografies) als mitjans de comunicació que vulguin fer-ne ús, sempre que se'n citi la font i exclusivament per a contextualitzar aquesta notícia.
La teva privacitat és la nostra prioritat
Per protegir la teva intimitat, abans de continuar volem assegurar-nos que saps que, tant nosaltres com els nostres col·laboradors, utilitzem algunes “cookies” a la web per a facilitar-te l’ús:
- Pròpies i de tercers amb finalitats estadístiques, amb les que no es recull informació dels usuaris ni es registren les adreces IP d’accés.
- Pròpies i de tercers per a garantir el funcionament bàsic, com la sessió d'usuari, i aspectes de personalització, com l'idioma de les nostres pàgines.
Guardem l’acceptació de cookies durant 30 dies per a millorar l’experiència de navegació. Recorda que pots eliminar les cookies del teu navegador. - De tercers per mostrar-te informació de les nostres xarxes socials, com Facebook, X, YouTube, etc. A l’accedir a aquests llocs web podràs decidir si acceptes o no les seves polítiques de privacitat i de cookies.