<?php
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}
error_reporting(0);
ini_set('display_errors', 0);
header('Content-Type: application/json');
require_once(__DIR__ . '/../db/conexion.php');

$fecha_inicio = $_GET['inicio'] ?? null;
$fecha_fin = $_GET['fin'] ?? null;
$attuid = $_SESSION['attuid'];
$IncluirAnteriores = isset($_GET['incAnt']) ? (bool)$_GET['incAnt'] : false;

$condBanco = '';
$condBancoAcum = '';
$paramsBanco = [];
$tiposBanco = '';

if ($fecha_inicio && $fecha_fin) {
  if(!$IncluirAnteriores) {
    $condBanco = "AND b.fecha_ingreso BETWEEN ? AND ?";
    $condBancoAcum = "AND DATE(a.fecha_registro) >= ?";
    $paramsBanco = [$fecha_inicio, $fecha_fin, $fecha_inicio, $attuid];
    $tiposBanco = 'ssss';
  } else {
    $condBanco = "AND b.fecha_ingreso BETWEEN ? AND ?";
    $paramsBanco = [$fecha_inicio, $fecha_fin, $attuid];
    $tiposBanco = 'sss';
  }
} else {
  $paramsBanco = [$attuid];
  $tiposBanco = 's';
}


$sqlBanco = "
SELECT a.id, a.nombre, a.apellido_paterno, a.apellido_materno, DATE(b.fecha_ingreso) AS fecha_ingreso
  FROM banco_registros b LEFT JOIN aspirantes a ON a.id = b.aspirante_id
  WHERE b.estatus = 'pendiente'
  $condBanco
  $condBancoAcum
  AND b.activado_por = ?
";

$stmt = $conn->prepare($sqlBanco);
if (!empty($paramsBanco)) {
  $stmt->bind_param($tiposBanco, ...$paramsBanco);
}

$stmt->execute();
$result = $stmt->get_result();

$data = [];
while ($row = $result->fetch_assoc()) {
  $nombre = strtoupper($row['nombre'] . ' ' . $row['apellido_paterno'] . ' ' . $row['apellido_materno']);
  $data[] = [
    'id' => $row['id'],
    'nombre' => $nombre,
    'fecha_ingreso' => date('d/m/Y', strtotime($row['fecha_ingreso']))
  ];
}
echo json_encode(['success' => true, 'data' => $data]);

?>
