<?php
session_start();
header('Content-Type: application/json; charset=utf-8');

require_once(__DIR__ . '/../db/conexion.php');

$response = ['success' => false, 'movimientos' => []];

// Solo admins pueden acceder
if (!isset($_SESSION['rol']) || $_SESSION['rol'] !== 'admin') {
    echo json_encode($response);
    exit;
}

$sql = "
    SELECT 
        m.id,
        m.aspirante_id,
        m.de_attuid,
        m.a_attuid,
        m.fecha,
        m.realizado_por,
        -- Nombre completo del admin
        (SELECT CONCAT(nombre, ' ', apellido_paterno, ' ', apellido_materno) FROM reclutadores WHERE attuid = m.realizado_por) AS admin_nombre,
        -- Nombre del reclutador anterior
        (SELECT CONCAT(nombre, ' ', apellido_paterno, ' ', apellido_materno) FROM reclutadores WHERE attuid = m.de_attuid) AS de_nombre,
        -- Nombre del reclutador nuevo
        (SELECT CONCAT(nombre, ' ', apellido_paterno, ' ', apellido_materno) FROM reclutadores WHERE attuid = m.a_attuid) AS a_nombre,
        -- Nombre completo del aspirante
        (SELECT CONCAT(nombre, ' ', apellido_paterno, ' ', apellido_materno) FROM aspirantes WHERE id = m.aspirante_id) AS aspirante_nombre
    FROM movimientos_aspirantes m
    ORDER BY m.fecha DESC
";

$result = $conn->query($sql);
$movimientos = [];

if ($result && $result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        $movimientos[] = [
            'id' => $row['id'],
            'aspirante_nombre' => $row['aspirante_nombre'],
            'attuid_anterior' => $row['de_attuid'],
            'attuid_nuevo' => $row['a_attuid'],
            'fecha' => date('d/m/Y H:i', strtotime($row['fecha'])),
            'admin_nombre' => $row['admin_nombre']
        ];
    }
}

$response['success'] = true;
$response['movimientos'] = $movimientos;

echo json_encode($response, JSON_UNESCAPED_UNICODE);
