<?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;
}

// Cargar tipos de acceso para el select
$accesos = [];
$rs = $conn->query("SELECT cod_acceso, tipo_acceso FROM Accesos ORDER BY tipo_acceso");
while ($r = $rs->fetch_assoc()) $accesos[] = $r;

// Buscar materias
$buscar = $_GET['buscar'] ?? '';
$sql = "SELECT 
            m.Id, 
            m.cod_materia, 
            m.nom_materia, 
            m.acceso_id,
            m.cant_pregunta,
            a.cod_acceso,
            a.tipo_acceso
        FROM Materias m
        LEFT JOIN Accesos a ON m.acceso_id = a.cod_acceso
        WHERE m.cod_materia LIKE ? 
           OR m.nom_materia LIKE ? 
           OR m.acceso_id LIKE ?
           OR a.tipo_acceso LIKE ?";

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

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

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <title>Gestor de Materias</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="crud_materias_estilos.css">
    <script src="crud_materias_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>Materias</h2>
            <div class="subtitulo">Registrar / Editar / Eliminar</div>
            <form id="formMateria">
                <input type="hidden" name="id" id="id">
                <input name="cod_materia" placeholder="Código de Materia" maxlength="10" required>
                <input name="nom_materia" placeholder="Nombre de la Materia" maxlength="100" required>
                <select name="acceso_id" required>
                    <option value="">Seleccionar Tipo de Acceso</option>
                    <?php foreach ($accesos as $a): ?>
                        <option value="<?= $a['cod_acceso'] ?>"><?= htmlspecialchars($a['tipo_acceso']) ?></option>
                    <?php endforeach; ?>
                </select>
                <input name="cant_pregunta" type="number" placeholder="Cantidad de Preguntas" min="0" value="0">
                
                <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"
                            id="importarBtn"
                            class="reset-all">
                        Importar
                    </button>
                </div>
            </form>
        </section>

        <section class="tabla-section">
            <div class="busqueda">
                <form method="GET">
                    <input type="text" name="buscar" placeholder="Buscar materia..." value="<?= htmlspecialchars($buscar) ?>">
                    <button type="submit">Buscar</button>
                </form>
            </div>
            <table>
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>Código</th>
                        <th>Nombre Materia</th>
                        <th>Tipo Acceso</th>
                        <th>Cant. Preguntas</th>
                        <th>Acciones</th>
                    </tr>
                </thead>
                <tbody>
                    <?php while ($m = $materias->fetch_assoc()): ?>
                        <tr>
                            <td><?= $m['Id'] ?></td>
                            <td><?= htmlspecialchars($m['cod_materia']) ?></td>
                            <td style="text-align: left;">
                                <?= htmlspecialchars($m['nom_materia']) ?>
                            </td>
                            <td><?= htmlspecialchars($m['tipo_acceso']) ?></td>
                            <td><?= $m['cant_pregunta'] ?></td>
                            <td>
                                <button onclick='editarMateria(<?= json_encode($m) ?>)'>Editar</button>
                                <button onclick='eliminarMateria(<?= $m['Id'] ?>)'>Eliminar</button>
                            </td>
                        </tr>
                    <?php endwhile; ?>
                </tbody>
            </table>
        </section>
    </main>
</body>
</html>