Listador de contenidos web

Destaquem

Veure més destacats Veure menys destacats

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> 

Projectes

Veure més destacats Veure menys destacats