<?php
declare(strict_types=1);

error_reporting(E_ALL);
ini_set('display_errors','1');

require_once __DIR__ . '/../../app/auth.php';
require_once __DIR__ . '/../../app/db.php';

start_session();
require_login();

if (!(has_role('ADMIN') || has_role('SECRETARIA') || has_role('DIRECTOR'))) {
  http_response_code(403); die("Acceso no permitido");
}

$pdo = db();

$anio = (int)($_GET['anio'] ?? date('Y'));
$fecha = $_GET['fecha'] ?? date('Y-m-d');

$stmt = $pdo->prepare(
  "SELECT m.nivel, m.curso, m.seccion, m.turno,
          e.ci, e.nombres, e.apellidos,
          a.hora_entrada, a.hora_salida, a.tardanza_min, a.presente
   FROM asistencia_diaria a
   JOIN estudiantes e ON e.id = a.estudiante_id
   JOIN matriculas m ON m.estudiante_id = a.estudiante_id AND m.anio_lectivo = a.anio_lectivo
   WHERE a.anio_lectivo = ? AND a.fecha = ?
   ORDER BY m.nivel, m.curso, m.seccion, e.apellidos, e.nombres"
);
$stmt->execute([$anio, $fecha]);
$rows = $stmt->fetchAll();

$title="Reporte diario";
include __DIR__ . '/../../app/views/header.php';
?>

<h1 class="h5 mb-3">Reporte diario</h1>

<form method="get" class="row g-2 mb-3">
  <div class="col-12 col-md-3">
    <label class="form-label">Año</label>
    <input class="form-control" name="anio" type="number" value="<?= htmlspecialchars((string)$anio) ?>">
  </div>
  <div class="col-12 col-md-3">
    <label class="form-label">Fecha</label>
    <input class="form-control" name="fecha" type="date" value="<?= htmlspecialchars($fecha) ?>">
  </div>
  <div class="col-12 col-md-3 d-flex align-items-end">
    <button class="btn btn-outline-primary w-100">Ver</button>
  </div>
</form>

<div class="table-responsive">
  <table class="table table-sm table-bordered bg-white">
    <thead class="table-light">
      <tr>
        <th>Nivel</th><th>Curso</th><th>Sección</th><th>Turno</th>
        <th>CI</th><th>Alumno</th>
        <th>Entrada</th><th>Salida</th><th>Tardanza</th><th>Estado</th>
      </tr>
    </thead>
    <tbody>
      <?php foreach($rows as $r): ?>
        <tr>
          <td><?= htmlspecialchars($r['nivel']) ?></td>
          <td><?= htmlspecialchars($r['curso']) ?></td>
          <td><?= htmlspecialchars($r['seccion'] ?? 'A') ?></td>
          <td><?= htmlspecialchars($r['turno'] ?? '-') ?></td>
          <td><?= htmlspecialchars($r['ci'] ?? '-') ?></td>
          <td><?= htmlspecialchars($r['apellidos'].' '.$r['nombres']) ?></td>
          <td><?= htmlspecialchars($r['hora_entrada'] ?? '-') ?></td>
          <td><?= htmlspecialchars($r['hora_salida'] ?? '-') ?></td>
          <td><?= (int)$r['tardanza_min'] ?> min</td>
          <td>
            <?php if ($r['presente']): ?>
              <span class="badge bg-success">Presente</span>
            <?php else: ?>
              <span class="badge bg-danger">Ausente</span>
            <?php endif; ?>
          </td>
        </tr>
      <?php endforeach; ?>
    </tbody>
  </table>
</div>

<?php include __DIR__ . '/../../app/views/footer.php'; ?>
