• HARA! HEMEN DA UDA!

    HARA!
    HEMEN DA UDA!

    Jaiak, musika jaialdiak, erakusketak, antzerkia... Astero, Gipuzkoan gozatzeko plan berriak.

    Sartu
  • Sara Alonso On Tour

    Sara Alonso On Tour

    Diberti zaitez Gipuzkoan barrena gure mendi korrikalari internazionalenarekin. Jarri zapatilak eta sakatu play!

    Sartu
  • Bizitzeko Gipuzkoa

    Bizitzeko Gipuzkoa

    Bost istorio pertsonal eta bost esperientzia paregabe Gipuzkoa modu ezberdin batean gozatzeko.

    Sartu
Jarraitu irakurtzen
 

 

Gipuzkoako Top 10

Europako hizkuntza zaharrenari eusten dion historiaz harro eta abangoardien sortzaile, Gipuzkoak lurralde berezia eta kosmopolita eta, batez ere, benetakoa eskaintzen du.

Zarautz
Gipuzkoako itsasertzeko hondartzarik luzeena eta askoz ere gehiago
Gehiago ikusi
Hondarribia
Itsas zaporea duen harresidun hiria,
Gehiago ikusi
Geoparkea
Itsasora erortzen diren itsaslabarren eta historiaurretik bizileku izan diren haran berdeen artean.
Gehiago ikusi
Chillida Leku
Artearen eta naturaren arteko fusioa.
Gehiago ikusi
Loiola
Artea eta espiritualtasuna Gipuzkoaren bihotzean.
Gehiago ikusi
Txotx!
Bisitaldia eta dastatzea sagardotegi batean.
Gehiago ikusi
Arantzazu
Arantzazuko Santutegia eta Aizkorri-Aratz Parke Naturala, ohiz kanpoko ingurune natural bat.
Gehiago ikusi
Getaria
Elkanoren eta txakolinaren jaioterrian.
Gehiago ikusi
Pasaia
Albaola, Itsas Kultur Faktoria eta Pasaiako badia, Gipuzkoako itsas ondarea.
Gehiago ikusi
Aralar
Idiazabal gazta eta Tolosako eta Ordiziako merkatu tradizionalak
Gehiago ikusi
  • Donostia

    Kontxako badiara joan, eta pintxo ibilbiderik onenez gozatu.

    Donostia ezagutu

AUKERATU ZURE PLANA

Nola egingo diguzu bisita?
Noiz egingo diguzu bisita?
Gaia
Nola egingo diguzu bisita?
Noiz egingo diguzu bisita?
Gaia
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> nombresMesesPorIdioma[idioma]  [in template "20907#20945#44309718" at line 149, column 51]

----
Tip: It's the final [] step 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 nombresMeses = nombresMesesPo...  [in template "20907#20945#44309718" in function "obtenerNombreMes" at line 149, column 27]
	- Reached through: ${obtenerNombreMes(numeroMes, idioma)}  [in template "20907#20945#44309718" in macro "imprimirFecha" at line 165, column 27]
	- Reached through: @imprimirFecha fecha=fechaInicio idio...  [in template "20907#20945#44309718" at line 210, column 69]
