Une erreur s'est produite lors du traitement du modèle.
The following has evaluated to null or missing:
==> renderer.getArticle  [in template "12187455#12187494#13940982" at line 66, column 75]

----
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 journalArticle = renderer.get...  [in template "12187455#12187494#13940982" at line 66, column 49]
----
1<#assign UserLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")> 
2<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
3 
4<#assign user = UserLocalService.getUserById(themeDisplay.getUserId())> 
5<#assign scopeLocale = themeDisplay.getLocale()> 
6 
7 
8<#if entries?has_content> 
9	<#assign listaContenidos = [] /> 
10	<#assign listaRenderersContenidos = [] /> 
11	 
12	<#if locale == "es_ES"> 
13		<#assign indicatorText = "Mover a la imagen"> 
14		<#assign playButtonText = "Iniciar carrusel"> 
15		<#assign stopButtonText = "Pausar carrusel"> 
16	<#elseif locale == "ca_ES"> 
17		<#assign indicatorText = "Mou a la imatge"> 
18		<#assign playButtonText = "Iniciar carrusel"> 
19		<#assign stopButtonText = "Pausar carrusel"> 
20	<#elseif locale == "gl_ES"> 
21		<#assign indicatorText = "Mover á imaxe"> 
22		<#assign playButtonText = "Comeza o carrusel"> 
23		<#assign stopButtonText = "Pausa o carrusel"> 
24	<#elseif locale == "fr_FR"> 
25		<#assign indicatorText = "Passer à l'image"> 
26		<#assign playButtonText = "Démarrer le carrousel"> 
27		<#assign stopButtonText = "Suspendre le carrousel"> 
28	<#elseif locale == "pt_PT"> 
29		<#assign indicatorText = "Passar para a imagem"> 
30		<#assign playButtonText = "Play carrossel"> 
31		<#assign stopButtonText = "Stop carrossel"> 
32	<#elseif locale == "it_IT"> 
33		<#assign indicatorText = "Passa all'immagine"> 
34		<#assign playButtonText = "Avvia carosello"> 
35		<#assign stopButtonText = "Metti in pausa il carosello"> 
36	<#elseif locale == "de_DE"> 
37		<#assign indicatorText = "Gehen Sie zu Bild"> 
38		<#assign playButtonText = "Karussell starten"> 
39		<#assign stopButtonText = "Karussell anhalten"> 
40	<#else> 
41		<#assign indicatorText = "Move to image"> 
42		<#assign playButtonText = "Play carousel"> 
43		<#assign stopButtonText = "Stop carousel"> 
44	</#if> 
45			 
46			 
47	<#if entries?size gt 1> 
48		 <div id="myCarousel" class="carousel slide normalSlider" data-ride="carousel"> 
49		 <div class="center"> 
50 
51			<button id="playButton" type="button" class="btn btnPlayPause btnPlay" aria-label="${playButtonText}"> 
52			  <span class="sr-only">${playButtonText}</span> 
53	          <i class="icon-play"></i> 
54	       	</button> 
55		      <button id="pauseButton" type="button" class="btn btnPlayPause" aria-label="${stopButtonText}"> 
56		      	  <span class="sr-only">${stopButtonText}</span> 
57		          <i class="icon-pause"></i> 
58		      </button> 
59 
60			 <ol class="carousel-indicators"> 
61				  <#assign active = "active" /> 
62				  <#list entries as curEntry> 
63						 
64						<#assign renderer = curEntry.getAssetRenderer() /> 
65						<#assign className = renderer.getClassName() />   
66						<#assign journalArticle = renderer.getArticle() /> 
67						<#assign listaContenidos = listaContenidos + [journalArticle]> 
68						<#assign listaRenderersContenidos = listaRenderersContenidos + [renderer]> 
69						 
70						<li class="${active}"> 
71								<a href="#"  data-target="#myCarousel" data-slide-to="${curEntry?index}"> 
72									<span class="sr-only">${indicatorText} ${curEntry?index}</span> 
73								</a> 
74							</li> 
75						 
76						<#assign active = "" /> 
77				  </#list> 
78				  
79			 </ol> 
80			 </div> 
81				  
82				<div class="carousel-inner"> 
83					<#assign active ="active" /> 
84					 
85					<#if listaContenidos?has_content> 
86					<#list listaContenidos as contenido> 
87	 
88						 
89						<#assign currentRenderer = listaRenderersContenidos[contenido_index]> 
90						 
91						<div class="${active} carousel-item item">   
92							<div class="lfr-meta-actions asset-actions"> 
93 
94								<#if currentRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
95 
96									<#assign redirectURL = renderResponse.createRenderURL()> 
97									<#assign ignore = redirectURL.setParameter("struts_action", "/asset_publisher/add_asset_redirect")> 
98									<#assign ignore = redirectURL.setWindowState("pop_up")> 
99 
100									<#assign editPortletURL = currentRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)> 
101 
102									<#if editPortletURL?? && editPortletURL?has_content> 
103										<#assign title = languageUtil.format(locale, "edit-x", currentRenderer.getTitle(locale))> 
104	 
105									  
106 
107										<#assign namespace = renderResponse.getNamespace()> 
108										<#assign escapedURL = htmlUtil.escapeURL(editPortletURL?string)> 
109										<#assign jsURL = "javascript:Liferay.Util.openWindow({dialog: {width: 960}, id:'${namespace}editAsset', title:'${currentRenderer.getTitle(locale)}', uri:'${escapedURL}'})"> 
110 
111										 
112											 
113											<@liferay_ui["icon"] 
114													image="edit" 
115													message=title 
116													url=jsURL 
117											/> 
118 
119									</#if> 
120								</#if> 
121							</div> 
122						 
123									 
124					<#assign article = JournalArticleLocalService.getArticle(contenido.getGroupId(), contenido.getArticleId() ) /> 
125				  ${JournalArticleLocalService.getArticleContent(contenido.getGroupId(),contenido.getArticleId() , null , article.getDDMTemplateKey(), locale.toString(), null, themeDisplay)} 
126	 
127						</div> 
128						<#assign active ="" /> 
129					</#list> 
130					</#if> 
131 
132				</div> 
133		</div> 
134	  
135	<#else>				 
136		 
137		<div class="carousel normalSlider"> 
138				<#assign curEntry= entries[0] /> 
139				<#assign currentRenderer = curEntry.getAssetRenderer()/> 
140				<#assign className = currentRenderer.getClassName() />   
141				<#assign journalArticle = currentRenderer.getArticle()/> 
142				<#assign contenido = journalArticle /> 
143			 
144			  <div class="carousel-inner">  
145			<div class="carousel-item item active"> 
146 
147				<div class="lfr-meta-actions asset-actions"> 
148 
149								<#if currentRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
150 
151									<#assign redirectURL = renderResponse.createRenderURL()> 
152									<#assign ignore = redirectURL.setParameter("struts_action", "/asset_publisher/add_asset_redirect")> 
153									<#assign ignore = redirectURL.setWindowState("pop_up")> 
154 
155									<#assign editPortletURL = currentRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)> 
156 
157									<#if editPortletURL?? && editPortletURL?has_content> 
158										<#assign title = languageUtil.format(locale, "edit-x", currentRenderer.getTitle(locale))> 
159	 
160									 <#-- <#assign icono = taglibLiferay.getIconTag()> 
161										<#assign ignore = icono.setImage("edit")> 
162										<#assign ignore = icono.setMessage(title)> --> 
163 
164										<#assign namespace = renderResponse.getNamespace()> 
165										<#assign escapedURL = htmlUtil.escapeURL(editPortletURL?string)> 
166										<#assign jsURL = "javascript:Liferay.Util.openWindow({dialog: {width: 960}, id:'${namespace}editAsset', title:'${currentRenderer.getTitle(locale)}', uri:'${escapedURL}'})"> 
167 
168										<#-- <#assign ignore = icono.setUrl(jsURL)> --> 
169											 
170											<@liferay_ui["icon"] 
171													image="edit" 
172													message=title 
173													url=jsURL 
174											/> 
175 
176									</#if> 
177								</#if> 
178							</div> 
179											 
180					<#assign article = JournalArticleLocalService.getArticle(contenido.getGroupId(), contenido.getArticleId() ) /> 
181				  ${JournalArticleLocalService.getArticleContent(contenido.getGroupId(),contenido.getArticleId() , null , article.getDDMTemplateKey(), locale.toString(), null, themeDisplay)} 
182											 
183											 
184				</div> 
185			</div> 
186		</div> 
187	</#if> 
188</#if> 

