
Tipo de construcción
Ferroviarias
Accesos a la Estación de La Sagrera
España
2.500 m
longitud
Descripción
Este proyecto se desarrolla en dos tramos, uno a la entrada de la futura estación de AVE y otro a la salida de dicha estación.
La longitud lineal que abarca esta actuación es de 2.500 metros. Se ejecutaron las plataformas de todas las vías que entran y salen de la estación, así como la superestructura ferroviaria de las vías de ancho convencional.
Failed to "?eval" string with this error:
---begin-message---
Syntax error in ?eval-ed string in line 1, column 83:
Lexical error: encountered "u" (117), after "\"Instalaciones en Puente Vidin \\".
---end-message---
The failing expression:
==> imagen?eval [in template "12187455#12187494#3138569" at line 94, column 110]
----
FTL stack trace ("~" means nesting-related):
- Failed at: #assign imagenMap = imagen?eval [in template "12187455#12187494#3138569" at line 94, column 89]
----
1<style>
2 @media(max-width: 990px){
3 .desktop-buttons{
4 display:none!important;
5 }
6 }
7 .desktop-buttons{
8 padding: 2%;
9 }
10</style>
11<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
12<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
13<#assign dlFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") />
14<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.link.service.AssetLinkLocalService") />
15<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) />
16<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() />
17<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) />
18<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() />
19<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) />
20<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
21<div class="background-color--gray pb-5">
22 <section class="detail__banner">
23 <div class="detail__banner--image">
24 <#if sep_imagen_cabecera.imagen_cabecera.getData()?? && sep_imagen_cabecera.imagen_cabecera.getData() != "">
25 <img alt="${sep_imagen_cabecera.imagen_cabecera.getAttribute("alt")}" data-fileentryid="${sep_imagen_cabecera.imagen_cabecera.getAttribute("fileEntryId")}" src="${sep_imagen_cabecera.imagen_cabecera.getData()}" />
26 </#if>
27 </div>
28 <#assign categories = currentArticleAssetEntry.getCategories() >
29 <#if categories?? && (categories?size > 0) >
30 <#list categories as categoryElement>
31 <#if categoryElement.getPath(locale)?contains("Country") || categoryElement.getPath(locale)?contains("Pais") >
32 <#assign country = categoryElement.getTitle(locale) />
33 <#elseif categoryElement.getPath(locale)?contains("work") || categoryElement.getPath(locale)?contains("construccion") >
34 <#assign typeOfWork = categoryElement.getName() />
35 </#if>
36 </#list>
37 </#if>
38 <div class="container">
39 <div class="detail__banner--category">
40 <div class="detail__banner--category-icon"><span class="fcc-i_${createStyleIcon(typeOfWork)}"></span></div>
41 <#-- breadcrum -->
42 <div class="detail__banner--category-breadcrumb">
43 <@breadcrum/>
44 </div>
45 </div>
46 <p class="detail__banner--title">${.vars['reserved-article-title'].data}</p>
47 <p class="detail__banner--country">${country}</p>
48 </div>
49 <div class="detail__banner--featured">
50 <div class="container">
51 <div class="row">
52 <#if DatosDestacados?? && DatosDestacados.getSiblings()?has_content >
53 <#list DatosDestacados.getSiblings() as datoDestacado>
54 <div class="col-12 col-sm-3 item">
55 <p class="detail__banner--featured-data">${datoDestacado.TextoSuperior.getData()}</p>
56 <p class="detail__banner--featured-unit">${datoDestacado.TextoInferior.getData()}</p>
57 </div>
58 </#list>
59 </#if>
60 </div>
61 </div>
62 </div>
63 </section>
64 <#-- <p class="detail__slider--text d-lg-none">${.vars['reserved-article-description'].data} </p> -->
65 <section class="detail__slider container">
66 <div class="detail__slider--text d-lg-none">
67 ${.vars['reserved-article-description'].data}
68 </div>
69 <#if sep_galeria_medios?? && sep_galeria_medios.getSiblings()?has_content >
70 <div class="slick-container">
71 <div class="slick__pagination d-none d-lg-block">
72 ${.vars['reserved-article-description'].data}
73 <!-- Add Pagination -->
74 <p class="slick-fraction"></p>
75 <!-- Add Progress bar -->
76 <div class="slick-progress">
77 <div class="progress">
78 <div class="progress-bar" role="progressbar" aria-valuenow="" aria-valuemin="0" aria-valuemax="100"></div>
79 </div>
80 </div>
81 </div>
82 <div class="slick-wrapper">
83 <ul class="slick-active-slide">
84 <#list sep_galeria_medios.getSiblings() as galeria>
85 <#if galeria.galeria_medios?? && galeria.galeria_medios.data?has_content >
86 <li class="slick-slide">
87 <#if galeria.galeria_medios.data?contains('.tif/') || galeria.galeria_medios.data?contains('.TIF/') >
88 <a title="<@liferay.language_format arguments="${galeria.alt_galeria_medios.data}" key="show-x" />" href="${galeria.galeria_medios.data&imageThumbnail=1}" target="_blank">
89 <img src="${galeria.galeria_medios.data&imageThumbnail=1}" alt="${galeria.alt_galeria_medios.data}"/>
90 </a>
91 <#else>
92 <#assign imagen = galeria.galeria_medios.data />
93 <#if (imagen?has_content)>
94 <#assign imagenMap = imagen?eval />
95 <#assign imagenGroupId = imagenMap["groupId"]?number />
96 <#assign imagenUuid = imagenMap["uuid"] />
97 </#if>
98 <#assign urlImage = "" />
99 <#if (imagen?has_content) && (imagenGroupId != 0)>
100 <#assign dlElement = dlFileEntryLocalService.getDLFileEntryByUuidAndGroupId(imagenUuid, imagenGroupId) />
101 <#assign urlImage = portalUtil.getPortalURL(renderRequest) + '/documents/' + dlElement.getRepositoryId() + '/' + dlElement.getFolderId() + '/' + htmlUtil.escapeURL(dlElement.getTitle()) +'/' + dlElement.getUuid() + '?' + dlElement.getVersion() />
102 </#if>
103 <img src="${urlImage}" alt="${galeria.alt_galeria_medios.data}"/>
104
105 </#if>
106 </li>
107 </#if>
108 </#list>
109 </ul>
110 <ul class="slick-nav">
111 <#list sep_galeria_medios.getSiblings() as galeria>
112 <#if galeria.galeria_medios?? && galeria.galeria_medios.data?has_content >
113 <li class="slick-slide">
114 <#if galeria.galeria_medios.data?contains('.tif/') || galeria.galeria_medios.data?contains('.TIF/') >
115 <a title="<@liferay.language_format arguments="${galeria.alt_galeria_medios.data}" key="show-x" />" href="${galeria.galeria_medios.data&imageThumbnail=1}" target="_blank">
116 <img src="${galeria.galeria_medios.data&imageThumbnail=1}" alt="${galeria.alt_galeria_medios.data}"/>
117 </a>
118 <#else>
119 <#assign imagen = galeria.galeria_medios.data />
120 <#if (imagen?has_content)>
121 <#assign imagenMap = imagen?eval />
122 <#assign imagenGroupId = imagenMap["groupId"]?number />
123 <#assign imagenUuid = imagenMap["uuid"] />
124 </#if>
125 <#assign urlImage = "" />
126 <#if (imagen?has_content) && (imagenGroupId != 0)>
127 <#assign dlElement = dlFileEntryLocalService.getDLFileEntryByUuidAndGroupId(imagenUuid, imagenGroupId) />
128 <#assign urlImage = portalUtil.getPortalURL(renderRequest) + '/documents/' + dlElement.getRepositoryId() + '/' + dlElement.getFolderId() + '/' + htmlUtil.escapeURL(dlElement.getTitle()) +'/' + dlElement.getUuid() + '?' + dlElement.getVersion() />
129 </#if>
130 <img src="${urlImage}" alt="${galeria.alt_galeria_medios.data}"/>
131 </#if>
132 </li>
133 </#if>
134 </#list>
135 </ul>
136 </div>
137 <div class="slick__pagination-mobile d-lg-none">
138 <p class="slick-fraction"></p>
139 </div>
140 </div>
141 </#if>
142 <div class="desktop-buttons d-flex justify-content-between">
143 <button class="slick-prev slick-arrow" aria-label="Previous" type="button" style="">Previous</button>
144 <button class="slick-next slick-arrow" aria-label="Next" type="button" style="">Next</button>
145 </div>
146 </section>
147 <section class="detail__paragraph container">
148 <div class="row">
149 <div class="col-sm-8 col-sm-offset-2">
150 ${descripcion.getData()}
151 </div>
152 </div>
153 </section>
154 <#-- FICHAS DESTACADAS -->
155 <#if validator.isNotNull(FichasDestacadas.getSiblings()[0].TituloDestacado.getData()) >
156 <#if FichasDestacadas?? && FichasDestacadas.getSiblings()?has_content >
157 <section class="detail__featuredTag container">
158 <div class="row">
159 <#list FichasDestacadas.getSiblings() as fichaDestacada>
160 <div class="col-4">
161 <div class="detail__featuredTag-item">
162 <#if fichaDestacada.Icono.getData()?? && fichaDestacada.Icono.getData() != "">
163 <img alt="${fichaDestacada.Icono.getAttribute("alt")}" data-fileentryid="${fichaDestacada.Icono.getAttribute("fileEntryId")}" src="${fichaDestacada.Icono.getData()}" />
164 </#if>
165 <#if fichaDestacada.TituloDestacado?? && fichaDestacada.TituloDestacado.getData()?? && fichaDestacada.TituloDestacado.getData() != "">
166 <p class="detail__featuredTag-item--title">${fichaDestacada.TituloDestacado.getData()} </p>
167 </#if>
168
169 <#if fichaDestacada.DescripcionDestacado?? && fichaDestacada.DescripcionDestacado.getData()?? && fichaDestacada.DescripcionDestacado.getData() != "">
170 <p>${fichaDestacada.DescripcionDestacado.getData()} </p>
171 </#if>
172 </div>
173 </div>
174 </#list>
175 </div>
176 </section>
177 </#if>
178 </#if>
179 <section class="detail__paragraph container">
180 <div class="row">
181 <div class="col-sm-8 col-sm-offset-2">
182 <#if validator.isNotNull(HTMLLibre1.getData()) >
183 <#-- HTML LIBRE -->
184 ${HTMLLibre1.getData()}
185 </#if>
186 <#-- CITA -->
187 <div class="detail__paragraph--quote">
188 <#if existCitas(Cita) >
189 <span class="detail__paragraph--quote-icon fcc-opinion_ocio"></span>
190 <#list Cita.getSiblings() as cita>
191 <#if cita.Autor?? && cita.Autor.getData()?? && cita.Autor.getData() != "">
192 <p class="author">${cita.Autor.getData()} </p>
193 </#if>
194 <#if cita.Texto?? && cita.Texto.getData()?? && cita.Texto.getData() != "">
195 <p>${cita.Texto.getData()} </p>
196 </#if>
197 </#list>
198 </#if>
199 </div>
200 <#if validator.isNotNull(HTMLLibre2.getData()) >
201 <#-- HTML LIBRE -->
202 ${HTMLLibre2.getData()}
203 </#if>
204 </div>
205 </div>
206 </section>
207</div>
208
209<#macro breadcrum>
210 <#assign layout_actual = layout />
211 <#assign breadcrumbList = [] />
212 <#list 0..10 as i>
213 <#assign parentId = layout_actual.getParentPlid() />
214 <#if parentId == 0 >
215 <#break>
216 <#else>
217 <#assign layout_actual = layoutLocalService.getLayout(parentId) />
218 <#assign breadcrumbList = breadcrumbList + [layout_actual] />
219 </#if>
220 </#list>
221 <#assign size = breadcrumbList?size - 1/>
222 <#list breadcrumbList?reverse as breadcrumb>
223 <p>${breadcrumb.getName(locale)}</p>
224 <#--<#assign completeUrl = portalUtil.getLayoutFullURL(breadcrumb, themeDisplay) />
225 <li><a href="${completeUrl}">${breadcrumb.getName(locale)}</a></li>-->
226 </#list>
227</#macro>
228
229<#function createStyleIcon name>
230 <#return name?replace("á", "a")?replace("é","e")?replace("í","i")?replace("ó","o")?replace("ú","u")?replace(" ","")?lower_case >
231</#function>
232
233<#function existCitas Cita>
234 <#if Cita?? && Cita.getSiblings()?has_content >
235 <#list Cita.getSiblings() as cita>
236 <#if cita.Autor?? && cita.Autor.getData()?? && cita.Autor.getData() != "">
237 <#return true>
238 </#if>
239 <#if cita.Texto?? && cita.Texto.getData()?? && cita.Texto.getData() != "">
240 <#return true>
241 </#if>
242 </#list>
243 </#if>
244 <#return false>
245</#function>
246
247<script>
248 $('.slick-prev').on('click', function(){
249 var slideIndex = $('.slick-active').attr('data-slick-index');
250 var newind = parseInt(slideIndex) - 1;
251 $('.slick-active-slide').slick("slickGoTo", parseInt(newind));
252 });
253 $('.slick-next').on('click', function(){
254 var slideIndex = $('.slick-active').attr('data-slick-index');
255 var newind = parseInt(slideIndex) + 1;
256 $('.slick-active-slide').slick("slickGoTo", parseInt(newind));
257 });
258</script>

