NEORIS signs a global agreement with FacePhi to digitize the onboarding of financial institutions - Asset Display Page

Publicador de Conteúdo
Ocorreu um erro ao processar o template.
Can't compare values of these types. Allowed comparisons are between two numbers, two strings, two dates, or two booleans.
Left hand operand is a sequence (wrapper: f.c.AddConcatExpression$ConcatenatedSequence).
Right hand operand is a string (wrapper: f.t.SimpleScalar).
The blamed expression:
==> variablesTitle != "none"  [in template "20099#20135#journal.getDDMTemplateKey()" at line 94, column 10]

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #if variablesTitle != "none" && varia...  [in template "20099#20135#journal.getDDMTemplateKey()" at line 94, column 5]
----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
2<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") /> 
3<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
4<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") /> 
5<#assign DLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")> 
6<#assign DLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")> 
7<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
8<#assign assetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") /> 
9 
10<#assign DLFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")> 
11 
12<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) /> 
13<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() /> 
14<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) /> 
15<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() /> 
16 
17 
18<#function getContenidosRelacionados entryId1 > 
19 <#assign contenidosRelacionados = [] /> 
20 <#assign assetLinks = assetLinkLocalService.getDirectLinks(entryId1?number) /> 
21  
22 <#list assetLinks as assetLink> 
23  <#assign entryId2 = assetLink.getEntryId2() /> 
24   <#assign contenidosRelacionados = contenidosRelacionados + [assetEntryLocalService.getAssetEntry(entryId2)] /> 
25 </#list> 
26  
27 <#return contenidosRelacionados> 
28</#function> 
29 
30 
31<#function initializeVariables journalArticle variables> 
32	<#assign document = saxReaderUtil.read(journalArticle.getContent()) > 
33	<#assign rootElement = document.getRootElement() > 
34	 
35	<#assign values = {} /> 
36	 
37	<#list variables as key> 
38	 
39		 <#list rootElement.elements() as dynamicElement> 
40	    	<#-- Asignacion --> 
41	    	<#assign repetibleValue = [] /> 
42			<#assign xPathSelector = saxReaderUtil.createXPath("//dynamic-element[@name='${key}']/dynamic-content[@language-id='${locale}']")> 
43			 
44			<#if !xPathSelector.selectSingleNode(rootElement)??>	 
45				<#assign xPathSelector = saxReaderUtil.createXPath("//dynamic-element[@name='${key}']/dynamic-content")> 
46			</#if> 
47			 
48			<#if xPathSelector.selectSingleNode(rootElement)??> 
49				<#assign nodes = xPathSelector.selectNodes(rootElement) /> 
50				<#if nodes?size &gt; 1> 
51					<#list nodes as node> 
52						<#assign repetibleValue = repetibleValue + [node.getStringValue()]> 
53					</#list> 
54				<#else> 
55					<#assign value = xPathSelector.selectSingleNode(rootElement).getStringValue() /> 
56				</#if> 
57			<#else> 
58				<#assign value = "none" /> 
59			</#if> 
60			 
61			<#assign values = values + {"${key}" : (repetibleValue?size &gt; 0)?then(repetibleValue, value)} /> 
62		</#list> 
63		 
64	</#list> 
65	 
66	<#return values /> 
67</#function> 
68 
69 
70<#assign 	VOID = freeMarkerPortletPreferences.setValue("groupId", themeDisplay.getScopeGroupId()?string) 
71			VOID = freeMarkerPortletPreferences.setValue("portletSetupPortletDecoratorId", "barebone") 
72			VOID = freeMarkerPortletPreferences.setValue("articleId", setting)  /> 
73 
74<#assign docsRelacionados = []/> 
75<#assign entries = getContenidosRelacionados(currentArticleAssetEntryId) /> 
76 
77<#list entries as curEntry> 
78    <#assign journalArticle = curEntry.getAssetRenderer().getArticle() /> 
79    <#assign variables = initializeVariables(journalArticle, ["Title","Document"]) /> 
80     
81    <#if variables.Title?is_enumerable> 
82        <#assign variablesTitle = variables.Title[0]> 
83    <#else> 
84        <#assign variablesTitle = variables.Title> 
85    </#if> 
86 
87    <#if variables.Document?is_enumerable> 
88        <#assign variablesDocument = variables.Document[0]> 
89    <#else> 
90        <#assign variablesDocument = variables.Document> 
91    </#if> 
92        <#assign variablesTitle = variables.Title> 
93        <#assign variablesDocument = variables.Document> 
94    <#if variablesTitle != "none" && variablesDocument != "none">   
95     
96     
97    <#assign  
98            defImage = variablesDocument?eval 
99            imageUUID = defImage["uuid"] 
100            imageGroupID = defImage["groupId"] 
101            imageFolderID = DLFileEntryLocalService.fetchFileEntry(imageUUID,imageGroupID?number).getFolderId() 
102			url = "/documents/" + imageGroupID + "/" + imageFolderID + "/" + defImage["title"] + "/" + imageUUID 
103        /> 
104     
105     
106     
107     
108        <#assign docsRelacionados = docsRelacionados + [{"Titular":variablesTitle,"Documento":url}]/> 
109    </#if>   
110</#list> 
111 
112 
113 
114<#assign categorys = assetCategoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey() )/> 
115 
116<#assign categorysBlog = "" /> 
117<#assign tagsBlog = [] /> 
118               
119<#list categorys as categorie> 
120    <#if assetVocabularyLocalService.getAssetVocabulary(categorie.getVocabularyId()).name == "Industries" > 
121        <#assign categorysBlog = categorie.getTitle(locale) /> 
122    </#if> 
123     
124     
125    <#if assetVocabularyLocalService.getAssetVocabulary(categorie.getVocabularyId()).name == "Blogs"> 
126        <#assign tagsBlog = tagsBlog + [categorie.getTitle(locale)] /> 
127    </#if> 
128     
129     
130</#list> 
131 
132 
133<#list themeDisplay.getURLCurrent()?split("?_com_liferay") as urlFriendly> 
134    <#if urlFriendly?index == 0> 
135        <#assign currentUrl = themeDisplay.getPortalURL() + urlFriendly /> 
136    </#if> 
137</#list> 
138 
139 
140<style> 
141    .h2 { 
142        display:none; 
143
144     
145     
146    #detailBlog .image-inner { 
147        position: relative; 
148        width: 100%; 
149        overflow: hidden; 
150
151     
152    #detailBlog .image-item { 
153        position: relative; 
154        display: block; 
155        align-items: center; 
156        width: 100%; 
157        transition: transform .6s ease; 
158        backface-visibility: hidden; 
159        perspective: 1000px; 
160
161     
162    #detailBlog .imgBackground { 
163        width: 100%; 
164        height: 700px; 
165        object-fit: cover; 
166        filter: brightness(75%); 
167
168     
169    #detailBlog .image-caption { 
170        position: absolute; 
171        top: 20%; 
172        bottom: 0; 
173        right: 0; 
174        left: 0; 
175        margin-left: 42%; 
176        text-align: left; 
177        max-width: 45%; 
178        z-index: 10; 
179        padding-top: 20px; 
180        padding-bottom: 20px; 
181
182     
183     
184    #detailBlog .triangle { 
185        bottom: -1px; 
186        position: absolute; 
187        width: 100%; 
188        height: 100%; 
189        background-color: white; 
190        padding: 0 10px 0 0; 
191        clip-path: polygon(100% 80%, 0 100%, 100% 100%); 
192
193     
194    #detailBlog .titleBlogDetail { 
195        font-weight:bold; 
196        color:white; 
197        font-size:3rem; 
198
199     
200    #detailBlog .hrBlogs { 
201        border: 0; 
202        border-top: 1px solid white; 
203        margin-top: .1rem; 
204        margin-bottom: .1rem; 
205
206     
207    #detailBlog { 
208        text-align: justify; 
209
210         
211    .imagenReborde { 
212        min-height: 72px; 
213        padding: 12px 8px; 
214
215     
216     
217     
218     
219 
220    #detailBlog .tagList { 
221        float: left; 
222        margin-right: 8px; 
223        padding: 8px 12px; 
224        border-radius: 2px; 
225        border: solid 1px #989da1; 
226        background-color: #f2f3f3; 
227        font-size:0.75rem; 
228        font-weight: bold; 
229        margin-top: 8px; 
230        list-style: none; 
231 
232
233 
234    #detailBlog .containerDocumentsAndSocial { 
235        margin-top: 20px; 
236
237 
238    #detailBlog .containerSocialMediaDetailEvent { 
239        list-style-type: none; 
240        padding: 0; 
241        margin: 0; 
242
243     
244    #detailBlog .containerSocialMediaDetailEvent li { 
245        display: inline-block; 
246        font-size: 20px; 
247
248     
249    #detailBlog .containerSocialMediaDetailEvent li a i { 
250        color: #1b69d7; 
251        padding-right: 15px; 
252
253     
254    #detailBlog .enlaceDoc { 
255        color: #000000; 
256          border-radius: 2px; 
257          border: solid 1px #989da1; 
258          background-color: #f2f3f3; 
259        padding: 5px; 
260        margin: 10px; 
261        cursor: pointer; 
262        font-weight:bold; 
263        font-size:0.75rem; 
264
265     
266     #detailBlog .enlaceDoc:hover { 
267        color: white!important; 
268        border-radius: 2px; 
269        border: solid 1px #1b69d7!important; 
270        background-color: #1b69d7!important; 
271
272      
273     
274     
275     
276    #detailBlog .containerSocialMediaDetailEvent2 { 
277        list-style-type: none; 
278        padding: 0; 
279        margin: 0; 
280        margin-bottom: 75px; 
281
282     
283    #detailBlog .containerSocialMediaDetailEvent2 li { 
284        display: inline-flex; 
285        font-size: 20px; 
286        padding-right: 10px; 
287
288     
289    #detailBlog .containerSocialMediaDetailEvent2 li a i { 
290        color: #1b69d7; 
291        padding-right: 10px; 
292
293 
294 
295    #detailBlog .containerDocumentsAndSocial2 { 
296        margin-top: 20px; 
297        text-align: right; 
298
299 
300    #detailBlog #relatedContentDoc span.PDFcolorContainer{ 
301        color: #007bff!important; 
302
303 
304    #detailBlog #relatedContentDoc span.PDFcolorContainer:hover{ 
305        color: #0056b3!important; 
306
307     
308     
309     
310    @media screen and  (max-width: 767px) { 
311        .hidden-xs { 
312            display: none !important; 
313
314         
315        #personCreator { 
316            padding:20px; 
317            margin:0; 
318           
319 
320
321         
322        .containerDocumentsAndSocial { 
323            display:none; 
324
325         
326        .imagenReborde { 
327            border-radius: 4px; 
328            border: solid 1px #d1d3d4; 
329
330         
331        .hrOcultoMovil { 
332            display:none; 
333
334 
335        #detailBlog .containerDocumentsAndSocial2 { 
336            text-align: center; 
337
338         
339        #detailBlog .containerSocialMediaDetailEvent2 { 
340            padding: 12px 0px; 
341            background: #F2F3F3; 
342
343 
344
345     
346    @media screen and  (min-width: 768px) and (max-width: 991px) {  
347        .hidden-sm { 
348            display: none !important; 
349
350
351     
352     
353    @media screen and  (min-width: 992px) and (max-width: 1199px) {  
354        .hidden-md { 
355            display: none !important; 
356
357
358     
359     
360    @media screen and  (min-width: 1200px) { 
361        .hidden-lg { 
362            display: none !important; 
363
364 
365        #personCreator{ 
366            margin-top: 2.55em; 
367
368
369 
370@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { 
371    #detailImage{ 
372        margin-bottom: 3em; 
373
374
375     
376</style> 
377 
378 
379 
380 
381<div id="detailBlog"> 
382 
383    <div id="detailImage" class="row"> 
384        <div class="col-md-12 hidden-xs" style="padding:0;"> 
385            <div class="image-inner"> 
386                <div class="image-item"> 
387                    <div style="background: linear-gradient(left, rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('${Image.getData()}') no-repeat center center; 
388                        background: linear-gradient(to right, rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('${Image.getData()}') no-repeat center center; 
389                        background-size: cover;"> 
390                        <img src='${Image.getData()}' class="imgBackground" style="opacity: 0;"> 
391                    </div> 
392                     
393                    <div class="image-caption"> 
394                        <h2 style="color:white; font-size:1.5rem;">${categorysBlog}</h2> 
395                        <h1 class="titleBlogDetail">${Title.getData()}</h1> 
396                        <hr class="hrBlogs"> 
397                    </div> 
398                </div> 
399                <div class="triangle"></div> 
400            </div> 
401             
402             
403        </div> 
404        <div class="col-xs-12 hidden-sm hidden-md hidden-lg  " style="padding:0;"> 
405            <div class="image-inner"> 
406                <div class="image-item"> 
407                    <div style="background: linear-gradient(left, rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('${Image.getData()}') no-repeat center center; 
408                        background: linear-gradient(to right, rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('${Image.getData()}') no-repeat center center; 
409                        background-size: cover;"> 
410                        <img src='${Image.getData()}' class="imgBackground" style="opacity: 0; height:400px;"> 
411                    </div> 
412                    <div class="image-caption" style="  margin-left: 10%; 
413                                                        max-width: 70%;"> 
414                        <h2 style="color:white; font-size:1.25rem;">${categorysBlog}</h2> 
415                        <h1 class="titleBlogDetail"  style="font-size:2rem;">${Title.getData()}</h1> 
416                        <hr class="hrBlogs "> 
417                    </div> 
418                </div> 
419            </div> 
420            
421        </div> 
422    </div> 
423    <!-- /documents/20126/45625/WaterMark.svg/3d1ebd88-3b1a-3d3b-56a8-61756af2d2f5?t=1557327665025 -->   
424    <div  style="background: linear-gradient(rgba(255, 255, 255,0.94), rgba(255, 255, 255, 0.94)), url(/documents/20126/45625/rotatedWaterMark.svg) no-repeat;"> 
425    <div class="neo-main-width"> 
426        <div id="contentBlog" class="row"> 
427            <div id="personCreator" class="col-md-3 col-xs-12"> 
428                 
429                <div class="imagenReborde"> 
430                 
431                 
432                 
433                <#if ImageAutor.getData() != ""> 
434                    <img style="width:3em; border-radius: 50%; margin-right: 11px; float: left;" src="${ImageAutor.getData()}" /> 
435                <#else> 
436                    <img style="width:3rem; border-radius: 50%; margin-right: 11px; float: left;" src=" /image/user_male_portrait" /> 
437                </#if> 
438                 
439				<#if NameAutor?? && !NameAutor.isEmpty()> 
440					<span style=" 
441                              font-family: Helvetica; 
442                              font-size: 1rem; 
443                              font-weight: normal; 
444                              font-style: normal; 
445                              font-stretch: normal; 
446                              line-height: normal; 
447                              letter-spacing: normal; 
448                              color: #000000;">By ${NameAutor.getData()}</span><br> 
449				</#if> 
450 
451				<#if positionAutor?? && !positionAutor.isEmpty()> 
452					<span style=" 
453                              font-family: Helvetica; 
454                              font-size: 0.875em; 
455                              font-weight: normal; 
456                              font-style: normal; 
457                              font-stretch: normal; 
458                              line-height: normal; 
459                              letter-spacing: normal; 
460                              color: #4a4a4a;">${PositionAutor.getData()}</span> 
461				</#if> 
462                  
463                </div> 
464                 
465                 
466                
467                <hr class="hrOcultoMovil"> 
468                 
469                 
470                 
471            <div class="containerDocumentsAndSocial"> 
472                <span style=" 
473                            font-family: Helvetica; 
474                            font-size: 1rem; 
475                            font-weight: bold; 
476                            font-style: normal; 
477                            font-stretch: normal; 
478                            line-height: normal; 
479                            letter-spacing: normal; 
480                            color: #000000;"><@liferay_ui["message"] key="Share" /></span><br> 
481                <ul class="containerSocialMediaDetailEvent"> 
482                    <li> 
483                        <a href="http://www.linkedin.com/shareArticle?&title=${currentArticle.getTitle()}&mini=true&url=${currentUrl}"><i class="icon-linkedin"></i></a> 
484                    </li> 
485                     
486                    <li> 
487                        <a href="http://www.facebook.com/sharer.php?u=${currentUrl}"><i class="icon-facebook"></i></a> 
488                    </li>   
489                     
490                    <li> 
491                        <a href="https://twitter.com/intent/tweet?text=${currentArticle.getTitle()}%20${currentUrl}" data-size="large"><i class="icon-twitter"></i></a> 
492                    </li> 
493                     
494                    <li> 
495                        <a href="mailto:?subject=${Title.getData()}&amp;body=${Abstract.getData()}"><i class="icon-envelope-alt"></i></a> 
496                    </li> 
497                </ul> 
498         
499            </div> 
500                 
501                 
502                 
503            </div> 
504             
505            <div id="detailBlog"  class="col-md-6 col-xs-12"> 
506                 
507                <#assign Date_Data = getterUtil.getString(Date.getData())> 
508 
509                <#if validator.isNotNull(Date_Data)> 
510                	<#assign Date_DateObj = dateUtil.parseDate("yyyy-MM-dd", Date_Data, locale)> 
511                 
512                	<p style="text-transform: capitalize; color: #5f6569; font-size:0.87rem;">${dateUtil.getDate(Date_DateObj, "MMMM dd, yyyy", locale)}</p> 
513                </#if> 
514                <div style="font-size:1rem; line-height: 1.5; 
515  letter-spacing: normal; 
516  color: #000000; text-align:left;"> 
517                ${Content.getData()} 
518                </div> 
519                <#if docsRelacionados?has_content > 
520                    <div id="relatedContentDoc" style="margin-bottom: 20px;"> 
521                    <#list docsRelacionados as doc> 
522                    <span class="PDFcolorContainer"> 
523                        <i class="glyphicon glyphicon-download-alt"></i><a href="${doc.Documento}" target="_blank"> ${doc.Titular}</a> 
524                    </span> 
525                    </#list> 
526                    </div> 
527                </#if> 
528                 
529               
530                
531                
532    
533         
534                
535               <div class="row" style="padding:0; padding-bottom: 15px; margin-top: -8px; border-bottom: 1px solid rgba(0,0,0,0.1);"> 
536                   <#list tagsBlog as tag> 
537                        <div class="tagList">${tag} </div> 
538                   </#list> 
539               </div> 
540                
541               <div class="containerDocumentsAndSocial2"> 
542                <ul class="containerSocialMediaDetailEvent2"> 
543                    <li> 
544                        <span style=" 
545                            font-family: Helvetica; 
546                            font-size: 1rem; 
547                            font-weight: bold; 
548                            font-style: normal; 
549                            font-stretch: normal; 
550                            line-height: normal; 
551                            letter-spacing: normal; 
552                            color: #000000;"><@liferay_ui["message"] key="Share" /></span> 
553                    </li> 
554 
555                    <li> 
556                        <a href="http://www.linkedin.com/shareArticle?&title=${currentArticle.getTitle()}&mini=true&url=${currentUrl}"><i class="icon-linkedin"></i></a> 
557                    </li> 
558                     
559                    <li> 
560                        <a href="http://www.facebook.com/sharer.php?u=${currentUrl}"><i class="icon-facebook"></i></a> 
561                    </li> 
562                     
563                    <li> 
564                        <a href="https://twitter.com/intent/tweet?text=${currentArticle.getTitle()}%20${currentUrl}" data-size="large"><i class="icon-twitter"></i></a> 
565                    </li>   
566                     
567                    <li> 
568                        <a href="mailto:?subject=${Title.getData()}&amp;body=${Abstract.getData()}"><i class="icon-envelope-alt"></i></a> 
569                    </li> 
570                </ul> 
571         
572            </div> 
573                
574                
575                
576                 
577            </div> 
578             
579            <div id="contentRelated"  class="col-md-3 hidden-xs" style="padding:0;"> 
580             
581                
582                 
583                 <@liferay_portlet["runtime"] 
584                        defaultPreferences=freeMarkerPortletPreferences.toString() 
585                        portletProviderAction=portletProviderAction.VIEW 
586                        instanceId="blogFeaturedTitleyasdf1234" 
587                        portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" /> 
588                 
589                <@liferay_portlet["runtime"] 
590                        defaultPreferences=freeMarkerPortletPreferences.toString() 
591                        portletProviderAction=portletProviderAction.VIEW 
592                        instanceId="blogFeaturedyasdf1234" 
593                        portletProviderClassName="com.liferay.asset.kernel.model.AssetEntry" /> 
594                         
595                <@liferay_portlet["runtime"] 
596                        defaultPreferences=freeMarkerPortletPreferences.toString() 
597                        portletProviderAction=portletProviderAction.VIEW 
598                        instanceId="blogViewedTitleyasdf1234" 
599                        portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" /> 
600                         
601                <@liferay_portlet["runtime"] 
602                        defaultPreferences=freeMarkerPortletPreferences.toString() 
603                        portletProviderAction=portletProviderAction.VIEW 
604                        instanceId="blogViewedyasdf1234" 
605                        portletProviderClassName="com.liferay.asset.kernel.model.AssetEntry" /> 
606                         
607                 
608                 
609                
610            </div> 
611             
612        </div> 
613    </div> 
614 
615 
616    </div> 
617</div>