Contact & Aide
Nos équipes restent à votre écoute pour vous accompagner dans vos projets, proposer des réponses adaptées à vos besoins et répondre à toutes vos questions.
Nous vous encourageons à contacter votre conseiller de préférence par téléphone ou par secure mail, et de fixer un rendez-vous au préalable pour un entretien en présentiel.
Nous vous encourageons à contacter votre conseiller de préférence par téléphone ou par secure mail, et de fixer un rendez-vous au préalable pour un entretien en présentiel.
Contact
Nos équipes restent à votre écoute pour vous accompagner dans vos projets, proposer des réponses adaptées à vos besoins et répondre à toutes vos questions.
Nous vous encourageons à contacter votre conseiller de préférence par téléphone ou par secure mail, et de fixer un rendez-vous au préalable pour un entretien en présentiel.
Nous vous encourageons à contacter votre conseiller de préférence par téléphone ou par secure mail, et de fixer un rendez-vous au préalable pour un entretien en présentiel.
Wallonie - Bruxelles
Chaussée de La Hulpe, 120 – 1000 Bruxelles
FLANDRE
Kortrijksesteenweg 218 – 9830 Sint-Martens-Latem
Une erreur s'est produite lors du traitement du template.
The following has evaluated to null or missing: ==> ILLUSTRATION_ANIMEEFieldSet [in template "10157#10197#69811" at line 48, column 26] ---- 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 VisibleDetail = ILLUSTRATION_... [in template "10157#10197#69811" at line 48, column 1] ----
1<#assign authorsFolder = "img/authors_2023"/>
2<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()>
3<#assign themeDisplay = serviceContext.getThemeDisplay() />
4<#assign site_groupid = themeDisplay.getLayout().getGroupId() />
5
6<#assign originalImageUrl = "">
7<#if ART_IMAGE?has_content>
8 <#assign originalImageUrl = ART_IMAGE.getData()>
9</#if>
10<#assign imageUrl = fileEntryUtil.getImageUrlByFormat(groupId, originalImageUrl, "liste")>
11
12<#assign GroupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
13
14<#assign contenu = ART_CONTENU.getData()>
15
16<#-- gestion de la date - DEBUT -->
17<#assign date_publication = .vars['reserved-article-display-date'].data>
18<#assign originalLocale = locale>
19<#setting locale = localeUtil.getDefault()>
20<#assign date_publication = date_publication?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
21<#assign locale = originalLocale>
22<#setting locale = originalLocale>
23<#assign langue = locale?substring(0,locale?last_index_of("_"))>
24<#assign title = .vars['reserved-article-title'].data>
25<#if title?ends_with(" ?")><#assign title = title?substring(0 , title?length - 2) + " ?"></#if>
26<#if title?ends_with(" !")><#assign title = title?substring(0 , title?length - 2) + " !"></#if>
27<#-- gestion de la date - FIN -->
28
29<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
30
31<#assign journalArticleId = .vars['reserved-article-id'].data>
32<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.journal.service.JournalArticleResourceLocalServiceUtil"]>
33<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/>
34<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', articleResourcePK) >
35
36<#assign main_group = GroupLocalService.getGroup(site_groupid)/>
37<#assign main_group_short_name = main_group.getFriendlyURL() />
38
39<#assign rechercheParTagURL = languageUtil.get(locale,"recherche-par-tag-url")>
40
41<#assign artAuteur = "">
42<#if ART_AUTEUR?has_content && ART_AUTEUR.getData() != "" && ART_AUTEUR.getData() != "vide">
43 <#assign artAuteur = authorArticle.ajustAuthor(ART_AUTEUR.getData())>
44</#if>
45
46<#assign readTime = articleUtil.getReadTime(ART_CHAPO.getData(),contenu)/>
47
48<#assign VisibleDetail = ILLUSTRATION_ANIMEEFieldSet.VisibleDetail?has_content && getterUtil.getBoolean(ILLUSTRATION_ANIMEEFieldSet.VisibleDetail.getData())>
49<#assign hasAnimatedIllustration = ILLUSTRATION_ANIMEEFieldSet.ILLUSTRATION_ANIMEE?has_content && ILLUSTRATION_ANIMEEFieldSet.ILLUSTRATION_ANIMEE.getData()!="" && VisibleDetail>
50
51<div class="article-wrapper">
52 <p class="chapo">${ART_CHAPO.getData()}</p>
53
54 ${contenu}
55 <#if artAuteur != "" && artAuteur != "vide">
56 <#assign auteurxml = authorArticle.get(articleGroupId, artAuteur, locale)>
57 <#if auteurxml?? && auteurxml!=''>
58 <div class="trait-auteur"></div>
59 <div class="blog-detail-auteur">
60 ${saxReaderUtil.read(auteurxml).valueOf("//dynamic-content/text()")}
61 </div>
62 </#if>
63 </#if>
64 <div class="topic-tags">
65 <#list asset.getTags() as tag>
66 <#if tag.name?starts_with("topic_")>
67 <a class="topic_tag" href="/${langue}/bank${main_group_short_name}/${rechercheParTagURL}?p_r_p_tag=${tag.name}">
68 ${languageUtil.get(locale,tag.name)}
69 </a>
70 </#if>
71 </#list>
72 </div>
73</div>
74
75<div class="addthis_sharing_toolbox"></div>
76
77<script>
78 $(document).ready(function() {
79 init_topScreen();
80
81 <#assign blocDate = '<div class="article-meta-line"><div class="real-date">${date_publication?string.dd} ${date_publication?string.MMMM} ${date_publication?string.yyyy}</div>'>
82 <#assign blocDate = blocDate + '<div class="withmiddot"><span>·</span></div><div class="read-time"><img src="/o/blu-theme/images/picto/clock-white.svg" class="clock" loading="lazy" width="18" height="18" style="margin-right:6px;margin-bottom:3px;"/> ${readTime} min</div></div>'/>
83
84 <#assign blocTags = '<div class="article-meta-line tags">'>
85 <#list asset.getTags() as tag>
86 <#if tag.name?starts_with("topic_")>
87 <#assign blocTags = blocTags + ' <a class="hashtag-hash" href="/${langue}/bank${main_group_short_name}/${rechercheParTagURL}?p_r_p_tag=${tag.name}">${languageUtil.get(locale,tag.name)}</a>'>
88 </#if>
89 </#list>
90 <#assign blocTags = blocTags + '</div>'>
91
92 <#assign blocAuteurs = '<div class="article-meta-line authors">'>
93 <#if artAuteur != "" && artAuteur != "vide">
94 <#assign authorsIMG = authorArticle.getAuthorImg(artAuteur,authorsFolder)>
95 <#list authorsIMG as authorIMG>
96 <#assign blocAuteurs = blocAuteurs + '<img src="${authorIMG}" width="32" height="32" class="author"/>'>
97 </#list>
98
99 <#assign authorClean = artAuteur?replace("'", "'")>
100 <#assign blocAuteurs = blocAuteurs + ' ${authorClean}'>
101 </#if>
102 <#assign blocAuteurs = blocAuteurs + '</div>'>
103
104 <#assign titleClean = title?replace("'", "'")>
105 <#assign blocH1 = '<div class="image_overlay_dark"></div><div class="layer">${blocDate}<h1 class="blog-detail">${titleClean}</h1>${blocAuteurs}${blocTags}</div></div>'>
106
107 $('.fullpage').prepend('<div class="section image-bg-header ca3-scroll-down-arrow-ok" style="background-image:url(${originalImageUrl});display:none;">${blocH1}</div>');
108 <#if hasAnimatedIllustration>
109 $('.fullpage .section.image-bg-header').html('<video autoplay="" class="videofullscreen" data-autoplay="" muted="" playsinline="" poster="${originalImageUrl}" webkit-playsinline=""><source src="${ILLUSTRATION_ANIMEEFieldSet.ILLUSTRATION_ANIMEE.getData()}" type="video/mp4"/></video>${blocH1}');
110 </#if>
111 $('.fullpage .section.image-bg-header').show();
112 });
113
114</script>
115
116<#if main_group_short_name == "/bl" || main_group_short_name == "/bl-staging" || main_group_short_name == "/bli" || main_group_short_name == "/bli-staging">
117<div id="nl-subscription" class="form_newsletter style2" style="display:none;position: fixed;border-radius: 5px;bottom: 34px;left: 0px;z-index: 999;background-color: #e8e8e8;width: 303px;">
118<div class="form_newsletter_text" style="width:233px;margin-top: 35px;font-size: 20px;line-height: 24px;">${languageUtil.get(locale,"nl.abonnez.vous")}</div>
119
120<#if main_group_short_name == "/bl" || main_group_short_name == "/bl-staging">
121<a class="only-lu only-de only-europe only-autres" href="/${langue}/bank/bl/newsletter-lu" style="font-size: 16px;">${languageUtil.get(locale,"nl.consultez")}</a>
122<a class="only-be" href="/${langue}/bank/bl/newsletter-be" style="font-size: 16px;">${languageUtil.get(locale,"nl.consultez")}</a>
123</#if>
124
125<div class="form_newsletter_form" style="margin-top:35px;">
126<div class="newsletter" style="width: auto;text-align:center;">
127 <input placeholder="${languageUtil.get(locale,"nl.e.mail")}" type="text" style="width: 230px;margin-bottom: 15px;" id="nl_email"/>
128 <a id="nl-link-form" onclick="cook();" data-featherlight="iframe" style="position: relative;display: block;right: auto;margin: 0 auto;"
129 <#if main_group_short_name == "/bl" || main_group_short_name == "/bl-staging">
130 href="/${langue}${languageUtil.get(locale,"nl.url-form-bl")}"
131</#if>
132<#if main_group_short_name == "/bli" || main_group_short_name == "/bli-staging">
133href="/${langue}${languageUtil.get(locale,"nl.url-form-bli")}"
134</#if>
135 > <div>${languageUtil.get(locale,"nl.s.inscrire")}</div> </a>
136 </div>
137 </div>
138<a class="close-nl" href="#" onclick="return cook();" style="position: absolute;display: block;top: 4px;right: 9px;font-weight: 600;color: black;">X</a>
139 </div>
140
141<script>
142<#assign cur_url = portalUtil.getCurrentCompleteURL(serviceContext.getRequest())>
143<#if !cur_url?contains("source=newsmail") && !cur_url?contains("source=blwebsites")>
144 jQuery(document).ready(function() {
145 if(typeof jQuery.cookie('NL_SUBSCRIPTION_HIDE') == 'undefined') {
146 setTimeout(function() { jQuery('#nl-subscription').show();}, 10000);
147 }
148 });
149</#if>
150
151function cook() {
152 jQuery.cookie('NL_SUBSCRIPTION_HIDE', 'true', { expires:100, path: '/' });
153 jQuery('#nl-subscription').hide();
154 return false;
155}
156
157jQuery("#nl_email").change(function() {
158 jQuery('#nl-link-form').attr('href',jQuery('#nl-link-form').attr('href').substr(0, jQuery('#nl-link-form').attr('href').indexOf('&EMAIL=')) + '&EMAIL=' + jQuery("#nl_email").val());
159});
160</script>
161 </#if>
162
163<style>
164.tac_activate.tac_activate_addthis { display: none !important; }
165</style>