Une erreur s'est produite en traitant le modèle de document.
Expression Titre_Publication.Image.champ_alt is undefined on line 54, column 80 in 10136#10174#BLOC_PUBLICATION_TEMPLATE.
1<#assign portletPreferencesLocalServiceUtil = serviceLocator.findService("com.liferay.portal.service.PortletPreferencesLocalService")>
 
2<#assign layoutService = serviceLocator.findService("com.liferay.portal.service.LayoutLocalService")>
 
3<#assign themeDisplay = request['theme-display'] >
 
4<#assign plid = themeDisplay['plid']>
 
5
 
6<#assign layoutObject = layoutService.getLayout(plid?number) />
 
7<#assign pageTitle = layoutObject.getName(locale) />
 
8
 
9<#assign nestedInstanceId = plid>
 
10<#assign nestedInstanceId = nestedInstanceId?substring(1,4)>
 
11<#assign nestedInstanceId = "N"+getterUtil.getString(nestedInstanceId)>
 
12
 
13<#assign renderUrl = request['render-url-normal']>
 
14<#assign urlPortal =  themeDisplay['url-portal']>
 
15<#assign pathContext =  themeDisplay["path-context"]>
 
16
 
17<#list renderUrl?split(urlPortal) as x>
 
18	<#assign renderURLRelative = pathContext+x >
 
19</#list>
 
20<#assign namespace = request["portlet-namespace"]>
 
21
 
22<#assign Counter = 1>
 
23<#assign UnePage = 1>
 
24<#assign nestedPortletId = "118_INSTANCE_$nestedInstanceId">
 
25<#assign dateModif = .vars['reserved-article-modified-date'].data>
 
26<#-- Définition de la locale en dur afin d'être sûr que le parsage de date se fasse correctement -->
 
27<#setting locale="fr_FR">
 
28<#assign dateModif = dateModif?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
 
29<#assign listPages = []>
 
30<#assign test = request.parameters?is_hash && request.parameters.read_more??>
 
31<#if test>
 
32    <#assign readmore = getterUtil.getLong(request.parameters.read_more)>
 
33<#else>
 
34	<#assign readmore = 1 >
 
35</#if>
 
36
 
37<#if .vars['Titre_Page'].getSiblings()?has_content>
 
38	<#list .vars['Titre_Page'].getSiblings() as cur_item>
 
39					<#assign listPages = listPages + [
 
40				  {"title":cur_item.getData(), "numero":Counter, "content":cur_item.Corps.getData()}
 
41				]>	
 
42	<#assign Counter = Counter+1 >
 
43	</#list>
 
44</#if>
 
45
 
46<!-- Réinitialisation du compteur -->
 
47<#assign MaxCounter = Counter-1 >
 
48<!-- Début msa_intro -->
 
49<div class="publication_wrapper entete bg">
 
50	<div class="msa_intro row">
 
51		<#assign cssClass = "" >
 
52		<#if validator.isNotNull(Titre_Publication.Image.getData()) >
 
53		<div class="img col-xs-12 col-md-5 pull-right">
 
54			<img src="${Titre_Publication.Image.getData()}" alt="${Titre_Publication.Image.champ_alt.getData()}"/>
 
55		</div>
 
56		<#assign cssClass = "col-md-7" >
 
57		</#if>
 
58		
 
59		<div class="bloc col-xs-12 ${cssClass}">
 
60    		<div class="intro col-xs-12 no-padding">
 
61        		<div class=margin>
 
62        			<h1>${Titre_Publication.getData()}</h1>
 
63        			<div class="date mis_a_jour"><i class="icon-time"></i> Mis &agrave; jour le ${dateModif?string["dd/MM/yyyy"]} </div>
 
64        			<div class="small-spacer"></div>
 
65    		    </div>
 
66		    </div>
 
67			<!-- Début encart blanc -->
 
68			<div class="bloc">
 
69				<p>${Titre_Publication.Accroche.getData()}</p>
 
70				 <#if MaxCounter != UnePage>
 
71					<!-- Début sommaire -->
 
72					<div class="sommaire">
 
73						<ul>
 
74						<#assign Counter = 1>
 
75						<#if .vars['Titre_Page'].getSiblings()?has_content>
 
76							<#list .vars['Titre_Page'].getSiblings() as cur_item>
 
77								<li>
 
78									<#if Counter == readmore>
 
79									<div class="lien olive active">
 
80									    <span class="ia-chevron ia-1x"></span>
 
81										<span>${cur_item.getData()}</span>
 
82									</div>
 
83									<#else>
 
84									<div class="lien olive">
 
85										<span class="ia-chevron ia-1x"></span>
 
86										<a href='${renderURLRelative}&${namespace}read_more=${Counter}'>${cur_item.getData()}</a>
 
87									</div>
 
88								   </#if>
 
89								</li>
 
90								<#assign Counter = Counter+1 >
 
91							</#list>
 
92						</#if>
 
93						</ul>
 
94					</div>
 
95					<!-- Fin sommaire -->
 
96				</#if>
 
97			</div>
 
98			<!-- fin encart blanc -->
 
99		</div>
 
100		<div class="clear"></div>
 
101	</div>
 
102</div>
 
103<!-- fin intro de la page -->
 
104
 
105<!-- Début contenu sur 2 colonnes -->
 
