<?php
session_start();
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

// ==========================================================================
// CONTROLE DE SESSÃO DA REVENDA LOGADA
// ==========================================================================
if (!isset($_SESSION['eggzie_iboPlayer2']) || !isset($_SESSION['seller_name']) || !isset($_SESSION['id'])) {
    header('Location: login.php');
    exit();
}

$revenda_id = $_SESSION['id']; // ID único da revenda na sessão
$seller_name = $_SESSION['seller_name'];

// CAMINHO CORRIGIDO: Sai de /revenda e grava direto dentro de /sub_revenda/
$target_dir = __DIR__ . '/../sub_revenda';
$json_file = $target_dir . "/plano_sub_{$revenda_id}.json";

// Garante que a pasta sub_revenda existe, se não, cria com permissão 755
if (!file_exists($target_dir)) {
    mkdir($target_dir, 0755, true);
}

// Matriz padrão para novos sub-revendedores visualizarem
function obterEstruturaInicialSubRevenda() {
    return [
        "seu_whatsapp" => "5571997244148",
        "texto_botao_upgrade" => "Fazer Upgrade",
        "mensagem_predefinida" => "Olá! Gostaria de fazer o upgrade para o **Plano {plano}** no painel de Sub-Revenda.",
        "planos" => [
            "premium" => [
                "nome" => "Premium",
                "preco" => "45,00",
                "macs" => "1 MAC",
                "popular" => false,
                "recursos" => [
                    "Acesso ao Painel Sub-Revenda Inicial",
                    "Controle e administração de clientes",
                    "Suporte em horário comercial"
                ]
            ],
            "master" => [
                "nome" => "Master",
                "preco" => "75,00",
                "macs" => "5 MACs",
                "popular" => true,
                "recursos" => [
                    "Acesso ao Painel Sub-Revenda Avançado",
                    "Personalização com logotipo própria",
                    "Geração de APKs customizados",
                    "Suporte direto pelo WhatsApp"
                ]
            ],
            "ultra-master" => [
                "nome" => "Ultra Master",
                "preco" => "120,00",
                "macs" => "Ilimitados MACs",
                "popular" => false,
                "recursos" => [
                    "Acesso Total Sub-Revenda Completo",
                    "Tudo do plano Master incluído",
                    "Servidor VIP Otimizado",
                    "Sub-revendas ilimitadas"
                ]
            ]
        ]
    ];
}

// Inicializa o JSON exclusivo dentro de /sub_revenda/ se ele não existir
if (!file_exists($json_file)) {
    $dados = obterEstruturaInicialSubRevenda();
    file_put_contents($json_file, json_encode($dados, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE));
} else {
    $conteudo = file_get_contents($json_file);
    $dados = json_decode($conteudo, true);
    if (!is_array($dados) || !isset($dados['planos'])) {
        $dados = obterEstruturaInicialSubRevenda();
    }
}

$mensagem_status = "";
$status_tipo = "";

