Grado Ethnological Museum

An error occurred while processing the template.
Java method "as.asac.template.tools.DLToolImpl.getDLFileEntryByPath(String)" threw an exception when invoked on as.asac.template.tools.DLToolImpl object "as.asac.template.tools.DLToolImpl@87b32f1"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign dlFileEntry = dlTool.getDLFil...  [in template "37703#37743#1558463" at line 130, column 81]
----
1<#-- Services --> 
2<#assign assetEntryLocalServiceUtil = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")/> 
3<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService")/> 
4<#assign journalArticleResourceServiceUtil = serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService")/> 
5 
6<#-- Reserved vbles --> 
7<#assign title = .vars['reserved-article-title'].data> 
8<#assign articleId=.vars["reserved-article-id"].data /> 
9<#assign description=.vars["reserved-article-description"].data /> 
10<#assign smallImageUrl=.vars["reserved-article-small-image-url"].data /> 
11<#assign date=.vars["reserved-article-display-date"].data /> 
12<#assign request = .vars['request']> 
13 
14<#-- Init --> 
15<#assign assetEntry = journalTool.getAssetEntryByArticleId(groupId, articleId)> 
16<#assign journalArticle = journalTool.getJournalArticleByAssetEntry(assetEntry)> 
17<#assign articleURL = themeDisplay.getURLPortal()+themeDisplay.getURLCurrent()> 
18<#assign articleSocialBookmarks = themeDisplay.getThemeSetting("article-social-bookmarks")!> 
19<#assign layoutSetBannerPath = layoutTool.getLayoutSetBannerPath(groupId, themeDisplay.getLayout().isPrivateLayout())!> 
20<#assign articleMainImageThumbnail3 = dlTool.getThumbnail(smallImageUrl, "3", layoutSetBannerPath)! /> 
21<#assign articleMainImageThumbnail1 = dlTool.getThumbnail(smallImageUrl, "1")! /> 
22 
23<#assign ddmStructureNameNormalize = "template-${friendlyURLNormalizerTool.normalize(journalArticle.getDDMStructure().getName(localeUtil.getDefault()))}" /> 
24 
25<#-- Build --> 
26<#if Nombre.data?has_content> 
27	<#assign title = Nombre.data> 
28</#if> 
29<#assign address = ""> 
30<#if Contacto.Direccion.data?has_content> 
31	<#assign address = address +"${htmlUtil.extractText(Contacto.Direccion.data)}" /> 
32</#if> 
33 
34 
35<article class="template ${ddmStructureNameNormalize}" role="article" itemscope itemtype="http://schema.org/Museum"> 
36	 
37	<header class="article-header-wrapper row no-gutters"> 
38	     
39		<div class="article-header-container article-header-container-static"> 
40			<div class="container"> 
41				<div class="row no-gutters"> 
42					<div class="col-md-6"> 
43						<div class="article-image" style="background-image: url('${articleMainImageThumbnail3}')"> 
44							<img class="sr-only" src="${articleMainImageThumbnail3}" alt="${languageUtil.format(request,'go-to-x','image')} ${title}" itemprop="image"/> 
45						</div> 
46					</div> 
47					<div class="article-info-wrapper col-md-6"> 
48						<div class="article-info"> 
49							<div class="article-title" itemprop="name">${title}</div> 
50							<div class="article-list-wrapper"> 
51															 
52								<ul class="article-list list-unstyled article-list-info"> 
53									<li class="article-list-item mb-4"> 
54										<span class="fas fa-map-marker-alt"> 
55											<span class="hide-accessible">${languageUtil.get(request,"title")}</span> 
56										</span> 
57										<span class="field-wrapper"> 
58											<#if Contacto.Concejo.data?has_content> 
59												<span class="important">${Contacto.Concejo.data}</span> 
60											</#if> 
61											<#if Contacto.Zona.data?has_content> 
62												<span class="text d-block">${Contacto.Zona.data}</span> 
63											</#if> 
64										</span> 
65									</li> 
66									 
67									<#if address?has_content> 
68										<li class="article-list-item"> 
69											<span class="far fa-address-card"> 
70												<span class="hide-accessible">${languageUtil.get(request,"address")}</span> 
71											</span> 
72											<span class="field-wrapper"> 
73												<span class="field">${languageUtil.get(request, "address")}:</span> 
74												<span class="text" itemprop="address">${address}</span> 
75											</span> 
76										</li> 
77									</#if> 
78									 
79									<#if Contacto.Telefono.data?has_content> 
80										<li class="article-list-item"> 
81											<span class="fas fa-phone-alt"> 
82												<span class="hide-accessible">${languageUtil.get(request,"phone")}</span> 
83											</span> 
84											<span class="field-wrapper"> 
85												<span class="field">${languageUtil.get(request, "phone")}:</span> 
86												<span class="text" itemprop="telephone">${Contacto.Telefono.data}</span> 
87											</span> 
88										</li> 
89									</#if> 
90 
91									<#if Contacto.Email.getData()?has_content> 
92										<li class="article-list-item"> 
93											<span class="far fa-envelope"> 
94												<span class="hide-accessible">${languageUtil.get(request,"email")}</span> 
95											</span> 
96											<span class="field-wrapper"> 
97												<span class="field">${languageUtil.get(request, "email")}:</span> 
98												<span class="text"> 
99													<#list Contacto.Email.getSiblings() as Item> 
100														<#if validator.isNotNull(Item.data)> 
101															<a class="" href="mailto:${Item.data}" title="${languageUtil.format(request,'go-to-x', 'email')}" itemprop="email">${Item.data}</a><#if Item_has_next>, </#if> 
102														</#if> 
103													</#list> 
104												</span> 
105											</span> 
106										</li> 
107									</#if> 
108 
109									<#if Contacto.Web.data?has_content> 
110										<#assign linkURL = Contacto.Web.data/> 
111														 
112										<#if !stringUtil.startsWith(linkURL, "http")> 
113											<#assign linkURL = "https://${Contacto.Web.data}"/> 
114										</#if> 
115										<li class="article-list-item web"> 
116											<span class="fas fa-link"> 
117												<span class="hide-accessible">${languageUtil.get(request,"site")}</span> 
118											</span> 
119											<span class="field-wrapper"> 
120												<span class="field">${languageUtil.get(request, "site")}:</span> 
121												<span class="text"> 
122													<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x', 'site')}" itemprop="url">${Contacto.Web.data}</a> 
123												</span> 
124											</span> 
125										</li> 
126									</#if> 
127			 
128									<#if Descargas.Archivo.data?has_content ??> 
129										<#if validator.isNotNull(Descargas.Archivo.data)> 
130										<#assign dlFileEntry = dlTool.getDLFileEntryByPath(Descargas.Archivo.data) /> 
131											<#if validator.isNotNull(dlFileEntry)> 
132												<#assign ext = dlFileEntry.getExtension()!/> 
133												<li class="article-list-item document document-${ext}"> 
134													<span class="fas fa-file"> 
135														<span class="hide-accessible">${languageUtil.get(request,"related-documents")}</span> 
136													</span> 
137													<span class="field-wrapper"> 
138														<span class="field">${languageUtil.get(request, "related-documents")}:</span> 
139														<span class="text"> 
140															<#list Descargas.Archivo.getSiblings() as Item> 
141																<#assign dlFileEntry = dlTool.getDLFileEntryByPath(Item.data) /> 
142																<#assign downloadURL = "/documents/${groupId}/${dlFileEntry.getUuid()}" /> 
143																<#if validator.isNotNull(dlFileEntry)> 
144																	<#if Item.ArchivoTitulo.data?has_content> 
145																		<a href="${downloadURL}" title='${languageUtil.get(request, "${Item.ArchivoTitulo.data}")} ${htmlUtil.escape(title)}' class="">${Item.ArchivoTitulo.data}</a>	 
146																		<#if Item_has_next>, </#if> 
147																	<#else> 
148																		<a href="${downloadURL}" title='${languageUtil.get(request, "${dlFileEntry.getTitle()}")} ${htmlUtil.escape(title)}' class="">${dlFileEntry.getTitle()}</a>	 
149																		<#if Item_has_next>, </#if> 
150																	</#if> 
151																</#if> 
152															</#list> 
153														</span> 
154													</span>		 
155												</li> 
156											</#if> 
157										</#if> 
158									</#if> 
159								</ul> 
160							</div> 
161							 
162							<#if validator.isNotNull(RedesSociales.Facebook.data) || validator.isNotNull(RedesSociales.Twitter.data) || validator.isNotNull(RedesSociales.Youtube.data) || validator.isNotNull(RedesSociales.GooglePlus.data) || validator.isNotNull(RedesSociales.Pinterest.data) || validator.isNotNull(RedesSociales.Instagram.data) || validator.isNotNull(RedesSociales.Rss.data) || validator.isNotNull(RedesSociales.OtrosCanales.NombreCanal.data)> 
163								<div class="article-socials-wrapper mt-4"> 
164									<div class="socials-wrapper"> 
165										<div class="socials"> 
166											<ul class="list-inline items socials"> 
167												<#if RedesSociales.Facebook.data?has_content> 
168													<#assign linkURL = RedesSociales.Facebook.data/> 
169														 
170													<#if !stringUtil.startsWith(linkURL, "http")> 
171														<#assign linkURL = "https://${RedesSociales.Facebook.data}"/> 
172													</#if> 
173													<li class="list-inline-item item facebook"> 
174														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Facebook')}" onclick="this.target='_blank'"> 
175															<span class="fab fa-facebook-f"> 
176																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Facebook')}</span> 
177															</span> 
178														</a> 
179													</li> 
180												</#if> 
181												<#if RedesSociales.Twitter.data?has_content> 
182													<#assign linkURL = RedesSociales.Twitter.data/> 
183														 
184													<#if !stringUtil.startsWith(linkURL, "http")> 
185														<#assign linkURL = "https://${RedesSociales.Twitter.data}"/> 
186													</#if> 
187													<li class="list-inline-item item twitter"> 
188														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Twitter')}" onclick="this.target='_blank'"> 
189															<span class="fab fa-twitter"> 
190																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Twitter')}</span> 
191															</span> 
192														</a> 
193													</li> 
194												</#if> 
195												<#if RedesSociales.Youtube.data?has_content> 
196													<#assign linkURL = RedesSociales.Youtube.data/> 
197														 
198													<#if !stringUtil.startsWith(linkURL, "http")> 
199														<#assign linkURL = "https://${RedesSociales.Youtube.data}"/> 
200													</#if> 
201													<li class="list-inline-item item youtube"> 
202														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Youtube')}" onclick="this.target='_blank'"> 
203															<span class="fab fa-youtube"> 
204																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Youtube')}</span> 
205															</span> 
206														</a> 
207													</li> 
208												</#if> 
209												<#if RedesSociales.GooglePlus.data?has_content> 
210													<#assign linkURL = RedesSociales.GooglePlus.data/> 
211														 
212													<#if !stringUtil.startsWith(linkURL, "http")> 
213														<#assign linkURL = "https://${RedesSociales.GooglePlus.data}"/> 
214													</#if> 
215													<li class="list-inline-item item gplus"> 
216														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Google Plus')}" onclick="this.target='_blank'"> 
217															<span class="fab fa-google-plus-g"> 
218																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Google Plus')}</span> 
219															</span> 
220														</a> 
221													</li> 
222												</#if> 
223												<#if RedesSociales.Pinterest.data?has_content> 
224													<#assign linkURL = RedesSociales.Pinterest.data/> 
225														 
226													<#if !stringUtil.startsWith(linkURL, "http")> 
227														<#assign linkURL = "https://${RedesSociales.Pinterest.data}"/> 
228													</#if> 
229													<li class="list-inline-item item pinterest"> 
230														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Pinterest')}" onclick="this.target='_blank'"> 
231															<span class="fab fa-pinterest-p"> 
232																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Pinterest')}</span> 
233															</span> 
234														</a> 
235													</li> 
236												</#if> 
237												<#if RedesSociales.Instagram.data?has_content> 
238													<#assign linkURL = RedesSociales.Instagram.data/> 
239														 
240													<#if !stringUtil.startsWith(linkURL, "http")> 
241														<#assign linkURL = "https://${RedesSociales.instagram.data}"/> 
242													</#if> 
243													<li class="list-inline-item item instagram"> 
244														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Instagram')}" onclick="this.target='_blank'"> 
245															<span class="fab fa-instagram"> 
246																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Instagram')}</span> 
247															</span> 
248														</a> 
249													</li> 
250												</#if> 
251												<#if RedesSociales.Rss.data?has_content> 
252													<#assign linkURL = RedesSociales.Rss.data/> 
253														 
254													<#if !stringUtil.startsWith(linkURL, "http")> 
255														<#assign linkURL = "https://${RedesSociales.Rss.data}"/> 
256													</#if> 
257													<li class="list-inline-item item rss"> 
258														<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x','Rss')}" onclick="this.target='_blank'"> 
259															<span class="fas fa-rss"> 
260																<span class="hide-accessible">${languageUtil.format(request,'go-to-x','Rss')}</span> 
261															</span> 
262														</a> 
263													</li> 
264												</#if> 
265												<#list RedesSociales.OtrosCanales.NombreCanal.getSiblings() as Canal> 
266													<#if Canal.CanalUrl.data?has_content> 
267														<#assign linkURL = Canal.CanalUrl.data/> 
268														 
269													<#if !stringUtil.startsWith(linkURL, "http")> 
270														<#assign linkURL = "https://${Canal.CanalUrl.data}"/> 
271													</#if> 
272														<li class="list-inline-item item instagram"> 
273															<a href="${linkURL}" title="${languageUtil.format(request,'go-to-x',Canal.data)}" onclick="this.target='_blank'"> 
274																<span class="fas fa-share-alt"> 
275																	<span class="hide-accessible">${languageUtil.format(request,'go-to-x',Canal.data)}</span> 
276																</span> 
277															</a> 
278														</li> 
279													</#if> 
280												</#list> 
281											</ul> 
282										</div> 
283									</div> 
284								</div> 
285							</#if> 
286							 
287						</div> 
288					</div> 
289				</div> 
290			</div> 
291		</div>  
292	</header> 
293	 
294	<div class="sheet sheet-lg"> 
295	 
296		<#if Informacion.Titulo.data?has_content> 
297			<div class="article-great"> 
298				${Informacion.Titulo.data} 
299			</div>	 
300		</#if> 
301		 
302		<#assign hasTab1 = Informacion.Texto.data?has_content> 
303		<#assign hasTab2 = Geolocalizacion.Coordenadas.data?has_content> 
304		<#assign hasTab3 = Contacto.Temporadas?? && Contacto.Temporadas?has_content> 
305		<#assign hasTab4 = Contacto.FechasDeCierre?? && Contacto.FechasDeCierre?has_content> 
306		<#assign hasTab5 = Informacion.Horario?has_content || Informacion.Tarifas?has_content> 
307		<#assign showFirstTab = true> 
308		 
309		<div class="article-accordion accordion"> 
310 
311			<#if Visualizador.Slide.getData()?has_content> 
312				<div class="slick article-slick article-section <#if Visualizador.Slide.getSiblings()?size==1>hide</#if>"> 
313					<#list Visualizador.Slide.getSiblings() as Slide> 
314						<#assign slideThumbnail3 = dlTool.getThumbnailByJSON(Slide.data, "3")! /> 
315						<#assign slideThumbnail2 = dlTool.getThumbnailByJSON(Slide.data, "2")! /> 
316						<#assign slidePath = dlTool.getPathByJSON(Slide.data, themeDisplay.getScopeGroupId())! /> 
317						<#assign slideUrl = Slide.SlideUrl.data /> 
318						<#assign dataMap = "" /> 
319 
320						<#if slideUrl?has_content> 
321 
322							<#assign slideTitle = "${languageUtil.get(request, 'video')} ${Slide?index}" /> 
323							<#if Slide.SlideTitulo.data?has_content> 
324								<#assign slideTitle = Slide.SlideTitulo.data />   
325							</#if> 
326 
327							<#-- Youtube --> 
328							<#assign slideUrl = stringUtil.replace(slideUrl, 'watch?v=', 'embed/') /> 
329							<#assign slideThumbnail2 = stringUtil.replace(slideUrl, 'www', 'img') /> 
330							<#assign slideThumbnail2 = stringUtil.replace(slideThumbnail2, 'embed', 'vi') /> 
331							<#assign slideThumbnail2 = '${slideThumbnail2}/mqdefault.jpg' /> 
332 
333							<#-- Vimeo --> 
334							<#if slideUrl?contains("vimeo")> 
335								<#assign slideUrl = stringUtil.replace(slideUrl, 'http://vimeo.com/', 'https://player.vimeo.com/video/') /> 
336								<#assign slideVimeoId = stringUtil.extractLast(slideUrl, 'https://player.vimeo.com/video/') /> 
337								<#if slideVimeoId?has_content> 
338									<#assign slideVimeoJsonPath = 'http://vimeo.com/api/v2/video/${slideVimeoId}.json' /> 
339									<#assign slideVimeoJsonContent = getUrlContent.getContent(slideVimeoJsonPath)! /> 
340									<#if slideVimeoJsonContent?has_content> 
341										<#assign slideVimeoJsonArray = jsonFactoryUtil.createJSONArray(slideVimeoJsonContent) /> 
342										<#assign slideVimeoJsonItem = slideVimeoJsonArray.get(0) /> 
343										<#assign slideThumbnail2 = slideVimeoJsonItem.thumbnail_medium /> 
344									</#if> 
345								</#if> 
346							</#if> 
347 
348							<div id="slide-${Slide?index}" class="slide"> 
349								<a class="card card-simple card-video" href="#" onclick="javascript: event.preventDefault(); showDialogIframe('${slideUrl}', '${slideTitle}', 800, 600, 'videoPopup', 'videoPopupIframe');" title="${slideTitle}"> 
350									<span class="d-block image-wrapper aspect-ratio-bg-cover aspect-ratio-4-to-3" style="background-image: url('${slideThumbnail2}');"> 
351									<img class="hide-accessible" alt="${slideTitle}" src="${slideThumbnail2}"> 
352								</a> 
353							</div> 
354						<#else> 
355 
356							<#assign slideTitle = "${languageUtil.get(request, 'image')} ${Slide?index}" /> 
357							<#if Slide.SlideTitulo.data?has_content> 
358								<#assign slideTitle = Slide.SlideTitulo.data />   
359							</#if> 
360 
361							<div class="slide"> 
362								<a class="card card-simple lightbox" href="${slidePath}" title="${slideTitle}"> 
363									<span class="d-block image-wrapper aspect-ratio-bg-cover aspect-ratio-4-to-3" style="background-image: url('${slideThumbnail2}');"> 
364									<img class="hide-accessible" alt="${slideTitle}" src="${slideThumbnail2}"> 
365								</a> 
366							</div> 
367						</#if> 
368					</#list> 
369				</div> 
370			</#if> 
371		 
372			<#if hasTab1> 
373				<div id="tab1" class="article-section accordion-item"> 
374					<a href="#tabContent1" id="tabHeading" class="h3 accordion-header <#if !showFirstTab>collapsed</#if>" aria-expanded="${getterUtil.getString(showFirstTab)}" data-toggle="liferay-collapse" aria-controls="tabContent1" role="button"> 
375							${languageUtil.get(request,'info')} 
376					</a> 
377					<div id="tabContent1" class="article-section-content article-section-info accordion-collapse collapse <#if showFirstTab>show</#if>" aria-labelledby="tabHeading" itemprop="description"> 
378						<#if Informacion.Texto.data?has_content> 
379							${Informacion.Texto.data} 
380						</#if> 
381						<#if Informacion.FechaDeConstruccion.data?has_content> 
382							<span class="field">${languageUtil.get(request, "infoasturias-fecha-de-construccion")}:</span> 
383							<span class="text">${htmlUtil.extractText(Informacion.FechaDeConstruccion.data)}</span> 
384						</#if> 
385					</div> 
386				</div> 
387				<#assign showFirstTab = false> 
388			</#if> 
389			 
390			<#if hasTab2> 
391				<#assign coordenadas=stringUtil.split(Geolocalizacion.Coordenadas.data) /> 
392				<div id="tab2" class="article-section accordion-item"> 
393					<a href="#tabContent2" id="tabHeading2" class="h3 accordion-header <#if !showFirstTab>collapsed</#if>"  aria-expanded="${getterUtil.getString(showFirstTab)}" data-toggle="liferay-collapse" aria-controls="tabContent2" role="button"> 
394					${languageUtil.get(request,'map')} 
395					</a> 
396					<div id="tabContent2" class="article-section-content accordion-collapse collapse <#if showFirstTab>show</#if>" aria-labelledby="tabHeading2"> 
397						<div id="article-map-wrapper-${articleId}" class="article-map-wrapper">  
398							<div id="article-map-content-${articleId}" style="width: 100%; height: 388px; z-index:1"><!-- MAP --></div> 
399							<div class="article-map-form">  
400								<div class="name important">${title}</div> 
401								<div class="gps"><span class="label">GPS:</span> <span class="value important" itemprop="geo">${Geolocalizacion.Coordenadas.data}</span></div> 
402								<form action="https://maps.google.es/maps" method="get" target="_blank"> 
403									<input type="hidden" name="daddr" value="${coordenadas[0]},${coordenadas[1]}"> 
404									<label for="saddr"><span class="label">${languageUtil.get(request,'infoasturias-from')}: </span></label> 
405									<input class="form-control" type="text" maxlength="40" name="saddrText" id="saddrText" value="" placeholder="${languageUtil.get(request,'infoasturias-insert-from')}"> 
406									<input class="form-control" type="hidden" name="saddr" id="saddr" value="" placeholder="${languageUtil.get(request,'infoasturias-insert-from')}"> 
407									<button class="btn btn-text" type="submit">${languageUtil.get(request,'infoasturias-como-llegar')} &raquo;</button> 
408								</form> 
409							</div> 
410						</div> 
411						<script src="/o/turismo-asturias-theme/js/leaflet/leaflet.js"></script> 
412						<script type="text/javascript"> 
413							AUI().ready('aui-base', function(A){ 
414								var lat = ${coordenadas[0]}, 
415									lng = ${coordenadas[1]}, 
416									zoom = 16; 
417								mapContent = new L.map('article-map-content-${articleId}', {center: [lat, lng], zoom: 16}); 
418 
419								//Marker 
420								var defaultIconTheme = '/o/turismo-asturias-theme/css/images/icons/mark-box.png'; 
421								var defaultIcon = L.icon({ 
422									iconUrl: defaultIconTheme, 
423									iconSize:     [36, 53], 
424									iconAnchor:   [18, 53], 
425									iconShadow:   [0,0], 
426									popupAnchor:  [0, -30] 
427								}); 
428								var marker = L.marker([lat, lng], {icon: defaultIcon}).addTo(mapContent); 
429								 
430								var contentString = '<div class="row">'; 
431								contentString += '<div class="col-12">'; 
432								contentString += '<div class="h4">${htmlUtil.escape(title)}</div>'; 
433								contentString += '</div>'; 
434								contentString += '</div>'; 
435								 
436								contentString += '<div class="row">'; 
437								contentString += '<div class="col-12">'; 
438								<#if validator.isNotNull(articleMainImageThumbnail1)> 
439									contentString += '<img class="pull-right mb-2 ml-2" src="${articleMainImageThumbnail1}" alt="$title"/>'; 
440								</#if> 
441								contentString += '<dl class="mb-0">'; 
442								<#if address?has_content> 
443									contentString += '<dt>${languageUtil.get(request,'address')}</dt>'; 
444									contentString += '<dd>${htmlUtil.escape(address)}</dd>'; 
445								</#if> 
446								<#if Contacto.Telefono.data?has_content> 
447									contentString += '<dt>${languageUtil.get(request,'phone')}</dt>'; 
448									contentString += '<dd>${Contacto.Telefono.data}</dd>'; 
449								</#if> 
450								<#if Contacto.Email.getData()?has_content> 
451									contentString += '<dt>${languageUtil.get(request,'email')}</dt>'; 
452									<#list Contacto.Email.getSiblings() as Item> 
453										contentString += '<dd><a href="mailto:${Item.data}" title="${languageUtil.format(request,'go-to-x', 'email')}">${Item.data}</a></dd>'; 
454									</#list> 
455								</#if> 
456								<#if Contacto.Web.data?has_content> 
457									<#assign linkURL = Contacto.Web.data/> 
458														 
459									<#if !stringUtil.startsWith(linkURL, "http")> 
460										<#assign linkURL = "https://${Contacto.Web.data}"/> 
461									</#if> 
462									contentString += '<dt>${languageUtil.get(request,'site')}</dt>'; 
463									contentString += '<dd><a href="${linkURL}" title="${languageUtil.format(request,'go-to-x', 'site')}">${Contacto.Web.data}</a></dd'; 
464								</#if> 
465								contentString += '</dl>'; 
466								contentString += '</div>'; 
467								contentString += '</div>'; 
468								<#if validator.isNotNull(description)> 
469									contentString += '<div class="row"><div class="col-12">${htmlUtil.escape(description)}</div></div>'; 
470								</#if> 
471								marker.bindPopup(contentString); 
472 
473								//Contributor 
474								L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { 
475									attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors.' 
476								}).addTo(mapContent); 
477								 
478							}); //AUI.ready 
479						</script> 
480					</div> 
481				</div> 
482				<#assign showFirstTab = false> 
483			</#if> 
484			 
485			<#if hasTab3> 
486				<div id="tab3" class="article-section accordion-item"> 
487					<a href="#tabContent3" id="tabHeading3" class="h3 accordion-header <#if !showFirstTab>collapsed</#if>"  aria-expanded="${getterUtil.getString(showFirstTab)}" data-toggle="liferay-collapse" aria-controls="tabContent3" role="button">${languageUtil.get(request,'infoasturias-temporadas')}</a> 
488					<div id="tabContent3" class="article-section-content article-section-color article-section-background accordion-collapse collapse <#if showFirstTab>show</#if>" aria-labelledby="tabHeading3"> 
489						<#if Contacto.Temporadas.data?has_content> 
490							${Contacto.Temporadas.data} 
491						</#if> 
492					</div> 
493				</div> 
494				<#assign showFirstTab = false> 
495			</#if>	 
496 
497			<#if hasTab4> 
498				<div id="tab4" class="article-section accordion-item"> 
499					<a href="#tabContent4" id="tabHeading4" class="h3 accordion-header <#if !showFirstTab>collapsed</#if>"  aria-expanded="${getterUtil.getString(showFirstTab)}" data-toggle="liferay-collapse" aria-controls="tabContent4" role="button">${languageUtil.get(request,'infoasturias-fechas-de-cierre')}</a> 
500					<div id="tabContent4" class="article-section-content article-section-color article-section-background accordion-collapse collapse <#if showFirstTab>show</#if>" aria-labelledby="tabHeading4"> 
501						<#if Contacto.FechasDeCierre.data?has_content> 
502							${Contacto.FechasDeCierre.data} 
503						</#if> 
504					</div> 
505				</div> 
506				<#assign showFirstTab = false> 
507			</#if> 
508			 
509			<#if hasTab5> 
510				<div id="tab5" class="article-section accordion-item"> 
511					<a href="#tabContent5" id="tabHeading5" class="h3 accordion-header <#if !showFirstTab>collapsed</#if>"  aria-expanded="${getterUtil.getString(showFirstTab)}" data-toggle="liferay-collapse" aria-controls="tabContent5" role="button">${languageUtil.get(request,'infoasturias-horarios-y-tarifas')}</a> 
512					<div id="tabContent5" class="article-section-content article-section-color article-section-background accordion-collapse collapse <#if showFirstTab>show</#if>" aria-labelledby="tabHeading5"> 
513						<#if Informacion.Horario.getData()?has_content> 
514							${Informacion.Horario.data} 
515						</#if> 
516						<#if Informacion.Tarifas.getData()?has_content> 
517							${Informacion.Tarifas.data} 
518						</#if> 
519					</div> 
520				</div> 
521				<#assign showFirstTab = false> 
522			</#if> 
523		</div> 
524		 
525		<#if  validator.isNotNull(Informacion.Observaciones.data) ||  validator.isNotNull(Contacto.MasInformacion.data) > 
526			<div class="article-border"> 
527				<#if Informacion.Observaciones?has_content> 
528					${Informacion.Observaciones.data} 
529				</#if> 
530				<#if Contacto.MasInformacion?has_content> 
531					<#list  Contacto.MasInformacion.getSiblings() as Item> 
532						<#if stringUtil.matches(Item.data, "//") > 
533							<div><a class="" href="${Item.data}" title="${languageUtil.format(request,'go-to-x', 'link')}">${Item.data}</a></div> 
534						<#else> 
535							<div><span class="">${Item.data}</span></div> 
536						</#if> 
537					</#list> 
538				</#if> 
539			</div> 
540		</#if> 
541	</div> 
542	 
543	<#-- Related --> 
544	<#assign relatedJournalArticles = assetTool.getRelatedJournalArticlesApproved(assetEntry)/> 
545	<#if validator.isNotNull(relatedJournalArticles) && relatedJournalArticles?size gt 0> 
546		<div class="article-related portlet-background-grey-container"> 
547			<div class="container"> 
548				<h3 class="title-section">${languageUtil.get(request,'related-assets')}</h3> 
549				<div class="slick article-related-slick"> 
550					<#list relatedJournalArticles as currentJournalArticle> 
551						<#assign viewURL = journalTool.getDisplayPage(currentJournalArticle, themeDisplay, true)/> 
552							<div class="slide"> 
553								<a class="card background card-background-9-14"  href="${viewURL}" title="${languageUtil.format(request, 'go-to-x', currentJournalArticle.getTitle(locale))}"> 
554									<span class="d-block image-wrapper aspect-ratio-bg-cover" style="background-image: url('${currentJournalArticle.getSmallImageURL()}');"> 
555										<img class="hide-accessible" src="${currentJournalArticle.getSmallImageURL()}" alt="${currentJournalArticle.getTitle(locale)}"> 
556										<span class="card-body"> 
557											<span class="card-title">${currentJournalArticle.getTitle(locale)}</span> 
558										</span> 
559									</span> 
560								</a> 
561							</div> 
562					</#list> 
563				</div> 
564			</div> 
565		</div> 
566	</#if> 
567	 
568	<#-- Nearby --> 
569	<#assign classTypeIds = [598853,582814,625593,623117,609431,593783]> 
570	<#assign assetsNearJournalArticles = assetNearTool.getNearJournalArticles(themeDisplay.getScopeGroupId(), assetEntry.getEntryId(), 50.0, classTypeIds, 25)! /> 
571	<#if validator.isNotNull(assetsNearJournalArticles) && assetsNearJournalArticles?size gt 0> 
572		<div class="article-nearby portlet-container-margin"> 
573			<div class="container"> 
574				<div class="article-nearby-container"> 
575					<h3 class="title-section">${languageUtil.get(request,'infoasturias-near-here')}</h3> 
576					<div class="slick article-nearby-slick"> 
577						<#list assetsNearJournalArticles as currentJournalArticle> 
578							<#assign viewURL = journalTool.getDisplayPage(currentJournalArticle, themeDisplay, true)/> 
579							<div class="slide"> 
580								<a class="card" href="${viewURL}" title="${languageUtil.format(request, 'go-to-x', currentJournalArticle.getTitle(locale))}"> 
581									<span class="d-block image-wrapper aspect-ratio-bg-cover aspect-ratio-4-to-3" style="background-image: url('${currentJournalArticle.getSmallImageURL()}');"> 
582										<img class="hide-accessible" src="${currentJournalArticle.getSmallImageURL()}" alt="${currentJournalArticle.getTitle(locale)}"> 
583										<span class="card-hover"> 
584											<span class="card-text">${currentJournalArticle.getDescription(locale)}</span> 
585										</span> 
586									</span> 
587									<span class="card-body"> 
588										<span class="card-title">${currentJournalArticle.getTitle(locale)}</span> 
589										<span class="card-subtitle"> 
590											<span class="d-block">${currentJournalArticle.getVersion()} Kms</span> 
591											<span class="d-block">${journalTool.getCategoriesNames(groupId, currentJournalArticle.getArticleId(), locale, ["Concejos"])}</span> 
592										</span> 
593									</span> 
594								</a> 
595							</div> 
596						</#list> 
597					</div> 
598				</div> 
599			</div> 
600		</div> 
601	</#if> 
602	 
603</article>