Faça uma busca:
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Title
O uso deste material é autorizado apenas para fins editoriais.
Petrobras esclarece sobre proposta por participacão acionária da Novonor na Braskem
Postado em 09/11/2023
Copiar texto Petrobras esclarece sobre proposta por participacão acionária da Novonor na Braskem
Foto: André Motta de Souza / Agência Petrobras
Centro Empresarial Senado (Edisen)
Download Centro Empresarial Senado (Edisen)A Petrobras esclarece que, na data de ontem, foi informada pela Abu Dhabi National Oil Company (ADNOC) sobre sua proposta não vinculante para a aquisição da participação acionária da Novonor S.A. (Novonor) na Braskem no valor de R$ 10,5 bilhões. Tal proposta ainda será avaliada pelas instâncias competentes da Petrobras.
Conforme comunicados ao mercado divulgados em 18/09/2023, 22/08/2023, 14/08/2023 e 10/07/2023, a companhia reafirma que está realizando due dilligence na Braskem, para eventual exercício de tag along ou direito de preferência, na hipótese de alienação das ações detidas pela Novonor na Braskem, conforme regras previstas no Acordo de Acionistas assinado entre Petrobras e Novonor.
Vale destacar que não houve qualquer decisão da Diretoria Executiva ou do Conselho de Administração em relação ao tema.
A Petrobras reforça que decisões sobre investimentos e desinvestimentos são pautadas em análises criteriosas e estudos técnicos, em observância às práticas de governança e aos procedimentos internos aplicáveis.
Fotos
Foto: 1 /1
Centro Empresarial Senado (Edisen)
07/03/2024
Por: André Motta de Souza / Agência Petrobras
O uso deste material é autorizado apenas para fins editoriais.
Downloads
Você pode se interessar por
Java method "com.liferay.journal.model.impl.JournalArticleImpl.getDocument()" threw an exception when invoked on com.liferay.journal.model.impl.JournalArticleImpl object "{\"mvccVersion\": 1, \"ctCollectionId\": 0, \"uuid\": \"c20abb5e-84c8-58e4-1553-71302fbadb5d\", \"id\": 26829365, \"resourcePrimKey\": 26829366, \"groupId\": 10623376, \"companyId\": 20099, \"userId\": 11888211, \"userName\": \"Leonardo Bruno Pimenta Melo\", \"createDate\": \"Fri Sep 20 22:28:42 GMT 2024\", \"modifiedDate\": \"Fri Sep 20 22:28:42 GMT 2024\", \"externalReferenceCode\": \"c20abb5e-84c8-58e4-1553-71302fbadb5d\", \"folderId\": 11451017, \"classNameId\": 0, \"classPK\": 0, \"treePath\": \"/10628776/11451017/\", \"articleId\": \"26829364\", \"version\": 1.0, \"urlTitle\": \"institucional/fotos-petrobras-recebe-paratletas-patrocinados-que-participaram-dos-jogos-de-paris\", \"DDMStructureId\": 10628772, \"DDMTemplateKey\": \"\", \"defaultLanguageId\": \"pt_BR\", \"layoutUuid\": \"\", \"displayDate\": \"Fri Sep 20 22:12:00 GMT 2024\", \"expirationDate\": null, \"reviewDate\": null, \"indexable\": true, \"smallImage\": false, \"smallImageId\": 0, \"smallImageSource\": 1, \"smallImageURL\": \"\", \"lastPublishDate\": null, \"status\": 0, \"statusByUserId\": 11888211, \"statusByUserName\": \"Leonardo Bruno Pimenta Melo\", \"statusDate\": \"Fri Sep 20 22:28:42 GMT 2024\"}"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign xmlArticle = journalArticle.g... [in template "20099#20135#11247698" in function "getCardData" at line 84, column 5] ----
1<#-- Conteúdo Web -> Templates: Site de Crise - Include de templates-->
2<#-- include "${templatesPath}/1975602" -->
3
4<#-- Conteúdo Web -> Templates: Site de Crise - Funções gerais-->
5<#include "${templatesPath}/1975398" />
6
7<#assign journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
8<#assign fileEntryService = staticUtil["com.liferay.document.library.kernel.service.DLFileEntryLocalServiceUtil"] />
9<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
10<#assign assetVocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyService") />
11<#assign assetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") />
12<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')>
13<#assign portalUtil = staticUtil["com.liferay.portal.kernel.util.PortalUtil"]>
14<#assign assetEntryLocalServiceUtil = objectUtil("com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil").getService()>
15
16<#assign vocabularies = assetVocabularyService.getGroupVocabularies(groupId) />
17<#assign editoriaVocabulary = findVocabulary("Editorial", vocabularies) />
18<#assign mediaVocabulary = findVocabulary("Multimidia", vocabularies) />
19
20
21
22
23<#function getFirstCategoryFromVocabulary entry vocabulary>
24 <#assign categories = assetCategoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", entry.getClassPK()) />
25 <#list categories as category>
26 <#assign vocabulary = assetVocabularyService.getVocabulary(category.getVocabularyId()) />
27
28 <#if vocabulary.getVocabularyId() == category.getVocabularyId()>
29 <#return category>
30 </#if>
31 </#list>
32 <#return "">
33</#function>
34
35<#function getAssetEntriesByCategory portalUtil assetEntryLocalServiceUtil newCategoryId vocabularyToExclude>
36 <#attempt >
37 <#assign groupId = themeDisplay.getScopeGroupId()>
38 <#assign companyId = themeDisplay.getCompanyId()>
39 <#assign realUserId = themeDisplay.getDefaultUserId() />
40 <#assign className = "com.liferay.journal.model.JournalArticle">
41 <#assign classNameId = portalUtil.getClassNameId(className)>
42
43 <#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery') />
44 ${assetEntryQuery.setClassNameIds([classNameId]) }
45 ${assetEntryQuery.setEnd(8)}
46 <#assign notAllCategoryIds = [] />
47 <#list vocabularyToExclude.getCategories() as category>
48 <#assign notAllCategoryIds += [category.getCategoryId()] />
49 </#list>
50 ${assetEntryQuery.setNotAllCategoryIds(notAllCategoryIds)}
51 ${assetEntryQuery.setAllCategoryIds([newCategoryId])}
52
53 <#assign allAssets = assetEntryLocalServiceUtil.getEntries(assetEntryQuery)/>
54
55 <#return allAssets />
56 <#recover >
57 <#return [] />
58 </#attempt>
59</#function>
60
61<#assign rootCss = "card-news_" + randomNumber(4586) />
62<#assign cardMap = {} />
63
64<#-- Função para obter os dados de um card no Web Content (Journal Article) -->
65<#function getCardData entry journalArticleLocalService fileEntryService cardMap>
66
67 <#assign editoria = getFirstCategoryFromVocabulary(entry, editoriaVocabulary) />
68 <#assign editoriaId = -1 />
69 <#if editoria?has_content>
70 <#assign editoriaId = editoria.getCategoryId() />
71 </#if>
72 <#if editoriaId == -1>
73 <#return {} />
74 </#if>
75 <#if cardMap[ editoriaId?string]??>
76 <#if cardMap[editoriaId?string]?size gt 7 >
77 <#return {} />
78 </#if>
79 </#if>
80
81 <#assign journalArticle = journalArticleLocalService.getLatestArticle(entry.getClassPK()) />
82 <#assign ddmStructure = journalArticle.getDDMStructure() />
83 <#assign fieldList = getFieldListByStructure(ddmStructure) />
84 <#assign xmlArticle = journalArticle.getDocument().getRootElement() />
85
86 <#if getStructName(journalArticle) != "Agência de Notícias - Notícia">
87 <#return {} />
88 </#if>
89
90 <#assign imagesGroup = getNodes(getIdFromFieldName(fieldList, "Imagem de destaque da notícia"), xmlArticle) />
91 <#assign image = "" />
92 <#list imagesGroup as imageGroup >
93 <#assign image = getMediaInfo(fieldList, imageGroup, "Imagem Destaque", fileEntryService) /> />
94 </#list>
95
96 <#assign title = getFieldValue(fieldList, xmlArticle, "Título de destaque da notícia") />
97 <#if !(title?has_content && title != "")>
98 <#assign title = journalArticle.getTitle(locale) />
99 </#if>
100
101 <#assign lastPublishDate = journalArticle.getDisplayDate()>
102 <#assign createDate = journalArticle.getCreateDate()>
103
104 <#assign editoria = getFirstCategoryFromVocabulary(entry, editoriaVocabulary) />
105 <#assign editoriaId = -1 />
106 <#if editoria?has_content>
107 <#assign editoriaId = editoria.getCategoryId() />
108 </#if>
109
110 <#assign review = getFieldValue(fieldList, xmlArticle, "Subtítulo") />
111
112 <#assign urlNews = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + layout.getGroup().friendlyURL + "/w/" + journalArticle.getUrlTitle()>
113
114 <#if themeDisplay.getPortalURL()?contains("webserver")>
115 <#assign urlNews = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + layout.getGroup().friendlyURL + "/w/" + journalArticle.getUrlTitle()>
116 <#else>
117 <#assign urlNews = "/w/" + journalArticle.getUrlTitle()>
118 </#if>
119
120 <#assign cardInfo = {"image": image,
121 "title": title,
122 "lastPublishDate": lastPublishDate,
123 "createDate" : createDate,
124 "editoriaId": editoriaId,
125 "urlNews": urlNews,
126 "review": review} />
127
128 <#if cardMap[editoriaId?string]??>
129 <#assign cardMap = cardMap + {editoriaId : cardMap[editoriaId?string] + [cardInfo]} />
130 <#else>
131 <#assign cardMap = cardMap + {editoriaId : [cardInfo]} />
132 </#if>
133
134 <#return cardInfo />
135
136</#function>
137
138
139<#macro renderCard cardData>
140 <#if !cardData["image"]??>
141 <#return />
142 </#if>
143
144 <div class="card ${rootCss}" category-id="${cardData.editoriaId}">
145 <a class="news-card-of-interest-link" href="${cardData.urlNews}"></a>
146 <div class="news-content">
147 <div class="head">
148 <h2 class="title h4">${cardData.title}</h2>
149 <div class="bar"></div>
150 </div>
151 <div class="bottom-wrapper">
152 <div class="link-container">
153 <p class="read-more">
154 <#if locale?lower_case == "pt_br"> Continuar lendo <#else> Keep reading </#if>
155 </p>
156 </div>
157 </div>
158 </div>
159 </div>
160
161</#macro>
162
163<#assign newsJournalArticle = "">
164<#assign newsAssetEntry = getAssetEntryFromRequest(assetEntryLocalServiceUtil)>
165<#if newsAssetEntry?? && newsAssetEntry?has_content>
166 <#assign newsJournalArticle = journalArticleService.fetchLatestArticle(newsAssetEntry.classPK)/>
167</#if>
168
169<#if newsJournalArticle?? && newsJournalArticle?has_content>
170
171 <#assign newsEditoria = getFirstCategoryFromVocabulary(newsAssetEntry, editoriaVocabulary) />
172 <#assign newsEditoriaId = -1 />
173 <#if newsEditoria?has_content>
174 <#assign newsEditoriaId = newsEditoria.getCategoryId() />
175 </#if>
176
177 <#assign entries = getAssetEntriesByCategory(portalUtil, assetEntryLocalServiceUtil, newsEditoriaId, mediaVocabulary) />
178
179 <#-- Renderizar Lista de cards -->
180 <#if entries?has_content>
181 <#list entries as entry>
182 <#assign cardData = getCardData(entry journalArticleService fileEntryService cardMap) />
183 <@renderCard cardData/>
184 </#list>
185
186 <style>
187 .${rootCss} {
188 width: 306px;
189 border-radius: 16px;
190 border: 1px solid var(--color-neutral-400, #EEE);
191 background: var(--color-neutral-100, #FFF);
192 margin: 0;
193 }
194
195 .${rootCss} *:not(.news-card-of-interest-link) {
196 pointer-events: none;
197 }
198
199 .${rootCss} a.news-card-of-interest-link {
200 position: absolute;
201 width: 100%;
202 height: 100%;
203 opacity: 0;
204 top: 0;
205 }
206
207 .${rootCss}:hover {
208 box-shadow: var(--box-shadow-neutral);
209 transition: box-shadow 300ms ease-in-out;
210 }
211
212 .${rootCss} .news-content {
213 padding: var(--space-md, 24px);
214 display: flex;
215 flex-direction: column;
216 height: 100%;
217 background: var(--color-background-card);
218 border-radius: var(--border-radius-card);
219 }
220
221 .${rootCss} img {
222 background: lightgray 50% / cover no-repeat;
223 height: 170px;
224 }
225
226 .${rootCss} .head {
227 display: flex;
228 flex-direction: column;
229 gap: var(--space-xxs, 8px);
230 }
231
232 .${rootCss} .head .date {
233 color: var(--color-neutral-800, #373737);
234 font-family: var(--font-family-base, "Petrobras Sans");
235 font-size: var(--font-size-xxxs, 14px);
236 font-style: var(--font-style-normal, normal);
237 font-weight: var(--font-weight-regular, 400);
238 line-height: var(--line-height-xl, 160%); /* 19.2px */
239 }
240
241 .${rootCss} .head .title {
242 color: var(--color-neutral-800);
243 }
244
245 .${rootCss} .head .bar {
246 background-color: var(--color-secondary-solid-to-bright-200, #FDC82F);
247 height: 4px;
248 width: 20px;
249 margin: var(--space-xs, 12px) 0 var(--space-sm, 16px) 0;
250 }
251
252 .${rootCss} .bottom-wrapper {
253 height: 100%;
254 display: flex;
255 flex-direction: column;
256 justify-content: flex-end;
257 }
258
259 .${rootCss} .bottom-wrapper .review-container {
260 color: var(--color-neutral-800, #373737);
261 font-family: var(--font-family-base, "Petrobras Sans");
262 font-size: var(--font-size-xxs, 16px);
263 font-style: var(--font-style-normal, normal);
264 font-weight: var(--font-weight-regular, 400);
265 line-height: var(--line-height-xl, 160%); /* 22.4px */
266 }
267
268 .${rootCss} .bottom-wrapper .link-container {
269 flex: 0 1 auto;
270 }
271
272 .${rootCss} .bottom-wrapper .link-container .read-more {
273 color: var(--color-primary-solid-to-bright-200, var(--color-primary-medium));
274 font-family: var(--font-family-base, "Petrobras Sans");
275 font-size: var(--font-size-xxs, 16px);
276 font-style: var(--font-style-normal, normal);
277 font-weight: var(--font-weight-bold, 700);
278 line-height: var(--line-height-lg, 144%); /* 22.4px */
279 text-decoration-line: underline;
280 }
281
282
283 @media screen and (max-width: ${MAX_TABLET_WIDTH}px) {
284 .${rootCss} {
285 flex-direction: column;
286 gap: var(--space-sm, 16px);
287 padding-top: var(--space-md, 24px);
288 min-width: 296px;
289 }
290
291 .${rootCss} img {
292 height: 140px;
293 }
294
295 .${rootCss} .head .date {
296 font-size: 12px;
297 }
298
299 .${rootCss} .head .title {}
300
301 .${rootCss} .head .bar {
302 width: 18px;
303 margin: var(--space-xxs, 8px) 0 var(--space-sm, 16px) 0;
304 }
305
306 .${rootCss} .review-container {
307 font-size: var(--font-size-xxxs, 14px);
308 }
309 }
310 </style>
311 <script>
312 (function() {
313 const cards = document.querySelectorAll('.${rootCss}.card');
314
315 cards.forEach((card) => {
316 const cardLink = card.querySelector('a.news-card-of-interest-link');
317 const cardTitle = card.querySelector('.title');
318 cardLink.textContent = cardTitle.textContent;
319 });
320 })();
321 </script>
322 </#if>
323</#if>
Aviso
Este é um canal exclusivo para atendimento a veículos de imprensa. Solicitamos que demandas não relacionadas a conteúdo jornalístico (por exemplo: conteúdos publicitários, jurídicos, participação de empregados em eventos, pesquisas acadêmicas, entre outros) não sejam enviadas para esse contato.
O canal Fale Conosco ou o 0800 728 9001 são os canais adequados para solicitações de informações gerais sobre a companhia.
Utilize nossa busca para encontrar o que procura
Faça uma busca:
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Java method "com.liferay.journal.model.impl.JournalArticleImpl.getDocument()" threw an exception when invoked on com.liferay.journal.model.impl.JournalArticleImpl object "{\"mvccVersion\": 1, \"ctCollectionId\": 0, \"uuid\": \"e676f63b-3777-4c00-5a1d-7f604a04072c\", \"id\": 12613261, \"resourcePrimKey\": 10628951, \"groupId\": 10623376, \"companyId\": 20099, \"userId\": 873837, \"userName\": \"Gefersom Lima\", \"createDate\": \"Tue Oct 31 18:45:56 GMT 2023\", \"modifiedDate\": \"Fri Jan 26 22:15:39 GMT 2024\", \"externalReferenceCode\": \"7748054\", \"folderId\": 10628763, \"classNameId\": 0, \"classPK\": 0, \"treePath\": \"/10628763/\", \"articleId\": \"7748054\", \"version\": 1.3, \"urlTitle\": \"configuracao-de-rodape\", \"DDMStructureId\": 10628806, \"DDMTemplateKey\": \"\", \"defaultLanguageId\": \"pt_BR\", \"layoutUuid\": \"\", \"displayDate\": \"Tue Oct 31 18:43:00 GMT 2023\", \"expirationDate\": null, \"reviewDate\": null, \"indexable\": false, \"smallImage\": false, \"smallImageId\": 0, \"smallImageSource\": 1, \"smallImageURL\": \"\", \"lastPublishDate\": null, \"status\": 0, \"statusByUserId\": 873856, \"statusByUserName\": \"Wagner de Melo Reck\", \"statusDate\": \"Fri Jan 26 22:15:39 GMT 2024\"}"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign xmlArticle = article.getDocum... [in template "20099#20135#2683802" in function "extractFooterInfo" at line 30, column 3] - Reached through: @renderSacInfoDates entry, journalArt... [in template "20099#20135#2683802" at line 82, column 5] ----
1<#--
2Widget templates can be used to modify the look of a
3specific application.
4
5Please use the right panel to quickly add commonly used variables.
6Autocomplete is also available and can be invoked by typing "${".
7-->
8
9<#include "${templatesPath}/1975398" />
10
11<#assign journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
12<#assign fileEntryService = staticUtil["com.liferay.document.library.kernel.service.DLFileEntryLocalServiceUtil"] />
13
14<#function extractFooterInfo curEntry journalArticleService fileEntryService >
15 <#if !curEntry?? >
16 <#return {}>
17 </#if>
18
19 <#assign article = journalArticleService.getLatestArticle(curEntry.getClassPK()) />
20 <#if !article??>
21 <#return {}>
22 </#if>
23
24 <#assign ddmStructure = article.getDDMStructure()>
25 <#if !ddmStructure??>
26 <#return {}>
27 </#if>
28
29 <#assign fieldList = getFieldListByStructure(ddmStructure) />
30 <#assign xmlArticle = article.getDocument().getRootElement() />
31
32
33 <#assign iconInformation = getMediaInfo(fieldList, xmlArticle, "Acesso à Informação - Imagem", fileEntryService) />
34 <#assign iconSac = getMediaInfo(fieldList, xmlArticle, "SAC Imagem", fileEntryService) />
35 <#assign sacLabel = getFieldValue(fieldList, xmlArticle, "SAC - Rótulo") />
36 <#assign sacNumber = getFieldValue(fieldList, xmlArticle, "SAC - Número") />
37 <#assign informationLabel = getFieldValue(fieldList, xmlArticle, "Acesso à Informação") />
38 <#assign transparencyLabel = getFieldValue(fieldList, xmlArticle, "Portal da Transparencia - Rótulo") />
39 <#assign transparencyLink = getFieldValue(fieldList, xmlArticle, "Portal da Transparencia - Link") />
40
41
42 <#return {
43 "iconInformation": iconInformation,
44 "iconSac" : iconSac,
45 "sacLabel" : sacLabel,
46 "sacNumber" : sacNumber,
47 "informationLabel": informationLabel,
48 "transparencyLabel": transparencyLabel,
49 "transparencyLink": transparencyLink
50 }>
51
52</#function>
53
54
55<#macro renderSacInfoDates entry journalArticleService fileEntryService >
56 <#assign info = extractFooterInfo(entry journalArticleService fileEntryService) />
57 <div class="footer-informations">
58 <div class="sac-information icons-container">
59 <img id="sac-image" alt="${info.iconSac.alt}" src="${info.iconSac.url}"/>
60 <div class="icons-texts">
61 <p class="button-xs-regular">${info.sacLabel}</p>
62 <p class="button-xs-bold">${info.sacNumber}</p>
63 </div>
64 </div>
65
66 <div class="logo-informations icons-container">
67 <img id="logo-image" alt="${info.iconInformation.alt}" src="${info.iconInformation.url}"/>
68 <div class="icons-texts">
69 <p class="button-xs-regular">
70 ${info.informationLabel}
71 </p>
72 <a class="button-xs-bold" open="_blank"
73 href='${info.transparencyLink}'>
74 ${info.transparencyLabel}
75 </a>
76 </div>
77 </div>
78 </div>
79</#macro>
80
81<#if entry?has_content>
82 <@renderSacInfoDates entry journalArticleService fileEntryService />
83</#if>
84
85
86<style>
87
88 .footer-informations {
89 display: flex;
90 justify-content: center;
91 align-items: center;
92 }
93
94 .footer-informations .icons-container img {
95 width: 29px;
96 height: 29px;
97 margin: 5px 8px 0 0;
98 }
99
100 .footer-informations .icons-container {
101 color: var(--color-text-primary-default);
102 display: flex;
103 }
104
105 .footer-informations .logo-informations {
106 padding-left: calc(var(--space-lg)/2);
107 display: flex;
108 }
109
110 .footer-informations .icons-container .icons-texts * {
111 color: var(--color-text-primary-default);
112 }
113
114 .footer-informations .sac-information .icons-texts {
115 border-right: 1px solid var(--border-color-light);
116 }
117
118
119 .footer-informations .icons-container .icons-texts {
120 padding-right: calc(var(--space-lg)/2);
121 display: flex;
122 flex-direction: column;
123
124 }
125
126 @media screen and (max-width: 767px) {
127
128 .footer-informations {
129 flex-direction: column;
130 }
131
132 .footer-informations .icons-container {
133 margin-bottom: 16px !important;
134 }
135
136 .footer-informations .sac-information .icons-texts {
137 border-right: none;
138 }
139
140 .footer-informations .logo-informations {
141 margin-bottom: 16px;
142 padding: 0;
143 }
144
145 }
146
147</style>
148
149<script>
150 (function() {
151 function isValidAlt(alt) {
152 return typeof alt === 'string' && alt.trim().length > 0;
153 }
154
155 var sacImage = document.getElementById('sac-image');
156 var sacAltText = sacImage.alt;
157
158
159 if (!isValidAlt(sacAltText)) {
160 sacImage.alt = 'SAC Petrobras';
161 }
162
163 var logoImage = document.getElementById('logo-image');
164 var logoAltText = logoImage.alt;
165
166
167 if (!isValidAlt(logoAltText)) {
168 logoImage.alt = 'Acesso à Informação';
169 }
170 })();
171</script>
- Assessoria de Imprensa
- Categorias
- Acesse também
Java method "com.liferay.journal.model.impl.JournalArticleImpl.getDocument()" threw an exception when invoked on com.liferay.journal.model.impl.JournalArticleImpl object "{\"mvccVersion\": 1, \"ctCollectionId\": 0, \"uuid\": \"e676f63b-3777-4c00-5a1d-7f604a04072c\", \"id\": 12613261, \"resourcePrimKey\": 10628951, \"groupId\": 10623376, \"companyId\": 20099, \"userId\": 873837, \"userName\": \"Gefersom Lima\", \"createDate\": \"Tue Oct 31 18:45:56 GMT 2023\", \"modifiedDate\": \"Fri Jan 26 22:15:39 GMT 2024\", \"externalReferenceCode\": \"7748054\", \"folderId\": 10628763, \"classNameId\": 0, \"classPK\": 0, \"treePath\": \"/10628763/\", \"articleId\": \"7748054\", \"version\": 1.3, \"urlTitle\": \"configuracao-de-rodape\", \"DDMStructureId\": 10628806, \"DDMTemplateKey\": \"\", \"defaultLanguageId\": \"pt_BR\", \"layoutUuid\": \"\", \"displayDate\": \"Tue Oct 31 18:43:00 GMT 2023\", \"expirationDate\": null, \"reviewDate\": null, \"indexable\": false, \"smallImage\": false, \"smallImageId\": 0, \"smallImageSource\": 1, \"smallImageURL\": \"\", \"lastPublishDate\": null, \"status\": 0, \"statusByUserId\": 873856, \"statusByUserName\": \"Wagner de Melo Reck\", \"statusDate\": \"Fri Jan 26 22:15:39 GMT 2024\"}"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign xmlArticle = article.getDocum... [in template "20099#20135#2683780" in function "extractFooterInfo" at line 31, column 3] - Reached through: @renderConfigFooterDates entry, journ... [in template "20099#20135#2683780" at line 82, column 5] ----
1<#--
2Widget templates can be used to modify the look of a
3specific application.
4
5Please use the right panel to quickly add commonly used variables.
6Autocomplete is also available and can be invoked by typing "${".
7-->
8
9<#include "${templatesPath}/1975398" />
10
11<#assign journalArticleService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
12
13<#function extractFooterInfo curEntry journalArticleService >
14 <#if !curEntry?? >
15 <#return {} />
16 </#if>
17
18 <#assign article = journalArticleService.getLatestArticle(curEntry.getClassPK()) />
19 <#if !article??>
20 <#return {} />
21 </#if>
22
23 <#assign ddmStructure = article.getDDMStructure() />
24 <#if !ddmStructure??>
25 <#return {} />
26 </#if>
27
28 <#assign productCategories = [] />
29
30 <#assign fieldList = getFieldListByStructure(ddmStructure) />
31 <#assign xmlArticle = article.getDocument().getRootElement() />
32
33
34 <#assign cookiesLabel = getFieldValue(fieldList, xmlArticle, "Definições de Cookies - Rótulo") />
35 <#assign copyrightMessage = getFieldValue(fieldList, xmlArticle, "Mensagem de Copyright") />
36
37 <#assign linkItemGroupXMLList = getNodesByLabel(fieldList, xmlArticle, "Links do rodapé")>
38 <#assign linksAndLabels = []>
39 <#list linkItemGroupXMLList as linkItemGroupXML>
40 <#assign obj = {
41 "link": getFieldValue(fieldList, linkItemGroupXML, "Link"),
42 "label": getFieldValue(fieldList, linkItemGroupXML, "Rótulo")
43 } />
44 <#assign linksAndLabels = linksAndLabels + [obj] />
45 </#list>
46 <#return {
47 "linksAndLabels": linksAndLabels,
48 "cookiesLabel" : cookiesLabel,
49 "copyrightMessage": copyrightMessage
50 } />
51</#function>
52
53
54<#macro renderConfigFooterDates entry journalArticleService >
55 <#assign info = extractFooterInfo(entry journalArticleService) />
56
57
58 <div class="fragment-footer breakpoint" id="pet-fragment-footer">
59
60 <div class="petrobras-footer col-1-12 md-col-1-8 sm-col-1-4">
61 <div class="footer-other-links-container">
62 <div class="footer-links">
63 <a class="footer-menu-item button-sm-regular ot-sdk-show-settings" id="ot-sdk-btn" target="_blank" tabindex="0">${info.cookiesLabel} </a>
64 <#list info.linksAndLabels as link>
65 <a class="button-sm-regular footer-menu-item" open="_blank"
66 href='${link.link}'
67 tabindex="0">
68 ${link.label}
69 </a>
70 </#list>
71 </div>
72 <p class="footer_copyright button-sm-regular">${info.copyrightMessage}</p>
73 </div>
74 </div>
75
76
77 </div>
78
79</#macro>
80
81<#if entry?has_content>
82 <@renderConfigFooterDates entry journalArticleService />
83</#if>
84
85
86<style>
87
88
89 .petrobras-footer * {
90 margin: 0;
91 padding: 0;
92 }
93
94 .petrobras-footer {
95 display: flex;
96 justify-content: space-between;
97 font-family: var(--font-family-base);
98 width: 100%;
99 background: var(--color-background-default-level-02)
100 }
101
102
103 .petrobras-footer .footer-other-links-container {
104 display: flex;
105 justify-content: space-between;
106 gap: 16px;
107 width: 100%;
108 margin: var(--space-xl) 0 !important;
109 }
110
111 .petrobras-footer .footer-other-links-container .footer-links {
112 display: flex;
113 gap: var(--space-md);
114 }
115
116 .petrobras-footer .footer-other-links-container .footer-links p,
117 .petrobras-footer .footer-other-links-container .footer-links a {
118 color: var(--color-text-primary-default);
119 }
120
121 /*Cookies button*/
122 .petrobras-footer .footer-other-links-container .footer-links
123 #ot-sdk-btn.ot-sdk-show-settings, #ot-sdk-btn.optanon-show-settings {
124 color: var(--color-text-primary-default);
125 border: none;
126 padding: 0;
127 font-size: var(--font-size-xxxs);
128 line-height: var(--line-height-lg);
129 }
130
131 .petrobras-footer .footer-other-links-container .footer-links
132 #ot-sdk-btn.ot-sdk-show-settings:hover, #ot-sdk-btn.optanon-show-settings:hover {
133 background: transparent;
134 color: var(--color-neutral-800);
135 }
136
137
138 .petrobras-footer .footer-other-links-container .footer_copyright {
139 color: var(--color-text-primary-default);
140 }
141
142
143
144 @media (max-width: 1200px) {
145
146 .petrobras-footer .footer-other-links-container {
147 display: flex;
148 flex-direction: column;
149 margin: 48px auto 55px auto;
150 align-items: center;
151 text-align: center;
152 justify-content: flex-start;
153 gap: var(--space-md);
154 }
155
156 .petrobras-footer .footer-other-links-container p {
157 margin-left: 0;
158 }
159
160 .petrobras-footer .footer-other-links-container .footer-links {
161 display: flex;
162 flex-direction: column;
163 gap: var(--space-md);
164 }
165
166
167 .petrobras-footer .footer-other-links-container .footer-links a,
168 .petrobras-footer .footer-other-links-container .footer-links p {
169 margin-left: 0;
170 }
171
172 }
173
174 @media (max-width: 767px) {
175
176 .petrobras-footer .footer-other-links-container .footer_copyright {
177 padding-bottom: 25px;
178 }
179 }
180
181</style>
Canais
Idioma
Acessibilidade
Busca
Faça uma busca:
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Acessibilidade
Alto-Contraste
Desligado
Ligado
Texto Grande
Desligado
Ligado
Idioma:
Selecione um idioma: