Innovation

Artificial Intelligence: what impact for insurance and its clients?

For more than 10 years, BNP Paribas Cardif has been using Artificial Intelligence to improve the quality of...

30 October 2024
Innovation

Discover the 2024 Innovation Ambassadors

Each year, BNP Paribas Cardif’s Innovation team carries out a massive sourcing campaign across all BNP Pari...

09 October 2024
Strategy

Assureurs et chercheurs au profit d’une assurance plus accessible

Le podcast Cover Stories revient avec un sujet inédit et décrypte comment la confrontation des études acadé...

08 October 2024
Strategy

Annual Survey of Financial Advisors

Financial advisors accelerate diversification of offering and grow client franchise with increasingly perso...

19 September 2024
Strategy

Simulassur et BNP Paribas Cardif France deviennent partenaires en assurance emprunteur

Simulassur, la marketplace B2B spécialisée en assurance de prêt du Groupe Magnolia, et BNP Paribas Cardif, ...

17 September 2024
Download (135 ko pdf)
An error occurred while processing the template.
Failed to "?eval" string with this error:

---begin-message---
Syntax error in ?eval-ed string in line 1, column 2:
Encountered ")", but was expecting one of:
    <STRING_LITERAL>
    <RAW_STRING>
    "false"
    "true"
    <INTEGER>
    <DECIMAL>
    "."
    "+"
    "-"
    "!"
    "["
    "("
    "{"
    <ID>
---end-message---

