Listador de contenidos web
Destaquem
Agenda
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>
- S'ha produït un error mentre es processava la plantilla.
The following has evaluated to null or missing: ==> $serviceLocator [in template "10901#10934#280191233" at line 1, column 22] ---- Tip: Variable references must not start with "$", unless the "$" is really part of the variable name. ---- 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 groupUtil = $serviceLocator.f... [in template "10901#10934#280191233" at line 1, column 1] ----
1<#assign groupUtil = $serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
2<#assign group = groupUtil.getGroup(groupId)>
3<#assign articleId=.vars["reserved-article-id"].data>
4<#assign articleUrlTitle=.vars["reserved-article-url-title"].data>
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
6<#assign journalArticle = journalArticleLocalService.getArticle(groupId,articleId)>
7
8<#assign assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")>
9<#assign assetEntry = assetEntryService.getEntry("com.liferay.journal.model.JournalArticle",journalArticle.getResourcePrimKey())>
10
11<#assign assetCategoryService=serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")>
12<#assign categorias=assetCategoryService.getEntryCategories(assetEntry.getEntryId())>
13
14
15<!--### NOVES DATES AGENDA-->
16<#assign dataI="">
17<#assign dataF="">
18<#assign Data_Inici_Data = getterUtil.getString(Data_Inici.getData())>
19
20<#if validator.isNotNull(Data_Inici_Data)>
21 <#assign Data_Inici_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Inici_Data, locale)>
22
23 <#assign dataI = dateUtil.getDate(Data_Inici_DateObj, "dd/MM/yyyy", locale)>
24</#if>
25
26
27<#assign Data_Fi_Data = getterUtil.getString(Data_Fi.getData())>
28
29<#if validator.isNotNull(Data_Fi_Data)>
30 <#assign Data_Fi_DateObj = dateUtil.parseDate("yyyy-MM-dd", Data_Fi_Data, locale)>
31
32 <#assign dataF = dateUtil.getDate(Data_Fi_DateObj, "dd/MM/yyyy", locale)>
33</#if>
34<!--#### FI NOVES DATES AGENDA-->
35<#assign colorcaja="#000">
36<#assign periodicitat="">
37<#assign bibliolab="">
38<#list categorias as categoria>
39 <#if (categoria.getVocabularyId()==64158317)>
40 <#if (periodicitat=="")>
41 <#assign periodicitat=categoria.getTitle(locale,true)>
42 <#else>
43 <#assign periodicitat=periodicitat + "," + categoria.getTitle(locale,true)>
44 </#if>
45 </#if>
46 <#if (categoria.getVocabularyId()==341097)>
47 <#if (categoria.getTitle(locale,true)=="BiblioLab")>
48 <#assign bibliolab="1">
49 </#if>
50 <#if (categoria.getTitle(locale,true)=="Artístic")>
51 <#assign colorcaja="#ed9a6e">
52 </#if>
53 <#if (categoria.getTitle(locale,true)=="Científic")>
54 <#assign colorcaja="#a8d5c1">
55 </#if>
56 <#if (categoria.getTitle(locale,true)=="Tecnològic")>
57 <#assign colorcaja="#86d0f3">
58 </#if>
59 <#if (categoria.getTitle(locale,true)=="Lectoescriptura")>
60 <#assign colorcaja="#efd077">
61 </#if>
62 </#if>
63</#list>
64
65<#assign MAX_CHARACTERS_SIZE = 75>
66<#assign MAX_CHARACTERS_SIZE_DESKTOP = 110>
67<#assign MIN_CHARACTERS_SIZE = 40>
68
69<#assign geniusGroupId="6200569">
70<#if (scopeGroupId?number != geniusGroupId?number)>
71
72
73<#if (colorcaja=="#ed9a6e" )>
74
75 <div class="eventoEncontradoDetalleBiblio">
76 <div class="eventoEncontrado">
77 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitlec}">
78 <div class="row">
79 <div class="col-md-3 col-sm-4 col-3">
80 <div class="agendaCuadro" style=" background:#ed9a6e !important;
81 border-bottom: 3px solid #ed9a6e !important;
82 border-right: 3px solid #ed9a6e !important;
83 margin-top:1px;margin-left:8px">
84
85 <style>
86 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
87 </style>
88 <div class="fecha">
89 <div class="dia">${dataI}</div>
90 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
91 <div class="dia"><div class="until">-</div>${dataF}</div>
92 </#if>
93 <div class="hora">${horaInici.getData()}</div>
94 <div class="periodicidad">${periodicitat}</div>
95
96 </div>
97 </div>
98 <#if (bibliolab=="1")>
99 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
100 </#if>
101
102 </div>
103 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #ed9a6e !important;">
104 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #ed9a6e !important;">${group.getDescriptiveName()}</div>
105 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
106 <p class="letrasAgenda eventoDescripcion">
107 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
108 </p>
109 </div>
110 </div>
111 </a>
112 </div>
113</div>
114
115<#elseif (colorcaja=="#a8d5c1")>
116 <div class="eventoEncontradoDetalleBiblio">
117 <div class="eventoEncontrado">
118 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
119 <div class="row">
120 <div class="col-md-3 col-sm-4 col-3">
121 <div class="agendaCuadro" style=" background:#a8d5c1 !important;
122 border-bottom: 3px solid #a8d5c1 !important;
123 border-right: 3px solid #a8d5c1 !important;
124 margin-top:1px;margin-left:8px">
125
126
127 <style>
128 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
129 </style>
130 <div class="fecha">
131 <div class="dia">${dataI}</div>
132 <#if (!($Data_Inici.getData() == $Data_Fi.getData()))>
133 <div class="dia"><div class="until">-</div>${dataF}</div>
134 </#if>
135 <div class="hora">${horaInici.getData()}</div>
136 <div class="periodicidad">${periodicitat}</div>
137
138 </div>
139 </div>
140 <#if bibliolab=="1">
141 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
142 </#if>
143
144 </div>
145 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #a8d5c1 !important;">
146 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #a8d5c1 !important;">${group.getDescriptiveName()}</div>
147 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
148 <p class="letrasAgenda eventoDescripcion">
149 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
150
151 </p>
152 </div>
153 </div>
154 </a>
155 </div>
156</div>
157<#elseif ( colorcaja=="#86d0f3" )>
158 <div class="eventoEncontradoDetalleBiblio">
159 <div class="eventoEncontrado">
160 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
161 <div class="row">
162 <div class="col-md-3 col-sm-4 col-3">
163 <div class="agendaCuadro" style=" background:#86d0f3 !important;
164 border-bottom: 3px solid #86d0f3 !important;
165 border-right: 3px solid #86d0f3 !important;
166 margin-top:1px;margin-left:8px">
167
168
169 <style>
170 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
171 </style>
172 <div class="fecha">
173 <div class="dia">${dataI}</div>
174 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
175 <div class="dia"><div class="until">-</div>${dataF}</div>
176 </#if>
177 <div class="hora">${horaInici.getData()}</div>
178 <div class="periodicidad">${periodicitat}</div>
179
180 </div>
181 </div>
182 <#if bibliolab=="1">
183 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
184 </#if>
185
186 </div>
187 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style=" border:3px solid #86d0f3 !important;">
188 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #86d0f3 !important;">${group.getDescriptiveName()}</div>
189 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
190 <p class="letrasAgenda eventoDescripcion">
191 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
192
193 </p>
194 </div>
195 </div>
196 </a>
197 </div>
198</div>
199<#elseif ( colorcaja=="#efd077" )>
200 <div class="eventoEncontradoDetalleBiblio">
201 <div class="eventoEncontrado">
202 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
203 <div class="row">
204 <div class="col-md-3 col-sm-4 col-3">
205 <div class="agendaCuadro" style=" background:#efd077 !important;
206 border-bottom: 3px solid #efd077 !important;
207 border-right: 3px solid #efd077 !important;
208 margin-top:1px;margin-left:8px">
209
210
211 <style>
212 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
213 </style>
214 <div class="fecha">
215 <div class="dia">${dataI}</div>
216 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
217 <div class="dia"><div class="until">-</div>${dataF}</div>
218 </#if>
219 <div class="hora">${horaInici.getData()}</div>
220 <div class="periodicidad">${periodicitat}</div>
221
222 </div>
223 </div>
224 <#if bibliolab=="1">
225 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
226 </#if>
227
228 </div>
229 <div class="col-md-9 col-sm-8 col-9 cajaLetras" style="border:3px solid #efd077 !important;">
230 <div class="bibliotecasevento eventoLugar" style="border-bottom:3px solid #efd077 !important;">${group.getDescriptiveName()}</div>
231 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
232 <p class="letrasAgenda eventoDescripcion">
233 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
234 </p>
235 </div>
236 </div>
237 </a>
238 </div>
239</div>
240<#else>
241 <div class="eventoEncontradoDetalleBiblio">
242 <div class="eventoEncontrado">
243 <a href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
244 <div class="row">
245 <div class="col-md-3 col-sm-4 col-3">
246 <div class="agendaCuadro" style="margin-top:1px;margin-left:8px">
247 <style>
248 .dia{color:#e0afb5; font-size:12px; text-transform:uppercase; font-family: 'Oswald', sans-serif; overflow: hidden; text-overflow: ellipsis;}
249 </style>
250 <div class="fecha">
251 <div class="dia">${dataI}</div>
252 <#if ( !($Data_Inici.getData() == $Data_Fi.getData()))>
253 <div class="dia"><div class="until">-</div>${dataF}</div>
254 </#if>
255 <div class="hora">${horaInici.getData()}</div>
256 <div class="periodicidad">${periodicitat}</div>
257
258 </div>
259 </div>
260 <#if bibliolab=="1">
261 <div class="logoBiblioLab" style="margin-top:20px !important;"></div>
262 </#if>
263
264 </div>
265 <div class="col-md-9 col-sm-8 col-9 cajaLetras">
266 <div class="bibliotecasevento eventoLugar">${group.getDescriptiveName()}</div>
267 <p class="tituloevento eventoTitulo" style="font-weight:bold;">${stringUtil.shorten(htmlUtil.stripHtml(titol.getData()),50)}</p>
268 <p class="letrasAgenda eventoDescripcion">
269 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()),100)}
270 </p>
271 </div>
272 </div>
273 </a>
274 </div>
275</div>
276</#if>
277
278<script type="text/javascript">
279
280jQuery(document).ready(function(){
281
282 $('.biblioLabTheme div.fecha').each(function(){
283 var fecParent=jQuery(this);
284 var dia = jQuery(fecParent).children('div.dia');
285 var locale = '$locale'.replace(/\_/g,"-")
286 if(!fecParent.hasClass('parsedFecha') && dia.length==1){
287 var obj = jQuery(dia);
288 var fec=obj.text().split('/');
289 var eventFec = new Date(fec[2],parseInt(fec[1])-1,fec[0]);
290
291 var newMonth = jQuery('<div class="bibliolabMes">');
292 newMonth.text(eventFec.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
293
294 jQuery(newMonth).prependTo(obj.parent());
295
296 var newDay = jQuery('<div class="bibliolabDia">');
297 newDay.text(eventFec.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
298 jQuery(newDay).prependTo(obj.parent());
299 obj.addClass('biblioHide');
300 fecParent.addClass('parsedFecha');
301 obj=jQuery(fecParent).children('div.hora');
302 if(obj.length>0){
303 var newDiaHora = jQuery('<div class="diaHora">');
304 var diaStr = eventFec.toLocaleDateString(locale, {weekday: 'long'});
305 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
306 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
307 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
308 }
309 }
310 if(!fecParent.hasClass('parsedFecha') && dia.length==2){
311 var obj1 = jQuery(dia[0]);
312 var obj2 = jQuery(dia[1]);
313 var fec1=obj1.text().split('/');
314 var fec2=obj2.text().replace(/\-/g,"").split('/');
315 var eventFec1 = new Date(fec1[2],parseInt(fec1[1])-1,fec1[0]);
316 var eventFec2 = new Date(fec2[2],parseInt(fec2[1])-1,fec2[0]);
317 var newMonth = jQuery('<div class="bibliolabMes">');
318 var newMonth1 = jQuery('<div class="bibliolabMes dobleMes">');
319 var newMonth2 = jQuery('<div class="bibliolabMes dobleMes">');
320 var newDay1 = jQuery('<div class="bibliolabDia dobleDia">');
321 var newDay2 = jQuery('<div class="bibliolabDia dobleDia">');
322 var newUnder = jQuery('<div class="biblioUnderScore">');
323
324 var monthPrepend2 = newMonth2.text(eventFec2.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
325 var monthPrepend1 = newMonth1.text(eventFec1.toLocaleDateString(locale, { month: 'long'}).substring(0,3).toUpperCase());
326 var monthPrepend = newMonth.text(eventFec2.toLocaleDateString(locale, {month: 'long'}).substring(0,3).toUpperCase());
327
328 if (monthPrepend1.text() != monthPrepend2.text()) {
329 jQuery(newMonth2).prependTo(obj2.parent());
330 jQuery(newMonth1).prependTo(obj1.parent());
331 } else {
332 jQuery(newMonth).prependTo(obj2.parent());
333 }
334
335 newUnder.text('-');
336 newDay2.text(eventFec2.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
337 jQuery(newDay2).prependTo(obj2.parent());
338 jQuery(newUnder).prependTo(obj2.parent());
339 newDay1.text(eventFec1.toLocaleDateString(locale, { day: 'numeric'}).toUpperCase());
340 jQuery(newDay1).prependTo(obj1.parent());
341
342 obj1.parents('.agendaCuadro').css('width','4.5em');
343 fecParent.css('width','4em');
344 obj1.addClass('biblioHide');
345 obj2.addClass('biblioHide');
346
347 fecParent.addClass('parsedFecha');
348 obj=jQuery(fecParent).children('div.hora');
349 if(obj.length>0){
350 var newDiaHora = jQuery('<div class="diaHora">');
351 var diaStr = eventFec1.toLocaleDateString(locale, {weekday: 'long'});
352 newDiaHora.text(diaStr.charAt(0).toUpperCase()+diaStr.slice(1));
353 jQuery('<span class="hora"> '+obj.text()+'</span>').appendTo(newDiaHora);
354 obj.addClass('biblioHide');
355 newDiaHora.prependTo(fecParent.parents('li').find('.cajaLetras'));
356 }
357 }
358 });
359});
360</script>
361
362
363<#else>
364<!--##Genius##-->
365
366<a style="width:220px!important; height:150px; float:left;" href="/detall-esdeveniment/-/contingut/${groupId}/${articleUrlTitle}">
367 <div class="col-md-3 col-sm-3 col-2" style="width:60px; height:100px; float:left !important;">
368 <div class="agendaCuadroVerde" style="">
369 <div class="fecha">
370
371 <div class="dia">${dataI?upper_case()}</div>
372 <div class="fechaDia">${stringUtil.shorten(periodicitat, 6 )}</div>
373 <div class="hora">${horaInici.getData()}</div>
374
375 </div>
376 </div>
377 <#if bibliolab=="1">
378 <div class="logoBiblioLab" style="width:auto !important; background-size:contain !important; margin-top:20px !important;"></div>
379 </#if>
380 </div>
381
382 <div class="col-md-9 col-sm-9 col-10" style=" width:150px; float:left !important;">
383 <div class="cajaLetras">
384 <p class="eventoLugar" >
385 ${group.getDescriptiveName()}
386
387 </p>
388 <p class="eventoTitulo">
389 <span class="negrita">${titol.getData()}</span>
390 </p>
391 <p class="eventoDescripcion">
392 <#if (title.getData()?length lte 50)>
393 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MAX_CHARACTERS_SIZE )}
394 <#else>
395 ${stringUtil.shorten(htmlUtil.stripHtml(descripcio.getData()), MIN_CHARACTERS_SIZE )}
396 </#if>
397
398 </p>
399
400 </div>
401 </div>
402</a>
403</#if>