<?php

require __DIR__ . '/../vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

if (isset($_POST['repartidor_id'], $_POST['ruta'], $_POST['tramos'])) {
    $repartidorId = $_POST['repartidor_id'];
    $ruta         = $_POST['ruta'];
    $tramos       = $_POST['tramos'];

    $conn = new mysqli("localhost", "root", "root", "rastreo");
    if ($conn->connect_error) die(json_encode(["success" => false, "msg" => "Conexión fallida"]));

    // Obtener correo y nombre del repartidor
    $stmt = $conn->prepare("SELECT nombre, correo FROM repartidores WHERE id=?");
    $stmt->bind_param("i", $repartidorId);
    $stmt->execute();
    $res = $stmt->get_result();
    if ($res->num_rows === 0) {
        echo json_encode(["success" => false, "msg" => "Repartidor no encontrado"]);
        exit;
    }
    $row = $res->fetch_assoc();
    $nombre = $row['nombre'];
    $correo = $row['correo'];
    $stmt->close();

    // Buscar último auto asignado
    $sqlAuto = "
        SELECT a.marca, a.modelo, a.placa, a.color, a.anio, a.subtipo
        FROM rutas r
        JOIN autos a ON r.auto_id = a.id_unidad
        WHERE r.repartidor_id = ?
        ORDER BY r.id_ruta DESC LIMIT 1
    ";
    $stmt = $conn->prepare($sqlAuto);
    $stmt->bind_param("i", $repartidorId);
    $stmt->execute();
    $resAuto = $stmt->get_result();

    $autoInfo = "No hay auto asignado.";
    if ($resAuto->num_rows > 0) {
        $auto = $resAuto->fetch_assoc();
        $autoInfo = "
            <ul>
                <li><strong>Marca:</strong> {$auto['marca']}</li>
                <li><strong>Modelo:</strong> {$auto['modelo']}</li>
                <li><strong>Placas:</strong> {$auto['placa']}</li>
                <li><strong>Color:</strong> {$auto['color']}</li>
                <li><strong>Año:</strong> {$auto['anio']}</li>
                <li><strong>Tipo:</strong> {$auto['subtipo']}</li>
            </ul>
        ";
    }
    $stmt->close();

    // Contenido HTML
    $htmlContent = "
    <html>
    <head>
    <meta charset='UTF-8'>
        <title>Ruta Asignada</title>
        <style>
            body { font-family: Arial, sans-serif; color: #333; background-color: #f4f4f9; padding: 20px; }
            .header { text-align: center; background-color: #9c0529; color: white; padding: 10px; }
            .content { margin: 20px 0; }
            .footer { margin-top: 30px; font-size: 12px; color: #888; text-align: center; }
            table { border-collapse: collapse; width: 100%; }
            th, td { padding: 8px; text-align: left; border: 1px solid #ddd; }
            th { background-color: #f2f2f2; }
        </style>
    </head>
    <body>
        <div class='header'>
            <h2>Trax Sistemas S.A de C.V.</h2>
        </div>
        <div class='content'>
            <h2>Hola $nombre, se te ha asignado una nueva ruta.</h2>
            <p><strong>Tramos de la ruta:</strong></p>
            <p>$tramos</p>
            <p><strong>Link de Google Maps:</strong> <a href='$ruta'>$ruta</a></p>
            <p><strong>Vehículo asignado:</strong></p>
            $autoInfo
        </div>
        <div class='footer'>
            <p>Este es un correo automático. No respondas a este mensaje.</p>
        </div>
    </body>
    </html>
    ";

    // Configuración de PHPMailer
    $mail = new PHPMailer(true);
    try {
        $mail->isSMTP();
        $mail->Host       = 'smtp.gmail.com';
        $mail->SMTPAuth   = true;
        $mail->Username   = 'carlosrds2024@gmail.com';
        $mail->Password   = 'tcus ymlq ktnf bops';
        $mail->SMTPSecure = 'tls';
        $mail->Port       = 587;

        $mail->setFrom('carlosrds2024@gmail.com', 'Logística');
        $mail->addAddress($correo, $nombre);

        $mail->isHTML(true); // ✅ Activamos HTML
        $mail->Subject = "Ruta asignada a $nombre";
        $mail->Body    = $htmlContent;

        $mail->send();
        echo json_encode(["success" => true]);
    } catch (Exception $e) {
        echo json_encode(["success" => false, "msg" => "Error al enviar correo: {$mail->ErrorInfo}"]);
    }

    $conn->close();
} else {
    echo json_encode(["success" => false, "msg" => "Faltan parámetros"]);
}

