/* global Swal */

function validarFormularioRuta(evento) {
    evento.preventDefault();

    const nombreRuta = document.getElementById('nombre_ruta').value.trim();
    const kmEstimado = document.getElementById('km_estimado').value.trim();
    const descripcion = document.getElementById('descripcion').value.trim();

    // Validar nombre de ruta
    if (nombreRuta.length === 0) {
        Swal.fire({
            width: '23rem',
            position: 'center',
            icon: 'info',
            title: 'Por favor, ingrese el nombre de la ruta',
            showConfirmButton: false,
            timer: 1500
        });
        return;
    }

    if (!/^[A-ZÁÉÍÓÚÑ0-9\s\-]+$/.test(nombreRuta)) {
        Swal.fire({
            width: '25rem',
            position: 'center',
            icon: 'info',
            title: 'El nombre de la ruta solo puede contener letras, números, espacios y guiones',
            showConfirmButton: false,
            timer: 2000
        });
        return;
    }

    // Validar kilómetros estimados
    if (!/^\d+(\.\d{1,2})?$/.test(kmEstimado) || parseFloat(kmEstimado) <= 0) {
        Swal.fire({
            width: '25rem',
            position: 'center',
            icon: 'info',
            title: 'Por favor, ingrese un valor numérico válido para los kilómetros (mayor que 0)',
            showConfirmButton: false,
            timer: 2000
        });
        return;
    }

    // Validar descripción
    if (descripcion.length === 0) {
        Swal.fire({
            width: '23rem',
            position: 'center',
            icon: 'info',
            title: 'Por favor, ingrese una descripción',
            showConfirmButton: false,
            timer: 1500
        });
        return;
    }

    // ✅ Enviar si todo está bien
    document.getElementById('Registrar_Ruta').submit();
}

function limpiarCamposRuta() {
    const form = document.getElementById('Registrar_Ruta');
    form.reset();
}

document.addEventListener('DOMContentLoaded', function () {
    // Validar envío
    document.getElementById('Registrar_Ruta').addEventListener('submit', validarFormularioRuta);

    // Botón borrar
    document.getElementById('btn-reset').addEventListener('click', limpiarCamposRuta);

    // Convertir automáticamente a mayúsculas
    ["nombre_ruta", "descripcion"].forEach(id => {
        const input = document.getElementById(id);
        input.addEventListener("input", () => {
            input.value = input.value.toUpperCase();
        });
    });
});
