<?php
session_start();
// Apenas Admin Logado
if (!isset($_SESSION['logado']) || $_SESSION['nivel'] !== 'admin') { 
    header("Location: index.php"); exit; 
}
require_once 'conexao.php'; // Traz $connUser e $connGeral

// --- CORREÇÃO DO ERRO: DEFININDO AS VARIÁVEIS ANTES DO USO ---
$isAdmin = true;
$usuarioLogado = $_SESSION['usuario'];

$msg = ""; 
$msg_tipo = "";

// --- 1. BUSCA CONFIGURAÇÕES DO SITE (NOME E COR) ---
$nomePainel = "IPTV PANEL"; 
$corPrimaria = "#7367f0"; 
try {
    $conf = $connGeral->query("SELECT NomePainel, TemaPainel FROM site_config LIMIT 1")->fetch(PDO::FETCH_ASSOC);
    if ($conf) {
        if (!empty($conf['NomePainel'])) $nomePainel = $conf['NomePainel'];
        if (!empty($conf['TemaPainel'])) $corPrimaria = $conf['TemaPainel'];
    }
} catch (Exception $e) { }



// --- 3. CORREÇÃO DO MENU LATERAL (MENSAGENS NÃO LIDAS) ---
$total_msg_nao_lidas = 0;
try {
    $stmtMsg = $connUser->prepare("SELECT COUNT(*) FROM chamados_suporte WHERE destinatario = ? AND lida = 'nao'");
    $stmtMsg->execute([$usuarioLogado]);
    $total_msg_nao_lidas = $stmtMsg->fetchColumn();
} catch (Exception $e) { }




// --- 2. PROCESSAMENTO (POST) ---
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    try {
        $acao = $_POST['acao'];
        $id_adm = $_POST['id_adm'] ?? 0;

        if ($acao === 'criar') {
            $user = trim($_POST['usuario']);
            $check = $connUser->prepare("SELECT id FROM admin WHERE usuario = ?");
            $check->execute([$user]);
            if ($check->rowCount() > 0) {
                $msg = "Este usuário já existe!"; $msg_tipo = "warning";
            } else {
                $sql = "INSERT INTO admin (CadUser, nome, sobrenome, usuario, senha, email, celular, data_cadastro, bloqueado, inativo) VALUES (?, ?, ?, ?, ?, ?, ?, NOW(), 'nao', 'nao')";
                $connUser->prepare($sql)->execute([$_SESSION['usuario'], $_POST['nome'], $_POST['sobrenome'], $user, $_POST['senha'], $_POST['email'], $_POST['celular']]);
                $msg = "Administrador cadastrado!"; $msg_tipo = "success";
            }
        }

        if ($acao === 'editar') {
            $sql = "UPDATE admin SET nome=?, sobrenome=?, usuario=?, senha=?, email=?, celular=? WHERE id=?";
            $connUser->prepare($sql)->execute([$_POST['nome'], $_POST['sobrenome'], $_POST['usuario'], $_POST['senha'], $_POST['email'], $_POST['celular'], $id_adm]);
            $msg = "Dados atualizados!"; $msg_tipo = "primary";
        }

        if ($acao === 'bloquear') {
            $status_atual = $_POST['status_atual'];
            $novo_status = ($status_atual == 'sim') ? 'nao' : 'sim';
            $connUser->prepare("UPDATE admin SET bloqueado = ? WHERE id = ?")->execute([$novo_status, $id_adm]);
            $msg = ($novo_status == 'sim') ? "Usuário Bloqueado!" : "Usuário Desbloqueado!";
            $msg_tipo = "info";
        }

        if ($acao === 'excluir') {
            if ($_SESSION['usuario'] == $_POST['usuario_alvo']) {
                $msg = "Você não pode excluir a si mesmo!"; $msg_tipo = "warning";
            } else {
                $connUser->prepare("DELETE FROM admin WHERE id = ?")->execute([$id_adm]);
                $msg = "Administrador removido!"; $msg_tipo = "danger";
            }
        }
    } catch (Exception $e) { $msg = "Erro: " . $e->getMessage(); $msg_tipo = "danger"; }
}

// --- 3. LISTAGEM ---
$admins = $connUser->query("SELECT * FROM admin ORDER BY id DESC")->fetchAll(PDO::FETCH_ASSOC);
?>

<!DOCTYPE html>
<html lang="pt-br">
<head>

