
function init() {

    mostrarform(false);//ocultar formulario de registro
    mostrarecuperar(false);
    

}


function registrar(flag)
{
  mostrarform(true);//mostrar formulario 

}


function recuperarClave(flag)
{
  mostrarecuperar(true);//mostrar formulario 

}

function mostrarform(flag)
{
  if (flag)
  {
    $("#formularioinicio").hide();
    //entrando al formulario desde (el boton btnAgregar en la vista php)
    $("#formularioregistro").show();
//================================================================//
  }
  else
  {
    $("#formularioregistro").hide();//ocultar formulario registro
    $("#formularioinicio").show();
  }
}

function mostrarecuperar(flag)
{
  if (flag)
  {
    $("#formularioinicio").hide();
    //entrando al formulario desde (el boton btnAgregar en la vista php)
    $("#recuperarclave").show();
//================================================================//
  }
  else
  {
    $("#recuperarclave").hide();//ocultar formulario registro
    $("#formularioinicio").show();
  }
}

//Función cancelar formulario registro
function iniciar()
{
  
  mostrarform(false);//ocultar formulario registro
  mostrarecuperar(false);//mostrar formulario 


}


$("#sesion").on('submit', function(e) {
    e.preventDefault(); // Evita el envío del formulario por defecto

    const usuarioA = $("#usuario").val();
    const claveA = $("#contra").val();

    $.post("../ajax/perfilUsuario/login.php?op=verificar&r=" + new Date().getTime(), {
        usuario: usuarioA,
        contra: claveA
    }, function(data) {
        // Parsear la respuesta JSON
        const responseData = JSON.parse(data);
        
        if (responseData.success) {
            const status = responseData.status; // Obtener el status
            const id_tipo = responseData.id_tipo; // Obtener id_tipo

            // Verificar el status del usuario
            if (status == 0) {
                Swal.fire({
                    title: 'Usuario Inactivo',
                    text: 'No puedes iniciar sesión porque tu usuario está inactivo.',
                    icon: 'warning',
                    confirmButtonText: 'Entendido'
                });
            } else if (status == 1) {
                // Manejar redirección según el id_tipo
                if (id_tipo == 1) {
                    // Redirigir a la página de tipo 1
                    $(location).attr("href", "administrador/administrador.php");
                } else if (id_tipo == 2) {
                  
        // Redirigir a la página de tipo 2
        $(location).attr("href", "jugador/jugador.php");
                       // Simulamos el clic en el botón automáticamente

                 
                } else {
                    // Redirigir a una página por defecto
                    $(location).attr("href", "login.php");
                }

                Swal.fire({
                    title: '¡Éxito!',
                    text: 'Sesión iniciada correctamente',
                    icon: 'success',
                    showConfirmButton: false,
                    timer: 1500
                });
            }
        } else {
            Swal.fire({
                title: 'Error',
                text: 'Usuario y/o Password incorrectos',
                icon: 'error',
                confirmButtonText: 'Inténtalo de nuevo'
            });
        }
    });
});


$("#btnRegistrar").on('click', function(e) {
    e.preventDefault(); // Evita el envío del formulario por defecto

    // Obtener todos los campos del formulario
    var isValid = true;
    $('#register input[required]').each(function() {
        if ($(this).val() === '') {
            isValid = false;
            // Puedes agregar un mensaje de advertencia aquí si deseas
            $(this).addClass('is-invalid'); // Añade clase para indicar error
        } else {
            $(this).removeClass('is-invalid'); // Remueve la clase si está válido
        }
    });

    // Verifica si el formulario es válido
    if (!isValid) {
        Swal.fire({
            title: 'Error',
            text: 'Por favor completa todos los campos obligatorios.',
            icon: 'error',
            confirmButtonText: 'Inténtalo de nuevo'
        });
        return; // No enviamos el formulario
    }

    // Si el formulario es válido, se procede a enviar
    var formData = new FormData($("#register")[0]);

    $.ajax({
        url: "../ajax/perfilUsuario/login.php?op=registrar&r=" + new Date().getTime(),
        type: "POST",
        data: formData,
        contentType: false, // Importante para FormData
        processData: false, // No procesar la data
        success: function(data) {
            var response = JSON.parse(data); // Parsear la respuesta JSON

            if (!response.success) {
                // Si la respuesta indica que no fue exitoso, mostramos un error
                Swal.fire({
                    title: 'Error',
                    text: response.message, // Mensaje del servidor
                    icon: 'error',
                    confirmButtonText: 'Inténtalo de nuevo'
                });
            } else {
                // Si el registro fue exitoso
                Swal.fire({
                    title: '¡Éxito!',
                    text: 'Registrado Exitosamente',
                    icon: 'success',
                    showConfirmButton: false, // Oculta el botón de confirmación
                    timer: 1500 // Cambié a 1.5 segundos (1500 ms)
                })
          .then(() => {
                    $(location).attr("href", "login.php"); // Redireccionar a login
                });
            }
        },
        error: function() {
            // Manejo de errores en la llamada AJAX
            Swal.fire({
                title: 'Error',
                text: 'Ocurrió un error al procesar la solicitud.',
                icon: 'error',
                confirmButtonText: 'Inténtalo de nuevo'
            });
        }
    });
});