----
1<#assign images_folder=themeDisplay.getPathThemeImages() /> 
2<#assign DLFileEntryLocalService=serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService") /> 
3<#assign dlAppServiceUtil=staticUtil["com.liferay.document.library.kernel.service.DLAppServiceUtil"] /> 
4 
5<#assign AssetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]> 
6<#assign titulo = "AGENDA" /> 
7<#if locale.getLanguage()=='es'> 
8 
9    <#assign formato_idioma="dd/MM/yyyy"> 
10    <#assign direccion="evento"> 
11<#else> 
12    <#assign formato_idioma="yyyy/MM/dd"> 
13    <#assign direccion="ekitaldia"> 
14 
15</#if> 
16 
17<#assign BuscadorAgendaService = serviceLocator.findService("net.izfe.gipuzkoa.agenda.buscador.api.BuscadorAgendaService") /> 
18 
19<!-- OBTENER NÚMERO DE ELEMENTOS A MOSTRAR SEGÚN LA CONF DEL PUBLICADOR --> 
20<#assign delta = 6 /> 
21<#assign categoriasAssetPublisher = [] /> 
22<#assign groupIds = [] /> 
23 
24 
25<#if portletPreferences?has_content> 
26	 
27	<#if portletPreferences["delta"]?has_content> 
28		<#assign values = portletPreferences["delta"] /> 
29		<#if values?has_content> 
30			<#list values as value> 
31				<#assign delta =  value> 
32			</#list>   
33		</#if> 
34    </#if> 
35	<#if portletPreferences["scopeIds"]?has_content> 
36		<#list portletPreferences["scopeIds"] as scopeId > 
37			<#assign groupId = assetPublisherHelper.getGroupIdFromScopeId(scopeId, themeDisplay.getSiteGroupId(), false)/> 
38			<#assign groupIds += [groupId] /> 
39		</#list> 
40    </#if> 
41 
42    <#if portletPreferences["queryValues0"]?has_content > 
43        <#assign categoriasAssetPublisherPreferences = portletPreferences["queryValues0"] /> 
44         
45        <#list categoriasAssetPublisherPreferences as categoriaAP > 
46 
47            <#attempt>             
48                <#if AssetCategoryLocalServiceUtil.fetchCategory(categoriaAP?number)?has_content > 
49                    <#assign categoriasAssetPublisher += [categoriaAP?number] /> 
50                </#if>   
51            <#recover> 
52 
53            </#attempt> 
54        </#list> 
55 
56    </#if> 
57     
58</#if> 
59 
60<#assign eventos = BuscadorAgendaService.listaProximosEventos(themeDisplay.getCompanyId(), themeDisplay.getLocale(), themeDisplay.getPortalURL(), categoriasAssetPublisher, delta?number, groupIds) /> 
61<#--  <#assign eventos = BuscadorAgendaService.getProximosEventos(themeDisplay.getCompanyId(), categoriasAssetPublisher, delta?number, groupIds) />--> 
62 
63<#assign totEventos=eventos?size> 
64 
65<head> 
66    <link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.css" /> 
67</head> 
68 
69<div id="izfe-agenda-carousel" class="mt-12 pt-4 pb-4 izfe-bg-blue-dark"> 
70    <div class="container "> 
71        <div class="row"> 
72            <div class="col-12 animate-home__intro mb-4"> 
73                <h2> 
74                    <svg xmlns="http://www.w3.org/2000/svg" width="70.94" height="70.94" viewBox="0 0 70.94 70.94"> 
75                        <g id="Grupo_1" data-name="Grupo 1" transform="translate(-822 -322)"> 
76                          <path id="Trazado_2" data-name="Trazado 2" d="M53.05,54.541H17.89a2.686,2.686,0,0,1-2.682-2.684V23.433a2.687,2.687,0,0,1,2.682-2.686h6.435V16.9a.5.5,0,0,1,1,0v3.85H45.614v-3.44a.5.5,0,0,1,1,0v3.44H53.05a2.688,2.688,0,0,1,2.682,2.686V51.857a2.687,2.687,0,0,1-2.682,2.684M16.208,28.525V51.857a1.685,1.685,0,0,0,1.682,1.684H53.05a1.685,1.685,0,0,0,1.682-1.684V28.525Zm0-1H54.732V23.433a1.685,1.685,0,0,0-1.682-1.686H46.614v2.519a.5.5,0,1,1-1,0V21.747H25.325v2.109a.5.5,0,0,1-1,0V21.747H17.89a1.685,1.685,0,0,0-1.682,1.686ZM48.789,48.284H46.061a.5.5,0,0,1,0-1h2.728a.5.5,0,0,1,0,1m-8.184,0H37.877a.5.5,0,0,1,0-1H40.6a.5.5,0,0,1,0,1m-8.184,0H29.693a.5.5,0,1,1,0-1h2.728a.5.5,0,0,1,0,1m-8.185,0H21.508a.5.5,0,0,1,0-1h2.728a.5.5,0,1,1,0,1M48.789,41.73H46.061a.5.5,0,0,1,0-1h2.728a.5.5,0,0,1,0,1m-8.184,0H37.877a.5.5,0,0,1,0-1H40.6a.5.5,0,0,1,0,1m-8.184,0H29.693a.5.5,0,0,1,0-1h2.728a.5.5,0,0,1,0,1m-8.185,0H21.508a.5.5,0,1,1,0-1h2.728a.5.5,0,0,1,0,1m24.553-6.556H46.061a.5.5,0,0,1,0-1h2.728a.5.5,0,0,1,0,1m-8.184,0H37.877a.5.5,0,0,1,0-1H40.6a.5.5,0,0,1,0,1m-8.184,0H29.693a.5.5,0,0,1,0-1h2.728a.5.5,0,0,1,0,1m-8.185,0H21.508a.5.5,0,1,1,0-1h2.728a.5.5,0,0,1,0,1" transform="translate(822 322)" fill="#fff"/> 
77                          <path id="Trazado_3" data-name="Trazado 3" d="M35.47,70.94A35.47,35.47,0,1,1,70.94,35.471,35.51,35.51,0,0,1,35.47,70.94m0-70.5A35.034,35.034,0,1,0,70.5,35.471,35.074,35.074,0,0,0,35.47.436" transform="translate(822 322)" fill="#fff"/> 
78                        </g> 
79                      </svg> 
80                       
81                   
82                    <span>${titulo}</span> 
83                </h2> 
84            </div> 
85        </div> 
86        <#if eventos?has_content> 
87            <div class="swiper mySwiper"> 
88                <div class="swiper-wrapper"> 
89                    <#list eventos as evento> 
90                        <#assign izena = evento.title /> 
91 
92                        <#assign imagen = "" /> 
93                        <#if evento.imagenPath?has_content > 
94                            <#assign imagen = evento.imagenPath /> 
95                        </#if> 
96 
97                        <#assign localizacion = "" /> 
98                        <#if evento.localizacion?has_content > 
99                            <#assign localizacion = evento.localizacion /> 
100                        </#if> 
101 
102                         
103                        <#attempt> 
104                            <#assign fechaInicio = evento.getStartDate() /> 
105                            <#assign fechaInicio = BuscadorAgendaService.formatearFechaPorIdioma(fechaInicio, themeDisplay.getLanguageId()) /> 
106                        <#recover> 
107                            <#assign fechaInicio = "" /> 
108                        </#attempt> 
109                         
110                            
111                        <#attempt> 
112                            <#assign fechaFin = evento.getEndDate() /> 
113                            <#assign fechaFin = BuscadorAgendaService.formatearFechaPorIdioma(fechaFin, themeDisplay.getLanguageId()) /> 
114                        <#recover> 
115                            <#assign fechaFin = "" /> 
116                        </#attempt> 
117 
118 
119                        <#attempt> 
120                            <#assign horaInicio = evento.getStartOnlyTime() /> 
121                        <#recover> 
122                            <#assign horaInicio = "" /> 
123                        </#attempt> 
124 
125                        <#attempt> 
126                            <#assign horaFin = evento.getEndOnlyTime() /> 
127                        <#recover> 
128                            <#assign horaFin = "" /> 
129                        </#attempt> 
130 
131 
132                         
133                        <#if locale.getLanguage()=='es'> 
134                            <#assign urlEvento="/actualidad/agenda/"+direccion+"?entryId="+ evento.calendarBookingId /> 
135                        <#else> 
136                            <#assign urlEvento="/aktualitatea/agenda/"+direccion+"?entryId="+ evento.calendarBookingId /> 
137                        </#if> 
138 
139                        <#assign esIdiomaEuskera = themeDisplay.getLanguageId() == "eu_ES"> 
140 
141                        <#function obtenerNombreMes(numeroMes, idioma)> 
142                          <#assign nombresMesesPorIdioma = { 
143                            "es_ES": ["ene", "feb", "mar", "abr", "may", "jun", "jul", "ago", "sep", "oct", "nov", "dic"], 
144                            "en_US": ["jan", "feb", "mar", "apr", "May", "jun", "jul", "aug", "sep", "oct", "nov", "dec"], 
145                            "eu_ES": ["urt", "ots", "mar", "api", "mai", "eka", "uzt", "abu", "ira", "urr", "aza", "abe"], 
146                            "fr_FR": ["jan", "fév", "mar", "avr", "mai", "jui", "jui", "aoû", "sep", "oct", "nov", "déc"] 
147                          }> 
148 
149                          <#assign nombresMeses = nombresMesesPorIdioma[idioma]> 
150 
151                          <#return nombresMeses[numeroMes?number - 1]> 
152                        </#function> 
153 
154                        <#macro imprimirFecha fecha idioma> 
155                          <#assign partesFecha = fecha?split("/")> 
156 
157                          <#if esIdiomaEuskera> 
158                            <#assign dia = partesFecha[2]?trim /> 
159                          <#else> 
160                            <#assign dia = partesFecha[0]?trim /> 
161                          </#if> 
162                          <#assign numeroMes = partesFecha[1]?trim /> 
163                          <#assign anio = partesFecha[2]?trim /> 
164 
165                          ${obtenerNombreMes(numeroMes, idioma)}. ${dia} 
166                        </#macro> 
167 
168                        <div class="swiper-slide"> 
169                            <div class="pad15"> 
170                                <div class="imagebox"> 
171                                    <div class="izfe-evento-item-link d-block bg-white text-blue-dark h-100 m-0"> 
172                                        <div class="izfe-evento-item row m-0">	 
173                                            <div class="izfe-evento-item-imagen"> 
174                                                 
175                                                <a  
176                                                    class="d-flex w-100 justify-content-center"  
177                                                    aria-label='${evento.getTitle()?replace('"',' ')}'	 
178                                                    href="${urlEvento}" 
179
180                                                    <#if imagen != "" > 
181                                                        <img  
182                                                            alt="${evento.getTitle()?replace('"',' ')}"  
183                                                            title="${evento.getTitle()?replace('"',' ')}" 
184                                                            class="izfe-agenda-carousel-img" 
185                                                            src="${imagen}" 
186                                                        /> 
187                                                    <#else> 
188                                                        <img  
189                                                            alt="img-not-found" 
190                                                            title="img-not-found" 
191                                                            class="izfe-agenda-carousel-img" 
192                                                            src="${images_folder}/izfe/img-not-found.png"  
193                                                        /> 
194                                                    </#if> 
195                                                </a> 
196                                            </div> 
197                                            <div class="izfe-evento-item-txt"> 
198                                                <a  
199                                                    class="d-flex h-100 w-100 izfe-evento-link-right"  
200                                                    aria-label='${izena}'  
201                                                    href="${urlEvento}" 
202                                                >  
203                                                    <div class="d-flex flex-column"> 
204                                                        <h2 class="izfe-evento-titulo"> 
205                                                            ${izena} 
206                                                        </h2> 
207                                                        <div class="izfe-evento-fecha-hora">	 
208                                                            <#if fechaInicio != ""> 
209                                                                <span class="ml-1 mr-1"> 
210                                                                    <@imprimirFecha fecha=fechaInicio idioma=themeDisplay.getLanguageId() /> 
211                                                                </span> 
212                                                            </#if> 
213                                                             
214                                                            <#if fechaFin != "" && fechaFin != fechaInicio> 
215
216                                                                <span class="ml-1"> 
217                                                                    <@imprimirFecha fecha=fechaFin idioma=themeDisplay.getLanguageId() /> 
218                                                                </span> 
219                                                            <#else> 
220                                                                <span class="ml-1 mr-1"> 
221                                                                    ${horaInicio} 
222                                                                </span> 
223
224                                                                <span class="ml-1"> 
225                                                                    ${horaFin} 
226                                                                </span> 
227                                                            </#if> 
228                                                        </div> 
229                                                        <p class="izfe-evento-localizacion"> 
230                                                            <#if localizacion?has_content > 
231                                                                ${localizacion} 
232                                                            </#if> 
233                                                        </p> 
234                                                    </div> 
235                                                </a> 
236                                            </div> 
237                                        </div>	 
238                                    </div>			 
239			                    </div> 
240                            </div> 
241                        </div> 
242                    </#list> 
243                </div> 
244            </div> 
245            <#if totEventos!=1 && totEventos!=0> 
246            <div class="d-flex w-100 justify-content-center"> 
247                <div class="swiper-button-prev leftLst"> 
248                    <@clay.icon color="white" symbol="angle-left" /> 
249                </div> 
250                <div class="swiper-button-next rightLst"> 
251                    <@clay.icon color="white" symbol="angle-right" /> 
252                </div> 
253            </div>  
254            </#if> 
255        </#if> 
256        <div class="bloque-seccion__intro"> 
257            <div class="columns large-5 centerButton"> 
258                <div class="readmore readCarusel"> 
259                    <#assign urlAgenda = '#' /> 
260                    <#if locale.getLanguage() == 'es' > 
261                        <#assign urlAgenda = '/es/web/gipuzkoaturismoa/agenda' /> 
262                    <#else> 
263                        <#assign urlAgenda = '/eu/web/gipuzkoaturismoa/agenda' /> 
264                    </#if> 
265                    <a href="${urlAgenda}"><span> 
266                        <@liferay.language key="DGN.acceder-todos-eventos" /><svg height="13.828" viewbox="0 0 17.93 13.828" width="17.93" xmlns="http://www.w3.org/2000/svg"> <path d="M14.039-15.914l-1.078,1.078L18.047-9.75H3v1.5H18.047L12.961-3.164l1.078,1.078,6.375-6.375L20.93-9l-.516-.539Z" data-name="Trazado 143" id="Trazado_143" transform="translate(-3 15.914)"></path> </svg></span> 
267                    </a> 
268                </div> 
269            </div> 
270        </div> 
271    </div> 
272</div> 
273 
274 
275 
276 
277<script src="https://unpkg.com/swiper/swiper-bundle.min.js"></script> 
278 
279<script> 
280    var swiper = new Swiper(".mySwiper", { 
281        slidesPerView: 3.15, 
282        spaceBetween: 15, 
283        breakpoints: { 
284            0: { 
285                slidesPerView: 1.2, 
286                spaceBetween: 10, 
287            }, 
288            768: { 
289                slidesPerView: 2.2, 
290                spaceBetween: 20, 
291            }, 
292            992: { 
293                slidesPerView: 3.15, 
294                spaceBetween: 15, 
295            }, 
296        }, 
297        navigation: { 
298            nextEl: ".swiper-button-next", 
299            prevEl: ".swiper-button-prev", 
300        }, 
301    }); 
302 
303 
304    /*ADAPTAR IMAGENES 
305    var imagenesCarousel = document.getElementsByClassName('izfe-agenda-carousel-img'); 
306 
307    for(var i = 0; i < imagenesCarousel.length; i++){ 
308        if(imagenesCarousel[i].naturalHeight > imagenesCarousel[i].naturalWidth || imagenesCarousel[i].naturalHeight == imagenesCarousel[i].naturalWidth){ 
309            imagenesCarousel[i].style.height = "100%"; 
310            imagenesCarousel[i].style.width = "auto"; 
311        }else{ 
312            imagenesCarousel[i].style.height = "auto"; 
313            imagenesCarousel[i].style.width = "100%"; 
314
315    }  */ 
316 
317 
318    recortarTexto(65, 'izfe-evento-titulo', null) 
319 
320    function recortarTexto(limit, classResumen, idResumen){ 
321        if(idResumen == null){ 
322            var resumenes = document.getElementsByClassName(classResumen); 
323        }else{   
324            var resumenes = [document.getElementById(idResumen)]; 
325        }    
326 
327        for(var i = 0; i < resumenes.length; i++){ 
328            var resumen = resumenes[i].innerText; 
329            if(resumen.length > limit){ 
330                if(resumen[limit].toString() != ' '){ 
331                    var indiceRecorte = limit; 
332 
333                    for(var j = limit; j > 0; j--){ 
334                        if(resumen[j] == ' '){ 
335                            indiceRecorte = j; 
336                            break; 
337
338
339                    resumenes[i].innerText = resumen.toString().substr(0, j) + '...'; 
340                }else{ 
341                    resumenes[i].innerText = resumen.toString().substr(0, limit) + '...'; 
342
343
344
345
346 
347 
348 
349</script> 

#VISITGIPUZKOA