<?php
// modules/auxiliar/send_absence_email.php
require_once __DIR__ . '/../../includes/config.php';
require_once __DIR__ . '/../../includes/send_email.php';
require_once __DIR__ . '/../../includes/db.php';
require_once __DIR__ . '/../../includes/auth.php';

session_start();
requireRole('auxiliar');

$estudianteId = $_POST['estudiante_id'] ?? null;
$fecha = $_POST['fecha'] ?? date('Y-m-d');
$seccionId = $_POST['seccion_id'] ?? null;

if (!$estudianteId || !$seccionId) {
    echo json_encode(['success' => false, 'error' => 'Datos incompletos']);
    exit;
}

// Verificar si ya se envió correo para esta ausencia
$yaEnviado = $db->fetchOne("SELECT correo_enviado FROM asistencias_estudiantes 
                            WHERE estudiante_id = ? AND fecha = ? AND seccion_id = ?", 
                          [$estudianteId, $fecha, $seccionId]);

if ($yaEnviado && $yaEnviado['correo_enviado']) {
    echo json_encode(['success' => false, 'error' => 'Correo ya enviado']);
    exit;
}

// Obtener datos del estudiante
$estudiante = $db->fetchOne("
    SELECT u.nombre, u.apellido, u.email 
    FROM estudiantes e
    JOIN usuarios u ON e.usuario_id = u.id
    WHERE e.id = ?
", [$estudianteId]);

if (!$estudiante || empty($estudiante['email'])) {
    echo json_encode(['success' => false, 'error' => 'Estudiante no encontrado']);
    exit;
}

// Obtener nombre del auxiliar
$auxiliarNombre = $_SESSION['user_name'] ?? 'Auxiliar';

// Construir mensaje
$asunto = "Inasistencia del estudiante - " . APP_NAME;
$cuerpo = "<p>Buen día,</p>
           <p>El estudiante <strong>{$estudiante['nombre']} {$estudiante['apellido']}</strong> no asistió hoy al colegio.</p>
           <p>Atentamente:<br>
           <strong>{$auxiliarNombre}</strong><br>
           Rol: Auxiliar</p>
           <p><small>Este es un mensaje automático, por favor no responder.</small></p>";

// Enviar correo
if (sendEmail($estudiante['email'], $asunto, $cuerpo)) {
    // Marcar como enviado en la base de datos
    $db->update('asistencias_estudiantes', 
        ['correo_enviado' => 1],
        [
            'estudiante_id' => $estudianteId,
            'fecha' => $fecha,
            'seccion_id' => $seccionId
        ]
    );
    echo json_encode(['success' => true]);
} else {
    echo json_encode(['success' => false, 'error' => 'Error al enviar']);
}