
async function recuperarCantidadGenero(tipoConsulta) {
    try {
        const response = await fetch("../controllers/graficos.php", {
            method: "POST",
            headers: {
                "Content-Type": "application/json",
            },
            body: JSON.stringify({ tipoConsulta }),
        });

        const data = await response.json();
        return data.cantidad || 0; 
    } catch (error) {
        console.error("Error al recuperar datos:", error);
        return 0;
    }
}


async function obtenerPromedioPorGenero() {
    // Obtener conteos de cada género
    const femenino = await recuperarCantidadGenero("Femenino");
    const masculino = await recuperarCantidadGenero("Masculino");
    const noDefinido = await recuperarCantidadGenero("Prefiero no decirlo");

    // Suma total de personas
    const total = femenino + masculino + noDefinido;

    // Evitar división por cero
    if (total === 0) {
        actualizarTarjetas(0, 0, 0);
        return;
    }

    // Calcular el promedio (cantidad / total de registros)
    // Aquí promedio es la proporción simple de cada género dentro del total
    const promedioFemenino = femenino / total;
    const promedioMasculino = masculino / total;
    const promedioNoDefinido = noDefinido / total;

    // Actualizar las tarjetas con los valores calculados
    actualizarTarjetas(promedioFemenino, promedioMasculino, promedioNoDefinido);
}

// Función para actualizar las tarjetas en el DOM
function actualizarTarjetas(promF, promM, promND) {
    const femenino = document.querySelector("#card-femenino h2");
    const masculino = document.querySelector("#card-masculino h2");
    const prefiero = document.querySelector("#card-prefiero h2");

    if (femenino) femenino.textContent = (promF * 100).toFixed(2) + "%";
    if (masculino) masculino.textContent = (promM * 100).toFixed(2) + "%";
    if (prefiero) prefiero.textContent = (promND * 100).toFixed(2) + "%";
}

// Ejecutar cuando el DOM esté listo
document.addEventListener("DOMContentLoaded", obtenerPromedioPorGenero);
