Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing:
==> cur_images [in template "12187455#12187494#70520" at line 127, column 67]
----
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: ${cur_images.galeria_medios.data} [in template "12187455#12187494#70520" at line 127, column 65]
----
1#* Plantilla para mostrar el detalle de una construccion *#
2
3#set ($groupLocalService = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService"))
4#set ($group = $groupLocalService.getGroup($groupId))
5#set ($link_twitter = $group.getExpandoBridge().getAttribute("ciudad-fcc-share-twitter"))
6#set ($link_linkedin = $group.getExpandoBridge().getAttribute("ciudad-fcc-share-linkedin"))
7#set ($link_youtube = $group.getExpandoBridge().getAttribute("ciudad-fcc-share-youtube"))
8#set ($link_instagram = $group.getExpandoBridge().getAttribute("ciudad-fcc-share-instagram"))
9
10<script type="text/javascript" src="$themeDisplay.getPathThemeJavaScript()/fcc/jssor.slider.min.js"></script>
11<!-- use jssor.slider.debug.js instead for debug -->
12
13 <div class="main wrapper clearfix">
14 <article>
15 <section>
16 <h2>$reserved-article-title.data</h2>
17
18 #if($opcion_contenido.getData().toLowerCase().equals("value1"))
19 #* Se muestra la imagen del listado *#
20 #if (!$sep_imagen.imagen.data.trim().isEmpty())
21 <img src="$sep_imagen.imagen.data" alt="$sep_imagen.alt_imagen.data" />
22 #end
23 #elseif($opcion_contenido.getData().toLowerCase().equals("value2"))
24 #* Se muestra el video mp4, URL *#
25 <video src="$video_mp4_cabecera.getData()" autoplay loop>
26 </video>
27 #elseif($opcion_contenido.getData().toLowerCase().equals("value3"))
28 #* Se muestra una imagen seleccionada *#
29 <img src="$sep_imagen_cabecera.imagen_cabecera.data" alt="$sep_imagen_cabecera.alt_imagen_cabecera.data" />
30 #elseif($opcion_contenido.getData().toLowerCase().equals("value4"))
31 #* Se muestra carrusel con las imagenes de la galeria de medios *#
32
33 <script>
34 jssor_1_slider_init = function() {
35 var jssor_1_SlideoTransitions = [
36 [{b:0.0,d:600.0,y:-290.0,e:{y:27.0}}],
37 [{b:0.0,d:1000.0,y:185.0},{b:1000.0,d:500.0,o:-1.0},{b:1500.0,d:500.0,o:1.0},{b:2000.0,d:1500.0,r:360.0},{b:3500.0,d:1000.0,rX:30.0},{b:4500.0,d:500.0,rX:-30.0},{b:5000.0,d:1000.0,rY:30.0},{b:6000.0,d:500.0,rY:-30.0},{b:6500.0,d:500.0,sX:1.0},{b:7000.0,d:500.0,sX:-1.0},{b:7500.0,d:500.0,sY:1.0},{b:8000.0,d:500.0,sY:-1.0},{b:8500.0,d:500.0,kX:30.0},{b:9000.0,d:500.0,kX:-30.0},{b:9500.0,d:500.0,kY:30.0},{b:10000.0,d:500.0,kY:-30.0},{b:10500.0,d:500.0,c:{x:87.50,t:-87.50}},{b:11000.0,d:500.0,c:{x:-87.50,t:87.50}}],
38 [{b:0.0,d:600.0,x:410.0,e:{x:27.0}}],
39 [{b:-1.0,d:1.0,o:-1.0},{b:0.0,d:600.0,o:1.0,e:{o:5.0}}],
40 [{b:-1.0,d:1.0,c:{x:175.0,t:-175.0}},{b:0.0,d:800.0,c:{x:-175.0,t:175.0},e:{c:{x:7.0,t:7.0}}}],
41 [{b:-1.0,d:1.0,o:-1.0},{b:0.0,d:600.0,x:-570.0,o:1.0,e:{x:6.0}}],
42 [{b:-1.0,d:1.0,o:-1.0,r:-180.0},{b:0.0,d:800.0,o:1.0,r:180.0,e:{r:7.0}}],
43 [{b:0.0,d:1000.0,y:80.0,e:{y:24.0}},{b:1000.0,d:1100.0,x:570.0,y:170.0,o:-1.0,r:30.0,sX:9.0,sY:9.0,e:{x:2.0,y:6.0,r:1.0,sX:5.0,sY:5.0}}],
44 [{b:2000.0,d:600.0,rY:30.0}],
45 [{b:0.0,d:500.0,x:-105.0},{b:500.0,d:500.0,x:230.0},{b:1000.0,d:500.0,y:-120.0},{b:1500.0,d:500.0,x:-70.0,y:120.0},{b:2600.0,d:500.0,y:-80.0},{b:3100.0,d:900.0,y:160.0,e:{y:24.0}}],
46 [{b:0.0,d:1000.0,o:-0.4,rX:2.0,rY:1.0},{b:1000.0,d:1000.0,rY:1.0},{b:2000.0,d:1000.0,rX:-1.0},{b:3000.0,d:1000.0,rY:-1.0},{b:4000.0,d:1000.0,o:0.4,rX:-1.0,rY:-1.0}]
47 ];
48
49 var jssor_1_options = {
50 $AutoPlay: true,
51 $Idle: 2000,
52 $CaptionSliderOptions: {
53 $Class: $JssorCaptionSlideo$,
54 $Transitions: jssor_1_SlideoTransitions,
55 $Breaks: [
56 [{d:2000,b:1000}]
57 ]
58 },
59 $ArrowNavigatorOptions: {
60 $Class: $JssorArrowNavigator$
61 },
62 $BulletNavigatorOptions: {
63 $Class: $JssorBulletNavigator$
64 }
65 };
66
67 var jssor_1_slider = new $JssorSlider$("jssor_1", jssor_1_options);
68
69 //responsive code begin
70 //you can remove responsive code if you don't want the slider scales while window resizes
71 function ScaleSlider() {
72 var refSize = jssor_1_slider.$Elmt.parentNode.clientWidth;
73 if (refSize) {
74 refSize = Math.min(refSize, 600);
75 jssor_1_slider.$ScaleWidth(refSize);
76 }
77 else {
78 window.setTimeout(ScaleSlider, 30);
79 }
80 }
81 ScaleSlider();
82 $Jssor$.$AddEvent(window, "load", ScaleSlider);
83 $Jssor$.$AddEvent(window, "resize", $Jssor$.$WindowResizeFilter(window, ScaleSlider));
84 $Jssor$.$AddEvent(window, "orientationchange", ScaleSlider);
85 //responsive code end
86 };
87 </script>
88
89 <div id="jssor_1" style="position: relative; margin: 0 auto; top: 0px; left: 0px; width: 572px; height: 380px; overflow: hidden; visibility: hidden;">
90 <!-- Loading Screen -->
91 <div data-u="loading" style="position: absolute; top: 0px; left: 0px;">
92 <div style="filter: alpha(opacity=70); opacity: 0.7; position: absolute; display: block; top: 0px; left: 0px; width: 100%; height: 100%;"></div>
93 <div style="position:absolute;display:block;background:url('img/loading.gif') no-repeat center center;top:0px;left:0px;width:100%;height:100%;"></div>
94 </div>
95 <div data-u="slides" style="cursor: default; position: relative; top: 0px; left: 0px; width: 572px; height: 380px; overflow: hidden;">
96 #if ($sep_galeria_medios.getSiblings() and $sep_galeria_medios.getSiblings().size() > 0)
97 #foreach ($galeria in $sep_galeria_medios.getSiblings())
98 <div data-p="112.50" style="display: none;">
99 <img data-u="image" src="$galeria.galeria_medios.data" alt="$galeria.alt_galeria_medios.data" />
100 </div>
101 #end
102 #end
103 </div>
104 <!-- Bullet Navigator -->
105 <div data-u="navigator" class="jssorb01" style="bottom:16px;right:10px;">
106 <div data-u="prototype" style="width:12px;height:12px;"></div>
107 </div>
108 <!-- Arrow Navigator -->
109 <span data-u="arrowleft" class="jssora02l" style="top:123px;left:8px;width:55px;height:55px;" data-autocenter="2"></span>
110 <span data-u="arrowright" class="jssora02r" style="top:123px;right:8px;width:55px;height:55px;" data-autocenter="2"></span>
111 <a href="http://www.jssor.com" style="display:none">Jssor Slider</a>
112 </div>
113 #elseif($opcion_contenido.getData().toLowerCase().equals("value5"))
114 #* Se muestra un iframe con la url al video *#
115 <div class="videoWrapper">
116 <iframe width="560" height="315" src="$iframe_cabecera.getData()" frameborder="0" allowfullscreen></iframe>
117 </div>
118 #end
119 <!--
120 <section>
121 #if ($sep_galeria_medios.getSiblings().size() > 0)
122 <div id="myCarousel">
123 #foreach($cur_images in $sep_galeria_medios.getSiblings())
124 $cur_images.mimeType
125 #if ($velocityCount == 0)
126 <a href="#">
127 <div style="background: url(${cur_images.galeria_medios.data})width:572px; height:380px;background-size:cover;" class="carousel-item carousel-item-active">
128 </div>
129 </a>
130 #else
131 <a href="#">
132 <div class="carousel-item" style="background: url(${cur_images.galeria_medios.data});width:572px; height:380px;background-size:cover;" >
133 </div>
134 </a>
135 #end
136 #end
137 </div>
138 #end
139 </section>
140 -->
141 <!--
142 <img src="$sep_imagen_video.imagen_video.data" alt="$sep_imagen_video.alt_imagen_video.data" />
143 -->
144
145 #if($subtitulo.data and !$subtitulo.data.empty)
146 <h3>$subtitulo.data</h3>
147 #else
148 <!--<h3>$reserved-article-title.data</h3>-->
149 #end
150
151 #if($descripcion.data and !$descripcion.data.empty)
152 <p>$descripcion.data</p>
153 #end
154
155 <br/>
156
157 #if (!$aspectos_destacados.getSiblings().isEmpty())
158
159 #set($show_ad = false)
160 #foreach ($aspecto_destacado in $aspectos_destacados.getSiblings())
161 #if ($aspecto_destacado.getData() and !$aspecto_destacado.getData().empty)
162 #set($show_ad = true)
163 #end
164 #end
165 #if($show_ad)
166 <h3>$languageUtil.format($locale, "construccion-tpl.aspectos-destacados", 'Aspectos destacados') </h3>
167 #end
168
169 <ul>
170 #foreach ($aspecto_destacado in $aspectos_destacados.getSiblings())
171 #if ($aspecto_destacado.getData() and !$aspecto_destacado.getData().empty)
172 <li>$aspecto_destacado.getData()</li>
173 #end
174 #end
175 </ul>
176 #end
177
178 ## #if ($coste.data != "null")
179 <!-- <p>
180 $languageUtil.format($locale, "construccion-tpl.coste", 'Coste'): <b>$coste.data $languageUtil.format($locale, "construccion-tpl.coste.uds", ' M€')</b>
181 </p> -->
182 ## #end
183
184 #if($cliente.data and !$cliente.data.empty)
185 <p>
186 $languageUtil.format($locale, "construccion-tpl.cliente", 'Cliente'): <b>$cliente.getData()</b>
187 </p>
188 #end
189
190 #if($fecha_inicio.data and !$fecha_inicio.data.empty)
191 <p>
192 $languageUtil.format($locale, "construccion-tpl.fecha-inicio", 'Fecha de inicio'): <b>$fecha_inicio.getData()</b>
193 </p>
194 #end
195
196 #if($fecha_fin.data and !$fecha_fin.data.empty)
197 <p>
198 $languageUtil.format($locale, "construccion-tpl.fecha-fin", 'Fecha de fin'): <b>$fecha_fin.getData()</b>
199 </p>
200 #end
201
202 <div class="compartir">
203 <a href="#">$languageUtil.format($locale, "construccion-tpl.compartir-redes-sociales", 'Compartir en Redes Sociales')»</a>
204 <div class="compartir_inside">
205 <ul class="social">
206 <li>
207 <a href="$link_twitter" class="twitter" title="$languageUtil.format($locale, "construccion-tpl.siguenos-en-twitter", 'Siguenos en Twitter (Se abre en una nueva ventana)')" target="_blank">$languageUtil.format($locale, "construccion-tpl.twitter", 'Twitter')</a>
208 </li>
209 <li>
210 <a href="$link_linkedin" class="linkedin" title="$languageUtil.format($locale, "construccion-tpl.siguenos-en-linkedin", 'Siguenos en LinkedIn (Se abre en una nueva ventana)')" target="_blank">$languageUtil.format($locale, "construccion-tpl.linkedin", 'LinkedIn')</a>
211 </li>
212 <li>
213 <a href="$link_youtube" class="youtube" title="$languageUtil.format($locale, "construccion-tpl.siguenos-en-youtube", 'Siguenos en Youtube (Se abre en una nueva ventana)')" target="_blank">$languageUtil.format($locale, "construccion-tpl.youtube", 'Youtube')</a>
214 </li>
215 <li>
216 <a href="$link_instagram" class="instagram" title="$languageUtil.format($locale, "construccion-tpl.siguenos-en-instagram", 'Siguenos en Youtube (Se abre en una nueva ventana)')" target="_blank">$languageUtil.format($locale, "construccion-tpl.instagram", 'Instagram')</a>
217 </li>
218 </ul>
219 </div>
220 </div>
221 </section>
222 </article>
223 <aside>
224 <section class="map">
225 #if ($localizacion.data and $localizacion.data != "")
226 <h3>$languageUtil.format($locale, "construccion-tpl.localizacion", 'Localización') </h3>
227 <iframe src="$localizacion.data" width="318" height="152" frameborder="0" style="border:0" allowfullscreen></iframe>
228 #end
229 </section>
230 <section id="myGallery" class="gallery">
231 #if ($sep_galeria_medios.getSiblings() and $sep_galeria_medios.getSiblings().size() > 0)
232 <h3>$languageUtil.format($locale, "construccion-tpl.galeria-de-medios", 'Galería de medios') </h3>
233 <ul>
234 #foreach ($galeria in $sep_galeria_medios.getSiblings())
235 #if (!$galeria.galeria_medios.data.trim().isEmpty())
236 <li>
237 #if ($galeria.galeria_medios.data.contains('.tif/') || $galeria.galeria_medios.data.contains('.TIF/'))
238 <a title="#language_format ("show-x", [$galeria.alt_galeria_medios.data])" href="$galeria.galeria_medios.data&imageThumbnail=1" target="_blank">
239 <img src="$galeria.galeria_medios.data&imageThumbnail=1" alt="$galeria.alt_galeria_medios.data"/>
240 </a>
241 #else
242 <a title="#language_format ("show-x", [$galeria.alt_galeria_medios.data])" href="$galeria.galeria_medios.data" target="_blank">
243 <img src="$galeria.galeria_medios.data" alt="$galeria.alt_galeria_medios.data"/>
244 </a>
245 #end
246 </li>
247 #end
248 #end
249 </ul>
250 #end
251 </section>
252 </aside>
253 </div>
254 <!-- #main -->
255
256<!-- #main-container -->
257<!--
258<script>
259 AUI({ filter: 'raw' }).use('aui-carousel', function(A) {
260 new A.Carousel({
261 intervalTime:3,
262 contentBox: '#myCarousel',
263 activeIndex:0,
264 height:380,
265 width:572
266 }).render();
267 });
268</script>
269-->
270
271<script>
272 AUI().use(
273 'aui-image-viewer',
274 function(Y) {
275 new Y.ImageViewer(
276 {
277 caption: '',
278 captionFromTitle: true,
279 centered: true,
280 imageAnim: {
281 duration: 1,
282 easing: 'easeIn'
283 },
284 intervalTime: 2,
285 links: '#myGallery a',
286 maxWidth: 600,
287 playing: true,
288 preloadAllImages: true,
289 preloadNeighborImages: true,
290 showInfo: true,
291 showPlayer: true,
292 zIndex: 1000
293 }
294 ).render();
295 }
296 );
297</script>
298
299#if($opcion_contenido.getData().toLowerCase().equals("value4"))
300 <script>
301 jssor_1_slider_init();
302 </script>
303#end