<?php
session_start();
ob_start(); // Limpeza de buffer para garantir imagem intacta
date_default_timezone_set('America/Sao_Paulo');

require_once 'config.php';
$pdo = getConexaoAtiva();
$pdo->exec("SET NAMES utf8mb4");
$pdo->exec("SET SESSION sql_mode = ''");

if (!isset($_SESSION['user_id'])) { header("Location: login.php"); exit; }

$role = $_SESSION['user_role'] ?? 'reseller';
$nome_usuario = $_SESSION['username'] ?? 'Usuário';
$my_id = $_SESSION['user_id'];
$mensagem_aviso = "";

// =========================================================================
// FUNÇÃO ROBUSTA PARA BAIXAR IMAGENS EXTERNAS DO TMDB
// =========================================================================
function baixarConteudoExterno($url) {
    if (function_exists('curl_init')) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)');
        $data = curl_exec($ch);
        curl_close($ch);
        if ($data) return $data;
    }
    return @file_get_contents($url);
}

// Remove acentos para evitar bugs na fonte nativa de hospedagens compartilhadas
function removerAcentos($string) {
    return preg_replace(
        ['/(á|à|ã|â|ä)/','/(Á|À|Ã|Â|Ä)/','/(é|è|ê|ë)/','/(É|È|Ê|Ë)/','/(í|ì|î|ï)/','/(Í|Ì|Î|Ï)/','/(ó|ò|õ|ô|ö)/','/(Ó|Ò|Õ|Ô|Ö)/','/(ú|ù|û|ü)/','/(Ú|Ù|Û|Ü)/','/(ñ)/','/(Ñ)/','/(ç)/','/(Ç)/'],
        ['a','A','e','E','i','I','o','O','u','U','n','N','c','C'], 
        $string
    );
}

// Formata o WhatsApp para (XX) 9 XXXX-XXXX
function maskWhatsApp($val) {
    $val = preg_replace('/[^0-9]/', '', $val);
    if(strlen($val) == 11) {
        return preg_replace('/(\d{2})(\d{1})(\d{4})(\d{4})/', '($1) $2 $3-$4', $val);
    } elseif(strlen($val) == 10) {
        return preg_replace('/(\d{2})(\d{4})(\d{4})/', '($1) $2-$3', $val);
    }
    return $val;
}

// =========================================================================
// MOTOR DE TEXTO HD BLINDADO (Compatível com 100% das hospedagens)
// =========================================================================
if (!function_exists('desenharTextoDestacado')) {
    function desenharTextoDestacado($img, $texto, $scale, $y, $r, $g, $b, $width_img) {
        $font = 5; 
        $texto = removerAcentos($texto); 
        
        $fw = imagefontwidth($font) * strlen($texto);
        $fh = imagefontheight($font);
        
        $tmp = imagecreatetruecolor($fw, $fh);
        imagealphablending($tmp, false);
        imagesavealpha($tmp, true);
        $transparente = imagecolorallocatealpha($tmp, 0, 0, 0, 127);
        imagefill($tmp, 0, 0, $transparente);
        
        imagealphablending($tmp, true);
        $cor_texto = imagecolorallocate($tmp, $r, $g, $b);
        imagestring($tmp, $font, 0, 0, $texto, $cor_texto);
        imagestring($tmp, $font, 1, 0, $texto, $cor_texto);
        
        $new_w = (int)($fw * $scale);
        $new_h = (int)($fh * $scale);
        $x = (int)(($width_img - $new_w) / 2);
        
        imagealphablending($img, true);
        imagecopyresampled($img, $tmp, $x, $y, 0, 0, $new_w, $new_h, $fw, $fh);
        imagedestroy($tmp);
    }
}

// =========================================================================
// AUTO-CORREÇÃO DO BANCO DE DADOS
// =========================================================================
try {
    $check_tmdb = $pdo->query("SHOW COLUMNS FROM `painel_config` LIKE 'tmdb_api_key'");
    if (!$check_tmdb->fetch()) { $pdo->exec("ALTER TABLE `painel_config` ADD COLUMN `tmdb_api_key` VARCHAR(255) DEFAULT ''"); }
    
    $check_zap = $pdo->query("SHOW COLUMNS FROM `reg_users` LIKE 'whatsapp'");
    if (!$check_zap->fetch()) { $pdo->exec("ALTER TABLE `reg_users` ADD COLUMN `whatsapp` VARCHAR(255) DEFAULT NULL"); }
} catch (Exception $e) {}

