Título Acontece na Unicap

Relação dos classificados para o Pré-universitário Unicap 2020

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> selectedOptions?first  [in template "22092#22119#81555" at line 68, column 104]

----
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 selectedKey = selectedOptions...  [in template "22092#22119#81555" at line 68, column 81]
----
1<style> 
2    .noticia-custom .component-title, .noticia-custom .asset-avatar, .noticia-custom .user-info, .noticia-custom .asset-details .asset-ratings, .noticia-custom .asset-details .taglib-social-bookmarks { 
3        display: none; 
4
5    .asset-full-content { 
6        opacity: 0; 
7        visibility: hidden; 
8
9    .noticia-custom .lfr-asset-anchor { 
10        position: absolute; 
11        top: 0; 
12
13</style> 
14<#setting url_escaping_charset="UTF-8"> 
15<#assign  
16    groupId = themeDisplay.getLayout().getGroupId() 
17    journalArticleId = .vars['reserved-article-id'].data 
18    journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") 
19    Article = journalArticleLocalService.getArticle(groupId, journalArticleId) 
20    classPK = Article.getResourcePrimKey()?eval 
21    currentURL = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() 
22 
23    assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") 
24    entry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", classPK) 
25/> 
26<div class="row"> 
27    <div class="col-md-8"> 
28        <div class="blog-internal"> 
29            <div class="banner-noticia"> 
30                <div class="date-blog absolute"> 
31                    <span class="day-date">${dateUtil.getDate(Article.getDisplayDate(), "dd", locale)}</span> 
32                    <span class="year-date">${dateUtil.getDate(Article.getDisplayDate(), "MMM yyyy", locale)}</span> 
33                </div> 
34                <#if CoverImage.getData()?? && CoverImage.getData() != ""> 
35                    <img class="embed-responsive" alt="${CoverImage.getAttribute("alt")}" data-fileentryid="${CoverImage.getAttribute("fileEntryId")}" src="${CoverImage.getData()}" /> 
36                </#if> 
37 
38                <@liferay_util["html-top"]><meta name="twitter:title" content="${.vars['reserved-article-title'].data} "></@> 
39                <@liferay_util["html-top"]><meta name="twitter:description" content="<#outputformat "plainText">${htmlUtil.stripHtml(Content.getData())}</#outputformat>"></@> 
40                <@liferay_util["html-top"]><meta name="twitter:image" content="${themeDisplay.getURLPortal()}${CoverImage.getData()}"></@> 
41                <@liferay_util["html-top"]><meta name="twitter:card" content="summary_large_image"></@> 
42                <@liferay_util["html-top"]><meta property="og:type" content="article"></@> 
43                <@liferay_util["html-top"]><meta property="og:site_name" content="${themeDisplay.getSiteGroupName()}"></@> 
44                <@liferay_util["html-top"]><meta property="og:title" content="${.vars['reserved-article-title'].data}"></@> 
45                <@liferay_util["html-top"]><meta property="og:description" content="<#outputformat "plainText">${htmlUtil.stripHtml(Content.getData())}</#outputformat>"></@> 
46                <@liferay_util["html-top"]><meta property="og:image" content="${themeDisplay.getURLPortal()}${CoverImage.getData()}"></@> 
47                <@liferay_util["html-top"]><meta property="og:url" content="${themeDisplay.getURLPortal()}${themeDisplay.getURLCurrent()}"></@> 
48 
49                <div class="title-absolute"> 
50                    <div class="bg-titlte"></div> 
51                    <h1>${.vars['reserved-article-title'].data}</h1> 
52                </div> 
53            </div> 
54            <div class="container-content blog-padding"> 
55                <div class="author-blog"> 
56                  <#-- INICIO DECLARAÇÕES VARIAVEIS PARA ULTIMO EDITOR -->   
57                  <#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") /> 
58                  <#assign groupId = groupId?long /> 
59                  <#assign articleId = .vars["reserved-article-id"].data /> 
60                  <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
61                  <#assign article = journalArticleLocalService.getLatestArticle(groupId, articleId) /> 
62                  <#assign modifierUser = userLocalService.getUser(article.getStatusByUserId()) /> 
63                  <#-- FIM DECLARAÇÕES --> 
64               
65								 
66								    <#assign selectedOptions = selectPublished.getOptions() /> 
67                    <#assign optionsMap = selectPublished.getOptionsMap() />          
68										<#assign selectedKey = selectedOptions?first /> 
69 
70										<#-- <#assign publicadoPor = .vars['reserved-article-author-name'].data /> nome do criador do conteúdo --> 
71										 
72										<#assign publicadoPor = modifierUser.getFullName() />								 
73                     
74                    <#if selectedKey?has_content>                        
75                          <@liferay_ui["message"] key="published"/> <span class="text-lowercase"><@liferay_ui["message"] key="per"/></span>: ${optionsMap[selectedKey]!""}   
76										<#else> 
77										      <@liferay_ui["message"] key="published"/> <span class="text-lowercase"><@liferay_ui["message"] key="per"/></span>: ${publicadoPor} 
78										</#if>	 
79                </div> 
80								 
81                <div class="content-blog"> 
82                    ${Content.getData()} 
83                </div> 
84                 
85                <div class="content-social-blog"> 
86                    
87                    <div class="content-view"> 
88                        <span class="text-capitalize"><@liferay_ui["message"] key="views"/>:  </span> 
89                        <div class="views"> 
90                            <span class="icon-eye-open"></span> 
91                            <span class="number-views">${entry.getViewCount()}</span> 
92                        </div> 
93                    </div> 
94 
95                  <#--  <div class="content-share"> 
96                        <span class="text-capitalize"><@liferay_ui["message"] key="share"/></span> 
97                        <div class="click-share"> 
98                            <@liferay_social_bookmarks["bookmarks"] 
99                                className="com.liferay.journal.model.JournalArticle" 
100                                classPK=journalArticleId?eval 
101                                displayStyle="inline" 
102                                target="_blank" 
103                                title=.vars['reserved-article-title'].data 
104                                url=currentURL 
105                            /> 
106                        </div> 
107                    </div> --> 
108										 
109										<div class="content-share"> 
110    <span class="text-capitalize"><@liferay_ui["message"] key="share"/>:</span> 
111    <div class="click-share"> 
112 
113        <#assign shareTitle = .vars['reserved-article-title'].data?url /> 
114        <#assign shareURL = currentURL?url /> 
115 
116        <a href= "https://www.facebook.com/sharer/sharer.php?u=${shareURL}" 
117				 
118           target="_blank" rel="noopener noreferrer" class="share-btn share-facebook" aria-label="Facebook" style="text-decoration: none;"> 
119            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor"> 
120                <path d="M22 12c0-5.52-4.48-10-10-10S2 6.48 2 12c0 4.84 3.44 8.87 8 9.8V15H8v-3h2V9.5C10 7.57 11.57 6 13.5 6H16v3h-2c-.55 0-1 .45-1 1v2h3v3h-3v6.95c5.05-.5 9-4.76 9-9.95z"/> 
121            </svg> 
122        </a> 
123 
124        <a href="https://twitter.com/intent/tweet?url=${shareURL}&text=${shareTitle}" 
125           target="_blank" rel="noopener noreferrer" class="share-btn share-x" aria-label="X (Twitter)" style="text-decoration: none;"> 
126            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor"> 
127                <path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-4.714-6.231-5.401 6.231H2.746l7.73-8.835L1.254 2.25H8.08l4.253 5.622 5.911-5.622zm-1.161 17.52h1.833L7.084 4.126H5.117z"/> 
128            </svg> 
129        </a> 
130 
131        <a href="https://www.linkedin.com/shareArticle?mini=true&url=${shareURL}&title=${shareTitle}" 
132           target="_blank" rel="noopener noreferrer" class="share-btn share-linkedin" aria-label="LinkedIn" style="text-decoration: none;"> 
133            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor"> 
134                <path d="M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14m-.5 15.5v-5.3a3.26 3.26 0 0 0-3.26-3.26c-.85 0-1.84.52-2.32 1.3v-1.11h-2.79v8.37h2.79v-4.93c0-.77.62-1.4 1.39-1.4a1.4 1.4 0 0 1 1.4 1.4v4.93h2.79M6.88 8.56a1.68 1.68 0 0 0 1.68-1.68c0-.93-.75-1.69-1.68-1.69a1.69 1.69 0 0 0-1.69 1.69c0 .93.76 1.68 1.69 1.68m1.39 9.94v-8.37H5.5v8.37h2.77z"/> 
135            </svg> 
136        </a> 
137 
138        <a href="https://wa.me/?text=${shareTitle}%20${shareURL}" 
139           target="_blank" rel="noopener noreferrer" class="share-btn share-whatsapp" aria-label="WhatsApp" style="text-decoration: none;"> 
140            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor"> 
141                <path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 0 0-3.48-8.413z"/> 
142            </svg> 
143        </a> 
144 
145    </div> 
146</div> 
147										 
148                </div> 
149            </div> 
150             
151            <#if AssociarPagina?? && AssociarPagina.getSiblings()?has_content> 
152                <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") /> 
153                <#if AssociarPagina.getData()?? && AssociarPagina.getData() != ""> 
154                    <div class="brc-noticias hide"> 
155                        <#list AssociarPagina.getSiblings() as cur_AssociarPagina> 
156                            <#if cur_AssociarPagina.getData()?eval.layoutId??> 
157                                <#assign layout = layoutService.getLayout(themeDisplay.getScopeGroupId(),false,cur_AssociarPagina.getData()?eval.layoutId?number) /> 
158                                <#assign pageTitleCustom = layout.getName(locale) /> 
159                                <li class="breadcrum-custom-news"> 
160                                    <a class="text-light" title="${pageTitleCustom}" href="${cur_AssociarPagina.getFriendlyUrl()}"> 
161                                        ${pageTitleCustom} 
162                                    </a> 
163                                </li> 
164                            </#if> 
165                        </#list> 
166                    </div> 
167                </#if> 
168            </#if> 
169             
170        </div> 
171    </div> 
172    <div class="d-none d-xl-block col-xl-1"></div> 
173    <div class="col-md-4 col-xl-3"> 
174        <#assign 
175            currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", classPK) 
176            currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() 
177        /> 
178 
179        <#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService")! /> 
180 
181        <#if assetLinkLocalService?has_content> 
182            <#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId, true) /> 
183        <#else> 
184            <#assign currentArticleRelatedLinks = [] /> 
185        </#if> 
186         
187        <#if currentArticleRelatedLinks?size != 0> 
188            <#assign 
189                baseUrl = currentURL?split(.vars['reserved-article-url-title'].data)[0] 
190            /> 
191            <div class="row"> 
192                <#list currentArticleRelatedLinks[0..*5] as related_entry> 
193                    <#assign  
194                        relatedAssetEntryId = related_entry.getEntryId2()  
195                        relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId) 
196                        relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() 
197                        relatedArticle = journalArticleLocalService.getLatestArticle(relatedAssetEntryPrimKey) 
198                        viewURL = baseUrl + relatedArticle.getUrlTitle() 
199 
200                        article = relatedArticle 
201                        docXml = saxReaderUtil.read(article.getContent()) 
202                        contentNoticia = docXml.valueOf("//dynamic-element[@name='Content']/dynamic-content/text()") 
203                        contentInfoComplementar = docXml.valueOf("//dynamic-element[@name='InfoComplementar']/dynamic-content/text()") 
204                        image = docXml.valueOf("//dynamic-element[@name='CoverImage']/dynamic-content/text()") 
205                        imgJson = jsonFactoryUtil.createJSONObject(image) 
206                        urlImage = "/documents/"+ imgJson.groupId +"/" +imgJson.fileEntryId +"/"+ imgJson.name?url +"/"+imgJson.uuid 
207 
208                        colorBg = "vermelho" 
209                        colorText = "secondary" 
210                    /> 
211                    <#if related_entry?is_even_item> 
212                        <#assign  
213                            colorBg = "secondary" 
214                            colorText = "white" 
215                        /> 
216                    </#if> 
217                    <#if contentInfoComplementar?? && contentInfoComplementar != ""> 
218                        <div class="col-md-12 mb-6"> 
219                            <#if image?? && image != ""> 
220                                <img src="${urlImage}" alt="info complementar" /> 
221                            </#if> 
222                            <div class="card-footer"> 
223                                ${contentInfoComplementar} 
224                            </div> 
225                        </div> 
226                    <#else> 
227                        <div class="col-md-12 mb-6"> 
228                            <div class="card-related"> 
229                                <#if getterUtil.getBoolean(ImagemPossuiFiltro.getData())> 
230                                    <div class="card bg-${colorBg}"> 
231                                <#else> 
232                                    <div class="card"> 
233                                </#if> 
234                                    <div class="background-image bg-color-yes" style="background-image: url(${urlImage});"> 
235                                    </div> 
236                                    <div class="card-footer bg-${colorBg}"> 
237                                        <h3 class="font-size-default"> 
238                                            <a href="${viewURL}" class="stretched-link text-${colorText}" title="${article.getTitle(locale)}"> 
239                                                ${article.getTitle(locale)} 
240                                            </a> 
241                                        </h3> 
242                                    </div> 
243                                </div> 
244                            </div> 
245                        </div> 
246                    </#if> 
247                </#list> 
248            </div> 
249        </#if> 
250    </div> 
251</div> 
252 
253<style> 
254    .card-related h3 { 
255        font-size: 1.7rem; 
256        margin: 0; 
257        font-weight: normal; 
258
259    .card-related:hover .card { 
260        background-color: #690013!important; 
261
262    .card-related a { 
263        transition: color ease 0.4s; 
264
265    .card-related a:hover { 
266        color: #fff!important; 
267        text-decoration: none; 
268
269    .card-related { 
270        height: 100%; 
271
272    .card-related .card { 
273        margin: 0; 
274        height: 100%; 
275        transition: background-color ease 0.4s; 
276
277    .card-related .background-image { 
278        min-height: 257px; 
279        width: 100%; 
280        overflow: hidden; 
281        background-size: cover; 
282        background-position: center; 
283        background-repeat: no-repeat; 
284        mix-blend-mode: multiply; 
285        opacity: 1; 
286        transition: opacity ease 0.4s; 
287
288    .card-related .card-footer { 
289        padding: 1.25rem; 
290
291    .card-related .bg-color-no { 
292        mix-blend-mode: normal; 
293
294    .card-related .font-size-smaller { 
295        font-size: 1.6rem; 
296
297    .card-related .font-size-bigger { 
298        font-size: 1.9rem; 
299
300    .views .number-views { 
301        opacity: 1; 
302        align-items: center; 
303        margin-top: 1rem; 
304        padding: 0; 
305        background-color: initial !important; 
306        color: #72848c; 
307        font-size: 2rem; 
308
309    .views .icon-eye-open { 
310        opacity: 1; 
311        align-items: center; 
312        margin-top: 1rem; 
313        padding: 0; 
314        background-color: initial !important; 
315        color: #9c001c; 
316        font-size: 2rem; 
317
318</style> 
319 
320<script> 
321    $(function(){ 
322        var container = $(".blog-internal").closest('.asset-full-content'); 
323        container.addClass('noticia-custom'); 
324 
325        var breadcrumb = $('ul.breadcrumb'); 
326        var brcCustom = $('.brc-noticias'); 
327        if(breadcrumb.length && brcCustom.length){ 
328            breadcrumb.find('li:first-child, li:last-child').addClass('item-brc'); 
329            breadcrumb.find('li:not(.item-brc)').remove(); 
330            breadcrumb.find('li:last-child').before(brcCustom.html()); 
331
332 
333        $('.asset-full-content').css({"opacity":"1","visibility":"visible"}); 
334        $('html, body').animate({ 
335            scrollTop: $(".noticia-custom .asset-anchor").offset().top 
336        }, 500); 
337        setTimeout(function(){ 
338            $('.content-share .inline-item svg').attr('viewBox', '0 0 512 512') 
339        }, 5000) 
340    }) 
341</script> 
342 
343<script> 
344    function executarJS() { 
345        const existingSVG = document.querySelector('.lexicon-icon-twitter'); 
346 
347        if (!existingSVG) return; 
348 
349        const newSVGCode = ` 
350            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1227" fill="none"> 
351                <g clip-path="url(#a)"> 
352                    <path d="M714.163 519.284 1160.89 0h-105.86L667.137 450.887 357.328 0H0l468.492 681.821L0 1226.37h105.866l409.625-476.152 327.181 476.152H1200L714.137 519.284h.026ZM569.165 687.828l-47.468-67.894-377.686-540.24h162.604l304.797 435.991 47.468 67.894 396.2 566.721H892.476L569.165 687.854v-.026Z" fill="#9c001c" class="fill-000000"></path> 
353                </g> 
354                <defs> 
355                    <clipPath id="a"> 
356                        <path fill="#ffffff" d="M0 0h1200v1227H0z" class="fill-ffffff"></path> 
357                    </clipPath> 
358                </defs> 
359            </svg> 
360        `; 
361 
362        const newSVG = new DOMParser().parseFromString(newSVGCode, 'image/svg+xml').querySelector('svg'); 
363        existingSVG.parentNode.replaceChild(newSVG, existingSVG); 
364
365 
366    window.addEventListener('load', executarJS); 
367</script> 

Título Notícias Acontece na Unicap

Publicador de Conteúdos e Mídias

Um erro ocorreu enquanto processava o modelo.
The following has evaluated to null or missing:
==> liferay_ui["ratings"]  [in template "22092#22119#475677" at line 79, column 55]

----
Tip: It's the final [] step that caused this error, not those before it.
----
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: @liferay_ui["ratings"] className="com...  [in template "22092#22119#475677" at line 79, column 53]
----
1<#if !entries?has_content> 
2        <#if !themeDisplay.isSignedIn()> 
3            ${renderRequest.setAttribute("PORTLET_CONFIGURATOR_VISIBILITY", true)} 
4        </#if> 
5 
6        <div class="alert alert-info"> 
7            <@liferay_ui["message"] key="there-are-no-results" /> 
8        </div> 
9    </#if> 
10    <#if entries?has_content> 
11        <div class="row row-card-blog"> 
12            <#assign countItem = 0/> 
13            <#list entries as entry> 
14                <#assign 
15                    assetRenderer = entry.getAssetRenderer() 
16                /> 
17                <#if assetRenderer.getClassName()=="com.liferay.journal.model.JournalArticle"> 
18                    <#setting url_escaping_charset="UTF-8"> 
19                    <#assign 
20                        article = assetRenderer.getArticle() 
21                        docXml = saxReaderUtil.read(article.getContent()) 
22                        contentNoticia = docXml.valueOf("//dynamic-element[@name='Content']/dynamic-content/text()") 
23                        image = docXml.valueOf("//dynamic-element[@name='CoverImage']/dynamic-content/text()") 
24                        imgJson = jsonFactoryUtil.createJSONObject(image) 
25                        urlImage = "/documents/"+ imgJson.groupId +"/" +imgJson.fileEntryId +"/"+ imgJson.name?url +"/"+imgJson.uuid 
26                    /> 
27                    <#if urlImage??> 
28                        <#assign cardImage = true /> 
29                    <#elseif article.getSmallImageURL()?? && article.getSmallImageURL() != ""> 
30                        <#assign cardImage = true /> 
31                        <#assign urlImage = article.getSmallImageURL()/> 
32                    <#else> 
33                        <#assign cardImage = false /> 
34                    </#if> 
35                     
36                    <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) /> 
37                    <#if assetLinkBehavior != "showFullContent" && assetRenderer.getURLViewInContext(renderRequest, renderResponse, viewURL)??> 
38                        <#assign viewURL = assetRenderer.getURLViewInContext(renderRequest, renderResponse, viewURL) /> 
39                    </#if> 
40                    <div class="col-12 col-md-6 change-class hide"> 
41                        <div class="card card-custom-blog d-flex flex-column" > 
42                            <#if cardImage> 
43                                <div class="card-img-overflow"> 
44                                    <img class="card-img-top" src="${urlImage}" alt="${imgJson.name}"/> 
45                                </div> 
46                            </#if> 
47 
48                            <div class="card-body d-flex flex-column"> 
49                                <h3 class="text-dark">${stringUtil.shorten(htmlUtil.stripHtml(entry.getTitle(locale)), 100)}</h3> 
50                                <div class="d-none d-xl-block card-text text-dark"> 
51                                    <#if validator.isNotNull(entry.getDescription(locale))> 
52                                        <#assign content = entry.getDescription(locale) /> 
53                                    <#else> 
54                                        <#assign content = contentNoticia /> 
55                                    </#if> 
56                                    <#if cardImage> 
57                                        <p>${stringUtil.shorten(htmlUtil.stripHtml(content), 160)}</p> 
58                                    <#else> 
59                                        <p>${stringUtil.shorten(htmlUtil.stripHtml(content), 400)}</p> 
60                                    </#if> 
61                                </div> 
62                                <div class="d-block d-xl-none card-text text-dark"> 
63                                    <#if validator.isNotNull(entry.getDescription(locale))> 
64                                        <#assign content = entry.getDescription(locale) /> 
65                                    <#else> 
66                                        <#assign content = contentNoticia /> 
67                                    </#if> 
68                                    <#if cardImage> 
69                                        <p>${stringUtil.shorten(htmlUtil.stripHtml(content), 120)}</p> 
70                                    <#else> 
71                                        <p>${stringUtil.shorten(htmlUtil.stripHtml(content), 400)}</p> 
72                                    </#if> 
73                                </div> 
74                                <div class="footer-card-custom d-flex justify-content-between align-items-center mt-auto"> 
75                                    <div class="container-left"> 
76                                        <div class="likes-blog align-items-center comments-blog d-inline-flex"> 
77                                            <#if getterUtil.getBoolean(enableRatings)> 
78                                                <div> 
79                                                    <@liferay_ui["ratings"] 
80                                                        className="com.liferay.journal.model.JournalArticle" 
81                                                        classPK=entry.getClassPK() 
82                                                        type="like" 
83                                                    /> 
84                                                </div> 
85                                            </#if> 
86                                        </div> 
87                                        <div class="comments-blog align-items-center comments-blog d-inline-flex"> 
88                                            <#if getterUtil.getBoolean(enableComments)> 
89                                                <div> 
90                                                    <span class="inline-item inline-item-before"> 
91                                                        <@clay["icon"] symbol="comments" /> 
92                                                    </span> 
93                                                    <span class="count-comment" data-groupid="${entry.getGroupId()}" data-classname="${entry.getClassName()}" data-classpk="${entry.getClassPK()}">0</span> 
94                                                </div> 
95                                            </#if> 
96                                        </div> 
97                                    </div> 
98                                    <div class="container-link-ler-mais align-items-center comments-blog d-inline-flex">                                     
99                                        <a class="stretched-link text-primary text-uppercase" href="${viewURL}"><@liferay_ui["message"] key="read-more"/><i style="margin-left: 5px;" class="icon-arrow-right"></i></a> 
100                                    </div> 
101                                </div> 
102                            </div> 
103                             
104                        </div> 
105                    </div> 
106                <#else> 
107                    Erro na configuração do Publicador de Conteúdo 
108                    <script> 
109                        if(!window.displayAlertCards) { 
110                            alert("Por gentileza, configurar o publicador de conteúdos 'Notícias' para receber apenas conteúdos do tipo Notícia") 
111
112                        window.displayAlertCards = true; 
113                    </script> 
114                </#if> 
115            </#list> 
116        </div>   
117    </#if> 
118    <script type="text/javascript"> 
119        $(function(){ 
120           /* var iOS =  !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform); 
121            if(iOS && innerWidth < 768){ 
122                $('.card-custom-blog h3').css({ 
123                    'overflow': 'inherit', 
124                    'min-height': '45px', 
125                    'overflow': 'hidden', 
126                    'margin-bottom': '0' 
127                }) 
128 
129                $('.card-custom-blog .card-img-overflow').css({ 
130                    'height': '300px' 
131                }) 
132                 
133                $(window).resize(function(){ 
134                    if(innerWidth < 500){ 
135                        $('.card-custom-blog').addClass('card-hack-iphone') 
136                        $('.card-custom-blog').removeClass('card-hack-iphone-b') 
137                    }else{ 
138                        $('.card-custom-blog').addClass('card-hack-iphone-b') 
139                        $('.card-custom-blog').removeClass('card-hack-iphone') 
140
141                }) 
142            } */ 
143 
144 
145            var widthContainer = $('.row-card-blog').closest('section').width(); 
146            var cards = $(".change-class"); 
147            if(widthContainer > 850) { 
148                $(".change-class").addClass('col-lg-3'); 
149
150            cards.removeClass('hide'); 
151 
152            $('.count-comment').each(function(i, e){ 
153                var classPk = $(this).data('classpk'); 
154                var className = $(this).data('classname'); 
155                var groupid = $(this).data('groupid'); 
156                if(className && classPk){ 
157                    Liferay.Service( 
158                        '/comment.commentmanagerjsonws/get-comments-count', 
159
160                            groupId: groupid, 
161                            className: className, 
162                            classPK: classPk 
163                        }, 
164                        function(countComment) { 
165                            if(!isNaN(countComment)) { 
166                                $(e).text(countComment); 
167
168
169                    ); 
170
171            }) 
172        }) 
173    </script> 
174    <style> 
175        @media (min-width: 767.99px) { 
176            .card-custom-blog .card-title { 
177                max-height: 95px; 
178                overflow: hidden; 
179
180
181        .row-card-blog .change-class { 
182            margin-bottom: 1.625rem; 
183
184        .card-custom-blog.card:hover { 
185            opacity: 0.90; 
186
187        .card-custom-blog h3 { 
188            text-overflow: ellipsis; 
189            width: 100%; 
190            -webkit-line-clamp: 2; 
191            display: -webkit-box; 
192            -webkit-box-orient: vertical; 
193            overflow: hidden; 
194            height: auto; 
195
196 
197        .card-custom-blog .card-text { 
198            min-height: auto; 
199
200        .card-custom-blog .card-body { 
201            border-top: 1rem solid #690013; 
202
203        .card-custom-blog .card-img-overflow { 
204            max-height: 44.445%; 
205            overflow: hidden; 
206
207        .card-custom-blog .rating-thumb-down { 
208            display: none; 
209
210        .card-custom-blog .rating-thumb-up { 
211            opacity: 1; 
212            font-size: 1rem; 
213            padding: 0; 
214
215        .card-custom-blog .rating-thumb-up svg{ 
216            display: none; 
217
218        .card-custom-blog .rating-thumb-up span.inline-item:first-child{ 
219            font-family: 'fontawesome-alloy'; 
220            speak: none; 
221            font-style: normal; 
222            font-weight: normal; 
223            font-variant: normal; 
224            text-transform: none; 
225            line-height: 1; 
226            -webkit-font-smoothing: antialiased; 
227
228        .footer-card-custom { 
229            padding: 0.4375rem 0; 
230
231        .footer-card-custom *{ 
232            color: #690013!important; 
233            font-weight: 500!important; 
234
235        .card-custom-blog .rating-thumb-up span.inline-item:first-child:before{ 
236            content: "\f004"; 
237
238        @media (min-width: 1440.99px) { 
239            .card-custom-blog .taglib-ratings.like { 
240                padding-right: 3rem; 
241
242            .card-custom-blog { 
243                height: 450px !important; 
244
245
246        @media (max-width: 1440.98px) { 
247            .card-custom-blog { 
248                height: 340px !important; 
249
250            .card-custom-blog .card-text p{ 
251                display: -webkit-box; 
252                -webkit-line-clamp: 3; 
253                -webkit-box-orient: vertical; 
254                overflow: hidden; 
255
256
257        @media (max-width: 767.98px) { 
258            .card-custom-blog .card-img-overflow { 
259                max-height: none !important; 
260
261            .card-custom-blog { 
262               height: auto !important; 
263
264
265       .card-body {     
266         padding-bottom: 0 !important; 
267				 min-height: auto !important; 
268
269      /*  .card-hack-iphone{ min-height: 400px !important; max-height: 450px;} 
270        .card-hack-iphone-b{ min-height: 1000px !important; max-height: 1050px;} */ 
271 
272    </style>