Tipo de construcción
Ferroviarias
Ampliación al Campo de las Naciones Línea 8 Metro Madrid
España
5.347 m
longitud
Descripción
Prolongación de la línea 8, Mar de Cristal - Campo de las Naciones hasta el aeropuerto de Barajas y el barrio de Barajas.
Para su construcción se ha ejecutado un túnel de doble vía, cuya longitud total es de 5.347 metros. Dicho túnel se ha ejecutado con dos tuneladoras de escudo (EPB). Las máquinas, en su excavación, pasaron por debajo de un lago artificial y alguna edificación, sin que se produjeran asientos.
El proyecto también contemplaba la construcción de dos nuevas estaciones, Barajas y Aeropuerto.

Tipo de construcción
Ferroviarias
Conexión entre estaciones Atocha-Chamartín
España
6900 m
longitud
Conexión entre las estaciones de Atocha y Chamartín, para dar servicio a trenes de Alta Velocidad.
Conexión entre las estaciones de Atocha y Chamartín, para dar servicio a trenes de Alta Velocidad.
Descripción
Este tramo de nuevo trazado de doble vía y ancho internacional, cuenta con una longitud en túnel de 6.900 metros ejecutados con tuneladora y 120 metros, los primeros, realizados en falso túnel entre pantallas.
El proyecto incluye también la ejecución de la vía y la remodelación de la playa de vías de la cabecera Sur de la estación de Chamartín.

