Pré-universitário Unicap 2020 - Unicap
Título Notícias Humanitas
Notícias Humanitas
The following has evaluated to null or missing:
==> selectedOptions?first [in template "22092#22119#82296" at line 47, 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#82296" at line 47, 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
27<div class="blog-internal mb-7 container">
28 <div class="blog-padding">
29 <div class="title-relative text-dark px-0">
30 <h1>${.vars['reserved-article-title'].data}</h1>
31 </div>
32 <div class="d-flex justify-content-between align-items-center py-4 px-0">
33
34 <div class="author-blog">
35 <#-- INICIO DECLARAÇÕES VARIAVEIS PARA ULTIMO EDITOR -->
36 <#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") />
37 <#assign groupId = groupId?long />
38 <#assign articleId = .vars["reserved-article-id"].data />
39 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
40 <#assign article = journalArticleLocalService.getLatestArticle(groupId, articleId) />
41 <#assign modifierUser = userLocalService.getUser(article.getStatusByUserId()) />
42 <#-- FIM DECLARAÇÕES -->
43
44
45 <#assign selectedOptions = selectPublished.getOptions() />
46 <#assign optionsMap = selectPublished.getOptionsMap() />
47 <#assign selectedKey = selectedOptions?first />
48
49 <#-- <#assign publicadoPor = .vars['reserved-article-author-name'].data /> nome do criador do conteúdo -->
50
51 <#assign publicadoPor = modifierUser.getFullName() />
52
53 <#if selectedKey?has_content>
54 <@liferay_ui["message"] key="published"/> <span class="text-lowercase"><@liferay_ui["message"] key="per"/></span>: ${optionsMap[selectedKey]!""}
55 <#else>
56 <@liferay_ui["message"] key="published"/> <span class="text-lowercase"><@liferay_ui["message"] key="per"/></span>: ${publicadoPor}
57 </#if>
58 </div>
59 <div class="date-blog">
60 <span class="day-date">${dateUtil.getDate(Article.getDisplayDate(), "dd", locale)}</span>
61 <span class="year-date">${dateUtil.getDate(Article.getDisplayDate(), "MMM yyyy", locale)}</span>
62 </div>
63 </div>
64 <div class="content-social-blog p-0 m-0">
65
66 <div class="content-view">
67 <span class="text-capitalize"><@liferay_ui["message"] key="views"/>: </span>
68 <div class="views">
69 <span class="icon-eye-open"></span>
70 <span class="number-views">${entry.getViewCount()}</span>
71 </div>
72 </div>
73
74 <#-- <div class="content-share">
75 <span class="text-capitalize"><@liferay_ui["message"] key="share"/>:</span>
76 <div class="click-share">
77 <@liferay_social_bookmarks["bookmarks"]
78 className="com.liferay.journal.model.JournalArticle"
79 classPK=journalArticleId?eval
80 displayStyle="inline"
81 target="_blank"
82 title=.vars['reserved-article-title'].data
83 url=currentURL
84 />
85 </div>
86 </div> -->
87
88 <div class="content-share">
89 <span class="text-capitalize"><@liferay_ui["message"] key="share"/>:</span>
90 <div class="click-share">
91
92 <#assign shareTitle = .vars['reserved-article-title'].data?url />
93 <#assign shareURL = currentURL?url />
94
95 <a href= "https://www.facebook.com/sharer/sharer.php?u=${shareURL}"
96
97 target="_blank" rel="noopener noreferrer" class="share-btn share-facebook" aria-label="Facebook" style="text-decoration: none;">
98 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor">
99 <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"/>
100 </svg>
101 </a>
102
103 <a href="https://twitter.com/intent/tweet?url=${shareURL}&text=${shareTitle}"
104 target="_blank" rel="noopener noreferrer" class="share-btn share-x" aria-label="X (Twitter)" style="text-decoration: none;">
105 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor">
106 <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"/>
107 </svg>
108 </a>
109
110 <a href="https://www.linkedin.com/shareArticle?mini=true&url=${shareURL}&title=${shareTitle}"
111 target="_blank" rel="noopener noreferrer" class="share-btn share-linkedin" aria-label="LinkedIn" style="text-decoration: none;">
112 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="35" height="35" fill="currentColor">
113 <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"/>
114 </svg>
115 </a>
116
117 <a href="https://wa.me/?text=${shareTitle}%20${shareURL}"
118 target="_blank" rel="noopener noreferrer" class="share-btn share-whatsapp" aria-label="WhatsApp" 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="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"/>
121 </svg>
122 </a>
123
124 </div>
125</div>
126
127 </div>
128 </div>
129
130 <div class="container-content blog-padding">
131 <div class="banner-noticia">
132 <#if CoverImage.getData()?? && CoverImage.getData() != "">
133 <img class="embed-responsive" alt="${CoverImage.getAttribute("alt")}" data-fileentryid="${CoverImage.getAttribute("fileEntryId")}" src="${CoverImage.getData()}" />
134 </#if>
135
136 <@liferay_util["html-top"]><meta name="twitter:title" content="${.vars['reserved-article-title'].data} "></@>
137 <@liferay_util["html-top"]><meta name="twitter:description" content="<#outputformat "HTML">${htmlUtil.stripHtml(Content.getData())}</#outputformat>"></@>
138 <@liferay_util["html-top"]><meta name="twitter:image" content="${themeDisplay.getURLPortal()}${CoverImage.getData()}"></@>
139 <@liferay_util["html-top"]><meta name="twitter:card" content="summary_large_image"></@>
140 <@liferay_util["html-top"]><meta property="og:title" content="${.vars['reserved-article-title'].data}"></@>
141 <@liferay_util["html-top"]><meta property="og:description" content="<#outputformat "plainText">${htmlUtil.stripHtml(Content.getData())}</#outputformat>"></@>
142 <@liferay_util["html-top"]><meta property="og:image" content="${themeDisplay.getURLPortal()}${CoverImage.getData()}"></@>
143 <@liferay_util["html-top"]><meta property="og:url" content="${themeDisplay.getURLPortal()}${themeDisplay.getURLCurrent()}"></@>
144 </div>
145 <div class="content-blog">
146 ${Content.getData()}
147 </div>
148 </div>
149
150 <#if AssociarPagina?? && AssociarPagina.getSiblings()?has_content>
151 <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
152 <#if AssociarPagina.getData()?? && AssociarPagina.getData() != "">
153 <div class="brc-noticias hide">
154 <#list AssociarPagina.getSiblings() as cur_AssociarPagina>
155 <#if cur_AssociarPagina.getData()?eval.layoutId??>
156 <#assign layout = layoutService.getLayout(themeDisplay.getScopeGroupId(),false,cur_AssociarPagina.getData()?eval.layoutId?number) />
157 <#assign pageTitleCustom = layout.getName(locale) />
158 <li class="breadcrum-custom-news">
159 <a class="text-light" title="${pageTitleCustom}" href="${cur_AssociarPagina.getFriendlyUrl()}">
160 ${pageTitleCustom}
161 </a>
162 </li>
163 </#if>
164 </#list>
165 </div>
166 </#if>
167 </#if>
168</div>
169
170<style>
171 .views .number-views {
172 opacity: 1;
173 align-items: center;
174 margin-top: 1rem;
175 padding: 0;
176 background-color: initial !important;
177 color: #72848c;
178 font-size: 2rem;
179 }
180 .views .icon-eye-open {
181 opacity: 1;
182 align-items: center;
183 margin-top: 1rem;
184 padding: 0;
185 background-color: initial !important;
186 color: #9c001c;
187 font-size: 2rem;
188 }
189 a.lfr-portal-tooltip.btn.btn-monospaced.btn-outline-borderless.btn-sm.btn-outline-secondary {
190 display: flex;
191 }
192</style>
193
194<script>
195 $(function(){
196 var container = $(".blog-internal").closest('.asset-full-content');
197 container.addClass('noticia-custom');
198
199 var breadcrumb = $('ul.breadcrumb');
200 var brcCustom = $('.brc-noticias');
201 if(breadcrumb.length && brcCustom.length){
202 breadcrumb.find('li:first-child, li:last-child').addClass('item-brc');
203 breadcrumb.find('li:not(.item-brc)').remove();
204 breadcrumb.find('li:last-child').before(brcCustom.html());
205 }
206
207 $('.asset-full-content').css({"opacity":"1","visibility":"visible"});
208 $('html, body').animate({
209 scrollTop: $(".noticia-custom .asset-anchor").offset().top
210 }, 500);
211 setTimeout(function(){
212 $('.content-share .inline-item svg').attr('viewBox', '0 0 512 512')
213 }, 5000)
214 })
215</script>
Título Notícias Humanitas
Notícias Humanitas
Publicador de Conteúdos e Mídias
Filmes para contemplação e ação - Evangelho da revolução
A Universidade Católica de Pernambuco convida para a exibição especial do filme: O Evangelho da revolução. Dir. François-Xavier Drouet (França e Brasil,...
A Universidade Católica de Pernambuco convida para a exibição especial do filme: O Evangelho da revolução. Dir....
II Congresso Teológico de Pastoral Urbana
Data: 11/05/2026 a 14/05/2026 Local: Recife, Pernambuco – Brasil REALIZAR INSCRIÇÃO Sobre o Evento A complexidade da realidade...
Data: 11/05/2026 a 14/05/2026 Local: Recife, Pernambuco – Brasil REALIZAR INSCRIÇÃO Sobre o...
Percurso formativo da escrita acadêmica
O curso de extensão "Percurso Formativo da Escrita Acadêmica" justifica-se pela necessidade de oferecer uma formação sistematizada, progressiva e prática,...
O curso de extensão "Percurso Formativo da Escrita Acadêmica" justifica-se pela necessidade de oferecer uma formação...
XIII Colóquio de Ética e Filosofia Política
O Colóquio de Ética e Filosofia Política é um evento acadêmico promovido pela Universidade Católica de Pernambuco (UNICAP), dedicado à reflexão...
O Colóquio de Ética e Filosofia Política é um evento acadêmico promovido pela Universidade Católica de...





