Atrás

Feria del burro en Lazkao

Se ha producido un error al procesar la plantilla.
Expression Info_Adicional is undefined on line 212, column 10 in 20907#20945#723408.
1<#assign PortalUtil = staticUtil["com.liferay.portal.util.PortalUtil"] /> 
2<#assign serviceContext = staticUtil["com.liferay.portal.service.ServiceContextThreadLocal"].getServiceContext()> 
3<#assign httpServletRequest = serviceContext.getRequest()> 
4<#if .vars['keywords']??> 
5    <#assign kWords = .vars['keywords'].getData()> 
6<#else> 
7    <#assign kWords = ""> 
8</#if> 
9${PortalUtil.addPageKeywords(kWords, httpServletRequest)} 
10 
11<#include "${templatesPath}/1980550" /> 
12 
13<#assign journalArticleId = .vars['reserved-article-id'].data> 
14<#assign journalArticleTitle = .vars['reserved-article-title'].data> 
15<#assign journalArticleResourceLocalServiceUtil = staticUtil["com.liferay.portlet.journal.service.JournalArticleResourceLocalServiceUtil"]> 
16<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService")> 
17<#assign DDMStructureLocalService = serviceLocator.findService("com.liferay.portlet.dynamicdatamapping.service.DDMStructureLocalService")> 
18<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService")> 
19<#assign assetEntryQueryService = objectUtil('com.liferay.portlet.asset.service.AssetEntryLocalServiceUtil')> 
20 
21<#assign assetVocabularyLocalServiceUtil = staticUtil["com.liferay.portlet.asset.service.AssetVocabularyLocalServiceUtil"]> 
22<#assign assetCategoryLocalServiceUtil = staticUtil["com.liferay.portlet.asset.service.AssetCategoryLocalServiceUtil"]> 
23<#assign assetCategoryPropertyService = objectUtil('com.liferay.portlet.asset.service.AssetCategoryPropertyLocalServiceUtil')> 
24 
25<#assign journalArticleId = .vars['reserved-article-id'].data> 
26<#assign currentJournalArticle = journalArticleLocalService.getArticle(groupId, journalArticleId) /> 
27<#assign articleResourcePK = journalArticleResourceLocalServiceUtil.getArticleResourcePrimKey(groupId, journalArticleId)/> 
28<#assign categoryList = assetCategoryLocalServiceUtil.getCategories("com.liferay.portlet.journal.model.JournalArticle",articleResourcePK) > 
29 
30<#assign currentDestinationCategory = "" > 
31<#assign currentActivityCategory = "" > 
32<#if categoryList?has_content> 
33    <#list categoryList as category> 
34        <#if category.getVocabularyId()?string == vocabularyActivity> 
35            <#assign currentActivityCategory = category.getCategoryId() > 
36        </#if> 
37        <#if category.getVocabularyId()?string == vocabularyDestination> 
38            <#assign currentDestinationCategory = category.getCategoryId() > 
39        </#if> 
40 
41    </#list> 
42     
43</#if> 
44<#if currentDestinationCategory?string!=""> 
45<#assign destination = assetCategoryLocalServiceUtil.getAssetCategory(getterUtil.getLong(currentDestinationCategory))> 
46</#if> 
47 
48	<div class="mw9 center relative"> 
49		<div class="aspect-ratio aspect-ratio--1x1 aspect-ratio--21x9-ns"> 
50			<img src="${head_image.getData()}" class="w-100 w-75-ns h-100 of-cover aspect-ratio--object" alt=""> 
51			<a href="#" class="open-map db dn-ns absolute right-0 bottom-0 pv3 ph4 ttu tracked-mega f5 fw7 z-999 link bg-white black">Mapa</a> 
52		</div> 
53    	<div id="map-holder" class="map-holder fixed absolute-ns bg-white absolute--fill left-inherit-ns z-max z-999-ns dn db-ns w-25-ns"> 
54    		<div class="dn-ns ph3 ph5-ns w-100"> 
55    			<div class="w-100 h3 flex items-center bb b--gray"> 
56    				<div class="w-100 tc"> 
57    					<span class="f4 fw7">${.vars['reserved-article-title'].data}</span> 
58    				</div> 
59    				<span class="menu-close absolute right-1 db ico-close-black"></span> 
60    			</div> 
61    		</div> 
62    		<div id="map" class="w-100 h-100"></div> 
63    	</div> 
64	</div> 
65	<div class="ph3 ph5-ns mb5 mb6-ns"> 
66		<div class="mw9 center"> 
67			<div class="pt4 pb3 mb4 mb6-ns bb b--light-gray"> 
68				<div class="flex"> 
69					<div class="lh-copy pr5"> 
70                        <#if currentDestinationCategory?string!=""> 
71						<div class="f7 fw3 ttu tracked-mega mb2">${destination.getTitle(locale)}</div> 
72                        </#if> 
73						<h1 class="f3 f-5-ns fw7 ma0 lh-title">${.vars['reserved-article-title'].data}</h1> 
74						<div class="f5 f3-ns lh-copy"> 
75                        <#if Descripcion_corta??> 
76							<p>${Descripcion_corta.getData()}</p> 
77                        </#if> 
78						</div> 
79					</div> 
80                    <div> 
81                    	<ul class="list ma0 pa0"> 
82                	        <#assign currentCompleteUrl = request['scheme'] + "://" + request['server-name'] + request['attributes']['CURRENT_URL']> 
83                            <#assign portalURL = httpUtil.getProtocol(request['attributes']['CURRENT_URL']) + "://" + getterUtil.getString(request['theme-display']['portal-url']) /> 
84                            <#assign currentCompleteUrlHREF = htmlUtil.escapeHREF(currentCompleteUrl) /> 
85                    		<li class="mb4"><a href="https://www.facebook.com/sharer/sharer.php?u=${currentCompleteUrlHREF}&t=${.vars['reserved-article-title'].data}" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank" title="Compartir en Facebook"><span class="ico-facebook-color db"></span></a></li> 
86                    	 
87                    		<li class="mb4"><a href="https://twitter.com/share?url=${currentCompleteUrlHREF}&text=${.vars['reserved-article-title'].data}" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank" title="Compartir en Twitter"><span class="ico-twitter-color db"></span></a></li> 
88                    	 
89                    		<li><a href="whatsapp://send?text=${currentCompleteUrlHREF}" data-action="share/whatsapp/share" onClick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=300,width=600');return false;" target="_blank" title="Compartir en Whatsapp"><span class="ico-whatsapp-color db"></span></a></li> 
90                    	</ul> 
91                    </div>				 
92                </div> 
93			</div> 
94		</div> 
95	</div> 
96	<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB2KTr5g5u7QYIOX5NyMexHFcrpdX7McUY&callback=initMap"></script> 
97	<script> 
98		function initMap() { 
99			var myLatLng = {lat: ${latitude.getData()}, lng: ${longitude.getData()}}; 
100		 
101			var map = new google.maps.Map(document.getElementById('map'), { 
102				zoom: 16, 
103				center: myLatLng, 
104				disableDefaultUI: true, 
105				styles: [ 
106
107				        "featureType": "administrative", 
108				        "elementType": "labels.text.fill", 
109				        "stylers": [ 
110
111				                "color": "#444444" 
112
113
114				    }, 
115
116				        "featureType": "landscape", 
117				        "elementType": "all", 
118				        "stylers": [ 
119
120				                "color": "#f2f2f2" 
121
122
123				    }, 
124
125				        "featureType": "poi", 
126				        "elementType": "all", 
127				        "stylers": [ 
128
129				                "visibility": "off" 
130
131
132				    }, 
133
134				        "featureType": "road", 
135				        "elementType": "all", 
136				        "stylers": [ 
137
138				                "saturation": -100 
139				            }, 
140
141				                "lightness": 45 
142
143
144				    }, 
145
146				        "featureType": "road.highway", 
147				        "elementType": "all", 
148				        "stylers": [ 
149
150				                "visibility": "simplified" 
151
152
153				    }, 
154
155				        "featureType": "road.arterial", 
156				        "elementType": "labels.icon", 
157				        "stylers": [ 
158
159				                "visibility": "off" 
160
161
162				    }, 
163
164				        "featureType": "transit", 
165				        "elementType": "all", 
166				        "stylers": [ 
167
168				                "visibility": "off" 
169
170
171				    }, 
172
173				        "featureType": "water", 
174				        "elementType": "all", 
175				        "stylers": [ 
176
177				                "color": "#ffffff" 
178				            }, 
179
180				                "visibility": "on" 
181
182
183
184
185			}); 
186			 
187			var marker = new google.maps.Marker({ 
188				position: myLatLng, 
189				map: map, 
190				title: '${.vars['reserved-article-title'].data}', 
191				icon: { 
192			        path: google.maps.SymbolPath.CIRCLE, 
193			        scale: 8.5, 
194			        fillColor: "#000", 
195			        fillOpacity: 1, 
196			        strokeWeight: 1 
197			    }, 
198			}); 
199
200	</script> 
201	 
202	<div class="ph3 ph5-ns mb5 mb6-ns"> 
203    	<div class="mw9 center"> 
204    		<div class="mw8"> 
205    			<div class="f5 f3-ns fw6 lh-copy-2"> 
206    			    ${description.getData()} 
207    			</div> 
208    		</div> 
209    	</div> 
210    </div> 
211    <#assign hasItems = false /> 
212    <#if Info_Adicional.getSiblings()?has_content> 
213    	<#list Info_Adicional.getSiblings() as cur_item> 
214        	<#if cur_item.Epoca_Ideal.getData()?? && cur_item.Epoca_Ideal.getData() != ''> 
215        	    <#assign hasItems = true /> 
216        	</#if> 
217    	</#list> 
218	</#if> 
219    <#if hasItems> 
220    	<#list Info_Adicional.getSiblings() as cur_item> 
221        	<div class="ph3 ph5-ns mb5 mb6-ns"> 
222        		<div class="mw9 center"> 
223        			<div> 
224        				<h2 class="ma0 mb3"> 
225        					<span class="f7 fw3 ttu tracked-mega mb2">${cur_item.Epoca_Ideal.getData()}</span> 
226        					<span class="db f3 f1 fw7 ma0">${cur_item.Pretitulo.getData()}</span> 
227        				</h2> 
228        			</div> 
229        			<div class="f6 f4-ns lh-copy"> 
230        				<p>${cur_item.Descripcion_Epoca_IDeal.getData()}</p> 
231        			</div> 
232        		</div> 
233        	</div> 
234        	<#if cur_item.Imagen_Epoca_Ideal.getData()?? && cur_item.Imagen_Epoca_Ideal.getData() != ''> 
235        	<div class="mw8 center mb5 mb6-ns"> 
236            	<div class="aspect-ratio aspect-ratio--16x9"> 
237            		<img src="${cur_item.Imagen_Epoca_Ideal.getData()}" class="aspect-ratio--object of-cover" alt=""> 
238            		${cur_item.Ubicacion.getData()} 
239            	</div> 
240            </div> 
241            </#if> 
242    	</#list> 
243    </#if> 
244 
245    <#assign enlaces_interes = "<span class='f7 ttu tracked-mega'>Esteka</span> <span class='f2 fw7 db ttc'>interesgarriak</span>"> 
246    <#if locale.getLanguage() == "es" > 
247        <#assign enlaces_interes = "<span class='f7 ttu tracked-mega'>Enlaces de</span> <span class='f2 fw7 db ttc'>interés</span>"> 
248    </#if> 
249    <#if locale.getLanguage() == "fr" > 
250        <#assign enlaces_interes = "<span class='f7 ttu tracked-mega'>Liens</span> <span class='f2 fw7 db ttc'>d'intérêt</span>"> 
251    </#if> 
252    <#if locale.getLanguage() == "en" > 
253        <#assign enlaces_interes = "<span class='f7 ttu tracked-mega'>Links of</span> <span class='f2 fw7 db ttc'>interest</span>"> 
254    </#if> 
255     
256    <#assign hasItems = false /> 
257	<#list link_text.getSiblings() as cur_item> 
258    	<#if cur_item.getData()?? && cur_item.getData() != ''> 
259    	    <#assign hasItems = true /> 
260    	</#if> 
261	</#list> 
262    <#if link_text.getSiblings()?has_content && hasItems> 
263    <section class="mb5 mb6-ns"> 
264    	<div class="ph3 ph5-ns"> 
265    		<div class="mw9 center"> 
266    			<div class="mb4"> 
267    				<h2 class="ma0 fw3">${enlaces_interes}</h2> 
268    			</div> 
269    			<ul class="list arrow-list ma0 pa0"> 
270                	<#list link_text.getSiblings() as cur_link_text> 
271                        <li class="mb3"><a href="${cur_link_text.link_url.getData()}" target="_blank" class="link black">${cur_link_text.getData()}</a></li> 
272                	</#list> 
273    			</ul> 
274    		</div> 
275    	</div> 
276    </section> 
277    </#if> 
278    <#if Evento?? &&  Evento?has_content &&  Evento.getData()?has_content> 
279	<section class="mb5 mb6-ns"> 
280		<div class="pt5 pb6 ph3 ph5-ns cover relative" style="background-image: url('${Evento.Imagen_Fondo_Evento.getData()}');"> 
281			<span class="db absolute absolute--fill white-gradient-ltr o-60"></span> 
282			<div class="mw9 center relative z-1"> 
283				<div class="mw4 mw5-ns"> 
284					<div class="f7 fw3 ttu tracked-mega mb2"><abbr title="Febrero">${Evento.Epoca.getData()}</abbr></div> 
285					<h2 class="f5 f2-ns fw7 ma0">${Evento.Actividad.getData()}</h2> 
286					<div class="f6 f5-ns lh-copy"> 
287						<p>${Evento.Descripcion_Evento.getData()}</p> 
288					</div> 
289				</div> 
290			</div> 
291		</div> 
292		 
293		<div class="ph3 ph5-ns nt5"> 
294			<div class="mw9 center"> 
295				<div class="pl5 relative"> 
296					<div class="absolute top-0 left-0 nt5 nl2 rotate--180"> 
297						<div class="fw7 f2">${Evento.Descripcion_Evento.getData()}</div> 
298					</div> 
299					<div class="mw8 center mb4"> 
300                    	<div class="aspect-ratio aspect-ratio--16x9"> 
301                    		<img src="${Evento.Imagen_Evento.getData()}" class="aspect-ratio--object of-cover" alt=""> 
302                    	</div> 
303                    </div> 
304 
305					<blockquote class="tweet green pa0 ma0"> 
306						<div class="text f4 fw7 lh-copy pb3 mb3	bb b--light-gray pr4"> 
307							<p class="ma0">${Evento.Testimonio.getData()}</p> 
308						</div> 
309						<div class="author f6"><span class="fw6">${Evento.Nombre.getData()}</span> · ${Evento.Profesion.getData()}</div> 
310					</blockquote> 
311				</div> 
312			</div> 
313		</div> 
314	</section> 
315    </#if> 
316    <#assign instagramQuery = objectUtil('com.liferay.portlet.asset.service.persistence.AssetEntryQuery')> 
317    <#assign V = instagramQuery.setGroupIds([groupId]) /> 
318    <#assign V = instagramQuery.setClassTypeIds([getterUtil.getLong(experienceStrId)]) /> 
319    <#if currentDestinationCategory?string!=""> 
320    <#assign V = instagramQuery.setAllCategoryIds([currentDestinationCategory]) /> 
321    </#if> 
322    <#assign V = instagramQuery.setStart(-1)/> 
323    <#assign V = instagramQuery.setEnd(-1)/> 
324    <#assign instagram_posts = assetEntryQueryService.getEntries(instagramQuery)> 
325    <#if instagram_posts?has_content> 
326    <div class="ph3 ph5-ns mb5 mb6-ns"> 
327    	<div class="mw9 center"> 
328    		<div class="mb4"> 
329    			<div class="f7 fw3 ttu tracked-mega mb2"><a href="https://www.instagram.com/explore/tags/gipuzkoa/" class="link black" target="_blank" rel="noopener noreferrer">#Gipuzkoa</a></div> 
330    			<div class="f3 f2-ns fw7 ma0"><a href="https://www.instagram.com/gipuzkoaturismoa/" class="link black" target="_blank" rel="noopener noreferrer">@GipuzkoaTurismoa</a></div> 
331    		</div> 
332    		<div class="flex flex-wrap nl2 nr2"> 
333                <#assign cont = 0 /> 
334    			<#list instagram_posts as curEntry> 
335    				<#assign docXml = saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContentByLocale(locale)) /> 
336    				<#assign url = docXml.valueOf("//dynamic-element[@name='URL']/dynamic-content/text()") /> 
337    				<#assign ubicacion = docXml.valueOf("//dynamic-element[@name='Ubicacion']/dynamic-content/text()") /> 
338    				<#assign autor = docXml.valueOf("//dynamic-element[@name='Autor']/dynamic-content/text()") /> 
339    				<#assign origen = docXml.valueOf("//dynamic-element[@name='Origen']/dynamic-content/text()") /> 
340     
341                    <#if origen=="instagram" && (cont<4) > 
342        			<article class="w-50 w-25-ns ph2 relative mb3 mb0-ns"> 
343        				<div class="aspect-ratio aspect-ratio--1x1"> 
344        					<img id="instagram_image${cont}" src="" class="aspect-ratio--object" alt=""> 
345        					<span class="absolute absolute--fill black-gradient-btt z-999 o-60"></span> 
346        					<div class="white f7 absolute z-999 right-1 bottom-1 left-1"> 
347        						<ul class="list ma0 pa0"> 
348        							<li class="mb2"><span class="dib ico-instagram-white mr2"></span>${autor}</li> 
349        							<li><span class="dib ico-location-white small mr2"></span>${ubicacion}</li> 
350        						</ul> 
351        					</div> 
352        					<a id="instagram_url${cont}" href="#" class="db absolute absolute--fill z-999" target="_blank" rel="noopener noreferrer"><span class="clip">Ver imagen en Instagram</span></a> 
353        				</div> 
354        			</article> 
355        			<script> 
356                        fetch('${url}') 
357                            .then(res => { 
358                               return res.text(); 
359                            }).then(html => { 
360                                const parser = new DOMParser(); 
361                                const doc = parser.parseFromString(html, "text/html"); 
362                                const metas=doc.head.querySelectorAll("[property]"); 
363                                for(let meta of metas){ 
364                                    if(meta.getAttribute("property")=="og:url"){ 
365                                        document.getElementById("instagram_url${cont}").href=meta.getAttribute("content") 
366
367                                    else if(meta.getAttribute("property")=="og:image"){ 
368                                        document.getElementById("instagram_image${cont}").src=meta.getAttribute("content") 
369
370                                    else if(meta.getAttribute("property")=="og:title"){ 
371                                         
372
373
374                                /*const ldjson=JSON.parse(doc.head.querySelectorAll("[type~='application/ld+json']")[0].innerText); 
375                                document.getElementById("instagram_author${cont}").innerHTML=ldjson.author.alternateName 
376                                if(ldjson.contentLocation.name){ 
377                                    document.getElementById("instagram_location${cont}").innerHTML=ldjson.contentLocation.name 
378
379                                else{ 
380                                    document.getElementById("instagram_location${cont}").classList.add("hidden") 
381                                }*/ 
382                                 
383                            }).catch(err => {   
384                                console.log('Failed to fetch page: ', err);   
385                            }); 
386                    </script> 
387                    <#assign cont = cont + 1 /> 
388                    </#if> 
389            	</#list> 
390    		</div> 
391        </div> 
392    </div> 
393    </#if>