Igualdad e Inserción

Égalité et insertion

Égalité entre les sexes

En savoir plus

Promotion de la diversité

 

En savoir plus

Gestion de la qualité

ISO 9001 AENORISO 9001 AENOR FCC Medio Ambiente dispose d'un Système de Gestion de la Qualité conforme à la norme internationale UNE-EN ISO 9001:2015 qui a été audité par AENOR et a obtenu le certificat correspondant ER-0278/1997 en 1997.

Parmi les principales exigences de cette norme internationale figurent l'élaboration de politiques de gestion et de procédures documentées pour le développement opérationnel correct de l'organisation, l'analyse et l'examen des besoins et des attentes des parties intéressées pour atteindre la qualité attendue, la détermination des exigences légales ou autres qui peuvent affecter l'organisation pour leur contrôle et leur conformité, et le contrôle, la mesure, l'analyse et l'amélioration du système de gestion. C'est pourquoi le Système de Gestion de FCC est basé sur la méthodologie PDCA (PLAN DO CHECK ACT), le principe de l'amélioration continue des activités qu'on développe et nous oblige à garantir une prestation de services efficace et excellente à nos clients, basée à son tour sur la satisfaction des citoyens.

 

Lavado de calles a alta presión Zaragoza

Nettoyage mixte du pont du troisième millénaire (Saragosse)