Salidas Organizadas
Se ha producido un error al procesar la plantilla.
Template inclusion failed (for parameter value "_TEMPLATE_CONTEXT_/37703/39908/35601/NAVIGATION-MACRO-FTL"):
Unable to find FreeMarker template with ID _TEMPLATE_CONTEXT_/37703/39908/35601/NAVIGATION-MACRO-FTL
----
FTL stack trace ("~" means nesting-related):
- Failed at: #include "${templatesPath}/NAVIGATION... [in template "37703#37743#10913689" at line 1, column 1]
----
1<#include "${templatesPath}/NAVIGATION-MACRO-FTL" />
2
3<#assign navItems = entries />
4<#if navItems?has_content>
5
6
7 <#assign itemsSize = getterUtil.getInteger(entries?size)/>
8 <#assign portletSetupCustomTitle = "" />
9 <#assign portletSetupCustomDescription = "" />
10 <#if portletDisplay.getPortletSetup()??>
11 <#assign portletSetupCustomTitle = portletDisplay.getPortletSetup().getValue("portletSetupTitle_${themeDisplay.getLanguageId()}", "") />
12 <#assign portletSetupCustomTitleHTMLMarkup = portletDisplay.getPortletSetup().getValue("portletSetupCustomTitleHTMLMarkup", "") />
13 <#assign portletSetupCustomDescription = portletDisplay.getPortletSetup().getValue("portletSetupDescription_${themeDisplay.getLanguageId()}", "") />
14 </#if>
15 <#assign uuidBannerDefault = themeDisplay.getLayoutSet().getSettingsProperty("banner")!""/>
16 <#assign pathBannerDefault = ""/>
17 <#if uuidBannerDefault!="">
18 <#assign pathBannerDefault= dlTool.getPathByUuid(uuidBannerDefault, groupId)/>
19 </#if>
20 <nav class="template template-home-weather">
21
22 <div class="row">
23
24 <div class="col-12">
25
26 <div class="row row-menu-weather gx-5 gy-5">
27 <#if itemsSize gte 1>
28 <#if validator.isNotNull(navItems[0])>
29 <#assign navItem1= navItems[0]!/>
30 <#if validator.isNotNull(navItem1.getLayout()) && validator.isNotNull(navItem1.getLayout())>
31 <#assign layout = navItem1.getLayout()! />
32 <#assign layoutName = layout.getName(locale) />
33 <#assign layoutTitle = layoutTool.getTitle(layout, locale)! />
34 <#assign layoutDescription = layoutTool.getDescription(layout, locale)! />
35 <#assign layoutImageUuid = layoutTool.getLayoutSetting(layout, "image")! />
36 <#assign layoutImage = dlTool.getThumbnailByUuid(layoutImageUuid, themeDisplay.getScopeGroupId(), "3", pathBannerDefault)! />
37 <div class="col-xl-6 col-lg-12 col-md-12 col-sm-12 first">
38 <a class="card card-background card-background-title-middle" href="${navItem1.getURL()}" title="${languageUtil.format(request, 'go-to-x', layoutName)}">
39 <span class="d-block image-wrapper aspect-ratio-bg-cover" style="background-image: url('${layoutImage}');">
40 <img class="hide-accessible" src="${layoutImage}" alt="${languageUtil.get(request,'image')} ${layoutName}"/>
41 <span class="card-body">
42 <span class="card-title" >${navItem1.getName()}</span>
43 </span>
44 </span>
45 </a>
46 </div>
47 </#if>
48 </#if>
49 </#if>
50
51 <#if itemsSize gte 2>
52 <#if navItems[1]?has_content>
53 <#assign navItem2 = navItems[1]!/>
54 <#if validator.isNotNull(navItem2.getLayout()) && validator.isNotNull(navItem2.getLayout())>
55 <#assign layout = navItem2.getLayout()! />
56 <#assign layoutName = layout.getName(locale) />
57 <#assign layoutTitle = layoutTool.getTitle(layout, locale)! />
58 <#assign layoutIcon = navItem2.iconURL()! />
59 <#assign layoutDescription = layoutTool.getDescription(layout, locale)! />
60 <#assign layoutImageUuid = layoutTool.getLayoutSetting(layout, "image")! />
61 <#assign layoutImage = dlTool.getThumbnailByUuid(layoutImageUuid, themeDisplay.getScopeGroupId(), "3", pathBannerDefault)! />
62 <div class="col col-video">
63 <a class="card card-background card-background-title-middle" href="${navItem2.getURL()}" title="${languageUtil.format(request, 'go-to-x', layoutName)}">
64 <span class="d-block image-wrapper aspect-ratio-bg-cover" style="background-image: url('${layoutImage}');">
65 <img class="hide-accessible" src="${layoutImage}" alt="${languageUtil.get(request,'image')} ${layoutName}"/>
66 <span class="card-body">
67 <#if validator.isNotNull(layoutIcon)>
68 <span class="image-icon-wrapper">
69 <img class="icon" src="${layoutIcon}" alt="play"/>
70 </span>
71 </#if>
72 <span class="card-title" >${navItem2.getName()}</span>
73 </span>
74 </span>
75 </a>
76 </div>
77 </#if>
78 </#if>
79 </#if>
80 <#assign jsonWeather = weatherTool.getWeather(request, "33024", false)! />
81 <div class="col-xl-2dot4 col-lg-4 col-md-12 col-sm-12 col-weather">
82 <#if jsonWeather?has_content>
83
84 <div class="weather items text-white d-block">
85 <div class="weather-info image-wrapper aspect-ratio-bg-cover">
86 <#assign weatherImage = weatherTool.getDayImage(0, jsonWeather)! />
87 <#assign weatherTemperature = weatherTool.getDayTemperature(0, jsonWeather)! />
88 <#assign weatherTemperatureMax = weatherTool.getDayTemperatureMax(0, jsonWeather)! />
89 <#assign weatherTemperatureMin = weatherTool.getDayTemperatureMin(0, jsonWeather)! />
90 <#assign statusDescription = weatherTool.getDayStatusDescription(0, jsonWeather)! />
91
92 <span class="d-block weather-container">
93 <span class="weather-label d-lg-block">
94 ${portletSetupCustomTitle}
95 </span>
96
97 <#if weatherImage?has_content || weatherTemperature?has_content>
98 <span class="d-flex align-items-center temperature-wrapper">
99 <#if weatherImage?has_content>
100 <img class="visible" src="${themeDisplay.getPathThemeRoot()}/images/aemet/max/${weatherImage}_g.png" alt="El tiempo" />
101 </#if>
102
103 <#if weatherTemperature?has_content>
104 <span class="temperature" >${weatherTemperature}º</span>
105 </#if>
106 </span>
107 </#if>
108 <span class="range-temperatures d-flex align-items-center flex-wrap">
109 <#if statusDescription?has_content>
110 <span class="status-description mr-2 <#if locale!=themeDisplay.getSiteDefaultLocale()>hide</#if>">${statusDescription}</span>
111 </#if>
112 <span class="min-max-wrapper">
113 <span class="value">
114 ${weatherTemperatureMax}º/${weatherTemperatureMin}º
115 </span>
116 </span>
117 </span>
118 </span>
119 </div>
120 </div>
121 </#if>
122 </div>
123 </div>
124 </div>
125 </div>
126 </nav>
127</#if>