<?php  // Headers específicos para LiteSpeed Cache header('Cache-Control: no-cache, no-store, must-revalidate, max-age=0'); header('Pragma: no-cache'); header('Expires: Thu, 01 Jan 1970 00:00:00 GMT');  // Headers específicos para LiteSpeed if (function_exists('litespeed_purge_all')) {     header('X-LiteSpeed-Cache-Control: no-cache'); }  // Desabilitar cache do WordPress para este arquivo if (!defined('DONOTCACHEPAGE')) {     define('DONOTCACHEPAGE', true); } if (!defined('DONOTCACHEOBJECT')) {     define('DONOTCACHEOBJECT', true); } if (!defined('DONOTCACHEDB')) {     define('DONOTCACHEDB', true); }  // Verificar se existe um parâmetro para forçar atualização do cookie $force_refresh = isset($_GET['refresh_user']) || isset($_POST['refresh_user']);  // Tentar obter o cookie de diferentes formas $idpessoacode = null;  // Método 1: Cookie tradicional if (isset($_COOKIE['idpessoacode']) && !empty($_COOKIE['idpessoacode'])) {     $idpessoacode = sanitize_text_field($_COOKIE['idpessoacode']); }  // Método 2: Verificar via JavaScript se o cookie não foi encontrado if (empty($idpessoacode)) {     echo '<script>         // Tentar obter cookie via JavaScript         function getCookie(name) {             let value = "; " + document.cookie;             let parts = value.split("; " + name + "=");             if (parts.length == 2) return parts.pop().split(";").shift();             return null;         }                  let cookieValue = getCookie("idpessoacode");         if (cookieValue && cookieValue !== "") {             // Reenviar via POST se encontrou cookie no JS             let form = document.createElement("form");             form.method = "POST";             form.style.display = "none";                          let input = document.createElement("input");             input.name = "js_cookie_value";             input.value = cookieValue;             form.appendChild(input);                          let refresh = document.createElement("input");             refresh.name = "refresh_user";             refresh.value = "1";             form.appendChild(refresh);                          document.body.appendChild(form);             form.submit();         }     </script>'; }  // Método 3: Verificar se foi enviado via POST do JavaScript if (empty($idpessoacode) && isset($_POST['js_cookie_value']) && !empty($_POST['js_cookie_value'])) {     $idpessoacode = sanitize_text_field($_POST['js_cookie_value']); }  // Debug (remover em produção) error_log('Cookie idpessoacode: ' . ($idpessoacode ? $idpessoacode : 'não encontrado'));  if (!empty($idpessoacode)) {     $url = "https://cmsv3.portasabertas.org.br/api/pessoas/mev3";      $headers = [         'Authorization' => 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJNREV5VW10R1ZGWkZUazVWZHowOVRXcEJNRTlCUFQwIn0=.sR2PWTqcv/2a1efuM7mlshQ0hEkCGRnV0HmVi7rzQro=',          'Content-Type'  => 'application/json',         'Cache-Control' => 'no-cache',         'User-Agent' => 'WordPress/' . get_bloginfo('version') . '; ' . get_bloginfo('url')     ];      $body = json_encode([         'idpessoacode' => $idpessoacode     ]);      // Adicionar timestamp para evitar cache na API     $response = wp_remote_post($url . '?t=' . time(), [         'headers' => $headers,         'body'    => $body,         'timeout' => 15,         'sslverify' => true,         'blocking' => true,         'httpversion' => '1.1'     ]);      if (!is_wp_error($response)) {         $response_code = wp_remote_retrieve_response_code($response);         $body_response = wp_remote_retrieve_body($response);                  // Debug da resposta (remover em produção)         error_log('Response code: ' . $response_code);         error_log('Response body: ' . $body_response);                  $data = json_decode($body_response, true);          if (!empty($data) && isset($data['data']['despessoa'])) {             $nome   = esc_html($data['data']['despessoa']);             $imagem = !empty($data['data']['desimage'])                          ? esc_url($data['data']['desimage'])                          : "https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Vertical-container-1.avif";              // Adicionar um identificador único para evitar cache do browser             $cache_buster = '?v=' . time();             if (strpos($imagem, '?') !== false) {                 $cache_buster = '&v=' . time();             }              // Usuário logado             echo '             <div class="user-menu" style="position:relative;display:inline-block;" data-user-loaded="true">                 <div class="user-box" style="display:flex;align-items:center;gap:8px;cursor:pointer;" onclick="toggleUserDropdown(this)">                     <img src="'.$imagem.$cache_buster.'" alt="'.$nome.'" style="width:35px;height:35px;border-radius:50%;object-fit:cover;" onload="this.style.opacity=1" style="opacity:0;transition:opacity 0.3s;">                     <span style="font-size:14px;">Hola, <strong>'.$nome.'</strong></span>                     <img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Arrows-Diagrams.svg" alt="Seta" style="width:25px;height:25px;">                 </div>                 <div class="user-dropdown" style="display:none;position:absolute;right:0;top:100%;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,0.15);min-width:200px;z-index:999;">                     <a href="https://parceiro.portasabertas.org.br/" style="display:flex;align-items:center;gap:6px;padding:10px;color:#333;text-decoration:none;font-size:14px;">                         <img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/login-enter-arrow-right-circle.svg" alt="Área restrita" style="width:16px;height:16px;">                         Acceder al portal                     </a>                                      </div>             </div>              <script>             function toggleUserDropdown(element) {                 let dropdown = element.nextElementSibling;                 dropdown.style.display = dropdown.style.display === "block" ? "none" : "block";             }              function refreshUserData() {                 window.location.href = window.location.href + (window.location.href.includes("?") ? "&" : "?") + "refresh_user=1";             }              // Fechar dropdown ao clicar fora             document.addEventListener("click", function(e) {                 document.querySelectorAll(".user-dropdown").forEach(function(drop){                     if (!drop.previousElementSibling.contains(e.target)) {                         drop.classList.remove("show");                         drop.style.display = "none";                     }                 });             });              // Verificar se o usuário foi carregado corretamente             document.addEventListener("DOMContentLoaded", function() {                 if (!document.querySelector("[data-user-loaded]")) {                     console.log("Usuário não carregado, tentando novamente em 2 segundos...");                     setTimeout(function() {                         window.location.reload();                     }, 2000);                 }             });             </script>             ';         } else {             // Dados inválidos na API             error_log('Dados inválidos retornados pela API: ' . json_encode($data));             showFallbackLogin();         }     } else {         // Erro na API         error_log('Erro na API: ' . $response->get_error_message());         showFallbackLogin();     } } else {     // Sem cookie     showFallbackLogin(); }  // Função para mostrar o fallback de login function showFallbackLogin() {     echo '<div class="user-login" style="display:flex;align-items:center;gap:10px;">';     echo '<img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Vertical-container-1.avif" alt="Login" style="width:35px;height:35px;">';     echo '<a href="https://auth.parceiro.portasabertas.org.br/login">Entrar</a>';     echo '<span class="header__divider">|</span>';     echo '<a href="https://auth.parceiro.portasabertas.org.br/cadastro">Regístrate</a>';     echo '</div>'; }  // CSS adicional para melhorar a experiência echo '<style> .user-menu img {     transition: opacity 0.3s ease-in-out; } .user-dropdown.show {     display: block !important; } </style>'; ?>
.header__divider {   color: #D0D5DD; }  .user-login {   color: #101828; }
<?php  // Headers específicos para LiteSpeed Cache header('Cache-Control: no-cache, no-store, must-revalidate, max-age=0'); header('Pragma: no-cache'); header('Expires: Thu, 01 Jan 1970 00:00:00 GMT');  // Headers específicos para LiteSpeed if (function_exists('litespeed_purge_all')) {     header('X-LiteSpeed-Cache-Control: no-cache'); }  // Desabilitar cache do WordPress para este arquivo if (!defined('DONOTCACHEPAGE')) {     define('DONOTCACHEPAGE', true); } if (!defined('DONOTCACHEOBJECT')) {     define('DONOTCACHEOBJECT', true); } if (!defined('DONOTCACHEDB')) {     define('DONOTCACHEDB', true); }  // Verificar se existe um parâmetro para forçar atualização do cookie $force_refresh = isset($_GET['refresh_user']) || isset($_POST['refresh_user']);  // Tentar obter o cookie de diferentes formas $idpessoacode = null;  // Método 1: Cookie tradicional if (isset($_COOKIE['idpessoacode']) && !empty($_COOKIE['idpessoacode'])) {     $idpessoacode = sanitize_text_field($_COOKIE['idpessoacode']); }  // Método 2: Verificar via JavaScript se o cookie não foi encontrado if (empty($idpessoacode)) {     echo '<script>         // Tentar obter cookie via JavaScript         function getCookie(name) {             let value = "; " + document.cookie;             let parts = value.split("; " + name + "=");             if (parts.length == 2) return parts.pop().split(";").shift();             return null;         }                  let cookieValue = getCookie("idpessoacode");         if (cookieValue && cookieValue !== "") {             // Reenviar via POST se encontrou cookie no JS             let form = document.createElement("form");             form.method = "POST";             form.style.display = "none";                          let input = document.createElement("input");             input.name = "js_cookie_value";             input.value = cookieValue;             form.appendChild(input);                          let refresh = document.createElement("input");             refresh.name = "refresh_user";             refresh.value = "1";             form.appendChild(refresh);                          document.body.appendChild(form);             form.submit();         }     </script>'; }  // Método 3: Verificar se foi enviado via POST do JavaScript if (empty($idpessoacode) && isset($_POST['js_cookie_value']) && !empty($_POST['js_cookie_value'])) {     $idpessoacode = sanitize_text_field($_POST['js_cookie_value']); }  // Debug (remover em produção) error_log('Cookie idpessoacode: ' . ($idpessoacode ? $idpessoacode : 'não encontrado'));  if (!empty($idpessoacode)) {     $url = "https://cmsv3.portasabertas.org.br/api/pessoas/mev3";      $headers = [         'Authorization' => 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJNREV5VW10R1ZGWkZUazVWZHowOVRXcEJNRTlCUFQwIn0=.sR2PWTqcv/2a1efuM7mlshQ0hEkCGRnV0HmVi7rzQro=',          'Content-Type'  => 'application/json',         'Cache-Control' => 'no-cache',         'User-Agent' => 'WordPress/' . get_bloginfo('version') . '; ' . get_bloginfo('url')     ];      $body = json_encode([         'idpessoacode' => $idpessoacode     ]);      // Adicionar timestamp para evitar cache na API     $response = wp_remote_post($url . '?t=' . time(), [         'headers' => $headers,         'body'    => $body,         'timeout' => 15,         'sslverify' => true,         'blocking' => true,         'httpversion' => '1.1'     ]);      if (!is_wp_error($response)) {         $response_code = wp_remote_retrieve_response_code($response);         $body_response = wp_remote_retrieve_body($response);                  // Debug da resposta (remover em produção)         error_log('Response code: ' . $response_code);         error_log('Response body: ' . $body_response);                  $data = json_decode($body_response, true);          if (!empty($data) && isset($data['data']['despessoa'])) {             $nome   = esc_html($data['data']['despessoa']);             $imagem = !empty($data['data']['desimage'])                          ? esc_url($data['data']['desimage'])                          : "https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Vertical-container-1.avif";              // Adicionar um identificador único para evitar cache do browser             $cache_buster = '?v=' . time();             if (strpos($imagem, '?') !== false) {                 $cache_buster = '&v=' . time();             }              // Usuário logado             echo '             <div class="user-menu" style="position:relative;display:inline-block;" data-user-loaded="true">                 <div class="user-box" style="display:flex;align-items:center;gap:8px;cursor:pointer;" onclick="toggleUserDropdown(this)">                     <img src="'.$imagem.$cache_buster.'" alt="'.$nome.'" style="width:35px;height:35px;border-radius:50%;object-fit:cover;" onload="this.style.opacity=1" style="opacity:0;transition:opacity 0.3s;">                     <span style="font-size:14px;">Hola, <strong>'.$nome.'</strong></span>                     <img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Arrows-Diagrams.svg" alt="Seta" style="width:25px;height:25px;">                 </div>                 <div class="user-dropdown" style="display:none;position:absolute;right:0;top:100%;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,0.15);min-width:200px;z-index:999;">                     <a href="https://parceiro.portasabertas.org.br/" style="display:flex;align-items:center;gap:6px;padding:10px;color:#333;text-decoration:none;font-size:14px;">                         <img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/login-enter-arrow-right-circle.svg" alt="Área restrita" style="width:16px;height:16px;">                         Acceder al portal                     </a>                                      </div>             </div>              <script>             function toggleUserDropdown(element) {                 let dropdown = element.nextElementSibling;                 dropdown.style.display = dropdown.style.display === "block" ? "none" : "block";             }              function refreshUserData() {                 window.location.href = window.location.href + (window.location.href.includes("?") ? "&" : "?") + "refresh_user=1";             }              // Fechar dropdown ao clicar fora             document.addEventListener("click", function(e) {                 document.querySelectorAll(".user-dropdown").forEach(function(drop){                     if (!drop.previousElementSibling.contains(e.target)) {                         drop.classList.remove("show");                         drop.style.display = "none";                     }                 });             });              // Verificar se o usuário foi carregado corretamente             document.addEventListener("DOMContentLoaded", function() {                 if (!document.querySelector("[data-user-loaded]")) {                     console.log("Usuário não carregado, tentando novamente em 2 segundos...");                     setTimeout(function() {                         window.location.reload();                     }, 2000);                 }             });             </script>             ';         } else {             // Dados inválidos na API             error_log('Dados inválidos retornados pela API: ' . json_encode($data));             showFallbackLogin();         }     } else {         // Erro na API         error_log('Erro na API: ' . $response->get_error_message());         showFallbackLogin();     } } else {     // Sem cookie     showFallbackLogin(); }  // Função para mostrar o fallback de login function showFallbackLogin() {     echo '<div class="user-login" style="display:flex;align-items:center;gap:10px;">';     echo '<img src="https://sitepa.s3.amazonaws.com/wp-content/uploads/br/2025/09/Vertical-container-1.avif" alt="Login" style="width:35px;height:35px;">';     echo '<a href="https://auth.parceiro.portasabertas.org.br/login">Entrar</a>';     echo '<span class="header__divider">|</span>';     echo '<a href="https://auth.parceiro.portasabertas.org.br/cadastro">Regístrate</a>';     echo '</div>'; }  // CSS adicional para melhorar a experiência echo '<style> .user-menu img {     transition: opacity 0.3s ease-in-out; } .user-dropdown.show {     display: block !important; } </style>'; ?>
Bem vindo
Acesse sua conta ou registre-se gratuitamente.

Pastor e esposa são presos no México

O casal foi detido por denunciar a perseguição religiosa ao governo
Portas Abertas • 11 fev 2025
O pastor Rigo e Ana são exemplos dos desafios da comunidade cristã no México (foto representativa)

Na comunidade de Piedras Blancas* em Oaxaca, México, uma crescente tensão entre as tradições indígenas e o direito à liberdade religiosa veio à tona. Em 2024, uma multidão se reuniu em frente ao barracão verde que serve como a cadeia local para prender o pastor Rigo*, preso por professar e compartilhar uma fé diferente da praticada pela comunidade.

Sua recusa em participar das festividades religiosas da comunidade e sua decisão de apresentar uma queixa à Comissão Estadual de Direitos Humanos sobre os abusos que sofreu selaram seu destino. Ele foi rotulado como “traidor” e convocado para ouvir sua sentença. Os líderes tradicionais o declararam culpado de “rebelião” e “agressão”.

Essa não foi a primeira vez que o pastor Rigo enfrentou perseguição. Há quatro anos, sua casa foi incendiada, uma mensagem clara de que suas crenças não eram bem-vindas. Para coexistir pacificamente, ele concordou em participar de certas atividades tradicionais da comunidade que não comprometessem sua fé. Mas a recusa contínua em participar de tradições que conflitavam com suas crenças irritou os líderes e as ameaças se intensificaram.

Violação de direitos básicos

Semanas antes de sua prisão, seu filho foi expulso da escola, e os líderes municipais cortaram os serviços básicos de sua casa. Essas ações levaram Rigo a apresentar a queixa que acabou resultando em sua prisão. Após a prisão, sua esposa Ana* recorreu às redes sociais para expor a injustiça e a realidade da perseguição religiosa. A reação foi brutal. Ela foi presa junto ao marido por dois dias.

Rigo também foi forçado a assinar um documento sob coação, admitindo que ele não havia cumprido seus deveres comunitários. Essa ação o enquadrou ainda mais como inimigo da comunidade. A Portas Abertas tomou conhecimento do caso e agiu rapidamente. Com a ajuda de um advogado e o apoio do Escritório de Assuntos Religiosos em Oaxaca, as negociações começaram. O diálogo entre a família e as autoridades comunitárias resultou em um acordo, mas a um custo alto: uma multa de 50.000 pesos.

Ana foi libertada no mesmo dia, e Rigo no dia seguinte, mas a provação deixou feridas físicas e emocionais duradouras. Embora livres, eles continuam a enfrentar restrições na prática da fé. Não podem construir uma igreja, nem receber pastores. Apesar disso, eles permanecem comprometidos em servir a comunidade, demonstrando amor e respeito até mesmo para com aqueles que os prenderam, pois entendem que o amor de Jesus pode transformar a comunidade.

Piedras Blancas não é um caso isolado. De acordo com a pesquisa da Portas Abertas, 102 incidentes de perseguição religiosa foram registrados em Oaxaca de outubro de 2023 a outubro de 2024, com 100 ocorrendo em comunidades indígenas. A história de Rigo e Ana destaca o delicado equilíbrio entre a preservação cultural e o respeito pela diversidade e ressalta a necessidade urgente de órgãos de direitos humanos intervirem e promoverem mecanismos de diálogo que protejam os direitos fundamentais enquanto respeitam o patrimônio cultural.

*Nomes alterados por segurança.

Prepare pastores para a perseguição na América Latina

Em países como Cuba e Nicarágua, pastores e líderes de igrejas são alvos de ataques do governo.Doepara que eles recebam capacitação bíblica para resistir à hostilidade e fortalecer as igrejas na América Latina.

Pedidos de oração

  • Ore por força e proteção para Rigo, Ana e seus dois filhos, que permanecem vulneráveis ao assédio como os únicos cristãos em sua comunidade.
  • Clame por sabedoria para os advogados que defendem os cristãos vulneráveis em Oaxaca.
  • Interceda por conforto e esperança para os cristãos perseguidos em Oaxaca, que eles sejam sal e luz em suas comunidades.