<?php include 'tema_global.php'; ?>

    <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Gestão de Admins | <?= htmlspecialchars($nomePainel) ?></title>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" rel="stylesheet">
    <style>
        :root { 
            --primary: <?= $corPrimaria ?>; 
            --bg-body: #151521; 
            --bg-card: #1e1e2d; 
            --text-color: #d0d2d6;
            --border-color: #2b2b40;
        }
        body { background-color: var(--bg-body); color: var(--text-color); font-family: 'Segoe UI', sans-serif; overflow-x: hidden; margin: 0; }
        
        /* Sidebar Estilo IPTV */
        .sidebar { width: 260px; height: 100vh; position: fixed; background: var(--bg-card); border-right: 1px solid #333; z-index: 1050; padding: 20px; overflow-y: auto; transition: 0.3s; }
        .nav-link { color: #a6a6b7; padding: 12px 15px; border-radius: 8px; display: flex; align-items: center; gap: 12px; text-decoration: none; margin-bottom: 5px; font-weight: 500; transition: 0.2s; }
        .nav-link:hover, .nav-link.active { background: var(--primary); color: #fff; box-shadow: 0 4px 15px rgba(0,0,0,0.2); }
        .nav-group-title { font-size: 0.75rem; text-transform: uppercase; color: #5e5873; font-weight: 700; margin: 25px 0 10px 12px; letter-spacing: 1px; }
        
        /* Layout */
        .main-content { margin-left: 260px; transition: 0.3s; min-height: 100vh; }
        .top-header { background: linear-gradient(90deg, var(--bg-card) 0%, var(--primary) 100%); padding: 15px 30px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,0.1); }
        .header-title { font-size: 1.3rem; font-weight: 800; color: #fff; text-transform: uppercase; letter-spacing: 1px; }

        .card-custom { background: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; overflow: hidden; }
        .form-control { background: #151521 !important; border: 1px solid #444 !important; color: #fff !important; }
        .avatar-circle { width: 40px; height: 40px; background: var(--primary); color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; }
        
        @media (max-width: 992px) { 
            .sidebar { transform: translateX(-100%); } 
            .sidebar.show { transform: translateX(0); } 
            .main-content { margin-left: 0; } 
            .mobile-toggle { display: block !important; } 
        }
        .mobile-toggle { display: none; background: none; border: none; color: #fff; font-size: 1.5rem; margin-right: 15px; }
        .overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 1040; }
        .overlay.show { display: block; }
    </style>
</head>
<body>
<?php include 'menu.php'; ?>


<main class="main-content">
    <div class="top-header">
        <div class="d-flex align-items-center">
            <button class="mobile-toggle" onclick="toggleMenu()"><i class="fas fa-bars"></i></button>
            <div class="header-title">Gestão de Equipe</div>
        </div>
        <button class="btn btn-light btn-sm fw-bold px-3 rounded-pill" data-bs-toggle="modal" data-bs-target="#modalCriar">
            <i class="fas fa-plus me-1"></i> NOVO ADMIN
        </button>
    </div>

    <div class="container-fluid p-3 p-md-4">
        
        <?php if($msg): ?>
            <div class="alert alert-<?= $msg_tipo ?> alert-dismissible fade show border-0 shadow-sm">
                <?= $msg ?>
                <button class="btn-close" data-bs-dismiss="alert"></button>
            </div>
        <?php endif; ?>

        <div class="card card-custom shadow-lg">
            <div class="table-responsive">
                <table class="table table-dark table-hover mb-0 align-middle">
                    <thead>
                        <tr class="text-white-50 small text-uppercase">
                            <th class="ps-4">Nome</th>
                            <th>Usuário / Senha</th>
                            <th>Contato</th>
                            <th>Status</th>
                            <th class="text-end pe-4">Ações</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php foreach($admins as $a): 
                            $iniciais = strtoupper(substr($a['nome'], 0, 1) . substr($a['sobrenome']??'', 0, 1));
                            $is_blocked = ($a['bloqueado'] == 'sim');
                        ?>
                        <tr>
                            <td class="ps-4">
                                <div class="d-flex align-items-center">
                                    <div class="avatar-circle me-3"><?= $iniciais ?></div>
                                    <div>
                                        <div class="fw-bold text-white"><?= htmlspecialchars($a['nome']) ?> <?= htmlspecialchars($a['sobrenome']??'') ?></div>
                                        <div class="small text-muted">ID: <?= $a['id'] ?></div>
                                    </div>
                                </div>
                            </td>
                            <td>
                                <div class="text-white fw-bold"><?= htmlspecialchars($a['usuario']) ?></div>
                                <div class="text-white-50 small">Senha: <?= htmlspecialchars($a['senha']) ?></div>
                            </td>
                            <td>
                                <div class="small"><i class="fas fa-envelope me-2 text-info"></i><?= htmlspecialchars($a['email']) ?></div>
                                <div class="small"><i class="fas fa-phone me-2 text-success"></i><?= htmlspecialchars($a['celular']) ?></div>
                            </td>
                            <td><?= $is_blocked ? '<span class="badge bg-danger">Bloqueado</span>' : '<span class="badge bg-success">Ativo</span>' ?></td>
                            <td class="text-end pe-4">
                                <div class="btn-group">
                                    <form method="POST" class="d-inline">
                                        <input type="hidden" name="acao" value="bloquear">
                                        <input type="hidden" name="id_adm" value="<?= $a['id'] ?>">
                                        <input type="hidden" name="status_atual" value="<?= $a['bloqueado'] ?>">
                                        <button class="btn btn-sm btn-outline-<?= $is_blocked ? 'success' : 'warning' ?> border-0" title="<?= $is_blocked?'Desbloquear':'Bloquear' ?>">
                                            <i class="fas <?= $is_blocked?'fa-lock':'fa-lock-open' ?>"></i>
                                        </button>
                                    </form>
                                    <button class="btn btn-sm btn-outline-info border-0" onclick='abrirEditar(<?= json_encode($a) ?>)'>
                                        <i class="fas fa-pen"></i>
                                    </button>
                                    <form method="POST" class="d-inline">
                                        <input type="hidden" name="acao" value="excluir">
                                        <input type="hidden" name="id_adm" value="<?= $a['id'] ?>">
                                        <input type="hidden" name="usuario_alvo" value="<?= $a['usuario'] ?>">
                                        <button class="btn btn-sm btn-outline-danger border-0" onclick="return confirm('Excluir este administrador?')">
                                            <i class="fas fa-trash"></i>
                                        </button>
                                    </form>
                                </div>
                            </td>
                        </tr>
                        <?php endforeach; ?>
                    </tbody>
                </table>
            </div>
        </div>
    </div>
    <?php include 'rodape.php'; ?>
</main>

<div class="modal fade" id="modalCriar" tabindex="-1"><div class="modal-dialog modal-dialog-centered"><div class="modal-content bg-dark border-secondary"><div class="modal-header border-secondary"><h5 class="modal-title text-white fw-bold">Novo Administrador</h5><button class="btn-close btn-close-white" data-bs-dismiss="modal"></button></div><form method="POST"><input type="hidden" name="acao" value="criar"><div class="modal-body p-4"><div class="row g-3"><div class="col-6"><label class="form-label text-white-50 small">Nome</label><input type="text" name="nome" class="form-control" required></div><div class="col-6"><label class="form-label text-white-50 small">Sobrenome</label><input type="text" name="sobrenome" class="form-control"></div><div class="col-6"><label class="form-label text-white-50 small">Usuário</label><input type="text" name="usuario" class="form-control" required></div><div class="col-6"><label class="form-label text-white-50 small">Senha</label><input type="text" name="senha" class="form-control" required></div><div class="col-12"><label class="form-label text-white-50 small">E-mail</label><input type="email" name="email" class="form-control"></div><div class="col-12"><label class="form-label text-white-50 small">Celular</label><input type="text" name="celular" class="form-control"></div></div></div><div class="modal-footer border-secondary"><button type="submit" class="btn btn-primary fw-bold w-100 py-2">CADASTRAR ADMIN</button></div></form></div></div></div>

<div class="modal fade" id="modalEditar" tabindex="-1"><div class="modal-dialog modal-dialog-centered"><div class="modal-content bg-dark border-secondary"><div class="modal-header border-secondary"><h5 class="modal-title text-white fw-bold">Editar Dados</h5><button class="btn-close btn-close-white" data-bs-dismiss="modal"></button></div><form method="POST"><input type="hidden" name="acao" value="editar"><input type="hidden" name="id_adm" id="edit_id"><div class="modal-body p-4"><div class="row g-3"><div class="col-6"><label class="form-label text-white-50 small">Nome</label><input type="text" name="nome" id="edit_nome" class="form-control" required></div><div class="col-6"><label class="form-label text-white-50 small">Sobrenome</label><input type="text" name="sobrenome" id="edit_sobrenome" class="form-control"></div><div class="col-6"><label class="form-label text-white-50 small">Usuário</label><input type="text" name="usuario" id="edit_user" class="form-control" required></div><div class="col-6"><label class="form-label text-white-50 small">Senha</label><input type="text" name="senha" id="edit_pass" class="form-control" required></div><div class="col-12"><label class="form-label text-white-50 small">E-mail</label><input type="email" name="email" id="edit_email" class="form-control"></div><div class="col-12"><label class="form-label text-white-50 small">Celular</label><input type="text" name="celular" id="edit_cel" class="form-control"></div></div></div><div class="modal-footer border-secondary"><button type="submit" class="btn btn-primary fw-bold w-100 py-2">SALVAR ALTERAÇÕES</button></div></form></div></div></div>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<script>
    function toggleMenu() { 
        document.getElementById('sidebar').classList.toggle('show'); 
        document.getElementById('overlay').classList.toggle('show'); 
    }
    
    function abrirEditar(a) { 
        document.getElementById('edit_id').value = a.id; 
        document.getElementById('edit_nome').value = a.nome; 
        document.getElementById('edit_sobrenome').value = a.sobrenome; 
        document.getElementById('edit_user').value = a.usuario; 
        document.getElementById('edit_pass').value = a.senha; 
        document.getElementById('edit_email').value = a.email; 
        document.getElementById('edit_cel').value = a.celular; 
        new bootstrap.Modal(document.getElementById('modalEditar')).show(); 
    }
</script>
</body>
</html>