// SALVAR CONFIGURAÇÕES DE MARKETING
if (isset($_POST['action_save_marketing'])) {
    $novo_zap = preg_replace('/[^0-9]/', '', $_POST['meu_whatsapp']); 
    $pdo->prepare("UPDATE reg_users SET whatsapp = ? WHERE id = ?")->execute([$novo_zap, $my_id]);
    
    if ($role === 'admin' && isset($_POST['tmdb_api_key'])) {
        $nova_api = trim($_POST['tmdb_api_key']);
        $pdo->prepare("UPDATE painel_config SET tmdb_api_key = ?")->execute([$nova_api]);
    }
    
    $mensagem_aviso = "<div class='alert success'><i class='fas fa-check-circle'></i> Configurações salvas com sucesso! Suas artes já sairão atualizadas.</div>";
}

$nome_painel = 'TOP IPTV'; $logo_url = ''; $cor_primaria = '#007bff'; $tmdb_api_key_salva = '';
try {
    $config_painel = $pdo->query("SELECT * FROM painel_config LIMIT 1")->fetch(PDO::FETCH_ASSOC);
    if ($config_painel) {
        $nome_painel = !empty($config_painel['nome_painel']) ? $config_painel['nome_painel'] : $nome_painel;
        $logo_url = !empty($config_painel['logo_url']) ? $config_painel['logo_url'] : $logo_url;
        $cor_primaria = !empty($config_painel['cor_primaria']) ? $config_painel['cor_primaria'] : $cor_primaria;
        $tmdb_api_key_salva = $config_painel['tmdb_api_key'] ?? '';
    }
} catch (Exception $e) {}

$meu_whatsapp = $pdo->query("SELECT whatsapp FROM reg_users WHERE id = " . intval($my_id))->fetchColumn() ?: '';
try { $user_credits = $pdo->query("SELECT credits FROM reg_users WHERE id = " . intval($my_id))->fetchColumn() ?: 0; } catch (Exception $e) { $user_credits = 0; }

// =========================================================================
// GERAÇÃO DA TABELA DE PREÇOS (PNG)
// =========================================================================
if (isset($_GET['download_tabela'])) {
    $zap_texto = $_GET['zap'] ?? '';
    if(empty($zap_texto)) $zap_texto = "SEU WHATSAPP";
    $zap_formatado = maskWhatsApp($zap_texto);

    $stmtP = $pdo->prepare("SELECT nome_plano, valor FROM billing_planos WHERE owner_id = ? AND ativo = 1 ORDER BY meses ASC LIMIT 6");
    $stmtP->execute([$my_id]);
    $planos = $stmtP->fetchAll(PDO::FETCH_ASSOC);

    $width = 800; $height = 1000;
    $image = imagecreatetruecolor($width, $height);

    $bg_color = imagecolorallocate($image, 15, 17, 20); 
    $accent_color = imagecolorallocate($image, 0, 123, 255); 
    $green = imagecolorallocate($image, 37, 211, 102); 
    $card_bg = imagecolorallocate($image, 39, 44, 51); 

    imagefill($image, 0, 0, $bg_color);
    imagefilledrectangle($image, 0, 0, $width, 120, $accent_color);

    desenharTextoDestacado($image, "NOSSOS PLANOS", 3.0, 40, 255, 255, 255, $width);

    $y = 160;
    if(count($planos) > 0) {
        foreach($planos as $p) {
            imagefilledrectangle($image, 40, $y, $width - 40, $y + 90, $card_bg);
            $nome = strtoupper(substr(trim($p['nome_plano']), 0, 20)); 
            $valor = "R$ " . number_format($p['valor'], 2, ',', '.');
            
            desenharTextoDestacado($image, $nome . " - " . $valor, 2.0, $y + 30, 255, 255, 255, $width);
            $y += 120; 
        }
    } else {
        desenharTextoDestacado($image, "NENHUM PLANO CADASTRADO", 2.0, 400, 138, 148, 161, $width);
    }
    
    imagefilledrectangle($image, 0, $height - 110, $width, $height, $green);
    desenharTextoDestacado($image, "WHATSAPP: " . $zap_formatado, 2.5, $height - 75, 15, 17, 20, $width);

    if (ob_get_length()) ob_clean(); 
    header('Content-Type: image/png');
    header('Content-Disposition: attachment; filename="minha_tabela_de_precos.png"');
    imagepng($image); 
    imagedestroy($image); 
    exit;
}

