Java method "jdk.proxy66.$Proxy598.getArticleContent(long, String, String, com.liferay.portal.kernel.portlet.PortletRequestModel, com.liferay.portal.kernel.theme.ThemeDisplay)" threw an exception when invoked on jdk.proxy66.$Proxy598 object "com.liferay.journal.service.impl.JournalArticleServiceImpl@3ce24e39"; see cause exception in the Java stack trace.
----
FTL stack trace ("~" means nesting-related):
- Failed at: bannerConsultorContent = journalArtic... [in template "176139#176179#1006587" at line 434, column 5]
----
1<#assign
2 journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleService")
3 assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService")
4 currentArticle = journalArticleService.getArticle(groupId, .vars['reserved-article-id'].data)
5 categories = assetCategoryService.getCategories("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey())
6 categoriesString = ""
7/>
8
9<#list categories as category>
10 <#if category.getVocabularyId() != 178885><#continue></#if>
11 <#if categoriesString != ""><#assign categoriesString += " · "></#if>
12 <#assign categoriesString += category.getTitle(locale)>
13</#list>
14
15<#assign currentURL = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() />
16
17<@liferay_util["html-top"]>
18 <meta name="twitter:card" content="summary_large_image" />
19 <meta name="twitter:description" content="${summaryNew.getData()?replace('<[^>]+>','','r')}" />
20 <meta name="twitter:image" content="https://catalonia.com${imageFirstNew.getData()}" />
21 <meta name="twitter:title" content="${titleNew.getData()?replace('<[^>]+>','','r')}" />
22</@>
23
24<section id="cabecera" class="cabecera_3">
25 <#if (imageFirstNew.getData())?? && imageFirstNew.getData() != "">
26 <img class="background_image" alt="${imageFirstNew.getAttribute("alt")}" data-fileentryid="${imageFirstNew.getAttribute("fileEntryId")}" src="${imageFirstNew.getData()}" />
27 <#else>
28 <img class="background_image" src="/documents/176177/179114/success-stories-generic.jpg" alt="">
29 </#if>
30 <div class="background_degra"></div>
31 <div class="content_head">
32 <#if (titleHtmlNew.getData())?? && titleHtmlNew.getData() != "">
33 ${titleHtmlNew.getData()}
34 </#if>
35 <#assign dateNew_Data = getterUtil.getString(dateNew.getData())>
36 <#if validator.isNotNull(dateNew_Data)>
37 <#assign dateNew_DateObj = dateUtil.parseDate("yyyy-MM-dd", dateNew_Data, locale)>
38 <p class="date">${dateUtil.getDate(dateNew_DateObj, "dd MMM yyyy", locale)}</p>
39 </#if>
40 <#if (summaryNew.getData())?? && summaryNew.getData() != "">
41 <div class="summary">
42 ${summaryNew.getData()}
43 </div>
44 </#if>
45 <#if (textLinkNew.urlLinkNew.getData())?? && textLinkNew.urlLinkNew.getData() != "" && (textLinkNew.getData())?? && textLinkNew.getData() != "">
46 <a href="${textLinkNew.urlLinkNew.getData()}" class="btn_red" <#if !textLinkNew.urlLinkNew.getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${textLinkNew.getData()}</a>
47 </#if>
48 </div>
49
50 <div class="add_info">
51 <#if categories?has_content>
52 <p class="category"><span>${categoriesString}</span></p>
53 </#if>
54 <#if traslatedUrl?? && traslatedUrl.getData() != "" && traslatedUrl.getSiblings()?has_content>
55 <div class="languages">
56 <img src="/documents/176177/179195/idioma.png/f401554d-c635-40ae-c73a-c6cbb47d8d89?t=1737644561098" alt="">
57 <p>Content available in:
58 <#assign isFirstLanguage = true>
59 <#list traslatedUrl.getSiblings() as cur_traslatedUrl>
60 <#if (cur_traslatedUrl.getData())??>
61 <#if !isFirstLanguage> / </#if>
62 <a href="${cur_traslatedUrl.getData()}?id=${currentArticle.getArticleId()}">${cur_traslatedUrl.traslatedLanguage.getData()}</a>
63 <#assign isFirstLanguage = false>
64 </#if>
65 </#list>
66 </div>
67 </#if>
68 </div>
69
70</section>
71
72<#if (videoNew.getData())?? && videoNew.getData() != "">
73 <section class="part_video red container-fluid">
74 <div class="video">
75 ${htmlUtil.unescape(videoNew.getData())}
76 </div>
77 <div class="background"></div>
78 </section>
79</#if>
80
81<#if (contentNewOne.getData())?? && contentNewOne.getData() != "" || (titleCita.getData())?? && titleCita.getData() != "" || (contentNewTwo.getData())?? && contentNewTwo.getData() != "">
82 <section class="content_new container">
83 <#if (videoNew.getData())?? && videoNew.getData() != "">
84 <div class="separator"></div>
85 </#if>
86 <div class="content_text">
87 <#if (contentNewOne.getData())?? && contentNewOne.getData() != "">
88 ${contentNewOne.getData()}
89 </#if>
90 <#if (titleCita.getData())?? && titleCita.getData() != "" || (titleCita.descriptionCita.getData())?? && titleCita.descriptionCita.getData() != "">
91 <div class="quote_ca">
92 <div class="text">
93 <#if (titleCita.getData())?? && titleCita.getData() != "">
94 <p class="title">“${titleCita.getData()}” </p>
95 </#if>
96 <#if (titleCita.descriptionCita.getData())?? && titleCita.descriptionCita.getData() != "">
97 <p class="description">${titleCita.descriptionCita.getData()}</p>
98 </#if>
99 </div>
100 <#if (titleCita.imageCita.getData())?? && titleCita.imageCita.getData() != "">
101 <div class="image">
102 <img alt="${titleCita.imageCita.getAttribute("alt")}" data-fileentryid="${titleCita.imageCita.getAttribute("fileEntryId")}" src="${titleCita.imageCita.getData()}" />
103 </div>
104 </#if>
105 <div class="share_rrss">
106 <p class="subtitle">Share quote:</p>
107 <ul class="list_rrss">
108 <li>
109 <a title="Open new window" href='http://twitter.com/share?text="${titleCita.getData()}"%0a${titleCita.descriptionCita.getData()?replace('<[^>]+>','','r')}&url=%0a${currentURL}'>
110 <span class="sr-only">X</span>
111 <i class="fab fa-x-twitter"></i>
112 </a>
113 </li>
114 <li>
115 <a title="Open new window" href='https://www.linkedin.com/sharing/share-offsite/?url=${currentURL}&title="${titleCita.getData()}"%0a${titleCita.descriptionCita.getData()?replace('<[^>]+>','','r')}'>
116 <span class="sr-only">LinkedIn</span>
117 <i class="fab fa-linkedin-in"></i>
118 </a>
119 </li>
120 <li>
121 <a title="Open new window" href='https://www.facebook.com/sharer/sharer.php?u=${currentURL}"e="${titleCita.getData()}"%0a${titleCita.descriptionCita.getData()?replace('<[^>]+>','','r')}'>
122 <span class="sr-only">Facebook</span>
123 <i class="fab fa-facebook"></i>
124 </a>
125 </li>
126 <li>
127 <a title="Open new window" href='https://api.whatsapp.com/send?text="${titleCita.getData()}"%0a${titleCita.descriptionCita.getData()?replace('<[^>]+>','','r')}%0a${currentURL}'>
128 <span class="sr-only">Whatsapp</span>
129 <i class="fab fa-whatsapp-square"></i>
130 </a>
131 </li>
132 </ul>
133 </div>
134 </div>
135 </#if>
136 <#if (contentNewTwo.getData())?? && contentNewTwo.getData() != "">
137 ${contentNewTwo.getData()}
138 </#if>
139 </div>
140 </section>
141</#if>
142
143<#if titleSectionCards?exists>
144 <#if (titleSectionCards.titleSliderCard.getData())?? && titleSectionCards.titleSliderCard.getData() != "">
145 <section class="type_card_21 container-fluid plans-container--slider">
146 <!-- Titular sección -->
147 <div class="content_type_4">
148 <div class="line_red"></div>
149 <#if (titleSectionCards.getData())?? && titleSectionCards.getData() != "">
150 <div class="titular">
151 <h2 class="big_title">${titleSectionCards.getData()}</h2>
152 </div>
153 </#if>
154 </div>
155
156 <!--Carousel-->
157 <div class="carrusel_card_big">
158 <#if (titleSectionCards.titleSliderCard.getSiblings()?size > 1)>
159 <button type="button" class="left-arrow">
160 <span class="fas fa-arrow-circle-left" aria-hidden="true"></span>
161 <span class="sr-only">Previous</span>
162 </button>
163 <button type="button" class="right-arrow">
164 <span class="fas fa-arrow-circle-right" aria-hidden="true"></span>
165 <span class="sr-only">Next</span>
166 </button>
167 </#if>
168
169 <#if titleSectionCards.titleSliderCard.getSiblings()?has_content>
170 <ul class="list_cards">
171 <#list titleSectionCards.titleSliderCard.getSiblings() as cur_titleSectionCards_titleSliderCard>
172 <li class="item">
173 <div class="content_card">
174 <#if (cur_titleSectionCards_titleSliderCard.getChild('imageSliderCard').getData())?? && cur_titleSectionCards_titleSliderCard.getChild('imageSliderCard').getData() != "">
175 <div class="image">
176 <img alt="${cur_titleSectionCards_titleSliderCard.getChild('imageSliderCard').getAttribute("alt")}" src="${cur_titleSectionCards_titleSliderCard.getChild('imageSliderCard').getData()}" data-fileentryid="${cur_titleSectionCards_titleSliderCard.getChild('imageSliderCard').getAttribute("fileEntryId")}" />
177 </div>
178 </#if>
179
180 <div class="content">
181 <#if (cur_titleSectionCards_titleSliderCard.getData())?? && cur_titleSectionCards_titleSliderCard.getData() != "">
182 <h3 class="title">${cur_titleSectionCards_titleSliderCard.getData()}</h3>
183 </#if>
184 <#if (cur_titleSectionCards_titleSliderCard.getChild('contentSliderCard').getData())?? && cur_titleSectionCards_titleSliderCard.getChild('contentSliderCard').getData() != "">
185 <div class="content_text">
186 ${cur_titleSectionCards_titleSliderCard.getChild('contentSliderCard').getData()}
187 </div>
188 </#if>
189 <#if (cur_titleSectionCards_titleSliderCard.getChild('urlLinkSliderCard').getData())?? && cur_titleSectionCards_titleSliderCard.getChild('urlLinkSliderCard').getData() != "" && (cur_titleSectionCards_titleSliderCard.getChild('textLinkSliderCard').getData())?? && cur_titleSectionCards_titleSliderCard.getChild('textLinkSliderCard').getData() != "">
190 <a href="${cur_titleSectionCards_titleSliderCard.getChild('urlLinkSliderCard').getData()}" class="btn_all_blue" <#if !cur_titleSectionCards_titleSliderCard.getChild('urlLinkSliderCard').getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${cur_titleSectionCards_titleSliderCard.getChild('textLinkSliderCard').getData()}</a>
191 </#if>
192 </div>
193 </div>
194 </li>
195 </#list>
196 </ul>
197 </#if>
198 </div>
199 </section>
200 </#if>
201</#if>
202
203<#if (titleMoreInfo.LinkMoreInfo.getData())?? && titleMoreInfo.LinkMoreInfo.getData() != "">
204 <#if titleMoreInfo.LinkMoreInfo.getSiblings()?has_content>
205 <section class="second_menu_2 container-fluid">
206 <div class="bloque">
207 <div class="image">
208 <img src="/documents/176177/263024/003-informacion_white.png/da79a9cc-dab5-d58c-c0b2-8b7a423fe13a?t=1738568612341" alt="">
209 </div>
210 <div class="text">
211 <#if (titleMoreInfo.getData())??>
212 <h2 class="title">${titleMoreInfo.getData()}</h2>
213 </#if>
214 <ul class="list_links">
215 <#list titleMoreInfo.LinkMoreInfo.getSiblings() as cur_titleMoreInfo_LinkMoreInfo>
216 <#if (cur_titleMoreInfo_LinkMoreInfo.getData())?? && cur_titleMoreInfo_LinkMoreInfo.getData() != "">
217 <li class="item">
218 <a href="${cur_titleMoreInfo_LinkMoreInfo.getChild('UrlMoreInfo').getData()}" <#if !cur_titleMoreInfo_LinkMoreInfo.getChild('UrlMoreInfo').getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if>>
219 <#if (cur_titleMoreInfo_LinkMoreInfo.getChild('iconMoreInfo').getData())?? && cur_titleMoreInfo_LinkMoreInfo.getChild('iconMoreInfo').getData() != "">
220 <img alt="${cur_titleMoreInfo_LinkMoreInfo.getChild('iconMoreInfo').getAttribute("alt")}" data-fileentryid="${cur_titleMoreInfo_LinkMoreInfo.getChild('iconMoreInfo').getAttribute("fileEntryId")}" src="${cur_titleMoreInfo_LinkMoreInfo.getChild('iconMoreInfo').getData()}" />
221 <#else>
222 <i class="fas fa-globe"></i>
223 </#if>
224 ${cur_titleMoreInfo_LinkMoreInfo.getData()}
225 <span>| ${cur_titleMoreInfo_LinkMoreInfo.getChild('TextAddMoreInfo').getData()}</span>
226 </a>
227 </li>
228 </#if>
229 </#list>
230 </ul>
231 </div>
232 </div>
233 </section>
234 </#if>
235</#if>
236
237<#if (titleGallery.imageGallery.getData())?? && titleGallery.imageGallery.getData() != "">
238 <#if titleGallery.imageGallery.getSiblings()?has_content>
239 <section class="galery_multimedia container-fluid">
240 <div class="content_type_4">
241 <div class="line_red"></div>
242 <#if (titleGallery.getData())?? && titleGallery.getData() != "">
243 <div class="titular">
244 <h2 class="big_title"><span class="hand">Multimedia</span> <span class="dest_blue">gallery.</span></h2>
245 </div>
246 </#if>
247
248 <#if (titleGallery.descriptionGallery.getData())?? && titleGallery.descriptionGallery.getData() != "">
249 <div class="content_text">
250 ${titleGallery.descriptionGallery.getData()}
251 </div>
252 </#if>
253 </div>
254 <div class="bloque_galery">
255
256 <div class="detail">
257 <div class="tab-content" id="myGaleryTabContent">
258 <#list titleGallery.imageGallery.getSiblings() as cur_galleryNews>
259 <div class="tab-pane fade <#if cur_galleryNews?index == 0>show active</#if>" id="item${cur_galleryNews?index}" role="tabpanel" aria-labelledby="item${cur_galleryNews?index}-tab">
260 <#if !cur_galleryNews.getChild('videoGallery').getData()?? || cur_galleryNews.getChild('videoGallery').getData() == "">
261 <#if (cur_galleryNews.getData())?? && cur_galleryNews.getData() != "">
262 <img alt="${cur_galleryNews.getAttribute("alt")}" data-fileentryid="${cur_galleryNews.getAttribute("fileEntryId")}" src="${cur_galleryNews.getData()}" />
263 </#if>
264 </#if>
265 ${cur_galleryNews.getChild('videoGallery').getData()}
266 </div>
267 </#list>
268 </div>
269 </div>
270
271 <div class="links">
272 <ul class="nav nav-tabs <#if titleGallery.imageGallery.getSiblings()?size gte 5>more</#if>" id="myGaleryTab">
273 <#list titleGallery.imageGallery.getSiblings() as cur_galleryNews>
274 <li class="nav-item">
275 <a class="nav-link <#if cur_galleryNews.getChild('videoGallery').getData()?has_content>video</#if> <#if cur_galleryNews?index == 0>active</#if>" id="item${cur_galleryNews?index}-tab" data-toggle="tab" href="#item${cur_galleryNews?index}" aria-controls="item${cur_galleryNews?index}" aria-selected="true">
276 <#if (cur_galleryNews.getData())?? && cur_galleryNews.getData() != "">
277 <img alt="" data-fileentryid="${cur_galleryNews.getAttribute("fileEntryId")}" src="${cur_galleryNews.getData()}" />
278 <span class="sr-only">${cur_galleryNews.getAttribute("alt")}</span>
279 </#if>
280 </a>
281 </li>
282 </#list>
283 </ul>
284 </div>
285
286 </div>
287 </section>
288 </#if>
289</#if>
290
291
292<#if (titleCliente.imageCliente.getData())?? && titleCliente.imageCliente.getData() != "" && (titleCliente.getData())?? && titleCliente.getData() != "" || (titleCliente.imageCliente.getData())?? && titleCliente.imageCliente.getData() != "" && (titleCliente.descriptionCliente.getData())?? && titleCliente.descriptionCliente.getData() != "">
293 <section class="content_type_8 space container-fluid"">
294 <#if (titleCliente.imageCliente.getData())?? && titleCliente.imageCliente.getData() != "">
295 <img class="background_image" alt="${titleCliente.imageCliente.getAttribute("alt")}" data-fileentryid="${titleCliente.imageCliente.getAttribute("fileEntryId")}" src="${titleCliente.imageCliente.getData()}" />
296 </#if>
297 <div class="bloque">
298 <#if (titleCliente.getData())??>
299 <h2 class="big_title">${titleCliente.getData()}<span class="dest_blue">.</span></h2>
300 </#if>
301 <#if (titleCliente.subtitleCliente.getData())??>
302 <p class="subtitle">${titleCliente.subtitleCliente.getData()}</p>
303 </#if>
304 <#if (titleCliente.descriptionCliente.getData())??>
305 <div class="content_text">
306 ${titleCliente.descriptionCliente.getData()}
307 </div>
308 </#if>
309 <#if (titleCliente.linkCliente.getData())?? && (titleCliente.urlCliente.getData())??>
310 <a href="${titleCliente.urlCliente.getData()}" class="btn_blue" <#if !titleCliente.urlCliente.getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${titleCliente.linkCliente.getData()}</a>
311 </#if>
312 <#if (titleCliente.logoCliente.getData())?? && titleCliente.logoCliente.getData() != "">
313 <div class="logo">
314 <img alt="${titleCliente.logoCliente.getAttribute("alt")}" data-fileentryid="${titleCliente.logoCliente.getAttribute("fileEntryId")}" src="${titleCliente.logoCliente.getData()}" />
315 </div>
316 </#if>
317 </div>
318 </section>
319</#if>
320
321<#if (infoRelated.subtitleRelated.getData())?? && infoRelated.subtitleRelated.getData() != "">
322 <#if infoRelated.subtitleRelated.getSiblings()?has_content>
323 <section class="type_card_5 <#if infoRelated.subtitleRelated.getSiblings()?size == 1>one</#if> container">
324 <div class="content_type_4">
325 <div class="line_red"></div>
326 <#if (infoRelated.getData())?? && infoRelated.getData() != "">
327 <div class="titular">
328 <h2 class="big_title"><span class="hand">Discover</span> our <span class="dest_blue">services.</span></h2>
329 </div>
330 </#if>
331 <#if (infoRelated.descriptionRelated.getData())?? && infoRelated.descriptionRelated.getData() != "">
332 <div class="content_text">
333 ${infoRelated.descriptionRelated.getData()}
334 </div>
335 </#if>
336 </div>
337 <#if infoRelated.subtitleRelated.getSiblings()?has_content>
338
339 <#if infoRelated.subtitleRelated.getSiblings()?size == 1>
340 <div class="list_item row">
341 <div class="item col-12 col-md-4">
342 <div class="bloque">
343 <#if (infoRelated.subtitleRelated.iconRelated.getData())?? && infoRelated.subtitleRelated.iconRelated.getData() != "">
344 <img class="icon" alt="${infoRelated.subtitleRelated.iconRelated.getAttribute("alt")}" src="${infoRelated.subtitleRelated.iconRelated.getData()}" data-fileentryid="${infoRelated.subtitleRelated.iconRelated.getAttribute("fileEntryId")}" />
345 </#if>
346 <div>
347 <#if (infoRelated.subtitleRelated.getData())?? && infoRelated.subtitleRelated.getData() != "">
348 <#if (infoRelated.getData())?? && infoRelated.getData() != "">
349 <h3 class="small_title">${infoRelated.subtitleRelated.getData()}</h3>
350 <#else>
351 <h2 class="small_title">${infoRelated.subtitleRelated.getData()}</h2>
352 </#if>
353 </#if>
354 <#if (infoRelated.subtitleRelated.subdescriptionRelated.getData())?? && infoRelated.subtitleRelated.subdescriptionRelated.getData() != "">
355 <div class="content_text">
356 ${infoRelated.subtitleRelated.subdescriptionRelated.getData()}
357 </div>
358 </#if>
359 <#if (infoRelated.subtitleRelated.textLinkRelated.getData())?? && infoRelated.subtitleRelated.textLinkRelated.getData() != "" && (infoRelated.subtitleRelated.urlLinkRelated.getData())?? && infoRelated.subtitleRelated.urlLinkRelated.getData() != "">
360 <a href="${infoRelated.subtitleRelated.urlLinkRelated.getData()}" class="btn_blue" <#if !infoRelated.subtitleRelated.urlLinkRelated.getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${infoRelated.subtitleRelated.textLinkRelated.getData()}</a>
361 </#if>
362 </div>
363 </div>
364 </div>
365 </div>
366
367 <#elseif infoRelated.subtitleRelated.getSiblings()?size gte 6>
368 <ul class="list_item row">
369 <#list infoRelated.subtitleRelated.getSiblings() as cur_infoRelated_subtitleRelated>
370 <li class="item col-12 col-md-6 col-lg-3">
371 <div class="bloque">
372 <#if (cur_infoRelated_subtitleRelated.getChild('iconRelated').getData())?? && cur_infoRelated_subtitleRelated.getChild('iconRelated').getData() != "">
373 <img class="icon" alt="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getAttribute("alt")}" src="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getData()}" data-fileentryid="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getAttribute("fileEntryId")}" />
374 </#if>
375 <div>
376 <#if (cur_infoRelated_subtitleRelated.getData())?? && cur_infoRelated_subtitleRelated.getData() != "">
377 <#if (infoRelated.getData())?? && infoRelated.getData() != "">
378 <h3 class="small_title">${cur_infoRelated_subtitleRelated.getData()}</h3>
379 <#else>
380 <h2 class="small_title">${cur_infoRelated_subtitleRelated.getData()}</h2>
381 </#if>
382 </#if>
383 <#if (cur_infoRelated_subtitleRelated.subdescriptionRelated.getData())?? && cur_infoRelated_subtitleRelated.subdescriptionRelated.getData() != "">
384 <div class="content_text">
385 ${cur_infoRelated_subtitleRelated.subdescriptionRelated.getData()}
386 </div>
387 </#if>
388 <#if (cur_infoRelated_subtitleRelated.textLinkRelated.getData())?? && cur_infoRelated_subtitleRelated.textLinkRelated.getData() != "" && (cur_infoRelated_subtitleRelated.urlLinkRelated.getData())?? && cur_infoRelated_subtitleRelated.urlLinkRelated.getData() != "">
389 <a href="${cur_infoRelated_subtitleRelated.urlLinkRelated.getData()}" class="btn_blue" <#if !cur_infoRelated_subtitleRelated.urlLinkRelated.getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${cur_infoRelated_subtitleRelated.textLinkRelated.getData()}</a>
390 </#if>
391 </div>
392 </div>
393 </li>
394 </#list>
395 </ul>
396
397 <#else>
398 <ul class="list_item row">
399 <#list infoRelated.subtitleRelated.getSiblings() as cur_infoRelated_subtitleRelated>
400 <li class="item col-12 col-md-4">
401 <div class="bloque">
402 <#if (cur_infoRelated_subtitleRelated.getChild('iconRelated').getData())?? && cur_infoRelated_subtitleRelated.getChild('iconRelated').getData() != "">
403 <img class="icon" alt="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getAttribute("alt")}" src="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getData()}" data-fileentryid="${cur_infoRelated_subtitleRelated.getChild('iconRelated').getAttribute("fileEntryId")}" />
404 </#if>
405 <div>
406 <#if (cur_infoRelated_subtitleRelated.getData())?? && cur_infoRelated_subtitleRelated.getData() != "">
407 <#if (infoRelated.getData())?? && infoRelated.getData() != "">
408 <h3 class="small_title">${cur_infoRelated_subtitleRelated.getData()}</h3>
409 <#else>
410 <h2 class="small_title">${cur_infoRelated_subtitleRelated.getData()}</h2>
411 </#if>
412 </#if>
413 <#if (cur_infoRelated_subtitleRelated.subdescriptionRelated.getData())?? && cur_infoRelated_subtitleRelated.subdescriptionRelated.getData() != "">
414 <div class="content_text">
415 ${cur_infoRelated_subtitleRelated.subdescriptionRelated.getData()}
416 </div>
417 </#if>
418 <#if (cur_infoRelated_subtitleRelated.textLinkRelated.getData())?? && cur_infoRelated_subtitleRelated.textLinkRelated.getData() != "" && (cur_infoRelated_subtitleRelated.urlLinkRelated.getData())?? && cur_infoRelated_subtitleRelated.urlLinkRelated.getData() != "">
419 <a href="${cur_infoRelated_subtitleRelated.urlLinkRelated.getData()}" class="btn_blue" <#if !cur_infoRelated_subtitleRelated.urlLinkRelated.getData()?contains('catalonia.com')> target="_blank" title="Open new window"</#if> >${cur_infoRelated_subtitleRelated.textLinkRelated.getData()}</a>
420 </#if>
421 </div>
422 </div>
423 </li>
424 </#list>
425 </ul>
426 </#if>
427 </#if>
428 </section>
429 </#if>
430</#if>
431
432<#if (bannerConsultor.getData())?? && bannerConsultor.getData() != "">
433 <#assign bannerConsultorJSON = jsonFactoryUtil.createJSONObject(bannerConsultor.getData())
434 bannerConsultorContent = journalArticleService.getArticleContent(groupId, (bannerConsultorJSON.classPK?number - 2)?c, themeDisplay.getLanguageId(), null, themeDisplay)
435 />
436 ${bannerConsultorContent}
437</#if>
438
439<#if (bannerSector.getData())?? && bannerSector.getData() != "">
440 <#assign bannerSectorJSON = jsonFactoryUtil.createJSONObject(bannerSector.getData())
441 bannerSectorContent = journalArticleService.getArticleContent(groupId, (bannerSectorJSON.classPK?number - 2)?c, themeDisplay.getLanguageId(), null, themeDisplay)
442
443 />
444 ${bannerSectorContent}
445</#if>
446
447<script type="text/javascript">
448 document.addEventListener('DOMContentLoaded', function () {
449 const listCards = document.querySelector('.type_card_21 .list_cards');
450 const items = document.querySelectorAll('.type_card_21 .list_cards .item');
451 const leftArrow = document.querySelector('.left-arrow');
452 const rightArrow = document.querySelector('.right-arrow');
453
454 let currentIndex = 0; // Índice del elemento activo
455
456 function updateCarousel() {
457 // Resetear todas las tarjetas
458 items.forEach((item, index) => {
459 item.classList.remove('active', 'side');
460 item.style.transform = ''; // Reiniciar la transformación
461 });
462
463 // Asignar clase 'active' al elemento central
464 const currentItem = items[currentIndex];
465 currentItem.classList.add('active');
466
467 // Asignar clase 'side' al elemento anterior (si existe)
468 if (currentIndex > 0) {
469 const prevItem = items[currentIndex - 1];
470 prevItem.classList.add('side');
471 }
472
473 // Asignar clase 'side' al siguiente elemento (si existe)
474 if (currentIndex < items.length - 1) {
475 const nextItem = items[currentIndex + 1];
476 nextItem.classList.add('side');
477 }
478
479 // Usar requestAnimationFrame para asegurar que los elementos están disponibles y visibles
480 requestAnimationFrame(() => {
481 const offset = -currentItem.offsetLeft + (listCards.clientWidth - currentItem.clientWidth) / 2;
482 listCards.style.transform = 'translateX(' + offset + 'px)';
483 });
484 }
485
486 // Evento para el botón izquierdo
487 leftArrow.addEventListener('click', function () {
488 if (currentIndex > 0) {
489 currentIndex--;
490 updateCarousel();
491 }
492 });
493
494 // Evento para el botón derecho
495 rightArrow.addEventListener('click', function () {
496 if (currentIndex < items.length - 1) {
497 currentIndex++;
498 updateCarousel();
499 }
500 });
501
502 // Configuración inicial
503 updateCarousel();
504 });
505</script>
More News and Success Stories
in Barcelona (Catalonia).
-
02 Jun 2026
See more Catalonia’s chemical sector generates €29.1 billion in revenue, equivalent to 9% of GDPCatalonia’s chemical sector generates €29.1 billion in revenue, equivalent to 9% of GDP
-
29 May 2026
See more Finnish chemical company Kemira to invest 40M€ in two new plants at its facilities in CataloniaFinnish chemical company Kemira to invest 40M€ in two new plants at its facilities in Catalonia
-
05 Feb 2026
See more Catalonia assumes the presidency of the ECRN, the European Union’s leading chemical industry networkCatalonia assumes the presidency of the ECRN, the European Union’s leading chemical industry network
-
30 Jun 2025
See more PreZero invests €42M in Barcelona to launch Spain’s largest SRF plant and first urban biomethane facilityPreZero invests €42M in Barcelona to launch Spain’s largest SRF plant and first urban biomethane facility
