Se ha producido un error al procesar la plantilla.
The following has evaluated to null or missing: ==> BuscadorAgendaService.getEvento(calendarBookingId?number, themeDisplay.getLocale(), themeDisplay.getPortalURL()) [in template "20101#20128#523890" at line 19, column 23] ---- 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 evento = BuscadorAgendaServic... [in template "20101#20128#523890" at line 19, column 5] ----
1<#assign HttpUtil = staticUtil["com.liferay.portal.kernel.util.HttpUtil"] />
2<#assign HttpComponentsUtil = staticUtil["com.liferay.portal.kernel.util.HttpComponentsUtil"]>
3<#assign url = themeDisplay.getURLPortal()+themeDisplay.getURLCurrent()>
4<#assign calendarBookingId = HttpComponentsUtil.getParameter(url,"entryId")?string>
5<#assign BuscadorAgendaService = serviceLocator.findService("caib.einasalut.agenda.buscador.api.BuscadorAgendaService") />
6<#assign HtmlUtil = staticUtil["com.liferay.portal.kernel.util.HtmlUtil"] />
7<#assign images_folder = themeDisplay.getPathThemeImages() />
8
9<#if request.getParameter("entryId")?has_content >
10 <#attempt>
11 <#assign calendarBookingId = request.getParameter("entryId")?number>
12 <#recover>
13 <#assign calendarBookingId = "" />
14 </#attempt>
15</#if>
16
17<#assign evento = "" >
18<#if calendarBookingId?has_content >
19 <#assign evento = BuscadorAgendaService.getEvento(calendarBookingId?number, themeDisplay.getLocale(), themeDisplay.getPortalURL()) />
20</#if>
21
22<#if evento != "" >
23 <div class="common-margin mt-4 mb-4">
24 <div class="row mb-4">
25 <div class="col-12">
26 <h1 class="common-title c-csecundario mb-5 text-center text-uppercase">
27 ${evento.title}
28 </h1>
29 </div>
30 <#if evento.imagenPath?has_content >
31 <div class="col-12 col-md-6">
32 <#else>
33 <div class="col-md-6">
34 </#if>
35 <#if evento.startTime?substring(0, 10) == evento.endTime?substring(0, 10) >
36 <!-- SEPARAR FECHAS Y HORAS-->
37 <#assign fechaInicio = evento.startTime?substring(0, 10) />
38 <#assign horaInicio = evento.startTime?substring(13, evento.startTime?length) />
39 <#assign horaFin = evento.endTime?substring(12, evento.endTime?length) />
40 <h3 class="caib-semibold mb-2">
41 <div class="align-items-center common-text d-flex mb-3">
42 <div class="evento-icono-4 evento-icono-size-2 b-csecundario mr-3"></div>
43 <span>${fechaInicio}</span>
44 </div>
45 <div class="align-items-center common-text d-flex mb-3">
46 <div class="evento-icono-3 evento-icono-size-2 b-csecundario mr-3"></div>
47 <span>${horaInicio} - ${horaFin} h.</span>
48 </div>
49 </h3>
50 <#else>
51 <#assign fechaInicio = evento.startTime?substring(0, 10) />
52 <#assign fechaFin = evento.endTime?substring(0, 10) />
53 <#assign horaInicio = evento.startTime?substring(13, evento.startTime?length) />
54 <#assign horaFin = evento.endTime?substring(12, evento.endTime?length) />
55 <h3 class="caib-semibold mb-2">
56 <div class="align-items-center common-text d-flex mb-3">
57 <div class="evento-icono-4 evento-icono-size-2 b-csecundario mr-3"></div>
58 <div>
59 <@liferay.language key="eventos.filtro.desde" />: <span>${fechaInicio}</span> <@liferay.language key="eventos.detalle.alas" /> ${horaInicio}h.<br/>
60 <@liferay.language key="eventos.filtro.hasta" />: <span>${fechaFin}</span> <@liferay.language key="eventos.detalle.alas" /> ${horaFin}h.
61 </div>
62 </div>
63 </h3>
64 </#if>
65 <#if evento.localizacion != "">
66 <div class="align-items-center common-text d-flex mb-3">
67 <div class="evento-icono-size-2 mr-3"></div>
68 <span>${evento.localizacion}</span>
69 </div>
70 </#if>
71 <#if evento.direccion != "">
72 <div class="align-items-center common-text d-flex mb-3">
73 <div class="evento-icono-2 evento-icono-size-2 b-csecundario mr-3"></div>
74 <div class="d-block">
75 <a href="https://www.google.com/maps/search/?api=1&query=${evento.direccion}" target="_blank">
76 <@liferay.language key="eventos.detalle.direccion" />
77 </a>
78 </div>
79 </div>
80 </#if>
81
82
83
84
85 </div>
86 <#if evento.imagenPath?has_content >
87 <div class="col-12 col-md-6">
88 <img
89 alt="${evento.title?replace('"',' ')}"
90 title="${evento.title?replace('"',' ')}"
91 class="w-100 mb-3"
92 src="${evento.imagenPath}"
93 />
94 </div>
95 </#if>
96 </div>
97 <div class="row m-0">
98 <div class="col-12" id="caib-evento-titulo">
99 <p class="common-subtitle">
100 ${evento.title}
101 </p>
102 </div>
103 <#if evento.descripcion != "">
104 <div class="col-12 mb-4" id="caib-evento-descripcion">
105 <p class="common-text">
106 <#--${HtmlUtil.render(evento.descripcion)}-->
107 ${evento.descripcion}
108 </p>
109 </div>
110 </#if>
111 <#if evento.webEvento != "" >
112 <div class="col-12" id="caib-evento-web">
113 <p class="mb-1 common-text font-weight-bold">
114 <@liferay.language key="eventos.detalle.masinfo" />
115 </p>
116 <a href="${evento.webEvento}" target="_blank">
117 <i>${evento.webEvento}</i>
118 </a>
119 </div>
120 </#if>
121 </div>
122 </div>
123</#if>
124<style>
125 #caib-evento-descripcion *{
126 font-family: 'Poppins', Helvetica, Arial, sans-serif; !important;
127 font-size: 15px !important;
128 }
129 #caib-evento-relacionados a{
130 text-decoration: none !important;
131 }
132 #caib-evento-relacionados a:hover *{
133 opacity: .7;
134 }
135</style>