<?php
require_once __DIR__ . '/../config/db_auto.php';

// Iniciar sesión de forma segura para poder verificar el rol
require_once __DIR__ . '/../config/paths.php';
require_once __DIR__ . '/secure_session.php';
secure_session_start(); // Inicia la sesión
require_role(['administrador'], true); // Pasa 'true' para indicar que es una petición AJAX

header('Content-Type: application/json');

$grado_id = filter_input(INPUT_GET, 'grado_id', FILTER_VALIDATE_INT);
$anio = filter_input(INPUT_GET, 'anio', FILTER_VALIDATE_INT);

if (!$grado_id || !$anio) {
    echo json_encode(['error' => 'Parámetros no válidos.']);
    exit;
}

try {
    $sql = "
        SELECT a.id, a.run, a.nombre, a.ap_paterno, a.ap_materno
        FROM matriculas m
        JOIN alumnos a ON m.alumno_id = a.id
        WHERE m.grado_id = ? AND m.anio = ? AND m.estado = 'ACTIVA'
        ORDER BY a.ap_paterno, a.ap_materno, a.nombre
    ";
    $stmt = $pdo->prepare($sql);
    $stmt->execute([$grado_id, $anio]);
    echo json_encode($stmt->fetchAll(PDO::FETCH_ASSOC));
} catch (Exception $e) {
    http_response_code(500);
    echo json_encode(['error' => 'Error al consultar la base de datos: ' . $e->getMessage()]);
}