// =========================================================================
// CARIMBADOR DE BANNERS COM PLANOS (GERA NA HORA)
// =========================================================================
if (isset($_GET['download_banner']) && !empty($_GET['img'])) {
    $img_url = "https://image.tmdb.org/t/p/w780" . $_GET['img'];
    $zap_texto = $_GET['zap'];
    if(empty($zap_texto)) $zap_texto = "SEU WHATSAPP";
    $zap_formatado = maskWhatsApp($zap_texto);
    
    // Busca Planos
    $stmtP = $pdo->prepare("SELECT nome_plano, valor FROM billing_planos WHERE owner_id = ? AND ativo = 1 ORDER BY valor ASC LIMIT 2");
    $stmtP->execute([$my_id]);
    $planos_banner = $stmtP->fetchAll(PDO::FETCH_ASSOC);
    
    $texto_planos = "PLANOS IMPERDIVEIS! CONSULTE-NOS.";
    if(count($planos_banner) > 0) {
        $arrP = [];
        foreach($planos_banner as $p) {
            $nome_curto = explode(' ', trim($p['nome_plano']))[0]; 
            $arrP[] = strtoupper(substr(removerAcentos($nome_curto), 0, 15)) . " R$ " . number_format($p['valor'], 2, ',', '.');
        }
        $texto_planos = implode(" | ", $arrP);
    }
    
    $img_data = baixarConteudoExterno($img_url);
    
    if ($img_data) {
        $image = imagecreatefromstring($img_data);
        if ($image) {
            $width = imagesx($image);
            $height = imagesy($image);
            
            imagealphablending($image, true);
            
            $tarja_altura = 190;
            
            // Desenha a Tarja Preta Sombreada no Rodapé
            $preto_transparente = imagecolorallocatealpha($image, 0, 0, 0, 45); 
            imagefilledrectangle($image, 0, $height - $tarja_altura, $width, $height, $preto_transparente);
            
            // Desenha a Tarja Vermelha Fina
            $fundo_alerta = imagecolorallocatealpha($image, 231, 76, 60, 30); 
            imagefilledrectangle($image, 0, $height - $tarja_altura, $width, $height - 145, $fundo_alerta);

            // ================================================================
            // TEXTOS E PROPORÇÕES (AJUSTADAS PARA DAR MAIS DESTAQUE AOS PLANOS)
            // ================================================================
            desenharTextoDestacado($image, "ASSISTA AGORA COM A GENTE!", 2.2, $height - 175, 255, 255, 255, $width);
            
            // Escala dos planos aumentada de 1.4 para 1.7 e reposicionado
            desenharTextoDestacado($image, $texto_planos, 1.7, $height - 120, 241, 196, 15, $width);
            
            // WhatsApp
            desenharTextoDestacado($image, "WHATSAPP: " . $zap_formatado, 1.9, $height - 60, 37, 211, 102, $width);

            if (ob_get_length()) ob_clean(); 
            header('Content-Type: image/jpeg');
            header('Content-Disposition: attachment; filename="banner_promocional.jpg"');
            imagejpeg($image, null, 100);
            imagedestroy($image);
            exit;
        }
    }
    header("Location: marketing.php?erro=1");
    exit;
}

// --- CONFIGURAÇÃO DA API DO TMDB ---
$chave_uso = !empty($tmdb_api_key_salva) ? $tmdb_api_key_salva : "35c6e11802e9cfcc2a91f54a8859be65";
$url_tmdb = "https://api.themoviedb.org/3/trending/all/week?api_key={$chave_uso}&language=pt-BR";

$filmes_em_alta = [];
try {
    $json_data = baixarConteudoExterno($url_tmdb);
    if ($json_data) {
        $dados = json_decode($json_data, true);
        if (isset($dados['results'])) {
            $filmes_em_alta = array_slice($dados['results'], 0, 12); 
        }
    }
} catch (Exception $e) {}

