$(document).ready(function(){
    load(1);
});

function load(page){
    var q= $("#q").val();
    var est= $("#est").val();
    $("#loader").fadeIn('slow');
    $.ajax({
        type: "POST",
        url:'./ajax/buscar_usuarios.php',
        data:'action=ajax&page='+page+'&q='+q+'&est='+est,
        beforeSend: function(objeto){
            $('#loader').html('<img src="./img/ajax-loader.gif"> Cargando...');
        },
        success:function(data){
            $(".outer_div").html(data).fadeIn('slow');
            $('#loader').html('');
        }
    });
}

// Función para abrir el modal de Password (Botón Engranaje)
function get_user_id(id){
    $("#user_id_mod").val(id);
}

// Función para abrir el modal de Edición (Botón Lápiz)
function obtener_datos(id){
    var nombres = $("#nombres"+id).val();
    var apellidos = $("#apellidos"+id).val();
    var usuario = $("#usuario"+id).val();
    var email = $("#email"+id).val();
    var rol = $("#rol"+id).val();
    var id_tienda = $("#estado_id"+id).val();

    $("#mod_id").val(id); 
    
    // Agregamos un console.log para que tú mismo veas si se carga
    console.log("Cargando ID en el modal: " + id);
    $("#firstname2").val(nombres);
    $("#lastname2").val(apellidos);
    $("#user_name2").val(usuario);
    $("#user_email2").val(email);
    $("#rol2").val(rol);
    $("#estado2").val(id_tienda);
}

$(document).on("submit", "#guardar_usuario", function(event) {
    event.preventDefault(); // Primerísima línea
    event.stopImmediatePropagation(); // Evita que otros scripts cierren el modal
    
    var $boton = $('#guardar_datos');
    $boton.attr("disabled", true);
    
    var parametros = $(this).serialize();
    $.ajax({
        type: "POST",
        url: "ajax/nuevo_usuario.php",
        data: parametros,
        success: function(datos){
            $("#resultados_ajax").html(datos);
            $boton.attr("disabled", false);
            
            // Si el mensaje contiene "éxito", recargamos la lista
            if (datos.indexOf("éxito") !== -1) {
                load(1);
            }
        },
        error: function(jqXHR, textStatus, errorThrown) {
            console.error("Error en AJAX:", textStatus, errorThrown);
            $("#resultados_ajax").html('<div class="alert alert-danger">Error de conexión con el servidor.</div>');
            $boton.attr("disabled", false);
        }
    });
});
// Submit Edición de Usuario
$("#editar_usuario").submit(function(event) {
    event.preventDefault();
    
    // Captura manual de cada campo
    var id_usuario = $("#mod_id").val();
    var tienda = $("#estado2").val();
    var nombres = $("#firstname2").val();
    var apellidos = $("#lastname2").val();
    var usuario = $("#user_name2").val();
    var email = $("#user_email2").val();
    var rol = $("#rol2").val();

    $('#actualizar_datos').attr("disabled", true);
    
    $.ajax({
        type: "POST",
        url: "ajax/editar_usuario.php",
        data: {
            mod_id: id_usuario,
            estado2: tienda,
            firstname2: nombres,
            lastname2: apellidos,
            user_name2: usuario,
            user_email2: email,
            rol2: rol
        },
        beforeSend: function(objeto){
            $("#resultados_ajax2").html("Actualizando...");
        },
        success: function(datos){
            $("#resultados_ajax2").html(datos);
            $('#actualizar_datos').attr("disabled", false);
            load(1);
        }
    });
});

// Submit Cambio de Password
$( "#editar_password" ).submit(function( event ) {
    $('#actualizar_datos3').attr("disabled", true);
    var parametros = $(this).serialize();
    $.ajax({
        type: "POST",
        url: "ajax/editar_password.php",
        data: parametros,
        beforeSend: function(objeto){
            $("#resultados_ajax3").html("Cargando...");
        },
        success: function(datos){
            $("#resultados_ajax3").html(datos);
            $('#actualizar_datos3').attr("disabled", false);
            load(1);
        }
    });
    event.preventDefault();
});

function toggle_bloqueo(id){
    $.ajax({
        type: "POST",
        url: "./ajax/toggle_bloqueo_usuario.php",
        data: "user_id="+id,
        dataType: "json",
        success: function(resp){
            if (resp.success) {
                load(1);
            }
        }
    });
}

function eliminar(id){
    if (confirm("¿Realmente deseas eliminar el usuario?")){ 
        $.ajax({
            type: "GET",
            url: "./ajax/eliminar_usuario.php",
            data: "id="+id,
            success: function(datos){
                load(1);
            }
        });
    }
}