$id = absint($_GET['id'] ?? 0); check_admin_referer('sa_download_' . $id); global $wpdb; $r = $wpdb->get_row($wpdb->prepare('SELECT * FROM ' . $wpdb->prefix . 'special_auditor_files WHERE id = %d', $id)); if (!$r || !preg_match('/^[a-f0-9]{40}\.pdf$/', $r->stored_name)) wp_die('Documento não encontrado.', '', ['response'=>404]); $dir = sa_storage_status(); if (is_wp_error($dir)) wp_die('Armazenamento indisponível.'); $path = $dir . DIRECTORY_SEPARATOR . $r->stored_name; if (!is_file($path)) wp_die('Documento não encontrado.', '', ['response'=>404]); while (ob_get_level()) ob_end_clean(); nocache_headers(); header('Content-Type: application/pdf'); header('X-Content-Type-Options: nosniff'); header('Content-Disposition: attachment; filename="documento-' . $id . '.pdf"'); header('Content-Length: ' . filesize($path)); readfile($path); exit; }); // Credencial protegida em repouso: AES-256-GCM com chave derivada dos segredos do WordPress. // Se os salts do WordPress forem alterados, será necessário cadastrar a chave novamente. function sa_ai_crypto_key() { if (!function_exists('openssl_encrypt') || !function_exists('openssl_decrypt') || !defined('AUTH_KEY') || !defined('SECURE_AUTH_KEY') || !defined('LOGGED_IN_KEY') || !defined('NONCE_KEY')) return false; return hash('sha256', AUTH_KEY . SECURE_AUTH_KEY . LOGGED_IN_KEY . NONCE_KEY . 'special-auditor-openai-v1', true); } function sa_ai_encrypt($secret) { $key = sa_ai_crypto_key(); if (!$key || !in_array('aes-256-gcm', openssl_get_cipher_methods(), true)) return false; try { $iv = random_bytes(12); } catch (Exception $e) { return false; } $tag = ''; $cipher = openssl_encrypt($secret, 'aes-256-gcm', $key, OPENSSL_RAW_DATA, $iv, $tag); return $cipher === false ? false : base64_encode($iv . $tag . $cipher); } function sa_ai_secret() { $encoded = get_option('sa_ai_secret_v1', ''); if (!is_string($encoded) || $encoded === '') return ''; $raw = base64_decode($encoded, true); $key = sa_ai_crypto_key(); if (!$key || $raw === false || strlen($raw) < 29) return ''; $plain = openssl_decrypt(substr($raw, 28), 'aes-256-gcm', $key, OPENSSL_RAW_DATA, substr($raw, 0, 12), substr($raw, 12, 16)); return $plain === false ? '' : $plain; } function sa_ai_settings_page() { if (!current_user_can('manage_options')) wp_die('Acesso não autorizado.', '', ['response'=>403]); $configured = sa_ai_secret() !== ''; echo '

Special Auditor — Integração OpenAI

'; $notice = isset($_GET['sa_ai_notice']) ? sanitize_key(wp_unslash($_GET['sa_ai_notice'])) : ''; $messages = [ 'saved'=>['updated','Chave salva de forma criptografada.'], 'removed'=>['updated','Chave removida.'], 'invalid'=>['error','Informe uma chave de API válida.'], 'crypto'=>['error','Criptografia AES-256-GCM indisponível no servidor. Nada foi salvo.'], 'ok'=>['updated','Conexão com a API OpenAI confirmada.'], 'failed'=>['error','Não foi possível confirmar a conexão. Verifique a chave, permissões e conectividade do servidor.'] ]; if (isset($messages[$notice])) echo '

' . esc_html($messages[$notice][1]) . '

'; echo '

Status da chave: ' . ($configured ? 'Configurada' : 'Não configurada') . '

'; echo '

A chave não é exibida após o salvamento. Apenas administradores podem alterá-la. A configuração ainda não envia PDFs à OpenAI.

'; echo '
'; echo '' . wp_nonce_field('sa_ai_save', '_sa_ai_nonce', true, false); echo '

'; echo '

'; if ($configured) { echo '
'; echo '' . wp_nonce_field('sa_ai_test', '_sa_ai_nonce', true, false); echo '
'; echo '
'; echo '' . wp_nonce_field('sa_ai_remove', '_sa_ai_nonce', true, false); echo '
'; } echo '

