Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing: ==> serviceLocator.findService("com.liferay.portlet.asset.service.AssetCategoryLocalService") [in template "20155#20195#8270688" at line 7, column 38] ---- 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 assetCategoryLocalService = s... [in template "20155#20195#8270688" at line 7, column 1] ----
1<script>
2 $( function() {
3 $( "#tabs" ).tabs();
4 } );
5 </script>
6
7<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetCategoryLocalService")>
8<#assign assetVocabularyLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetVocabularyLocalService")>
9<#assign assetTagLocalService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetTagLocalService")>
10<#assign listVoc = assetVocabularyLocalService.getGroupVocabularies(themeDisplay.getSiteGroupId())>
11
12<!--Multiidioma-->
13<#assign knowMore = languageUtil.get(locale, "know-more")/>
14<#assign moreInformation = languageUtil.get(locale, "more-information")/>
15
16<#assign visorId = "56_INSTANCE_0gwL1icRxpTH" />
17<#if themeDisplay.getLayout().isPrivateLayout()>
18 <#assign contexto = "/group/canal-online/"/>
19<#else>
20 <#assign contexto = "/web/canal-online/"/>
21</#if>
22
23<#if listVoc?has_content>
24 <#list listVoc as voc>
25 <#if voc.name == "Eventos">
26 <#assign vocId = voc.vocabularyId />
27 </#if>
28 </#list>
29 </#if>
30
31<#macro eventUp>
32 <div class="contenidoPrincipal">
33 <div style="display: table-row">
34 <#if ImgPrincipal?has_content>
35 <div class="imagenNot">
36 <img class="img" alt="Imagen" src="${ImgPrincipal}" />
37 </div>
38 </#if>
39 <div class="contText">
40 <div class="titNoticia">
41 ${TituloPrincipal}
42 </div>
43 <#if (FechaEvento_Data > 0)>
44 <#assign FechaEvento_DateObj = dateUtil.newDate(FechaEvento_Data)>
45 <div class="fechaTipo">
46 <span class="fecha">${dateUtil.getDate(FechaEvento_DateObj, "dd MMM yyyy", locale)}</span>
47 <#if categories?has_content>
48 <#list categories as cat>
49 <#if cat.getVocabularyId() ==vocId>
50 <span class="tipo">${cat.name?upper_case}</span>
51 <span class="lugar"> | ${LocalidadEvento}</span>
52 </#if>
53 </#list>
54 </#if>
55 </div>
56 </#if>
57 <div class="limited-description-box">
58 <div class="descripcion limited-description-red">
59 ${DescGenerica}
60 </div>
61 </div>
62 <div class="cont-btnCnt">
63 <#assign url = "${contexto}"+"detalle-evento/-/journal_content/"+visorId+"/${groupId}/${articleId}?" />
64 <a href="${url}">
65 <button class="btn btn-primary" type="button">${knowMore}</button>
66 </a>
67 </div>
68 </div>
69 </div>
70 </div>
71</#macro>
72
73
74<#macro eventDown>
75 <ul class="listNot">
76 <li class="item">
77 <#if ImgPrincipal?has_content>
78 <div class="imagenNot">
79 <figure class="contImg">
80 <img class="img" alt="Imagen" src="${ImgPrincipal}" />
81 </figure>
82 </div>
83 </#if>
84 <div class="contText">
85 <div class="titNoticia">
86 ${TituloPrincipal}
87 </div>
88 <#if (FechaEvento_Data > 0)>
89 <#assign FechaEvento_DateObj = dateUtil.newDate(FechaEvento_Data)>
90 <div class="fechaTipo">
91 <span class="lugar">${dateUtil.getDate(FechaEvento_DateObj, "dd MMM yyyy", locale)} </span>
92 <#if categories?has_content>
93 <#list categories as cat>
94 <#if cat.getVocabularyId() ==vocId>
95 <span class="lugar"> | ${cat.name?upper_case}</span>
96 </#if>
97 </#list>
98 </#if>
99 </div>
100 <div class="fechaTipo"><span class="lugar">${LocalidadEvento}</span></div>
101 </#if>
102 <div class="enlaceNoticia">
103 <#assign url = "${contexto}"+"detalle-evento/-/journal_content/"+visorId+"/${groupId}/${articleId}?" />
104 <a href="${url}">${moreInformation} <i class="icon-chevron-right"></i></a>
105 </div>
106 </div>
107 </li>
108 </ul>
109</#macro>
110
111
112
113
114<#if entries?has_content>
115 <#assign tipo = "" />
116 <div class="contenido intrudeTop">
117 <#assign contNotDest = 0>
118 <#assign idArticulo = "" />
119 <#if entries?size == 3>
120 <#assign count = 1 />
121 <#else>
122 <#assign count = 0 />
123 </#if>
124 <#list entries as curEntry>
125 <#assign article = curEntry.getAssetRenderer().getArticle() />
126 <#assign docXml = saxReaderUtil.read(curEntry.getAssetRenderer().getArticle().getContentByLocale(locale)) />
127
128 <#assign TituloPrincipal = docXml.valueOf("//dynamic-element[@name='TituloPrincipal']/dynamic-content/text()") />
129 <#assign FechaEvent = docXml.valueOf("//dynamic-element[@name='FechaEvento']/dynamic-content/text()") />
130 <#assign FechaEvento_Data = getterUtil.getLong(FechaEvent)>
131 <#assign Tag = assetTagLocalService.getTagNames(curEntry.getAssetRenderer().getClassName(), article.getResourcePrimKey())/>
132 <#assign categories = assetCategoryLocalService.getCategories(curEntry.getAssetRenderer().getClassName(), article.getResourcePrimKey())/>
133 <#assign DescGenerica = docXml.valueOf("//dynamic-element[@name='DescripcionEvento']/dynamic-content/text()") />
134 <#assign ImgPrincipal = docXml.valueOf("//dynamic-element[@name='ImagenDestacado']/dynamic-content/text()") />
135 <#assign DireccionEvento = docXml.valueOf("//dynamic-element[@name='DireccionEvento']/dynamic-content/text()") />
136 <#assign LocalidadEvento = docXml.valueOf("//dynamic-element[@name='LocalidadEvento']/dynamic-content/text()") />
137 <#assign groupId = themeDisplay.getScopeGroupId() />
138 <#assign articleId = article.getArticleId() />
139 <#assign idArticulo = article.getArticleId() />
140 <#assign count = count + 1 />
141 <#if count == 1>
142 <@eventUp/>
143 <#elseif count == 2>
144 <div class="content-middle">
145 <div class="contenidoSecundario left">
146 <@eventDown/>
147 </div>
148 <#elseif count == 3>
149 <div class="contenidoSecundario center">
150 <@eventDown/>
151 </div>
152 <#elseif count == 4>
153 <div class="contenidoSecundario right">
154 <@eventDown/>
155 </div>
156 </#if>
157 </#list>
158 </div>
159 </div>
160</#if>