The failing expression:
==> imageElem?eval  [in template "20101#20128#null" at line 71, column 46]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign imageJSON = imageElem?eval  [in template "20101#20128#null" at line 71, column 25]
----
1<#-- Article Display 2 --> 
2 
3<#include init />  
4 
5 
6<#--<#include "${full_templates_path}/homepage/article_display2.ftl" />--> 
7<#assign fileEntryServiceUtil = objectUtil("com.liferay.document.library.kernel.service.DLFileEntryLocalServiceUtil")> 
8<#-- 
9Article Display 2 
10--> 
11<#include init/> 
12<link rel="stylesheet"   href="${themeDisplay.getPathThemeCss()}/articleDisplay2.css"/> 
13<#assign imageJSON = "{}"?eval> 
14<#assign title = "No title"> 
15<#assign summary = "No summary"> 
16<#assign category = "No category"> 
17<#assign categoryName = "No Title"> 
18<#assign publishDate = ""> 
19<#assign pdfUrl = ""> 
20<#if curEntry??> 
21	<#assign renderer = curEntry.getAssetRenderer()> 
22	<#assign className = renderer.getClassName()> 
23	<#if className == "com.liferay.journal.model.JournalArticle"> 
24		<#assign journalArticle = renderer.getArticle()> 
25		<#assign journalArticleId = journalArticle.getArticleId()> 
26	</#if> 
27<#else> 
28	<#assign journalArticleId = .vars['reserved-article-id'].data> 
29	<#-- journalArticle.getDescription() returns the diacritical description wraped in <span> => assetEntry.getSummary() --> 
30	<#assign journalArticleLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleLocalServiceUtil"]> 
31	<#assign journalArticle = journalArticleLocalServiceUtil.getLatestArticle(themeDisplay.getScopeGroupId(), journalArticleId)> 
32	<#assign journalArticleResourcePrimKey = journalArticle.getResourcePrimKey()> 
33	<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
34	<#assign curEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", journalArticleResourcePrimKey)> 
35	<#assign renderer = curEntry.getAssetRenderer()> 
36</#if> 
37<#assign journalArticleTitle = renderer.getTitle(locale)> 
38<#if journalArticleTitle?hasContent> 
39	<#if journalArticleTitle?length &lt; 115> 
40		<#assign title = journalArticleTitle> 
41	<#else> 
42		<#assign title = journalArticleTitle?substring(0,115) + "..."> 
43	</#if>		 
44</#if>	 
45 
46<#assign journalArticleSummary =  htmlUtil.extractText(curEntry.getSummary(locale))> 
47<#if journalArticleSummary?hasContent> 
48		<#if journalArticleSummary?length &lt; 110> 
49			<#assign summary = journalArticleSummary>	 
50		<#else> 
51			<#assign summary = journalArticleSummary?substring(0,107) + "...">	 
52		</#if> 
53</#if>		 
54<#list curEntry.getCategories() as journalArticleCategory> 
55	<#assign category = journalArticleCategory.getTitle(locale)> <#-- only one category can be used --> 
56	<#assign categoryName= journalArticleCategory.getName()> 
57	<#break> 
58</#list> 
59 
60<#if curEntry.publishDate?hasContent> 
61 	<#setting dateFormat=display_date_format> 
62 	<#setting locale = locale.getLanguage()> 
63	<#assign publishDate =  curEntry.publishDate?date> 
64</#if> 
65<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(locale))> 
66<#assign rootElement = document.getRootElement()> 
67<#list rootElement.elements() as dynamicElement> 
68	<#switch dynamicElement.attributeValue("name")> 
69		<#case "image1"> 
70			<#assign imageElem = dynamicElement.element("dynamic-content").getText()> 
71			<#assign imageJSON = imageElem?eval> 
72			<#break> 
73		<#case "pdfFile"> 
74			<#assign pdfElem = dynamicElement.element("dynamic-content").getText()> 
75			<#if validator.isNotNull(pdfElem)> 
76	 			<#assign pdfJSON = pdfElem?eval> 
77				<#assign pdfUrl = "/c/document_library/get_file?uuid=" + pdfJSON.uuid	+ "&groupId=" + pdfJSON.groupId> 
78				<#assign pdfFile = fileEntryServiceUtil.getFileEntryByUuidAndGroupId(pdfJSON.uuid, pdfJSON.groupId?number)> 
79				<#assign pdfFileSize = pdfFile.getSize()/1024> 
80				<#assign pdfFileType = pdfFile.getExtension()> 
81			</#if> 
82			<#break>	 
83		<#default> 
84	</#switch> 
85</#list> 
86 
87<#include "${full_templates_path}/inc/redirect_actualites_portlet.ftl" /> 
88<#assign articleUrl =getUrlArticle(journalArticle.getUrlTitle(locale)) />  
89 
90<#assign structure = journalArticle.getDDMStructure()/> 
91<#assign isComDePresse = structure.getName(locale) == "Press_release"> 
92 
93 
94 
95 
96 
97 
98<#assign notFromCarousel = !fromCarousel?? || !fromCarousel> 
99 
100<div class="<#if notFromCarousel>rectangle-article-display2<#else>carousel-rectangle</#if>" > 
101	 
102<#if notFromCarousel> 
103	<div class="image-article-display2"> 
104 
105	<#if imageJSON?hasContent> 
106		<a href='${articleUrl}'> 
107			<img alt="${imageJSON.alt}"  aria-hidden="true" data-fileentryid="${imageJSON.fileEntryId}" class=" " loading="lazy" loading="lazy" src="/documents/${imageJSON.groupId}/${imageJSON.uuid}"/> 
108		</a> 
109	<#else> 
110		<#if imageElem?hasContent>  
111			<a href='${articleUrl}'> 
112				<img alt="${imageElem.getAttribute('alt')}"   aria-hidden="true" data-fileentryid="${imageElem.getAttribute('fileEntryId')}" class=" "  loading="lazy" loading="lazy" src="${imageElem.getData()}" /> 
113			</a> 
114		</#if>	 
115	</#if> 
116 	</div> 
117</#if> 	 
118	<div class="<#if notFromCarousel>box-text-article-display2 wording-block-article-display2</#if>"> 
119  		<div class="<#if notFromCarousel>wording-article-display2</#if>">  
120	  		<div class="<#if notFromCarousel>categorie-article-display2<#else>carousel-category</#if>" > 
121	  			<a href='${actualite_url_portlet+categoryName+"/1"}' >${category}</a> 
122	  		</div>  
123	  		<h3  <#if notFromCarousel && imageJSON?hasContent> id="${journalArticleId}" </#if>  class="<#if notFromCarousel>titre-de-l-actualite-article-display2<#else>carousel-title</#if>"><a href='${articleUrl}'>${title}</a></h3> 
124   			<p class="<#if notFromCarousel>petite-description-d-article-display2<#else>carousel-description</#if>">${summary}</p>  
125  		</div>  		 
126<#if notFromCarousel> 
127	<#if isComDePresse> 
128		<div class="download-article_display2"> 
129		<#if pdfUrl?hasContent> 
130			<div class="date-article-display2"> 
131				<div style="overflow:hidden; float:left;">${publishDate}</div> 
132				<a  href='${pdfUrl}' target='_blank' > 
133				  	<div class="telecharger-article_display2" style="float:left;"><@liferay.language key="bnpparibas.cardif.portlet.telecharger" /> (${pdfFileSize?string("0")} ko ${pdfFileType})</div> 
134				  	<div class="icn-download-article_display2" style="float:right;"> 
135				  		<img style="float:right; margin-top: 0px;margin-bottom: 0px;margin-left: 16px;" class=" " aria-hidden="true" alt="<@liferay.language key="bnpparibas.cardif.portlet.telecharger" />"  loading="lazy" loading="lazy" src="${themeDisplay.getPathThemeImages()}/cardif/press_release/download.png"/>  
136				  	</div> 
137			  	</a> 
138			</div>  	 
139		<#else> 
140			<div class="date-article-display2"> 
141				<div style="overflow:hidden; float:left;">${publishDate}</div> 
142			</div> 	 
143		</#if> 
144		</div> 
145	<#else> 
146		<div class="date-article-display2">${publishDate}</div> 
147	</#if> 
148</#if>	 
149	</div>	  
150</div> 
Strategy

BNP Paribas enters into exclusive negotiations with AXA for the acquisition of AXA investment Managers and a long t...

The BNP Paribas Group announces today that it has entered into exclusive negotiations with AXA to acquire 1...

01 August 2024
Download (883 ko pdf)
Expertise

« API Store », a digital platform to easily connect to our partners' systems

With the introduction of its API Store, BNP Paribas Cardif takes a step further toward its vision of Insura...

17 July 2024
Impact

Net-Zero Asset Owner Alliance

BNP Paribas Cardif pursues commitments to align investment portfolios with carbon neutral trajectory by 205...

12 July 2024