<?php
session_start();
if (!isset($_SESSION['usuario']) || !isset($_SESSION['token'])) {
    header("Location: index.html");
    exit;
}

require 'conexion.php';

// Validar token
$sql = "SELECT token FROM Usuarios WHERE usuario = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param("s", $_SESSION['usuario']);
$stmt->execute();
$res = $stmt->get_result();
if ($res->num_rows !== 1 || $res->fetch_assoc()['token'] !== $_SESSION['token']) {
    session_unset();
    session_destroy();
    header("Location: index.html?session=invalid");
    exit;
}

// Buscar tipos de acceso
$buscar = $_GET['buscar'] ?? '';
$sql = "SELECT Id, cod_acceso, tipo_acceso 
        FROM Accesos 
        WHERE cod_acceso LIKE ? OR tipo_acceso LIKE ?
        ORDER BY cod_acceso";

$stmt = $conn->prepare($sql);
$like = "%$buscar%";
$stmt->bind_param("ss", $like, $like);
$stmt->execute();
$accesos = $stmt->get_result();

$nombreUsuario = htmlspecialchars($_SESSION['nombre']);
?>

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <title>Gestor de Tipos de Acceso</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="crud_accesos_estilos.css">
    <script src="crud_accesos_funciones.js" defer></script>
    <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
</head>
<body>
    <header class="header">
        <div class="navbar">
            <div class="izquierda">
                <a href="panel_admin.php" title="Panel de administrador">
                    <button class="btn atras">
                    <img src="iconos/atras.png" alt="Atras">
                    </button>
                </a>
                <div class="usuario">Admin: <?= $nombreUsuario ?></div>
            </div>
            <button class="btn cerrar" onclick="location.href='logout.php'">Cerrar Sesión</button>
        </div>
    </header>

    <main class="main-container">
        <section class="form-section">
            <h2>Tipos de Acceso</h2>
            <div class="subtitulo">Registrar / Editar / Eliminar</div>
            <form id="formAcceso">
                <input type="hidden" name="id" id="id">
                
                <input name="cod_acceso" 
                       placeholder="Código de Acceso (ej: ADM, USR, GUEST)" 
                       maxlength="20"
                       required>
                
                <input name="tipo_acceso" 
                       placeholder="Tipo de Acceso (ej: Administrador, Usuario)" 
                       maxlength="100"
                       required>
                
                <div id="mensaje" style="margin-bottom: 1rem;"></div>
                
                <div class="form-buttons full-line">
                    <div class="left-buttons">
                        <button type="submit">Guardar</button>
                        <button type="reset">Limpiar</button>
                    </div>
                    <button type="button" class="reset-all">
                        Reset Todo
                    </button>
                </div>
            </form>
        </section>

        <section class="tabla-section">
            <div class="busqueda">
                <form method="GET">
                    <input type="text" 
                           name="buscar" 
                           placeholder="Buscar tipo de acceso..." 
                           value="<?= htmlspecialchars($buscar) ?>">
                    <button type="submit">Buscar</button>
                </form>
            </div>
            
            <table>
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Código de Acceso</th>
                        <th>Tipo de Acceso</th>
                        <th>Acciones</th>
                    </tr>
                </thead>
                <tbody>
                    <?php if ($accesos->num_rows > 0): ?>
                        <?php while ($a = $accesos->fetch_assoc()): ?>
                            <tr>
                                <td><?= $a['Id'] ?></td>
                                <td><?= htmlspecialchars($a['cod_acceso']) ?></td>
                                <td><?= htmlspecialchars($a['tipo_acceso']) ?></td>
                                <td>
                                    <button onclick='editarAcceso(<?= json_encode($a) ?>)'>Editar</button>
                                    <button onclick='eliminarAcceso(<?= $a['Id'] ?>)'>Eliminar</button>
                                </td>
                            </tr>
                        <?php endwhile; ?>
                    <?php else: ?>
                        <tr>
                            <td colspan="4" style="text-align: center; color: #666;">
                                <?= empty($buscar) ? 'No hay tipos de acceso registrados' : 'No se encontraron resultados' ?>
                            </td>
                        </tr>
                    <?php endif; ?>
                </tbody>
            </table>
        </section>
    </main>
</body>
</html>