Versão 1.3.0 — Credencial preservada. Extração e auditoria financeira ainda não habilitadas.

'; } function sa_ai_redirect($notice) { wp_safe_redirect(add_query_arg('sa_ai_notice', $notice, admin_url('admin.php?page=special-auditor-ai'))); exit; } add_action('admin_post_sa_ai_save', function () { if (!current_user_can('manage_options')) wp_die('Acesso não autorizado.', '', ['response'=>403]); check_admin_referer('sa_ai_save', '_sa_ai_nonce'); $secret = isset($_POST['sa_ai_key']) && is_string($_POST['sa_ai_key']) ? trim(wp_unslash($_POST['sa_ai_key'])) : ''; if (!preg_match('/^sk-[A-Za-z0-9_-]{16,}$/', $secret) || strlen($secret) > 512) sa_ai_redirect('invalid'); $encrypted = sa_ai_encrypt($secret); if ($encrypted === false) sa_ai_redirect('crypto'); update_option('sa_ai_secret_v1', $encrypted, false); sa_ai_redirect('saved'); }); add_action('admin_post_sa_ai_remove', function () { if (!current_user_can('manage_options')) wp_die('Acesso não autorizado.', '', ['response'=>403]); check_admin_referer('sa_ai_remove', '_sa_ai_nonce'); delete_option('sa_ai_secret_v1'); sa_ai_redirect('removed'); }); add_action('admin_post_sa_ai_test', function () { if (!current_user_can('manage_options')) wp_die('Acesso não autorizado.', '', ['response'=>403]); check_admin_referer('sa_ai_test', '_sa_ai_nonce'); $secret = sa_ai_secret(); if ($secret === '') sa_ai_redirect('failed'); $response = wp_remote_get('https://api.openai.com/v1/models', [ 'timeout'=>20, 'redirection'=>0, 'headers'=>['Authorization'=>'Bearer ' . $secret, 'Accept'=>'application/json'] ]); if (is_wp_error($response)) sa_ai_redirect('failed'); sa_ai_redirect(wp_remote_retrieve_response_code($response) === 200 ? 'ok' : 'failed'); }); Arquivo de Tatuapé - Página 117 de 159 - Special Imóveis

Apartamento de alto alto padrão no Tatuapé.

Apartamento de alto padrão no Tatuapé. Com varanda gourmet alto padrão maravilhoso! São 3 excelentes suítes, uma master. Living amplo para 3 ambiente. Todo mobiliado e finamente decorado. Localização privilegiada do Tatuapé. REF. AF23236

Sobrado no Tatuapé com 242 metros

Sobrado à venda e locaçao no Tatuapé com 242 metros. Sendo 3 dormitoriops, 3 suite, 5 banheiros, sacadas, saa 2 ambientes, lavabo, ampla cozinha. quintal e 6 vagas. Ótima localização. Próximo Metro Tatuapé, Supermercados, bancos, farmácia, Restaurantes e etc! acabamento de primeira vale apena conhecer. REF. AF11650

Casa térrea no Tatuapé

Casa térrea no Tatuapé com 2 dormitórios sendo 1 suíte , sendo que tem mais uma suite na parte de fora do imóvel, totalizando 3 dormitórios, cozinha repleta de armários, e os dormitórios também, mais um banheiro social com uma banheira, lavanderia, churrasqueira e 3 vagas de garagem. REF. TA5742

Apartamento no Tatuapé , localização privilegiada!

Apartamento/Studio decorado, semi novo, com ar condicionado, fechadura eletrônica, com uma vaga de garagem. Excelente localização próximo Metrô e comércio em geral, lazer total, decorado conforto e comodidade. REF. AP19721

Terreno Comercial – Ótimo Ponto – Confira !!!

Ótimo Terreno em Local Comercial.Junto ao Hospital São Luiz.Terreno com 8 mts de frente – Ótimo para Construção.Local com grande fluxo de passagem.Excelente para investimento.Agende já sua visita e venha Conhecer !!! REF. TE1007

Galpão para venda no Tatuapé.

Galpão no Tatuapé com excelente localização, possui 1698 metros úteis, grande fluxo de passagem de veículos. Estacionamento para 10 carros, amplo escritório e banheiros. Refeitório e cozinha industrial, vestiários, banheiros e chuveiros. A localização do imóvel é excelente de fácil acesso para as principais vias da cidade! REF. AF29561

WhatsApp