Cuenca

imagen generica de la estación

Las estaciones son algo más que un lugar desde el que subir a un tren o desembarcar del mismo. Además de prestar sus servicios a los viajeros y usuarios, muchas de ellas constituyen una referencia en las localidades donde su ubican.

Aquí se pueden conocer los horarios de llegadas y salidas de la estación, así como los servicios que se ofrecen en su recinto e instalaciones. Para ello acceda a dicha información a través del selector que ponemos a su disposición.

Informacion de la estación

  • Dirección

    C/ Mariano Catalina, 10 --- 16004 Cuenca --- CUENCA

  • Horario

    Diario: 09:00 a 19:30

Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> servicios.id  [in template "20101#20128#ADIF-SERVICIOS-ESTACION-TEMPLATE" at line 35, column 21]

----
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: #if servicios?? && servicios.id.getSi...  [in template "20101#20128#ADIF-SERVICIOS-ESTACION-TEMPLATE" at line 35, column 1]
----
1<script type="text/javascript"> 
2 
3 
4function cierraDetalles(){ 
5   var detalles = $("div[id^='detalleServicio']"); 
6   var iconos = $("[id^='button-detalleServicio']"); 
7   for (let detalle of detalles) { 
8    detalle.style.display = 'none' 
9
10    for (let icono of iconos) { 
11      icono.setAttribute('aria-expanded', 'false'); 
12
13
14 
15  function toggle(id, id2) { 
16 
17     
18        var n = document.getElementById(id); 
19if (n.style.display != 'none')  
20
21	  n.style.display = 'none'; 
22      document.getElementById(id2).setAttribute('aria-expanded', 'false'); 
23
24  else 
25
26  cierraDetalles(); 
27  n.style.display = ''; 
28  document.getElementById(id2).setAttribute('aria-expanded', 'true'); 
29
30
31   
32 
33  </script> 
34 
35<#if servicios?? && servicios.id.getSiblings()?has_content> 
36	<div class="title-servicios"> 
37    	<h3><@liferay.language key="es.adif.estacion.servicios"/></h3> 
38	</div> 
39    <@listPaint servicios.id.getSiblings() ""/>	 
40</#if> 
41 
42<#if serviciosAdaptados?? && serviciosAdaptados.idAdaptados.getSiblings()?has_content> 
43	<div class="title-servicios"> 
44    	<h3><@liferay.language key="es.adif.estacion.servicios-adaptados"/></h3> 
45	</div> 
46    <@listPaint serviciosAdaptados.idAdaptados.getSiblings() "Adaptados"/>	 
47</#if> 
48 
49<#macro listPaint lista texto> 
50         
51    <@orderServicesList lista texto/> 
52     
53	<#list listaOrdenada as cur_id> 
54 
55	    <#if cur_id?index %3 == 0> 
56			<#assign 
57	        hay1 = listaOrdenada[cur_id?index+1]?? 
58	        hay2 = listaOrdenada[cur_id?index+2]?? 
59	      /> 
60	      <div class="servicios-estacion" id="servicios-estacion"> 
61	        <@boxPaint cur_id cur_id?index texto/> 
62	         <#if hay1> 
63	        <@boxPaint listaOrdenada[cur_id?index+1] cur_id?index+1 texto/> 
64	            <#if hay2> 
65	             <@boxPaint listaOrdenada[cur_id?index+2] cur_id?index+2 texto/> 
66	            </#if> 
67	         </#if> 
68	         </div> 
69	         <@detailPaint cur_id cur_id?index texto/> 
70	          <#if hay1> 
71	            <@detailPaint listaOrdenada[cur_id?index+1] cur_id?index+1 texto/> 
72	           <#if hay2> 
73	            <@detailPaint  listaOrdenada[cur_id?index+2] cur_id?index+2 texto/> 
74	            </#if> 
75	           </#if> 
76	    </#if> 
77	     
78	</#list> 
79 
80</#macro> 
81 
82<#macro boxPaint elem index texto> 
83	<#if texto!="Adaptados"> 
84		<#if elem.popServicios.getData() ?? && elem.popServicios.getData() != ""> 
85			<button class="linkServiciosDesp" id="button-detalleServicio${texto}-${index}" aria-expanded="false" aria-controls="detalleServicio${texto}-${index}" onclick="toggle('detalleServicio${texto}-${index}', 'button-detalleServicio${texto}-${index}')"> 
86		</#if> 
87		<div class="servicio-estacion" id="iconoServicio${texto}-${index}"> 
88			<div class="servicio-estacion-icono" style="background-image:url('${elem.icono.getData()}')"></div><!-- /.servicio-estacion-icono --> 
89			<div class="servicio-estacion-datos"> 
90				<h4>${elem.titulo.getData()}</h4> 
91				<p class="descripcion-servicios">${elem.descripcionServicios.getData()}</p> 
92				<#if elem.popServicios.getData() ?? && elem.popServicios.getData() != ""> 
93					<p class="detalle-mas-informacion"> 
94					<span class="texto_servicios_responsive" data-desktoptext="Más información" data-phonetext="+"></span> 
95					</p> 
96				</#if> 
97			</div> 
98		</div> 
99		<#if elem.popServicios.getData() ?? && elem.popServicios.getData() != ""> 
100		</button> 
101		</#if> 
102	<#else> 
103		<#if elem.popAdaptados.getData() ?? && elem.popAdaptados.getData() != ""> 
104		<button class="linkServiciosDesp" id="button-detalleServicio${texto}-${index}" aria-expanded="false" aria-controls="detalleServicio${texto}-${index}" onclick="toggle('detalleServicio${texto}-${index}', 'button-detalleServicio${texto}-${index}')"> 
105		</#if> 
106		<div class="servicio-estacion" id="iconoServicio${texto}-${index}"> 
107			<div class="servicio-estacion-icono" style="background-image:url('${elem.iconoAdaptados.getData()}'"></div><!-- /.servicio-estacion-icono --> 
108			<div class="servicio-estacion-datos"> 
109				<h4>${elem.tituloAdaptados.getData()}</h4> 
110				<p class="descripcion-servicios">${elem.descripcionAdaptados.getData()}</p> 
111				<#if elem.popAdaptados.getData() ?? && elem.popAdaptados.getData() != ""> 
112					<p class="detalle-mas-informacion"> 
113						<span class="texto_servicios_responsive" data-desktoptext="Más información" data-phonetext="+"></span> 
114					</p> 
115				</#if> 
116			</div> 
117		</div> 
118		<#if elem.popAdaptados.getData() ?? && elem.popAdaptados.getData() != ""> 
119		</button> 
120		</#if> 
121	</#if> 
122</#macro> 
123 
124<#macro detailPaint elem index texto> 
125<#if texto!="Adaptados"> 
126	<div role="region" aria-labelledby="button-detalleServicio${texto}-${index}" class="servicios-estacion" id="detalleServicio${texto}-${index}" style="display:none"> 
127		<div class="servicio-estacion servicio-estacion-detalle servicio-estacion-detalle-${index%3} "> 
128			<div class="servicio-estacion-icono" style="background-image:url('${elem.icono.getData()}')"></div><!-- /.servicio-estacion-icono --> 
129			<div class="servicio-estacion-datos"> 
130				<h4>${elem.titulo.getData()}</h4> 
131				${elem.popServicios.getData()} 
132				<p> 
133					<button aria-label="<@liferay.language key="navigation.cerrar" /> ${elem.titulo.getData()}" class="btn-close-adif"  type="button" onclick="toggle('detalleServicio${texto}-${index}', 'button-detalleServicio${texto}-${index}')">&times;</button> 
134					 
135				</p> 
136			</div> 
137		</div> 
138	</div> 
139<#else> 
140	<div role="region" aria-labelledby="button-detalleServicio${texto}-${index}" class="servicios-estacion" id="detalleServicio${texto}-${index}" style="display:none"> 
141		<div class="servicio-estacion servicio-estacion-detalle servicio-estacion-detalle-${index%3}"> 
142			<div class="servicio-estacion-icono" style="background-image:url('${elem.iconoAdaptados.getData()}'"></div><!-- /.servicio-estacion-icono --> 
143			<div class="servicio-estacion-datos"> 
144				<h4>${elem.tituloAdaptados.getData()}</h4> 
145				${elem.popAdaptados.getData()} 
146				<p> 
147					<button class="btn-close-adif" aria-label="<@liferay.language key="navigation.cerrar" /> ${elem.tituloAdaptados.getData()}" type="button" onclick="toggle('detalleServicio${texto}-${index}', 'button-detalleServicio${texto}-${index}')">&times;</button> 
148				</p> 
149			</div> 
150		</div> 
151	</div> 
152</#if> 
153 
154</#macro> 
155 
156<#macro orderServicesList lista texto> 
157    <#assign lista2 = []> 
158    <#assign lista3 = lista> 
159    <#assign stop = true> 
160    <#assign run = true> 
161    <#assign iteraciones = lista3?size*lista3?size> 
162    <#list 0..iteraciones as i> 
163        <#assign run = false> 
164        <#assign saltarSiguiente = false> 
165        <#list lista3 as cur_elem> 
166            <#if !saltarSiguiente> 
167	            <#if !cur_elem?is_last > 
168	                <#if (texto=="Adaptados" && esMayor(cur_elem.tituloAdaptados.getData(),lista3[cur_elem?index+1].tituloAdaptados.getData())) 
169	                 || (texto!="Adaptados" && esMayor(cur_elem.titulo.getData(),lista3[cur_elem?index+1].titulo.getData()))> 
170	                    <#assign run = true> 
171	                    <#assign lista2 = lista2 + [lista3[cur_elem?index+1], cur_elem]> 
172	                    <#assign saltarSiguiente = true> 
173	                <#else> 
174	                    <#assign lista2 = lista2 + [cur_elem]/> 
175	                </#if> 
176	            <#else> 
177	            	<#assign lista2 = lista2 + [cur_elem]> 
178	            </#if> 
179	        <#else> 
180	        	<#assign saltarSiguiente = false/> 
181            </#if> 
182        </#list> 
183        <#if !run> 
184            <#break> 
185        </#if> 
186        <#assign lista3 = lista2> 
187        <#assign lista2 = []> 
188    </#list> 
189     
190    <#assign listaOrdenada = lista3> 
191</#macro> 
192 
193<#function esMayor string1 string2> 
194    <#assign strings = [string1,string2]?sort> 
195    <#return strings[0]==string2> 
196</#function> 
Logo Boulevar

Boulevar

Número de local: Vestíbulo

Logo Boulevar

Boulevar

Número de local: Vestíbulo