skip-to-content

Fehler bei der Verarbeitung der Vorlage.
Can't convert this string to number: ""
The blamed expression:
==> fileEntryJson.getString("groupId")?number  [in template "1369164#1369202#1381217" at line 212, column 168]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: fileEntry = dlAppLocalServiceUtil.get...  [in template "1369164#1369202#1381217" at line 212, column 73]
----
1<#assign journalArticleLocalService  = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")> 
2<#assign assetEntryLocalService  = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")> 
3<#-- <#assign assetLinkLocalService  = serviceLocator.findService("com.liferay.asset.kernel.manager.AssetLinkManager")> --> 
4<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.link.service.AssetLinkLocalService") /> 
5<#assign assetCategoryPropertyLocalService  = serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService")> 
6<#assign  
7    jsonFactoryUtil = staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"]  
8    dlAppLocalServiceUtil = staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"] 
9    dlUrlHelperUtil = serviceLocator.findService('com.liferay.document.library.kernel.util.DLUtil') 
10    templateFunctionsHelperLocalService = 	serviceLocator.findService('net.bizkaia.iybiscuc.service.TemplateFunctionsHelperLocalService') 
11/>  
12 
13<#-- VARIABLES --> 
14 
15<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].getData()) /> 
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 
21<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()> 
22<#assign themeDisplay = serviceContext.getThemeDisplay() /> 
23 
24<#assign vocabularyCategories = themeDisplay.getThemeSetting("vocabulary-id") > 
25<#assign eventsStructureId = themeDisplay.getThemeSetting("structure-event-id") > 
26<#assign sliderStructureId = themeDisplay.getThemeSetting("structure-slider-id") > 
27 
28<#-- TEMPLATE --> 
29 
30<div class="turi-home-media-container"> 
31    <#assign home_page_urls = ["/", "/en", "/es","/eu","/fr","/fr/accueil","/en/home","/es/inicio","/eu/hasiera", "/web/guest", "/web/guest/"] /> 
32	    <#assign current_url = htmlUtil.escape(themeDisplay.getURLCurrent()) /> 
33	    <#assign is_home_page = home_page_urls?seq_contains(current_url) /> 
34	<#if is_home_page> 
35        <div class="iytu_redes_sociales_top"> 
36            <#assign 
37                languageIdRST = themeDisplay.getLanguageId() 
38                templateNameRST = 'Iytu - Redes Sociales Footer' 
39                structureName = 'Iytu - Redes Sociales Footer' 
40                companyIdRST = templateFunctionsHelperLocalService.getCompanyId('Turismo') 
41                groupIdGlobalRST = templateFunctionsHelperLocalService.getGroupId(companyIdRST, 'global') 
42                groupIdRST = templateFunctionsHelperLocalService.getGroupId(companyIdRST, 'guest') 
43                templateKeyRST = templateFunctionsHelperLocalService.getDDMTemplateKey(groupIdGlobalRST, templateNameRST) 
44                structureIdRST = templateFunctionsHelperLocalService.getDDMStructureId(groupIdGlobalRST, structureName) 
45                structureKeyRST = templateFunctionsHelperLocalService.getDDMStructureKey(groupIdGlobalRST, structureName) 
46                currentArticleTitleRST = journalArticleLocalService.getArticleByUrlTitle(groupIdRST, 'iytu-redes-sociales') 
47                currentArticleTitleIdRST = currentArticleTitleRST.articleId 
48            /> 
49            <#assign 
50                aaaaa = journalArticleLocalService.getArticleDisplay(groupIdRST, currentArticleTitleIdRST, templateKeyRST, "view", languageIdRST, themeDisplay) 
51            /> 
52            ${aaaaa.getContent()} 
53        </div> 
54    </#if> 
55	<#if .vars['Tipo_de_Cabecera'].getData()?string == 'H'> 
56		<#if .vars['cssFiles']?? && .vars['cssFiles'].getSiblings()?has_content> 
57			<#list .vars['cssFiles'].getSiblings() as currentCssFile> 
58				<#if currentCssFile.getData()?length != 0> 
59		    		<link rel="stylesheet" type="text/css" href="${currentCssFile.getData()}"> 
60		    	</#if> 
61			</#list> 
62		</#if> 
63 
64	   	<div class="turi-home-media"> 
65			${.vars['codigoHTML'].getData()} 
66		</div> 
67 
68		<#if .vars['jsFiles']?? && .vars['jsFiles'].getSiblings()?has_content> 
69			<#list .vars['jsFiles'].getSiblings() as currentJsFile> 
70				<#if currentJsFile.getData()?length != 0> 
71					<link rel="script" href="${currentJsFile.getData()}"/> 
72				</#if> 
73			</#list> 
74		</#if> 
75	<#elseif .vars['Tipo_de_Cabecera'].getData()?string == 'V'> 
76		<#if .vars['videoFile']??> 
77			<div class="turi-home-media turi-video"> 
78			<#assign existePoster = validator.isNotNull(videoPoster) && validator.isNotNull(videoPoster.getData()) /> 
79	        	<video class="lg-video-object lg-html5" id="video" ${existePoster?string('poster="${videoPoster.getData()}"', '')} playsinline preload="none"> 
80	            	 
81	            	<source src="${.vars['videoFile'].getData()}" type="video/mp4"> 
82	            	<@liferay.language key="iytu.cabecera-principal.htm5videoError"/> 
83	        	</video> 
84	        	<div class="video-controls"> 
85	           	 <button type="button" id="play-pause" class="play button-play-pause"><span class='iytuicon icon-play'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.play"/> </span></button> 
86	            	<button type="button" id="mute" class="unmute button-mute"><span class='iytuicon icon-volumen'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.mute"/> </span></button> 
87	        	</div> 
88	   	 	</div> 
89   	 	</#if> 
90	<#elseif .vars['Tipo_de_Cabecera'].getData()?string == 'S'> 
91		<#assign now = .now?long?c /> 
92		<div class="slider-video" id="HugeSlider${now}"> 
93			<div class="slider-container">		    
94				<ul class="slider"> 
95					<#list currentArticleRelatedLinks as related_entry> 
96	    				<#assign relatedAssetEntryId = related_entry.getEntryId2() /> 
97	    				<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) /> 
98	    				<#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() /> 
99	    				<#assign relatedArticle = journalArticleLocalService.getLatestArticle(relatedAssetEntryPrimKey) /> 
100	    				<#assign categoryName  = ""> 
101	    	            <#assign categoryColor = ""> 
102	    	            <#if relatedAssetEntry.getCategories()?has_content> 
103	    	            	<#list relatedAssetEntry.getCategories() as category> 
104	    	              		<#if category.getVocabularyId()?string == vocabularyCategories> 
105	    	               			<#assign categoryName  = category.getTitle(locale)> 
106	    	               			<#assign categoryColor = assetCategoryPropertyLocalService.getCategoryProperty(category.getCategoryId(),"color")> 
107	    	              		</#if> 
108	    	             	</#list> 
109	    	           	</#if> 
110	    	           	<#assign docXml = saxReaderUtil.read(relatedArticle.getContentByLocale(locale)) /> 
111	    	           	 
112	    				<#if relatedArticle.DDMStructureKey == eventsStructureId>			 
113	   					<#--	<#assign titulo = docXml.valueOf("//dynamic-element[@name='titulo']/dynamic-content/text()") /> --> 
114	   						<#assign localizacion = docXml.valueOf("//dynamic-element[@name='localizacion']/dynamic-content/text()") /> 
115	   						 
116							<#assign object1 = docXml.valueOf("//dynamic-element[@name='imagenFondo']/dynamic-content/text()") /> 
117							<#if !stringUtil.equalsIgnoreCase("", object1) > 
118								<#assign  
119									fileEntryJson = jsonFactoryUtil.createJSONObject(object1) 
120									fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileEntryJson.getString("uuid"),fileEntryJson.getString("groupId")?number)  
121									imagenFondo = dlUrlHelperUtil.getPreviewURL(fileEntry, fileEntry.getLatestFileVersion(true), themeDisplay, "")  
122								/> 
123							</#if>  
124 
125							<#assign fechaInicio = docXml.valueOf("//dynamic-element[@name='fechaInicio']/dynamic-content/text()") /> 
126							<#assign fechaFin = docXml.valueOf("//dynamic-element[@name='fechaFin']/dynamic-content/text()") /> 
127	   						<#assign 'fechaInicio_Data' = getterUtil.getLong(fechaInicio)> 
128 
129						    <#assign date = []> 
130	                	    <#assign date_Data =  getterUtil.getLong(fechaInicio)>  
131	                	    <#assign date_DateObj = dateUtil.newDate(date_Data)> 
132	                	    <#assign date = date + [ '${dateUtil.getDate(date_DateObj, "d", locale)}' ] > 
133	    					<#assign sdfMonth = objectUtil("java.text.SimpleDateFormat", "MMMMM", locale) />            	     
134	                	    <#assign date = date + [ '${sdfMonth.format(date_DateObj)}' ] > 
135	                	     
136	            	        <#assign date2 = []> 
137	                	    <#assign date_Data2 =  getterUtil.getLong(fechaFin)>  
138	                	    <#assign date_DateObj2 = dateUtil.newDate(date_Data2)> 
139	                	    <#assign date2 = date2 + [ '${dateUtil.getDate(date_DateObj2, "d", locale)}' ] > 
140	    					<#assign sdfMonth2 = objectUtil("java.text.SimpleDateFormat", "MMMMM", locale) />            	     
141	                	    <#assign date2 = date2 + [ '${sdfMonth2.format(date_DateObj)}' ] > 
142 
143							<#assign archivoVideo = docXml.valueOf("//dynamic-element[@name='videoFile']/dynamic-content/text()") /> 
144 
145							<#assign object3 = docXml.valueOf("//dynamic-element[@name='videoPoster']/dynamic-content/text()") /> 
146							<#if !stringUtil.equalsIgnoreCase("", object3) > 
147								<#assign  
148									fileEntryJson = jsonFactoryUtil.createJSONObject(object3) 
149									fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileEntryJson.getString("uuid"),fileEntryJson.getString("groupId")?number)  
150									archivoPoster = dlUrlHelperUtil.getPreviewURL(fileEntry, fileEntry.getLatestFileVersion(true), themeDisplay, "")  
151								/> 
152							</#if>  
153	   						   
154								<#if archivoVideo?? && validator.isNotNull(archivoVideo)> 
155								<li class="video-slide"> 
156                        			<div class="turi-home-media"> 
157                        	        	<#assign existePoster = validator.isNotNull(archivoPoster) && validator.isNotNull(archivoPoster) /> 
158                        	        	<video preload="none" class="lg-video-object lg-html5 videoCabecera" ${existePoster?string('poster="${archivoPoster}"', '')} > 
159                        	        	 
160                        	            	<source src="${archivoVideo.getData()}" type="video/mp4"> 
161                        	            	<@liferay.language key="iytu.cabecera-principal.htm5videoError"/>     
162                        	        	</video> 
163                        	        	<div class="video-controls"> 
164                        	           	 <button type="button" class="play button-play-pause"><span class='iytuicon icon-play'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.play"/> </span></button> 
165                        	            	<button type="button" class="unmute button-mute"><span class='iytuicon icon-volumen'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.mute"/> </span></button> 
166                        	        	</div> 
167                        	   	 	</div> 
168                        	   	 	</li> 
169                        	   	<#else> 	 
170                           	 	 
171	   						    <li class="foto-slide"> 
172								<div class="imagen_fondo_slider" style="background-image:url('${imagenFondo}');"></div> 
173								<div class="bipo_overlay"></div>					 
174								<div class="slider-info"> 
175									<div class="slider-info-inner"> 
176										 <#if locale != "en_GB" && (categoryName == "Family Friendly" || categoryName == "Basque") > 
177										    <p class="categoria bgcolor" lang="en">${categoryName}</p> 
178										 <#else> 
179										    <p class="categoria bgcolor">${categoryName}</p> 
180										 </#if> 
181										 <h2>${relatedArticle.getTitle(locale)}</h2> 
182										 <p><a class="enlace" href="/${locale.getLanguage()}/-/${relatedAssetEntry.getAssetRenderer().getUrlTitle()}"><@liferay.language key="iytu-buendia.more-info" /></a></p> 
183										 <ul class="evento-datos"> 
184	                           			    <li><span class="iytuicon icon-calendar"></span>${languageUtil.format(locale, "dateFormatList", date)?lower_case} · ${languageUtil.format(locale, "dateFormatList", date2)?lower_case}</li> 
185	                           			    <li><span class="iytuicon icon-location"></span>${localizacion}</li> 
186	                            		</ul>   
187									</div> 
188								</div> 
189								</li> 
190								</#if> 
191							 
192						<#elseif relatedArticle.DDMStructureKey == sliderStructureId> 
193	   						<#assign textoIntroductorio = docXml.valueOf("//dynamic-element[@name='textoIntroductorio']/dynamic-content/text()") /> 
194 
195	   						<#assign object4 = docXml.valueOf("//dynamic-element[@name='imagenFondo']/dynamic-content/text()") /> 
196							<#if !stringUtil.equalsIgnoreCase("", object4) > 
197								<#assign  
198									fileEntryJson = jsonFactoryUtil.createJSONObject(object4) 
199									fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileEntryJson.getString("uuid"),fileEntryJson.getString("groupId")?number)  
200									imagenFondo = dlUrlHelperUtil.getPreviewURL(fileEntry, fileEntry.getLatestFileVersion(true), themeDisplay, "")  
201								/> 
202							</#if> 
203 
204	   						<#assign enlace = docXml.valueOf("//dynamic-element[@name='enlace']/dynamic-content/text()") /> 
205 
206	   						<#assign archivoVideo = docXml.valueOf("//dynamic-element[@name='videoFile']/dynamic-content/text()") /> 
207 
208							<#assign object6 = docXml.valueOf("//dynamic-element[@name='videoPoster']/dynamic-content/text()") /> 
209							<#if !stringUtil.equalsIgnoreCase("", object6) > 
210								<#assign  
211									fileEntryJson = jsonFactoryUtil.createJSONObject(object6) 
212									fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(fileEntryJson.getString("uuid"),fileEntryJson.getString("groupId")?number)  
213									archivoPoster = dlUrlHelperUtil.getPreviewURL(fileEntry, fileEntry.getLatestFileVersion(true), themeDisplay, "")  
214								/> 
215							</#if> 
216	   						 
217	   						    <#if archivoVideo?? && validator.isNotNull(archivoVideo)> 
218	   						    <li class="video-slide"> 
219	                        		<div class="turi-home-media"> 
220	                        	        	<#assign existePoster = validator.isNotNull(archivoPoster) && validator.isNotNull(archivoPoster) /> 
221	                        	        	<video class="lg-video-object lg-html5 videoCabecera" ${existePoster?string('poster="${archivoPoster}"', '')} > 
222	                        	        	 
223	                        	            	<source src="${archivoVideo}" type="video/mp4"> 
224	                        	            	<@liferay.language key="iytu.cabecera-principal.htm5videoError"/>     
225	                        	        	</video> 
226	                        	        	<div class="video-controls"> 
227	                        	           	 <button type="button" class="play button-play-pause"><span class='iytuicon icon-play'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.play"/> </span></button> 
228	                        	            	<button type="button" class="unmute button-mute"><span class='iytuicon icon-volumen'></span><span class='sr-only'><@liferay.language key="iytu.cabecera-principal.video.controls.mute"/> </span></button> 
229	                        	        	</div> 
230	                        	   	</div> 
231                        	    </li> 
232                        	   	<#else> 
233                        	   	<li class="foto-slide">  
234									<div class="imagen_fondo_slider" style="background-image:url('${imagenFondo}');"></div> 
235									<div class="bipo_overlay"></div>					 
236									<div class="slider-info"> 
237										<div class="slider-info-inner"> 
238										    <#if locale != "en_GB" && (categoryName == "Family Friendly" || categoryName == "Basque") > 
239											    <p class="categoria bgcolor" lang="en">${categoryName}</p> 
240											 <#else> 
241											    <p class="categoria bgcolor">${categoryName}</p> 
242											 </#if> 
243								 			<h2>${relatedArticle.getTitle(locale)}</h2> 
244								 			<p class="texto">${textoIntroductorio} </p> 
245 
246										 <p><a href="${enlace}" class="enlace"><@liferay.language key="iytu.cabecera-principal.slider.descubrir"/> <span class="sr-only">${relatedArticle.getTitle(locale)}</span></a></p> 
247									</div> 
248								</div> 
249							</li> 
250	    				</#if>   			 
251	    				</#if>   			 
252					</#list> 
253				</ul> 
254    		</div> 
255    	</div> 
256    	<script> 
257			$(document).ready(function() { 
258			function isIE() { 
259                return (window.navigator.userAgent.match(/MSIE|Trident/) !== null); 
260
261            if(isIE()){ 
262                var slideMarginValue = 1000; 
263            }else{ 
264                var slideMarginValue = 10; 
265
266			    $("#HugeSlider${now} .slider").lightSlider({ 
267			        item: 1, 
268			        loop: false, 
269			        keyPress: true, 
270			        controls:true, 
271			        pager: false, 
272			        slideMargin: slideMarginValue, 
273			        paginationLabel: ' ', 
274			        enableDrag: true, 
275			        adaptiveHeight: true, 
276			        prevHtml: '<span class="sr-only"><@liferay.language key="previous" /></span>', 
277				    nextHtml: '<span class="sr-only"><@liferay.language key="next" /></span>',  
278			        responsive : [ 
279
280				            breakpoint:993, 
281				            settings: { 
282				                /*pager: true*/ 
283
284
285
286			    }); 
287			}); 
288		</script> 
289	<#elseif .vars['Tipo_de_Cabecera'].getData()?string == 'I'> 
290	    <#if .vars['imagenesFile']?? && .vars['imagenesFile'].getSiblings()?has_content> 
291	    	<#assign imagenes = .vars['imagenesFile'].getSiblings()> 
292	    	<#if imagenes[0].getData()?length != 0> 
293	    		<div class="turi-home-media"> 
294	    		    <#if url?? && !stringUtil.equalsIgnoreCase('', url.getData()) > 
295	    		    <a href="${url.getData()}"> 
296	    		        </#if> 
297        			<#if imagenes[0].getAttribute("alt")??> 
298        			    <#assign altImage = imagenes[0].getAttribute("alt") > 
299        			<#else> 
300        			    <#assign altImage = "" > 
301        			</#if> 
302        			 
303        			<img class="turi-home-media-fotofija" src="${imagenes[0].getData()}" alt="${altImage}"> 
304					 
305        			<#if url?? && !stringUtil.equalsIgnoreCase('', url.getData()) > 
306        			</a> 
307        			</#if> 
308 
309				 </div> 
310				 <script language="javascript"> 
311				 	var images  = []; 
312	    		 <#list imagenes as currentImage> 
313			    	images.push('${currentImage.getData()}'); 
314		    	</#list> 
315		    		$('.turi-home-media-fotofija').attr('src',images[Math.floor(Math.random() * images.length)]);  
316		    	</script> 
317	    	</#if> 
318	    </#if> 
319	</#if> 
320    <#if getterUtil.getBoolean(.vars['Flecha_para_bajar'].getData())> 
321        <div class="slidebs-info"></div> 
322	   	<div class="turi-home-media-flecha"> 
323            <p><a href="#breadcrumb" id="flecha-arriba"><span class="iytuicon icon-skip-Video"></span> <span class="sr-only"><@liferay.language key="iytu.irContenido"/></span></a></p> 
324        </div> 
325    </#if> 
326</div> 
327 
328<#-- FUNCTIONS --> 
329<#function getJournalArticleContent groupId urlTitle > 
330	<#assign contentArticle = journalArticleLocalService.fetchArticleByUrlTitle(groupId, urlTitle) > 
331 
332	<#if validator.isNotNull(contentArticle)> 
333		<#return saxReaderUtil.read(contentArticle.getContentByLocale(locale)).getStringValue()!'' /> 
334	</#if> 
335 
336	<#return '' /> 
337</#function> 

Basque, erro eta harro

Paregabeak gara mundu osoan, antzinako hizkuntza eta ohituradunak


Lurrari eta itsasoari hertsiki lotuta gaude. Biek ala biek gure izaera jatorra eta bereizgarria osatu dute.

Gure identitatearen isla dira beraz arbasoen ohiturak eta tradizioak, gure gastronomia ospetsua, euskal kirolen berezitasuna, baita euskal musika eta dantzen erritmoak ere.

Esan gabe doa gure altxorrik kuttunena: euskara. Gure hizkuntza are ederragoa da bertsoetan azaltzen dugunean, beste adierazpenen artean.

Tradizioarekiko atxikimendu hau garai berriekin bat dator, betiko usadioei berrikuntza eta abangoardia erantsiz. Hau guztia gure berezko izaerari uko egin gabe. Aparteko herria, geurea.