- Energia em Transformação
- Sustentabilidade
- Mudanças Climáticas
- Meio Ambiente
- Responsabilidade Social
- Nossos Patrocínios
- Governança Corporativa
- Relatórios Anuais
- Inovação e Tecnologia
- Pré-Sal
- Negócios
- Quem Somos
- Sobre a Petrobras
- Trajetória
- O Que Fazemos
- Produtos
- Pessoas
Faça uma busca:
Buscar
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Title
- Energia em Transformação
- Sustentabilidade
- Mudanças Climáticas
- Meio Ambiente
- Responsabilidade Social
- Nossos Patrocínios
- Governança Corporativa
- Relatórios Anuais
- Inovação e Tecnologia
- Pré-Sal
- Negócios
- Quem Somos
- Sobre a Petrobras
- Trajetória
- O Que Fazemos
- Produtos
- Pessoas
Faça uma busca:
Buscar
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Title
DESTAQUES
DESTAQUES
DESTAQUES
INICIATIVAS, ESTRATÉGIAS E POLÍTICAS RELACIONADAS AO MEIO AMBIENTE.
NOSSAS LINHAS DE PATROCÍNIO, CONVÊNIOS E PROJETOS APOIADOS.
CONHEÇA MAIS SOBRE A NOSSA EMPRESA.
NOSSAS ATIVIDADES E ÁREAS DE ATUAÇÃO.
SOLUÇÕES PARA VOCÊ OU PARA SEU NEGÓCIO.
VEJA COMO É TRABALHAR NA PETROBRAS.
Patrocínios
Conheça aqui nossas linhas de patrocínio, convênios e projetos apoiados.
Meio Ambiente
Conheça nossas iniciativas, estratégias e políticas relacionadas ao meio ambiente.
Inovação e Tecnologia
Descubra como usamos inovação e tecnologia para construir hoje o mundo de amanhã.
Inovação aberta
Saiba mais sobre o Conexões para Inovação e veja como funciona a inovação aberta na Petrobras.
Jornada da energia
Conheça mais sobre nossas operações e áreas de atuação.
Concursos
Lançamos novo Concurso Público para nível médio. Confira o edital.
Confira algumas conquistas
- Somos a empresa brasileira com maior portfólio de patentes ativas: mais 1.200 no país e no exterior.
- Também somos a empresa brasileira com maior número de depósitos de pedidos de patentes em um único ano junto ao Instituto Nacional da Propriedade Industrial (INPI): foram 142 pedidos em 2023!
A maioria dos projetos patenteados nos últimos anos foi desenvolvida para atender a demandas de exploração e produção, refino, gás e energia, renováveis e projetos de desenvolvimento sustentável, como descarbonização e redução de emissões. E a evolução não para: até 2028, nossa empresa investirá US$ 3,6 bi em inovações tecnológicas.
Invenções da Petrobras que você provavelmente não conhecia
Tecnologia inédita para degradar garrafas PET em menos de um mês
Você já ouviu falar de upcycling? O processo consiste em criar novos produtos a partir da reutilização de um material, e é uma solução eficiente para viabilizar inovações tecnológicas de maneira mais sustentável.
E fomos pioneiros em adotar esse conceito para criar novos insumos para nossa indústria! Utilizando uma tecnologia inédita, conseguimos produzir enzimas capazes de degradar o componente das garrafas PET em até 30 dias, sob pressão e temperatura ambientes.
Com isso, transformamos o polímero das garrafas em matéria-prima para a indústria petroquímica e geramos importantes ganhos ambientais — em situações normais, as embalagens PET levam centenas de anos para se degradar na natureza!
Criação de modelo digital de reservatórios com tecnologia sísmica 4D
Para inovar, é preciso enxergar além. Nesse caso, enxergar além da matéria existente, a mais de 7 mil metros de profundidade. Isso é feito com apoio da tecnologia sísmica 4D, que nos permite criar modelos 3D de reservatórios combinados à nova dimensão: o tempo. O processo compara duas imagens obtidas em momentos diferentes para identificar e monitorar, por exemplo, as movimentações de reservas de óleo e gás.
A sísmica 4D inicia com um navio que emite um infrassom em direção ao fundo do oceano. Ao chegar lá, parte das ondas irá refletir e voltar aos sensores posicionados no solo marinho, enquanto as demais atravessam em direção a camadas mais profundas. Isso nos possibilita calcular a profundidade, a altura, o comprimento e a provável formação do reservatório.
Redução de paradas não programadas de unidades de hidrotratamento nas refinarias
Metodologia traz ganhos na análise da composição de água em petróleos do pré-sal
Mais um feito inédito no mundo da Petrobras: desenvolver e aplicar um processo físico disponível para separar a água do óleo de petróleo, e então obter sua composição.
Com essa invenção, descobrimos a composição de águas do pré-sal que nunca haviam sido analisadas, o que nos permite prever problemas relacionados à incrustação nesses óleos e viabilizar estudos de interação rocha-fluidos. Quer conhecer mais inovações como esta?
Algumas invenções da Petrobras em parceria com outras empresas
Robô Escalador
AURI Diverless
Robô Bombeiro
Conheça mais sobre o licenciamento de nossas tecnologias
Faça uma busca:
Buscar
Mais pesquisados
Preço dos combustíveis
Pré-Sal
Time Petrobras
Utilize nossa busca para encontrar o que procura
Faça uma busca:
Buscar
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\": \"f7c9009e-05a2-c53c-f786-279dd33d1af0\", \"id\": 16869295, \"resourcePrimKey\": 2683379, \"groupId\": 2677942, \"companyId\": 20099, \"userId\": 1009459, \"userName\": \"Ricardo Leite\", \"createDate\": \"Mon May 15 19:35:19 GMT 2023\", \"modifiedDate\": \"Wed Apr 17 18:15:33 GMT 2024\", \"externalReferenceCode\": \"1853124\", \"folderId\": 2683306, \"classNameId\": 0, \"classPK\": 0, \"treePath\": \"/2683306/\", \"articleId\": \"1853124\", \"version\": 3.2, \"urlTitle\": \"configuracao-de-rodape\", \"DDMStructureId\": 2683303, \"DDMTemplateKey\": \"\", \"defaultLanguageId\": \"pt_BR\", \"layoutUuid\": \"\", \"displayDate\": \"Mon May 15 19:33:00 GMT 2023\", \"expirationDate\": null, \"reviewDate\": null, \"indexable\": false, \"smallImage\": false, \"smallImageId\": 0, \"smallImageSource\": 1, \"smallImageURL\": \"\", \"lastPublishDate\": null, \"status\": 0, \"statusByUserId\": 873837, \"statusByUserName\": \"Gefersom Lima\", \"statusDate\": \"Wed Apr 17 18:15:33 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 83, 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
60 <img alt="${info.iconSac.alt}" src="${info.iconSac.url}"/>
61 <div class="icons-texts">
62 <p class="button-xs-regular" >${info.sacLabel}</p>
63 <p class="button-xs-bold">${info.sacNumber}</p>
64 </div>
65 </div>
66
67 <div class="logo-informations icons-container">
68 <img alt="${info.iconInformation.alt}" src="${info.iconInformation.url}"/>
69 <div class="icons-texts">
70 <p class="button-xs-regular">
71 ${info.informationLabel}
72 </p>
73 <a class="button-xs-bold" open="_blank"
74 href='${info.transparencyLink}'>
75 ${info.transparencyLabel}
76 </a>
77 </div>
78 </div>
79 </div>
80</#macro>
81
82<#if entry?has_content>
83 <@renderSacInfoDates entry journalArticleService fileEntryService />
84</#if>
85
86
87<style>
88
89 .footer-informations {
90 display: flex;
91 justify-content: center;
92 align-items: center;
93 }
94
95 .footer-informations .icons-container img {
96 width: 29px;
97 height: 29px;
98 margin: 5px 8px 0 0;
99 }
100
101 .footer-informations .icons-container {
102 color: var(--color-text-primary-default);
103 display: flex;
104 }
105
106 .footer-informations .logo-informations {
107 padding-left: calc(var(--space-lg)/2);
108 display: flex;
109 }
110
111 .footer-informations .icons-container .icons-texts * {
112 color: var(--color-text-primary-default);
113 }
114
115 .footer-informations .sac-information .icons-texts {
116 border-right: 1px solid var(--border-color-light);
117 }
118
119
120 .footer-informations .icons-container .icons-texts {
121 padding-right: calc(var(--space-lg)/2);
122 display: flex;
123 flex-direction: column;
124
125 }
126
127 @media screen and (max-width: 767px) {
128
129 .footer-informations {
130 flex-direction: column;
131 }
132
133 .footer-informations .icons-container {
134 margin-bottom: 16px !important;
135 }
136
137 .footer-informations .sac-information .icons-texts {
138 border-right: none;
139 }
140
141 .footer-informations .logo-informations {
142 margin-bottom: 16px;
143 padding: 0;
144 }
145
146 }
147
148</style>
- Conheça mais sobre a Petrobras
- Destaques
- Canais de Contato
- Outros sites 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\": \"f7c9009e-05a2-c53c-f786-279dd33d1af0\", \"id\": 16869295, \"resourcePrimKey\": 2683379, \"groupId\": 2677942, \"companyId\": 20099, \"userId\": 1009459, \"userName\": \"Ricardo Leite\", \"createDate\": \"Mon May 15 19:35:19 GMT 2023\", \"modifiedDate\": \"Wed Apr 17 18:15:33 GMT 2024\", \"externalReferenceCode\": \"1853124\", \"folderId\": 2683306, \"classNameId\": 0, \"classPK\": 0, \"treePath\": \"/2683306/\", \"articleId\": \"1853124\", \"version\": 3.2, \"urlTitle\": \"configuracao-de-rodape\", \"DDMStructureId\": 2683303, \"DDMTemplateKey\": \"\", \"defaultLanguageId\": \"pt_BR\", \"layoutUuid\": \"\", \"displayDate\": \"Mon May 15 19:33:00 GMT 2023\", \"expirationDate\": null, \"reviewDate\": null, \"indexable\": false, \"smallImage\": false, \"smallImageId\": 0, \"smallImageSource\": 1, \"smallImageURL\": \"\", \"lastPublishDate\": null, \"status\": 0, \"statusByUserId\": 873837, \"statusByUserName\": \"Gefersom Lima\", \"statusDate\": \"Wed Apr 17 18:15:33 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-neutral-dark-to-bright-300, var(--color-neutral-600));
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
- Energia em Transformação
- Sustentabilidade
- Mudanças Climáticas
- Meio Ambiente
- Responsabilidade Social
- Nossos Patrocínios
- Governança Corporativa
- Relatórios Anuais
- Inovação e Tecnologia
- Pré-Sal
- Negócios
- Quem Somos
- Sobre a Petrobras
- Trajetória
- O Que Fazemos
- Produtos
- Pessoas
Navegue nas Seções:
Acessibilidade
Alto-Contraste
Desligado
Ligado
Texto Grande
Desligado
Ligado
The following has evaluated to null or missing: ==> selectedLang [in template "20099#20135#8170390" at line 27, column 37] ---- 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: ${selectedLang} [in template "20099#20135#8170390" at line 27, column 35] ----
1<#-- Conteúdo Web -> Templates: Site de Crise - Funções gerais-->
2<#include "${templatesPath}/1975398" />
3
4<#if entries?has_content>
5 <#assign languageList = []/>
6 <#list entries as curLanguage>
7 <#assign currURL = currentURL>
8 <#assign currLangId = curLanguage.languageId/>
9 <#assign currLangName = curLanguage.shortDisplayName/>
10 <#if !curLanguage.selected>
11 <#assign languageList += [{"url":curLanguage.getURL(), "languageId":currLangId , "name":currLangName,"selected":false}]/>
12
13 <#else>
14 <#assign languageList += [{"url":"", "languageId":currLangId, "name":currLangName, "selected":true} ]/>
15 <#assign selectedLang = currLangId />
16 </#if>
17 </#list>
18</#if>
19
20<script>
21 <#assign languageConfig = "language_" + randomNumber(1000)>
22 <#assign languageListJson = "languageListJson_" + randomNumber(1000)>
23 <#assign currentSelectedLang = "currentSelectedLang_" + randomNumber(1000)>
24
25
26 let ${languageListJson} = ${jsonFactoryUtil.looseSerializeDeep(languageList)};
27 let ${currentSelectedLang} = "${selectedLang}";
28
29 function getURLforLangChange(languageName) {
30 let result = "";
31 if (languageName != null) {
32 for (let i = 0; i < ${languageListJson}.length; i++) {
33 if (${languageListJson}[i].name.toLowerCase() == languageName.toLowerCase()) {
34 result = ${languageListJson}[i].url;
35 }
36 }
37 }
38 return result;
39 }
40
41
42
43 function getURLforLangChangeById(languageId) {
44 let result = "";
45
46 function setCookie(cname, cvalue, exdays) {
47 const d = new Date();
48 d.setTime(d.getTime() + (exdays*24*60*60*1000));
49 let expires = "expires="+ d.toUTCString();
50 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
51 //console.log("Set-Cookie:"+cname + "=" + cvalue + ";" + expires + ";path=/");
52 }
53
54
55 if (languageId != null) {
56 for (let i = 0; i < ${languageListJson}.length; i++) {
57 if (${languageListJson}[i].languageId.toLowerCase() == languageId.toLowerCase()) {
58 result = ${languageListJson}[i].url;
59 }
60 }
61
62 if (languageId == "en_US") {
63 if (result) {
64 var newResult = "";
65 var currentLocation = location.pathname.replace("/pt/","/");
66 var pathName = '/en'+currentLocation;
67 var pathNameEncoded = encodeURIComponent(pathName);
68 var splitParams = new URLSearchParams(result);
69 let i=0;
70 for (let pair of splitParams.entries()) {
71 if (i>0) newResult += '&';
72 if (pair[0]== 'redirect'){
73 newResult += pair[0]+'='+pathNameEncoded;
74 } else {
75 newResult += pair[0]+'='+pair[1];
76 }
77 i++;
78 }
79 setCookie("GUEST_LANGUAGE_ID",languageId,365);
80 result = pathName;
81 }
82 }
83 }
84 return result;
85 }
86
87
88 function goToURLIng() {
89 // console.log("goToURLIng");
90 window.location.href = getURLforLangChangeById('en_US');
91 }
92
93 function goToURLPort() {
94 //console.log("goToURLPort");
95 window.location.href = getURLforLangChangeById('pt_BR');
96 }
97
98
99 function ${languageConfig}() {
100
101 AUI().ready(function () {
102
103 const languageToggleInput = document.querySelector('#language-toggle');
104
105 const defineLanguage = () => {
106 if (themeDisplay.getLanguageId() === 'en_US') {
107 if (languageToggleInput){
108 languageToggleInput.checked = true;
109 }
110 }
111 }
112
113
114
115 setTimeout(function () {
116 //console.log("Setting button behavior");
117 //const languages = document.querySelectorAll("div.petro-pt-en > div.switch > span, div.switch-fill > span.pt, div.switch-fill > span.en");
118 const languages = document.querySelectorAll("div.switch-fill > span.pt, div.switch-fill > span.en");
119 //const input = document.querySelector("div.petro-pt-en > div.switch > input, div.switch-fill > span.pt, div.switch-fill > span.en");
120 const inputBR = document.querySelector("div.switch-fill > span.pt");
121 const inputEN = document.querySelector("div.switch-fill > span.en");
122
123 if (${currentSelectedLang} == 'pt_BR') {
124 languages.forEach(function (language) {
125 if (language.innerText == 'EN' || language.innerText == 'Inglês' || language.innerText == 'English' ) {
126 if (inputEN){
127 //console.log("Inglês "+inputEN.innerText);
128 inputEN.addEventListener("click", function (){
129 //console.log("acionado");
130 window.location.href = getURLforLangChangeById('en_US');
131 });
132 }
133 }
134 });
135 }
136
137 if (${currentSelectedLang} == 'en_US') {
138 languages.forEach(function (language) {
139 if (language.innerText == 'PT' || language.innerText == 'Português' || language.innerText == 'Portuguese' ) {
140 if (inputBR){
141 //console.log("Português "+inputBR.innerText);
142 inputBR.addEventListener("click", function(){
143 //console.log("acionado");
144 window.location.href = getURLforLangChangeById('pt_BR');
145 });
146 }
147 }
148 });
149 }
150 defineLanguage()
151
152 }, 500);
153 });
154
155
156 }
157
158 ${languageConfig}();
159
160</script>
161<noscript>Seu navegador não suporta Scripts.</noscript>
Idioma:
Selecione um idioma: