Ruta de navegación
Faceta de categoría
Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing: ==> saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Denominacion']/dynamic-content").selectSingleNode(rootElement) [in template "20101#20128#304312" at line 29, column 46] ---- 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: #if saxReaderUtil.createXPath("dynami... [in template "20101#20128#304312" at line 29, column 41] ----
1<#assign journalArticleClassName = "com.liferay.journal.model.JournalArticle">
2<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
3<#assign assetEntryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil"] />
4
5<#assign asociacionStructureKey = "ASOCIACION" >
6<#assign indexAsociacion = 1 >
7
8<div class="search-total-label">
9 ${languageUtil.format(locale, "x-results-for-x", [searchContainer.getTotal(), "<strong>" + htmlUtil.escape(searchResultsPortletDisplayContext.getKeywords()) + "</strong>"], false)}
10</div>
11
12<div class="display-list">
13 <ul class="list-group" id="search-results-display-list">
14 <#if entries?has_content>
15 <#list entries as entry>
16 <#assign esAsociacion = "false" >
17 <#if entry.getClassName() == "com.liferay.journal.model.JournalArticle">
18 <#assign journalArticle = journalArticleLocalService.fetchLatestArticle(entry.getClassPK()) />
19
20 <#if journalArticle.getDDMStructureKey() == asociacionStructureKey >
21 <#assign esAsociacion = "true" >
22 </#if>
23 </#if>
24
25 <#if esAsociacion == "true" >
26 <#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplay.getLocale())) >
27 <#assign rootElement = document.getRootElement() >
28
29 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Denominacion']/dynamic-content").selectSingleNode(rootElement)>
30 <#assign denominacion = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Denominacion']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
31 <#else>
32 <#assign denominacion = "" >
33 </#if>
34
35 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Siglas']/dynamic-content").selectSingleNode(rootElement)>
36 <#assign siglas = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Siglas']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
37 <#else>
38 <#assign siglas = "" >
39 </#if>
40
41 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='TipoDeEntidad']/dynamic-content").selectSingleNode(rootElement)>
42 <#assign tipoDeEntidad = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='TipoDeEntidad']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
43 <#else>
44 <#assign tipoDeEntidad = "" >
45 </#if>
46
47 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='DireccionPostal']/dynamic-content").selectSingleNode(rootElement)??>
48 <#assign direccion = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='DireccionPostal']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
49 <#else>
50 <#assign direccion = "" >
51 </#if>
52
53 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Telefono']/dynamic-content").selectSingleNode(rootElement) >
54 <#assign telefono = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Telefono']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
55 <#else>
56 <#assign telefono = "" >
57 </#if>
58
59 <#-- <#attempt>
60 <#assign ubicacion = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Ubicacion']/dynamic-content").selectSingleNode(rootElement).getStringValue()?eval >
61 <#recover>
62 <#assign ubicacion = "" >
63 </#attempt> -->
64
65 <#if saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Email']/dynamic-content").selectSingleNode(rootElement)>
66 <#assign email = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Email']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
67 <#else>
68 <#assign email = "" >
69 </#if>
70
71 <#attempt>
72 <#assign web = saxReaderUtil.createXPath("dynamic-element[@name='EntidadSolicitanteSeparador']/dynamic-element[@name='Web']/dynamic-content").selectSingleNode(rootElement).getStringValue() >
73 <#assign text_web=web />
74 <#if !web?starts_with("http")>
75 <#assign web="http://"+web />
76 </#if>
77 <#recover>
78 <#assign web = "" >
79 </#attempt>
80
81 <li class="list-group-item list-group-item-flex">
82 <div class="d-flex justify-content-between flex-column flex-md-row pl-3 pr-3 w-100">
83 <section class="autofit-section">
84 <div class="list-group-title">
85 <h4>
86 <a href="${entry.getViewURL()}">
87 ${siglas} / ${entry.getHighlightedTitle()}
88 </a>
89 </h4>
90 </div>
91 <div class="search-results-metadata">
92 <p class="list-group-subtext">
93 <#if entry.isModelResourceVisible()>
94 <ul class="pl-2 mt-3">
95 <#if web != "" >
96 <h6 class="text-default">
97 Web: <a href="${web}" target="_blank">${text_web}</a>
98 </h6>
99 </#if>
100 <#if direccion != "" >
101 <h6 class="text-default">
102 ${direccion}
103 </h6>
104 </#if>
105 <#if telefono != "" >
106 <h6 class="text-default">
107 Tfno: ${telefono}
108 </h6>
109 </#if>
110 <#if email != "" >
111 <h6 class="text-default">
112 Email: ${email}
113 </h6>
114 </#if>
115
116 </ul>
117 </#if>
118
119 <#if entry.isLocaleReminderVisible()>
120 <@liferay_ui["icon"]
121 icon="../language/${entry.getLocaleLanguageId()}"
122 message=entry.getLocaleReminder()
123 />
124 </#if>
125
126 </p>
127
128 <#if entry.isFieldsVisible()>
129 <p class="list-group-subtext">
130 <#assign separate = false />
131
132 <#list entry.getFieldDisplayContexts() as fieldDisplayContext>
133 <#if separate>
134 ·
135 </#if>
136
137 <span class="badge">${fieldDisplayContext.getName()}</span>
138
139 <span>${fieldDisplayContext.getValuesToString()}</span>
140
141 <#assign separate = true />
142 </#list>
143 </p>
144 </#if>
145
146 <#if entry.isAssetCategoriesOrTagsVisible()>
147 <h6 class="search-document-tags text-default">
148 <@liferay_asset["asset-tags-summary"]
149 className=entry.getClassName()
150 classPK=entry.getClassPK()
151 paramName=entry.getFieldAssetTagNames()
152 portletURL=entry.getPortletURL()
153 />
154
155 <@liferay_asset["asset-categories-summary"]
156 className=entry.getClassName()
157 classPK=entry.getClassPK()
158 paramName=entry.getFieldAssetCategoryIds()
159 portletURL=entry.getPortletURL()
160 />
161 </h6>
162 </#if>
163
164 <#if entry.isDocumentFormVisible()>
165 <h6 class="expand-details text-default">
166 <span class="list-group-text" style="">
167 <a href="javascript:;">
168 <@liferay.language key="details" />...
169 </a>
170 </span>
171 </h6>
172
173 <div class="hide search-results-list table-details table-responsive">
174 <table class="table">
175 <thead>
176 <tr>
177 <th class="key-column">
178 <@liferay.language key="key" />
179 </th>
180 <th>
181 <@liferay.language key="value" />
182 </th>
183 </tr>
184 </thead>
185
186 <tbody>
187 <#list entry.getDocumentFormFieldDisplayContexts() as fieldDisplayContext>
188 <tr>
189 <td class="key-column table-details-content">
190 <strong>${htmlUtil.escape(fieldDisplayContext.getName())}</strong>
191 </td>
192 <td class="table-details-content">
193 <code>
194 ${fieldDisplayContext.getValuesToString()}
195 </code>
196 </td>
197 </tr>
198 </#list>
199 </tbody>
200 </table>
201 </div>
202 </#if>
203
204 </div>
205 </section>
206 <!-- <div class="d-flex justify-content-center mt-2 mt-sm-0 pl-lg-3 asociacion-map">
207 <#if ubicacion?has_content>
208 <@liferay_map["map-display"]
209 geolocation= true
210 latitude = ubicacion.latitude
211 longitude = ubicacion.longitude
212 name=indexAsociacion?string
213 />
214 </#if>
215 </div>
216 <#assign indexAsociacion++ >
217 </div> -->
218 </li>
219 <#else>
220 <li class="list-group-item list-group-item-flex">
221 <#if !entry.isTemporarilyUnavailable()>
222 <div class="autofit-col autofit-col-expand">
223 <section class="autofit-section">
224 <div class="list-group-title">
225 <a href="${entry.getViewURL()}">
226 ${entry.getHighlightedTitle()}
227 </a>
228 </div>
229
230 <div class="search-results-metadata">
231 <p class="list-group-subtext">
232 <#if entry.isModelResourceVisible()>
233 <span class="subtext-item">
234 <strong>${entry.getModelResource()}</strong>
235 </span>
236 </#if>
237
238 <#if entry.isLocaleReminderVisible()>
239 <@liferay_ui["icon"]
240 icon="../language/${entry.getLocaleLanguageId()}"
241 message=entry.getLocaleReminder()
242 />
243 </#if>
244
245 <#if entry.isCreatorVisible()>
246 <span class="subtext-item">
247 ·
248
249 <@liferay.language key="written-by" />
250
251 <strong>${htmlUtil.escape(entry.getCreatorUserName())}</strong>
252 </span>
253 </#if>
254
255 <#if entry.isCreationDateVisible()>
256 <span class="subtext-item">
257 <@liferay.language key="on-date" />
258
259 ${entry.getCreationDateString()}
260 </span>
261 </#if>
262 </p>
263
264 <#if entry.isContentVisible()>
265 <p class="list-group-subtext">
266 <span class="subtext-item">
267 ${entry.getContent()}
268 </span>
269 </p>
270 </#if>
271
272 <#if entry.isFieldsVisible()>
273 <p class="list-group-subtext">
274 <#assign separate = false />
275
276 <#list entry.getFieldDisplayContexts() as fieldDisplayContext>
277 <#if separate>
278 ·
279 </#if>
280
281 <span class="badge">${fieldDisplayContext.getName()}</span>
282
283 <span>${fieldDisplayContext.getValuesToString()}</span>
284
285 <#assign separate = true />
286 </#list>
287 </p>
288 </#if>
289
290 <#if entry.isAssetCategoriesOrTagsVisible()>
291 <h6 class="search-document-tags text-default">
292 <@liferay_asset["asset-tags-summary"]
293 className=entry.getClassName()
294 classPK=entry.getClassPK()
295 paramName=entry.getFieldAssetTagNames()
296 portletURL=entry.getPortletURL()
297 />
298
299 <@liferay_asset["asset-categories-summary"]
300 className=entry.getClassName()
301 classPK=entry.getClassPK()
302 paramName=entry.getFieldAssetCategoryIds()
303 portletURL=entry.getPortletURL()
304 />
305 </h6>
306 </#if>
307
308 <#if entry.isDocumentFormVisible()>
309 <h6 class="expand-details text-default">
310 <span class="list-group-text" style="">
311 <a href="javascript:;">
312 <@liferay.language key="details" />...
313 </a>
314 </span>
315 </h6>
316
317 <div class="hide search-results-list table-details table-responsive">
318 <table class="table">
319 <thead>
320 <tr>
321 <th class="key-column">
322 <@liferay.language key="key" />
323 </th>
324 <th>
325 <@liferay.language key="value" />
326 </th>
327 </tr>
328 </thead>
329
330 <tbody>
331 <#list entry.getDocumentFormFieldDisplayContexts() as fieldDisplayContext>
332 <tr>
333 <td class="key-column table-details-content">
334 <strong>${htmlUtil.escape(fieldDisplayContext.getName())}</strong>
335 </td>
336 <td class="table-details-content">
337 <code>
338 ${fieldDisplayContext.getValuesToString()}
339 </code>
340 </td>
341 </tr>
342 </#list>
343 </tbody>
344 </table>
345 </div>
346 </#if>
347 </div>
348 </section>
349 </div>
350 <#else>
351 <div class="autofit-col">
352 <div class="alert alert-danger">
353 <@liferay.language_format
354 arguments="result"
355 key="is-temporarily-unavailable"
356 />
357 </div>
358 </div>
359 </#if>
360 </li>
361 </#if>
362 </#list>
363 </#if>
364 </ul>
365</div>
366
367<@liferay_aui.script use="aui-base">
368 A.one('#search-results-display-list').delegate(
369 'click',
370 function(event) {
371 var currentTarget = event.currentTarget;
372
373 currentTarget.siblings('.search-results-list').toggleClass('hide');
374 },
375 '.expand-details'
376 );
377</@liferay_aui.script>
378
379<style>
380 .asociacion-map .lfr-map{
381 width: 260px;
382 min-height: 260px;
383 }
384
385 @media (min-width: 768px) and (max-width: 991.98px){
386 .asociacion-map .lfr-map{
387 width: 220px;
388 min-height: 220px;
389 height: 220px;
390 }
391 }
392 @media (min-width: 1200px) {
393 .asociacion-map .lfr-map {
394 width: 300px;
395 min-height: 300px;
396 }
397 }
398</style>
399
400
401<script>
402 var categorias = document.getElementsByClassName("taglib-asset-categories-summary");
403
404 for(var i = 0; i < categorias.length; i++){
405 if(categorias[i].innerText.includes("Servicios:") || categorias[i].innerText.includes("Serveis:")){
406 categorias[i].remove()
407 }
408 }
409
410</script>