$("#btnrecuperar").on('click', function(e) {
    e.preventDefault(); // Evita el envío del formulario por defecto

    // Si el formulario es válido, se procede a enviar
    var formData = new FormData($("#recuperar")[0]);

    $.ajax({
        url: "../ajax/perfilUsuario/login.php?op=recuperarclave&r=" + new Date().getTime(),
        type: "POST",
        data: formData,
        contentType: false, // Importante para FormData
        processData: false, // No procesar la data
        success: function(data) {

            var response =  data.trim(); // Asegurarnos de que no hay espacios adicionales
            if (response === "Usuario o teléfono no coinciden") {
                // Si la respuesta indica que no fue exitoso, mostramos un error
                Swal.fire({
                    title: 'Error',
                    text: 'Usuario o Telefono no coincide', // Mensaje del servidor
                    icon: 'error',
                    confirmButtonText: 'Inténtalo de nuevo'
                });
            } else {
                // Si el registro fue exitoso
                Swal.fire({
                    title: '¡Éxito!',
                    text: 'Recuperado Exitosamente',
                    icon: 'success',
                    showConfirmButton: false, // Oculta el botón de confirmación
                    timer: 150000 // Cambié a 1.5 segundos (1500 ms)
                })
          .then(() => {
                    $(location).attr("href", "login.php"); // Redireccionar a login
                });
            }
        },
        error: function() {
            // Manejo de errores en la llamada AJAX
            Swal.fire({
                title: 'Error',
                text: 'Ocurrió un error al procesar la solicitud.',
                icon: 'error',
                confirmButtonText: 'Inténtalo de nuevo'
            });
        }
    });
});

//Evento se activa al cambiar el valor del input del campo usuario
$("#usuarior").change(function(e) {
    e.preventDefault();

    var usuario = $("#usuarior").val();//obtener value de la cedula

    //obtener el elemento message por su ID
    var messageElement = document.getElementById('messageR');


$.post("../ajax/administrador/usuarios.php?op=validarUsuario&r=" + new Date().getTime(), {
    usuario: usuario
}).done(function(data) {
    // Actualizar el contenido del <span> con el mensaje recibido
    messageElement.textContent = '';

    //manejar respuestas
    if (data === "existe usuario") {
        messageElement.textContent = 'Este Usuario ya se encuentra registrado!';
        $("#usuarior").addClass("is-invalid");
        $("#usuarior").removeClass("is-valid");
        $("#btnRegistrar").prop("disabled", true);//Deshabilitar el boton de guardar
    }

    if (data === "no existe usuario") {
        $("#usuarior").addClass("is-valid");
        $("#usuarior").removeClass("is-invalid");
        $("#btnRegistrar").prop("disabled", false);//Habilitar el boton de guardar
    } 

  
});

     
});



const eyeOn0 = document.getElementById("eyeOn0");
const eyeOn1 = document.getElementById("eyeOn1");


eyeOn0.addEventListener("click", function() {
    const input = document.getElementById("contra");
    togglePasswordVisibility(input, this);
});

eyeOn1.addEventListener("click", function() {
    const input = document.getElementById("clave");
    togglePasswordVisibility(input, this);
});



function togglePasswordVisibility(input, icon) {
    if (input.type === "password") {
        input.type = "text";
        icon.querySelector(".fa-eye").classList.remove("fa-eye");
        icon.querySelector(".fa-eye-content").classList.add("fa-eye-slash");
    } else {
        input.type = "password";
        icon.querySelector(".fa-eye").classList.add("fa-eye");
        icon.querySelector(".fa-eye-slash").classList.remove("fa-eye-slash");
    }
}


init();