106<div class="publication_wrapper">
 
107	<div class="content_2col">
 
108		<!-- Début colonne de gauche -->
 
109		<div class="col_gauche col-md-8 col-xs-12">
 
110			<!-- Début liste des pages -->
 
111			<#assign Counter = 1>
 
112			<#if .vars['Titre_Page'].getSiblings()?has_content>
 
113			<#assign pages = .vars['Titre_Page'].getSiblings()>
 
114				<#list pages as cur_item>
 
115				<#if Counter == readmore>
 
116				<#if validator.isNotNull(cur_item.getData()) >
 
117				<#assign titrePage = cur_item.getData()>
 
118					<h2>${cur_item.getData()}</h2>
 
119				</#if>
 
120					${cur_item.Corps.getData()}
 
121					<!-- Partage réseaux sociaux -->
 
122					<div class="small-spacer"></div>
 
123					<div class="social-sharing-widgets">
 
124                    	<span class="social-sharing-text"><strong>Partager : </strong></span>
 
125                    	<a class="social-widget" aria-label="Partager sur Facebook"
 
126                    		onclick="javascript:window.open('https://www.facebook.com/sharer/sharer.php?u=' + encodeURIComponent('${renderUrl}?src=socfb'), '', 'menubar=no,toolbar=no,scrollbars=yes,resizable=yes,height=600,width=600');">
 
127                    		<span class="ia-facebook ia-2x"></span>
 
128                    	</a>
 
129                    	<a class="share-twitter social-widget" aria-label="Partager sur Twitter"
 
130                    		onclick="javascript:window.open('https://twitter.com/share?text=${pageTitle?js_string}', '', 'menubar=no,toolbar=no,scrollbars=yes,resizable=yes,height=300,width=500');">
 
131                    		<span class="ia-twitter ia-2x"></span>
 
132                    	</a>
 
133                    	<#-- 
 
134                    	<a class="social-widget" aria-label="Partager sur Google+"
 
135                    		onclick="javascript:window.open('https://plus.google.com/share?url=' + encodeURIComponent('${renderUrl}?src=socgp'), '', 'menubar=no,toolbar=no,scrollbars=yes,resizable=yes,height=600,width=600');">
 
136                    		<span class="ia-google-plus ia-2x"></span>
 
137                    	</a>
 
138                    -->
 
139                    </div>
 
140                    
 
141                    
 
142					<#if MaxCounter != UnePage>
 
143						<!-- Début pagination -->
 
144						<div class="small-spacer"></div>
 
145						<div class="separator"></div>
 
146						<div class="pagination col-xs-12 no-margin no-padding">
 
147							<div class="page_precedente col-xs-12 col-sm-6 no-padding">
 
148								<#if Counter != 1>
 
149									<#list listPages?sort_by("numero") as page>
 
150									<#if page.numero == Counter-1>
 
151									<div class="lien olive">
 
152									<span class="ia-retour"></span>
 
153									<a class="readMore" href='${renderURLRelative}&${namespace}read_more=${page.numero}' title="${page.title}"> Page précédente</a>
 
154									</div>
 
155									<p>${page.title}</p>
 
156									</#if>
 
157									</#list>
 
158								</#if>
 
159							</div>
 
160							<div class="page_suivante col-xs-12 col-sm-6 no-padding">
 
161								<#if Counter != MaxCounter>
 
162									<#list listPages?sort_by("numero") as page>
 
163									<#if page.numero == Counter+1>
 
164									<div class="lien olive">
 
165									<a class="readMore" href='${renderURLRelative}&${namespace}read_more=${page.numero}' title="${page.title}">Page suivante </a>
 
166									<span class="ia-chevron"></span>
 
167									</div>
 
168									<p>${page.title}</p>
 
169									</#if>
 
170									</#list>
 
171								</#if>
 
172							</div>
 
173							<div class="clear"></div>
 
174						</div>
 
175					</#if>
 
176					<!-- fin pagination -->
 
177				</#if>
 
178				<#assign Counter = Counter+1 >
 
179			</#list>
 
180			</#if>
 
181			<!-- Fin liste des pages -->
 
182
 
183
 
184		</div>
 
185		<!-- Fin colonne de gauche -->
 
186		<!-- Début colonne de droite-->
 
187<div class="col_droite col-md-4 col-xs-12">
 
188	<#assign prefs = portletPreferencesLocalServiceUtil.getPreferences(getterUtil.getLong(companyId), getterUtil.getLong(ownerId), getterUtil.getLong(ownerType), getterUtil.getLong(plid), nestedPortletId)>
 
189	<runtime-portlet name="118" instance="${nestedInstanceId}" queryString=""/>
 
190	<#if !(prefs.getValue("layoutTemplateId","")==("1_column"))>
 
191		<#assign VOID = prefs.setValue("portletSetupShowBorders", "false")>
 
192		<#assign VOID = prefs.setValue("layoutTemplateId", "1_column")>
 
193		<#assign prefs = portletPreferencesLocalServiceUtil.updatePreferences(getterUtil.getLong(ownerId), getterUtil.getLong(ownerType), getterUtil.getLong(plid), nestedPortletId, prefs)>
 
194	</#if>
 
195</div>
 
196		 <!-- Fin colonne de droite-->
 
197	</div>
 
198</div>