// Processa o salvamento do formulário da revenda logada
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['action_salvar'])) {
    $dados['seu_whatsapp'] = trim($_POST['seu_whatsapp'] ?? '');
    $dados['texto_botao_upgrade'] = trim($_POST['texto_botao_upgrade'] ?? 'Fazer Upgrade');
    $dados['mensagem_predefinida'] = trim($_POST['mensagem_predefinida'] ?? '');
    
    foreach ($dados['planos'] as $id => $plano) {
        if (isset($_POST['planos'][$id])) {
            $dados['planos'][$id]['nome'] = trim($_POST['planos'][$id]['nome'] ?? '');
            $dados['planos'][$id]['preco'] = trim($_POST['planos'][$id]['preco'] ?? '');
            $dados['planos'][$id]['macs'] = trim($_POST['planos'][$id]['macs'] ?? '');
            $dados['planos'][$id]['popular'] = isset($_POST['planos'][$id]['popular']) ? true : false;
            
            // Tratamento universal de quebras de linha para caixas de texto
            $recursos_raw = $_POST['planos'][$id]['recursos'] ?? '';
            $recursos_array = preg_split('/\r\n|\r|\n/', $recursos_raw);
            $recursos_array = array_filter(array_map('trim', $recursos_array));
            
            $dados['planos'][$id]['recursos'] = array_values(array_map('strip_tags', $recursos_array));
        }
    }
    
    // Grava estritamente dentro da pasta /sub_revenda/ amarrado ao ID da revenda pai
    if (file_put_contents($json_file, json_encode($dados, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE))) {
        $mensagem_status = "Planos para suas sub-revendas salvos com sucesso!";
        $status_tipo = "success";
    } else {
        $mensagem_status = "Erro crítico: O servidor bloqueou a gravação do JSON na pasta /sub_revenda/.";
        $status_tipo = "error";
    }
}
?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Configurar Planos Sub-Revenda</title>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
    <link href="https://fonts.googleapis.com/icon?family=Material+Icons+Round" rel="stylesheet">
    <style>
        :root {
            --primary: #FF6B9D;
            --primary-dark: #D94A7E;
            --secondary: #00D4FF;
            --accent: #FFD166;
            --bg: #0A0F1C;
            --surface: #141B2D;
            --surface-light: #1F293D;
            --text-main: #FFFFFF;
            --text-secondary: #94A3B8;
            --border: rgba(255, 255, 255, 0.08);
            --success: #00FF88;
            --error: #FF6B9D;
        }

        * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', sans-serif; }
        body { background: linear-gradient(135deg, #0A0F1C 0%, #151B2D 100%); color: var(--text-main); min-height: 100vh; padding: 40px 20px; }
        .wrapper { max-width: 1100px; margin: 0 auto; }
        
        .header-panel { display: flex; align-items: center; justify-content: space-between; background: var(--surface); padding: 20px 30px; border-radius: 16px; border: 1px solid var(--border); margin-bottom: 30px; box-shadow: 0 8px 32px rgba(0,0,0,0.2); }
        .header-title-group { display: flex; align-items: center; gap: 15px; }
        .header-icon { font-size: 32px; background: linear-gradient(135deg, var(--primary), var(--accent)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
        .header-panel h1 { font-size: 1.4rem; font-weight: 700; letter-spacing: -0.5px; }
        .header-panel p { color: var(--text-secondary); font-size: 0.85rem; margin-top: 2px; }
        .badge-user { background: rgba(0, 212, 255, 0.15); color: var(--secondary); padding: 6px 14px; border-radius: 20px; font-size: 0.8rem; font-weight: 600; border: 1px solid rgba(0, 212, 255, 0.2); }

        .status-toast { padding: 16px 20px; border-radius: 12px; margin-bottom: 25px; font-weight: 600; font-size: 0.95rem; display: flex; align-items: center; gap: 12px; animation: slideIn 0.3s ease; }
        .status-toast.success { background: rgba(0, 255, 136, 0.1); color: var(--success); border: 1px solid rgba(0, 255, 136, 0.2); }
        .status-toast.error { background: rgba(255, 107, 157, 0.1); color: var(--error); border: 1px solid rgba(255, 107, 157, 0.2); }

        .section-title { font-size: 1.1rem; font-weight: 600; color: var(--secondary); margin-bottom: 20px; display: flex; align-items: center; gap: 8px; }
        .card-global { background: var(--surface); padding: 30px; border-radius: 16px; border: 1px solid var(--border); margin-bottom: 30px; box-shadow: 0 4px 20px rgba(0,0,0,0.15); }
        
        .flex-row { display: grid; grid-template-columns: 1fr; gap: 20px; }
        @media(min-width: 768px) { .flex-row { grid-template-columns: 1fr 1fr; } .triple-row { grid-template-columns: 1fr 1fr 2fr; } }

        .form-group { margin-bottom: 20px; position: relative; }
        label { display: block; font-weight: 600; font-size: 0.85rem; color: var(--text-secondary); margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.5px; }
        
        input[type="text"], textarea { width: 100%; background: var(--surface-light); border: 1px solid var(--border); padding: 12px 16px; border-radius: 10px; font-size: 0.95rem; color: var(--text-main); transition: all 0.25s ease; }
        input[type="text"]:focus, textarea:focus { border-color: var(--secondary); outline: none; box-shadow: 0 0 12px rgba(0, 212, 255, 0.2); background: #253147; }
        
        textarea { height: 130px; resize: vertical; line-height: 1.6; font-size: 0.9rem; }
        .hint { font-size: 0.8rem; color: var(--text-secondary); margin-top: 6px; display: flex; align-items: center; gap: 4px; }

        .grid-planos { display: grid; grid-template-columns: 1fr; gap: 25px; }
        @media(min-width: 900px) { .grid-planos { grid-template-columns: repeat(3, 1fr); } }
        .card-plano { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; padding: 25px; transition: all 0.3s ease; display: flex; flex-direction: column; }
        .card-plano:hover { border-color: var(--primary); transform: translateY(-3px); box-shadow: 0 8px 24px rgba(255, 107, 157, 0.1); }
        .card-plano.popular-active { border: 2px solid var(--accent); box-shadow: 0 8px 24px rgba(255, 209, 102, 0.08); }
        .card-plano h3 { margin-bottom: 20px; font-size: 1.15rem; color: #fff; border-bottom: 1px solid var(--border); padding-bottom: 10px; display: flex; align-items: center; justify-content: space-between; }
        
        .switch-wrapper { display: flex; align-items: center; justify-content: space-between; background: rgba(255,255,255,0.03); padding: 12px; border-radius: 10px; border: 1px solid var(--border); margin-top: auto; }
        .switch-label { font-size: 0.85rem; font-weight: 500; color: var(--text-main); }
        .switch { position: relative; display: inline-block; width: 44px; height: 24px; }
        .switch input { opacity: 0; width: 0; height: 0; }
        .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: var(--surface-light); transition: .3s; border-radius: 24px; border: 1px solid var(--border); }
        .slider:before { position: absolute; content: ""; height: 16px; width: 16px; left: 3px; bottom: 3px; background-color: white; transition: .3s; border-radius: 50%; }
        input:checked + .slider { background-color: var(--accent); }
        input:checked + .slider:before { transform: translateX(20px); }

        .btn-submit-master { background: linear-gradient(135deg, var(--secondary), #0099CC); color: #fff; border: none; padding: 16px 40px; border-radius: 12px; font-weight: 700; font-size: 1.05rem; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; max-width: 320px; margin: 40px auto 0 auto; box-shadow: 0 8px 24px rgba(0, 212, 255, 0.3); transition: all 0.25s ease; }
        .btn-submit-master:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(0, 212, 255, 0.4); filter: brightness(1.1); }
        .btn-submit-master .material-icons-round { font-size: 22px; }

        @keyframes slideIn { from { transform: translateY(-10px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
    </style>
</head>
<body>

<div class="wrapper">
    <div class="header-panel">
        <div class="header-title-group">
            <span class="material-icons-round header-icon">settings_applications</span>
            <div>
                <h1>Gestão de Tabelas para Sub-Revenda</h1>
                <p>Configure os preços e recursos que os seus sub-revendedores irão visualizar.</p>
            </div>
        </div>
        <div class="badge-user">Revenda Master: <?php echo htmlspecialchars($seller_name); ?></div>
    </div>

    <?php if ($mensagem_status): ?>
        <div class="status-toast <?php echo $status_tipo; ?>">
            <span class="material-icons-round"><?php echo $status_tipo === 'success' ? 'check_circle' : 'error'; ?></span>
            <?php echo $mensagem_status; ?>
        </div>
    <?php endif; ?>

    <form method="POST">
        <input type="hidden" name="action_salvar" value="1">

        <div class="card-global">
            <div class="section-title">
                <span class="material-icons-round">bolt</span>
                <span>Configurações do Botão de Atendimento</span>
            </div>
            
            <div class="flex-row triple-row">
                <div class="form-group">
                    <label for="seu_whatsapp">Seu WhatsApp de Atendimento</label>
                    <input type="text" id="seu_whatsapp" name="seu_whatsapp" value="<?php echo htmlspecialchars($dados['seu_whatsapp'] ?? ''); ?>" placeholder="Ex: 5571997244148" required>
                    <p class="hint"><span class="material-icons-round" style="font-size:13px">info</span>Código País + DDD + Número.</p>
                </div>

                <div class="form-group">
                    <label for="texto_botao_upgrade">Texto do Botão nos Cards</label>
                    <input type="text" id="texto_botao_upgrade" name="texto_botao_upgrade" value="<?php echo htmlspecialchars($dados['texto_botao_upgrade'] ?? ''); ?>" placeholder="Ex: Fazer Upgrade" required>
                    <p class="hint"><span class="material-icons-round" style="font-size:13px">edit</span>Texto de clique do cliente.</p>
                </div>

                <div class="form-group">
                    <label for="mensagem_predefinida">Mensagem Padrão que Você Receberá</label>
                    <input type="text" id="mensagem_predefinida" name="mensagem_predefinida" value="<?php echo htmlspecialchars($dados['mensagem_predefinida'] ?? ''); ?>" placeholder="Mensagem padrão..." required>
                    <p class="hint"><span class="material-icons-round" style="font-size:13px">code</span>Use <code>{plano}</code> para injetar o plano selecionado de forma automática.</p>
                </div>
            </div>
        </div>

        <div class="section-title" style="padding-left: 5px;">
            <span class="material-icons-round">widgets</span>
            <span>Matriz de Valores & Vantagens</span>
        </div>
        
        <div class="grid-planos">
            <?php foreach ($dados['planos'] as $id => $plano): ?>
                <div class="card-plano <?php echo ($plano['popular'] ?? false) ? 'popular-active' : ''; ?>">
                    <h3>
                        <span><?php echo htmlspecialchars($plano['nome'] ?? ''); ?></span>
                        <span class="material-icons-round" style="color: var(--text-secondary); font-size: 20px;">badge</span>
                    </h3>
                    
                    <div class="form-group">
                        <label>Nome do Card</label>
                        <input type="text" name="planos[<?php echo $id; ?>][nome]" value="<?php echo htmlspecialchars($plano['nome'] ?? ''); ?>" required>
                    </div>

                    <div class="form-group">
                        <label>Valor Mensal (R$)</label>
                        <input type="text" name="planos[<?php echo $id; ?>][preco]" value="<?php echo htmlspecialchars($plano['preco'] ?? ''); ?>" placeholder="45,00" required>
                    </div>

                    <div class="form-group">
                        <label>Atribuição de MACs</label>
                        <input type="text" name="planos[<?php echo $id; ?>][macs]" value="<?php echo htmlspecialchars($plano['macs'] ?? ''); ?>" placeholder="Ex: 5 MACs" required>
                    </div>

                    <div class="form-group" style="flex-grow: 1;">
                        <label>Lista de Recursos (Um por linha)</label>
                        <textarea name="planos[<?php echo $id; ?>][recursos]" placeholder="Insira as vantagens..."><?php echo htmlspecialchars(implode("\n", $plano['recursos'] ?? [])); ?></textarea>
                    </div>

                    <div class="switch-wrapper">
                        <span class="switch-label">Destaque Comercial</span>
                        <label class="switch">
                            <input type="checkbox" name="planos[<?php echo $id; ?>][popular]" <?php echo ($plano['popular'] ?? false) ? 'checked' : ''; ?>>
                            <span class="slider"></span>
                        </label>
                    </div>
                </div>
            <?php endforeach; ?>
        </div>

        <button type="submit" class="btn-submit-master">
            <span class="material-icons-round">save</span>
            <span>Salvar Planos da Sub-Revenda</span>
        </button>
    </form>
</div>

</body>
</html>