Tipo de construcción
Ferroviarias
Covilhã Guarda
Portugal
Contrato General de Modernización del Tramo Covilhã-Guarda -
Obra Civil, Vía y Catenaria, Puentes y RCT + TP
Contrato General de Modernización del Tramo Covilhã-Guarda -
Obra Civil, Vía y Catenaria, Puentes y RCT + TP
Descripción
El tramo Covilhã-Guarda atraviesa los municipios de Covilhã, Belmonte y Guarda y comprende el área comprendida entre la estación de Guarda y la estación de Covilhã, incluida la intervención en dos estaciones: Guarda y Belmonte y cuatro escalas: Caria, Maçainhas, Benespera y Sabugal, con el objetivo de modernización / rehabilitación de aquellos en estado de degradación avanzada.
Esta obra también incluye la construcción de la Concordancia de Beiras entre la Línea Beira Baixa y la Línea Beira Alta. Se trata de una intervención muy importante en la recalificación de la ferrocarril en Portugal, en un tramo que integra el Corredor Internacional North y cuya implementación potenciará el dinamismo del transporte ferroviario, en las conexiones interregionales y en la conexión con España.
El tramo se desarrolla en una zona de terreno muy accidentado, caracterizada por por relieve montañoso y líneas de agua pronunciadas, presentando un carácter fuertemente rural. La mayor parte del recorrido es muy sinuoso, se desarrolla a mitad de la pendiente, lo que se origina en tramos con pendientes de terraplén apreciables, ya sea en situación de excavación o relleno sanitario.
A lo largo del recorrido hay 12 puentes y un viaducto que constituyen puntos singulares que condicionan el trazado estudiado. Algunas de estas obras de arte ya están reparadas, como los puentes de Tapada de Cortes, desde el Rebolal y Galrita, mientras que otras obras de arte también serán objeto de contratos de reconstrucción y mejora.
En total son 6 puentes metálicos para desmontar y fabricar y montar. Son puentes de estructura metálica espacial con losa colaboradora de hormigón. Cabe destacar que existen 3 Obras de Arte metálicas cuya intervención fue realizada anteriormente por las Infraestructuras de Portugal, sin
conocer refuerzos y mantener un camino sin balasto en la obra de arte.
Aproximadamente entre el km 205 + 970 y el km 206 + 370 se desarrolla la pista a lo largo del Túnel Sabugal, cuyo contrato de rehabilitación y refuerzo fue completado en abril de 2011.
En la zona final del recorrido, se construirá una nueva conexión entre las líneas del Beira Baixa y Beira Alta. Este Acuerdo entre las dos líneas, con un de aproximadamente 1,5 km, se desarrolla entre el Km Existente, 208 + 738 (JTC de AMV CONC 1) tendido en la línea Beira Baixa y el Km.
Existente 209 + 232 (JTC de AMV CONC 3) tendido en la línea Beira Alta, a unos 2,5 km al sureste de la estación de tren de Guarda. Este enlace permitirá la circulación directa de trenes internacionales en la Línea Beira Baja (no es necesario realizar las maniobras de cambio de locomotoras actuales en el Estación de Guarda), constituyendo así una alternativa viable para el tráfico ferrocarril internacional a la Línea Beira Alta.
El contrato también incluye la ampliación del carril I de la estación Belmonte en un 321,72 m de longitud para alcanzar una pista útil de 750 m, y la creación de un nuevo ramal en la estación de Guarda con unos 200 m de longitud conexión entre las líneas LBB y LBA, que se conectarán a los carriles II, III y IV de la estación.
Aspectos destacados
El proyecto se inicia en el km 165 + 600, cerca de Covilhã y termina en el km 211 + 330, cerca de la estación de Guarda, subdividido en tres subsecciones:
- Desde el km 165 + 600 hasta el km 178 + 446 (cerca de la parada de Caria): intervención completa para la modernización de la vía, a excepción del tramo inicial, entre el km 165 + 600 y Ponte da Carpinteira, que sufrió una reciente intervención en el ámbito de la modernización de la vía en el subtramo Vale de Placeres / Covilhã;
- Del km 178 + 446 al km 188 + 500: intervención a nivel de ampliación de la línea I a la estación Belmonte, para permitir la parada y estacionamiento de composiciones de hasta 750 m de longitud, y solo con catenaria, RCT + TP, Trayectoria del cable y Sellado a lo largo de toda la subsección;
- Del km 188 + 500 al km 211 + 329,5: intervención completa para modernizar la vía.