?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Central de Marketing - <?php echo htmlspecialchars($nome_painel); ?></title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <style>
        :root { 
            --bg-dark: #121519; --bg-sidebar: #1e2227; --bg-card: #272c33; --bg-card-hover: #2d333b;
            --text-main: #d1d5da; --text-muted: #8a94a1; --accent: <?php echo $cor_primaria; ?>; 
            --border-color: #3a4149; --success: #2ecc71; --danger: #e74c3c; --warning: #f39c12; --info: #3498db; --purple: #8b5cf6;
        }
        body { margin: 0; font-family: 'Segoe UI', sans-serif; background-color: var(--bg-dark); color: var(--text-main); display: flex; height: 100vh; overflow: hidden; }
        
        /* SIDEBAR (Completo e Responsivo) */
        .sidebar { width: 260px; background-color: var(--bg-sidebar); display: flex; flex-direction: column; transition: 0.3s; border-right: 1px solid var(--border-color); z-index: 1001; flex-shrink: 0; }
        .sidebar-header { padding: 25px 20px; text-align: center; font-size: 22px; font-weight: bold; color: white; border-bottom: 1px solid var(--border-color); }
        .sidebar-logo { max-width: 180px; max-height: 55px; object-fit: contain; }
        .user-info { padding: 20px; text-align: center; border-bottom: 1px solid var(--border-color); }
        .user-info .badge { background: rgba(255, 255, 255, 0.05); color: var(--accent); padding: 4px 10px; border-radius: 4px; font-size: 11px; text-transform: uppercase; font-weight: bold; margin-top: 5px; display: inline-block; }
        .credits-badge { display: block; margin-top: 10px; color: var(--success); font-weight: bold; font-size: 13px; }
        
        .menu-list { list-style: none; padding: 0; margin: 0; overflow-y: auto; flex: 1; }
        .menu-item { padding: 14px 20px; color: var(--text-main); text-decoration: none; display: flex; align-items: center; transition: 0.2s; border-left: 3px solid transparent; font-size: 14px; cursor: pointer; }
        .menu-item i:first-child { margin-right: 12px; width: 20px; text-align: center; color: var(--text-muted); }
        .menu-item:hover, .menu-item.active { background-color: #2c3138; color: white; border-left-color: var(--accent); }
        .menu-item.active i:first-child { color: var(--accent); }
        
        .submenu { display: none; background: #16191d; list-style: none; padding: 0; margin: 0; }
        .submenu .menu-item { padding-left: 52px; font-size: 13px; border-left: none; }
        .arrow-icon { margin-left: auto; transition: 0.3s; font-size: 11px; }
        .rotate { transform: rotate(180deg); }
        .menu-category { padding: 20px 20px 8px; font-size: 10px; text-transform: uppercase; color: var(--text-muted); font-weight: bold; letter-spacing: 1px; }
        .logout-btn { padding: 15px; background-color: var(--danger); color: white; text-align: center; text-decoration: none; font-weight: bold; }

        .main-content { flex: 1; display: flex; flex-direction: column; overflow-y: auto; width: 100%; position: relative; }
        .topbar { display: flex; justify-content: space-between; align-items: center; padding: 15px 30px; background-color: var(--bg-sidebar); border-bottom: 1px solid var(--border-color); }
        .menu-toggle { display: none; background: none; border: none; color: white; font-size: 22px; cursor: pointer; padding: 5px; }
        .mode-badge { padding: 6px 15px; background: rgba(40, 167, 69, 0.15); color: var(--success); border-radius: 20px; font-size: 12px; font-weight: bold; border: 1px solid var(--success); }
        
        .content-area { padding: 30px; flex: 1; }

        .page-header { margin-bottom: 25px; }
        .page-header h2 { margin: 0 0 5px 0; color: white; font-size: 24px; display: flex; align-items: center; gap: 10px; }
        .page-header p { margin: 0; color: var(--text-muted); font-size: 14px; }

        .card { background: var(--bg-card); border-radius: 12px; border: 1px solid var(--border-color); padding: 25px; margin-bottom: 25px; }
        .card h3 { margin-top: 0; color: white; border-bottom: 1px solid var(--border-color); padding-bottom: 15px; display: flex; align-items: center; gap: 10px;}
        .form-row { display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap; }
        .form-group { flex: 1; min-width: 200px; margin-bottom: 15px; }
        .form-group label { display: block; margin-bottom: 8px; font-size: 12px; color: var(--text-muted); font-weight: bold;}
        .form-control { width: 100%; padding: 12px; background: #121519; border: 1px solid var(--border-color); color: white; border-radius: 8px; box-sizing: border-box; font-size: 14px; }
        .form-control:focus { border-color: var(--accent); outline: none; }
        .btn-save { background: var(--success); color: white; border: none; padding: 12px 20px; border-radius: 8px; cursor: pointer; font-weight: bold; transition: 0.2s; height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 8px;}
        .btn-save:hover { filter: brightness(1.1); }

        .marketing-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 20px; }
        .banner-card { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 10px; overflow: hidden; transition: 0.3s; position: relative; }
        .banner-card:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.3); border-color: var(--accent); }
        .banner-img-container { width: 100%; aspect-ratio: 2/3; background: #000; position: relative; overflow: hidden; }
        .banner-img { width: 100%; height: 100%; object-fit: cover; }
        
        .tarja-preview { position: absolute; bottom: 0; left: 0; width: 100%; height: 80px; background: rgba(0,0,0,0.8); display: flex; flex-direction: column; justify-content: center; align-items: center; box-sizing: border-box; border-top: 2px solid rgba(231, 76, 60, 0.5);}
        .tarja-preview span:first-child { color: white; font-size: 11px; font-weight: bold; }
        .tarja-preview span.planos { color: var(--warning); font-size: 10px; font-weight: bold; margin: 3px 0; }
        .tarja-preview span:last-child { color: #25d366; font-size: 12px; font-weight: bold; }

        .banner-info { padding: 15px; }
        .banner-title { font-size: 14px; color: white; font-weight: bold; margin: 0 0 10px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; }
        
        .btn-download { flex: 1; display: flex; align-items: center; justify-content: center; gap: 5px; background: var(--accent); color: white; text-decoration: none; padding: 10px; border-radius: 6px; font-weight: bold; font-size: 12px; transition: 0.2s; border: none; cursor: pointer; }
        .btn-download.info { background: var(--info); }
        .btn-download.purple { background: var(--purple); }
        .btn-download:hover { filter: brightness(1.2); }

        .alert { padding: 15px; border-radius: 8px; margin-bottom: 20px; font-weight: bold; font-size: 14px; transition: opacity 0.5s ease;}
        .alert.danger { background: rgba(231, 76, 60, 0.15); color: var(--danger); border: 1px solid var(--danger); }
        .alert.success { background: rgba(46, 204, 113, 0.15); color: var(--success); border: 1px solid var(--success); }

        .sidebar-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 1000; }

        #loadingShare { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); align-items: center; justify-content: center; flex-direction: column; color: white; font-weight: bold; font-size: 16px; }
        .spinner { border: 4px solid rgba(255,255,255,0.3); border-top: 4px solid var(--accent); border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; margin-bottom: 15px; }
        @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

        @media (max-width: 768px) {
            .menu-toggle { display: block; }
            .sidebar { position: fixed; left: -260px; height: 100%; box-shadow: 10px 0 20px rgba(0,0,0,0.5); }
            .sidebar.active { left: 0; }
            .sidebar-overlay.active { display: block; }
            .content-area { padding: 15px; }
            .form-row { flex-direction: column; align-items: stretch; }
            .btn-save { width: 100%; }
            .marketing-grid { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
            .btn-txt { display: none; } 
        }
    </style>
</head>
<body>
    <div class="sidebar-overlay" id="overlay"></div>
    
    <div id="loadingShare">
        <div class="spinner"></div>
        Preparando arte para compartilhar...
    </div>

    <nav class="sidebar" id="sidebar">
        <div class="sidebar-header">
            <?php if(!empty($logo_url) && file_exists($logo_url)): ?>
                <img src="<?php echo htmlspecialchars($logo_url); ?>" alt="Logo" class="sidebar-logo">
            <?php else: ?>
                <?php echo htmlspecialchars($nome_painel); ?>
            <?php endif; ?>
        </div>
        <div class="user-info">
            <div style="color:white; font-size: 14px;">Olá, <strong><?php echo htmlspecialchars($nome_usuario); ?></strong></div>
            <span class="badge"><?php echo $role === 'admin' ? 'Administrador' : 'Revendedor'; ?></span>
            <div class="credits-badge"><i class="fas fa-coins"></i> Saldo: <?php echo number_format($user_credits, 1); ?></div>
        </div>
        
        <div class="menu-list">
            <a href="dashboard.php" class="menu-item active"><i class="fas fa-chart-line"></i> Dashboard</a>
            <a href="perfil.php" class="menu-item active"><i class="fas fa-user-circle"></i> Meu Perfil</a>
            
            <a href="lancamentos.php" class="menu-item active"><i class="fas fa-fire"></i> Últimos Adicionados</a>
            
            <a href="ajuda.php" class="menu-item active"><i class="fas fa-question-circle"></i> Material de Ajuda</a>
            
            <div class="menu-category">Gestão</div>
            <a href="clientes.php" class="menu-item active"><i class="fas fa-users"></i> Clientes IPTV</a>
            <a href="testes.php" class="menu-item active"><i class="fas fa-vial"></i> Gerenciar Testes</a>
            <a href="online.php" class="menu-item active"><i class="fas fa-plug"></i> Clientes Online</a>
            <a href="revendedores.php" class="menu-item active"><i class="fas fa-user-tie"></i> Revendedores</a>
            <a href="migrar_clientes.php" class="menu-item active"><i class="fas fa-exchange-alt"></i> Migrar Clientes</a>
            <a href="logs_creditos.php" class="menu-item active"><i class="fas fa-list-alt"></i> Extrato de Créditos</a>
            <a href="marketing.php" class="menu-item active"><i class="fas fa-bullhorn"></i> Central de Marketing</a>
            
            
            <div class="menu-category">Clientes P2P</div>
            <a href="p2p_clientes.php" class="menu-item active"><i class="fas fa-tv"></i> Clientes P2P</a>
            
            <?php if (!empty($api_conf['api_binstream_url'])): ?>
                <a href="binstream_p2p.php" class="menu-item active"><i class="fas fa-tv"></i> Binstream P2P</a>
            <?php endif; ?>

            <div class="menu-category">Integração & Cobrança</div>
            <a href="pagamentos.php" class="menu-item active"><i class="fas fa-dollar-sign"></i> Pagamento Automático</a>
            <a href="cobranca.php" class="menu-item active"><i class="fas fa-comment-dollar"></i> Central de Cobrança</a>
            <a href="admin_planos.php" class="menu-item active"><i class="fas fa-tags"></i> Meus Planos de Venda</a>
            <a href="comprar_creditos.php" class="menu-item active"><i class="fas fa-shopping-cart"></i> Comprar Créditos</a>
            
            <div class="menu-item active" onclick="toggleSubmenu('appsSub')">
                <i class="fas fa-rocket"></i><span>Aplicações</span><i class="fas fa-chevron-down arrow-icon" id="arrow-appsSub"></i>
            </div>
            <div class="submenu" id="appsSub">
                <a href="loja_apps.php" class="menu-item active"><i class="fas fa-store"></i> Loja de Aplicativos</a>
                <?php if($role === 'admin'): ?>
                    <a href="admin_loja.php" class="menu-item active"><i class="fas fa-cogs"></i> Gerenciar Loja</a>
                <?php endif; ?>
                <a href="chatbot.php" class="menu-item active"><i class="fab fa-whatsapp"></i> Chatbot Automático</a>
            </div>
           <a href="admin_player_revenda.php" class="menu-item active"><i class="fas fa-play-circle"></i> WebPlayer</a>
            
   <div class="menu-category">Segurança</div>
            <a href="historico_logins.php" class="menu-item active"><i class="fas fa-shield-alt"></i> Sessões Ativas</a>

            <?php if($role === 'admin'): ?>
                <div class="menu-category">Administração</div>
                <a href="admin_monitor.php" class="menu-item active"><i class="fas fa-heartbeat"></i> Monitor do Servidor</a>
                <a href="admin_template.php" class="menu-item active"><i class="fas fa-edit"></i> Editor de Template</a>
                <a href="admin_lb.php" class="menu-item active"><i class="fas fa-server"></i> Load Balancers</a>
                <a href="guia_cloudflare.php" class="menu-item active"><i class="fas fa-cloud"></i> Guia Cloudflare</a>
                 <a href="admin_loja_creditos.php" class="menu-item active"><i class="fas fa-store"></i> Configurar Loja (PIX)</a>
                 <a href="integracoes_api.php" class="menu-item active"><i class="fas fa-plug"></i> Integrações API</a>
                 <a href="integracoes_api_whatsapp.php" class="menu-item active"><i class="fas fa-plug"></i> Integrações API WhatsApp</a>
                 <a href="admin_robo.php" class="menu-item active"><i class="fas fa-robot"></i> Robô de Cobrança</a>
                 <a href="admin_anti_bloqueio.php" class="menu-item active"><i class="fas fa-bolt"></i> Botão de Pânico</a>
                 <a href="admin_anti_fraude.php" class="menu-item active"><i class="fas fa-user-secret"></i> Radar Anti-Fraude</a>  
                 <a href="admin_watchdog.php" class="menu-item active"><i class="fas fa-dog"></i> Watchdog LB</a>  
                 
                 <a href="admin_epg_sync.php" class="menu-item active">
        <i class="fas fa-clock"></i> Sincronizar EPG
    </a>

 <div class="menu-item active" onclick="toggleSubmenu('painelSub')">
                    <i class="fas fa-desktop"></i><span>Painel</span><i class="fas fa-chevron-down arrow-icon" id="arrow-painelSub"></i>
                </div>
                <div class="submenu" id="painelSub">
                    <a href="personalizacao.php" class="menu-item active"><i class="fas fa-paint-brush"></i> Personalização</a>
                </div>
             
                <div class="menu-item active" onclick="toggleSubmenu('adminSub')">
                    <i class="fas fa-toolbox"></i><span>Ferramentas</span><i class="fas fa-chevron-down arrow-icon" id="arrow-adminSub"></i>
                </div>
                <div class="submenu" id="adminSub">
                    <a href="importar.php" class="menu-item active"><i class="fas fa-file-import"></i> Importador</a>
                    <a href="importar3.php" class="menu-item active"><i class="fas fa-file-import"></i> Importador Turbo</a>
                    <a href="dns_manager.php" class="menu-item active"><i class="fas fa-link"></i> Alterar DNS</a>
                    <a href="admin_logos.php" class="menu-item active"><i class="fas fa-image"></i> Alterar Logos</a>
                    <a href="mover_conteudos.php" class="menu-item active"><i class="fas fa-exchange-alt"></i> Mover Conteúdos</a>
                    <a href="limpeza.php" class="menu-item active"><i class="fas fa-trash-alt"></i> Limpeza de Dados</a>
                    <a href="limpar_duplicados.php" class="menu-item active"><i class="fas fa-copy"></i> Limpeza de Duplicados</a>
                    <a href="backup.php" class="menu-item active"><i class="fas fa-database"></i> Backup do Sistema</a>
                    <a href="seguranca.php" class="menu-item active"><i class="fas fa-shield-alt"></i> Sistema de Segurança</a>
                    <a href="configuracoes.php" class="menu-item active"><i class="fas fa-tools"></i> Configurações</a>
                </div>

                 <?php if($role === 'admin'): ?>
    <div class="menu-category">Financeiro</div>
     <!-- NOVO MENU FINANCEIRO COM SUBMENU -->
            <div class="menu-item active" onclick="toggleSubmenu('finSub')">
                <i class="fas fa-hand-holding-usd"></i><span>Financeiro</span><i class="fas fa-chevron-down arrow-icon rotate" id="arrow-finSub"></i>
            </div>
            <div class="submenu" id="finSub" style="display: block;">
                <a href="financeiro.php" class="menu-item active">Faturamento</a>
            </div>
    
    <?php endif; ?>

                <div class="menu-category">Conteúdos</div>
                <a href="categorias.php" class="menu-item active"><i class="fas fa-folder-open"></i><span>Categorias</span></a>
                <div class="menu-item active" onclick="toggleSubmenu('contentSub')">
                    <i class="fas fa-layer-group"></i><span>Mídias</span><i class="fas fa-chevron-down arrow-icon" id="arrow-contentSub"></i>
                </div>
                <div class="submenu" id="contentSub">
                    <a href="bouquets.php" class="menu-item active">Editar Bouquets</a>
                    <a href="canais.php" class="menu-item active">Canais Ao Vivo</a>
                    <a href="filmes.php" class="menu-item active">Filmes (VOD)</a>
                    <a href="series.php" class="menu-item active">Séries</a>
                </div>
                 <a href="admin_autofix_vod.php" class="menu-item active"><i class="fas fa-magic"></i> Auto-Fix TMDB</a>
            <?php endif; ?>
        </div>
        <a href="logout.php" class="logout-btn"><i class="fas fa-power-off"></i> Sair</a>
    </nav>

    <div class="main-content">
        <header class="topbar">
            <div style="display: flex; align-items: center; gap: 10px;">
                <button class="menu-toggle" onclick="toggleMenu()"><i class="fas fa-bars"></i></button>
            </div>
            <div class="topbar-right">
                <span class="mode-badge"><i class="fas fa-database"></i> <?php echo defined('MODO_SISTEMA') ? strtoupper(MODO_SISTEMA) : 'INTERNO'; ?></span>
            </div>
        </header>

        <div class="content-area">
            
            <div class="page-header">
                <h2><i class="fas fa-bullhorn" style="color: var(--accent);"></i> Central de Marketing</h2>
                <p>Baixe banners e tabelas em alta definição com seus planos e WhatsApp já embutidos!</p>
            </div>

            <?php echo $mensagem_aviso; ?>

            <?php if(isset($_GET['erro'])): ?>
                <div class="alert danger"><i class="fas fa-exclamation-triangle"></i> Falha ao gerar a imagem. Verifique suas conexões e tente novamente.</div>
            <?php endif; ?>

            <div class="card" style="border-top: 4px solid var(--success);">
                <h3><i class="fas fa-cog" style="color:var(--success);"></i> Configurações de Marketing</h3>
                <form method="POST">
                    <input type="hidden" name="action_save_marketing" value="1">
                    
                    <div class="form-row">
                        <div class="form-group">
                            <label>Seu WhatsApp (Pode digitar tudo junto)</label>
                            <input type="text" name="meu_whatsapp" class="form-control" value="<?php echo htmlspecialchars($meu_whatsapp); ?>" placeholder="Ex: 5511999999999" required>
                        </div>

                        <?php if($role === 'admin'): ?>
                        <div class="form-group">
                            <label>API Key do TMDb (Exclusivo Admin)</label>
                            <input type="text" name="tmdb_api_key" class="form-control" value="<?php echo htmlspecialchars($tmdb_api_key_salva); ?>" placeholder="Cole sua chave da API aqui...">
                        </div>
                        <?php endif; ?>

                        <div class="form-group" style="flex: 0 0 auto;">
                            <button type="submit" class="btn-save"><i class="fas fa-save"></i> Salvar</button>
                        </div>
                    </div>
                </form>
            </div>

            <?php if(empty($meu_whatsapp)): ?>
                <div class="alert danger" style="background: rgba(241, 196, 15, 0.15); border-color: var(--warning); color: var(--warning);">
                    <i class="fas fa-exclamation-circle"></i> Atenção: Configure seu número de WhatsApp acima para que as imagens não fiquem vazias!
                </div>
            <?php endif; ?>

            <div class="card" style="border-top: 4px solid var(--info); display: flex; flex-wrap: wrap; gap: 20px; align-items: center; justify-content: space-between;">
                <div style="flex: 1; min-width: 250px;">
                    <h3 style="margin-bottom: 5px;"><i class="fas fa-tags" style="color: var(--info);"></i> Tabela de Preços Automática</h3>
                    <p style="color: var(--text-muted); font-size: 13px;">Gere uma imagem limpa e perfeita contendo os planos que você cadastrou na tela de "Meus Planos de Venda".</p>
                </div>
                <div style="flex: 0 0 auto; min-width: 200px; display: flex; gap: 10px;">
                    <?php $url_tabela = "?download_tabela=1&zap=" . urlencode($meu_whatsapp); ?>
                    <a href="<?php echo $url_tabela; ?>" class="btn-download info" style="padding: 15px; font-size: 14px;">
                        <i class="fas fa-download"></i> <span class="btn-txt">Baixar Tabela</span>
                    </a>
                    <button onclick="shareImage('<?php echo $url_tabela; ?>', 'Tabela de Preços')" class="btn-download purple" style="padding: 15px; font-size: 14px;">
                        <i class="fas fa-share-alt"></i> <span class="btn-txt">Compartilhar</span>
                    </button>
                </div>
            </div>

            <h3 style="color: white; border-bottom: 1px solid var(--border-color); padding-bottom: 10px; margin-bottom: 20px;">Banners: Lançamentos da Semana</h3>

            <div class="marketing-grid">
                <?php if(empty($filmes_em_alta)): ?>
                    <p style="color: var(--text-muted);">Não foi possível carregar os lançamentos. Verifique a chave da API do TMDb ou a conectividade do servidor.</p>
                <?php else: ?>
                    <?php foreach($filmes_em_alta as $item): 
                        if(empty($item['poster_path'])) continue;
                        $titulo = $item['title'] ?? $item['name'] ?? 'Lançamento';
                        $zap_display = !empty($meu_whatsapp) ? maskWhatsApp($meu_whatsapp) : "SEU WHATSAPP";
                        
                        $url_download = "?download_banner=1&img=" . urlencode($item['poster_path']) . "&zap=" . urlencode($meu_whatsapp);
                    ?>
                    <div class="banner-card">
                        <div class="banner-img-container">
                            <img src="https://image.tmdb.org/t/p/w500<?php echo $item['poster_path']; ?>" class="banner-img" alt="Poster">
                            <div class="tarja-preview">
                                <span>ASSISTA AGORA COM A GENTE!</span>
                                <span class="planos">Planos e Valores Imperdíveis</span>
                                <span><i class="fab fa-whatsapp"></i> <?php echo htmlspecialchars($zap_display); ?></span>
                            </div>
                        </div>
                        <div class="banner-info">
                            <p class="banner-title" title="<?php echo htmlspecialchars($titulo); ?>"><?php echo htmlspecialchars($titulo); ?></p>
                            
                            <div style="display: flex; gap: 8px;">
                                <a href="<?php echo $url_download; ?>" class="btn-download">
                                    <i class="fas fa-download"></i> <span class="btn-txt">Baixar</span>
                                </a>
                                <button onclick="shareImage('<?php echo $url_download; ?>', '<?php echo htmlspecialchars(addslashes($titulo)); ?>')" class="btn-download purple">
                                    <i class="fas fa-share-alt"></i> <span class="btn-txt">Enviar</span>
                                </button>
                            </div>
                        </div>
                    </div>
                    <?php endforeach; ?>
                <?php endif; ?>
            </div>

        </div>
        
        <?php if(file_exists('rodape.php')) include 'rodape.php'; ?>
    </div>

    <script>
        const sidebar = document.getElementById('sidebar');
        const overlay = document.getElementById('overlay');
        function toggleMenu() { sidebar.classList.toggle('active'); overlay.classList.toggle('active'); }
        overlay.onclick = toggleMenu;

        function toggleSubmenu(id) {
            const sub = document.getElementById(id);
            const arrow = document.getElementById('arrow-' + id);
            if (sub.style.display === "block") { 
                sub.style.display = "none"; 
                if(arrow) arrow.classList.remove('rotate'); 
            } else { 
                sub.style.display = "block"; 
                if(arrow) arrow.classList.add('rotate'); 
            }
        }

        async function shareImage(imageUrl, imageTitle) {
            const loading = document.getElementById('loadingShare');
            
            if (!navigator.canShare || !navigator.share) {
                alert("O seu navegador não suporta compartilhamento direto de imagens. Por favor, utilize o botão de Baixar e envie manualmente.");
                return;
            }

            try {
                loading.style.display = 'flex';

                const response = await fetch(imageUrl);
                if (!response.ok) throw new Error("Falha ao baixar imagem.");
                
                const blob = await response.blob();
                const file = new File([blob], 'banner_promocional.jpg', { type: blob.type });

                loading.style.display = 'none';

                if (navigator.canShare({ files: [file] })) {
                    await navigator.share({
                        title: imageTitle,
                        text: 'Assista aos melhores lançamentos com nossos planos imperdíveis! 🚀',
                        files: [file]
                    });
                } else {
                    alert("Seu dispositivo não permite compartilhar arquivos diretamente por aqui. Clique em Baixar.");
                }
            } catch (error) {
                loading.style.display = 'none';
                console.log('Erro ao compartilhar:', error);
            }
        }

        document.addEventListener('DOMContentLoaded', function() {
            const alerts = document.querySelectorAll('.alert');
            alerts.forEach(function(alertMsg) {
                setTimeout(function() {
                    alertMsg.style.opacity = '0';
                    setTimeout(function() { alertMsg.remove(); }, 500);
                }, 4000);
            });
        });
    </script>
</body>
</html>