var pro_id = "";
   

$(document).ready(function(){
    $('#panel2').addClass('hide');
        $("#fic_id").select2({ placeholder: "Seleccionar" });

        let alumnos = [];

        $.ajax({
            url: "../../controller/fichas.php?op=select_fichas",
            method: "POST",
            dataType: "json",
            success: function(data) {
                alumnos = data;

                let options = '<option value="">Seleccione...</option>';
                data.forEach(function(item) {
                    options += `<option value="${item.fic_id}">${item.fic_nom}</option>`;
                });

                $('#fic_id').html(options);
                $("#fic_id").val(null).trigger("change");
            }
        });

        $('#fic_id').on('change', function() {
            
            const selectedId = $(this).val();
            const alumno = alumnos.find(c => c.fic_id == selectedId); // Corregido

            if (alumno) {
                $('#fic_run').val(alumno.fic_run); // Corregido
                $('#fic_nom_label').text(alumno.fic_nom);
            } else {
                $('#fic_run').val('');
                $('#fic_nom_label').text('Ninguno');
            }
            if (typeof tabla !== 'undefined') {
            tabla.ajax.reload();
            }
    });
    

});

function cargarTabla($emp_id) {
    
    tabla = $('#detalle_data').DataTable({
            "processing": true,
            "serverSide": false,
            "paging": true,
            "info": true,
            "lengthChange": false,
            "pageLength": 30,
            "searching": true,
            "language": {
                "sProcessing":     "Procesando...",
                "sLengthMenu":     "Mostrar _MENU_ registros",
                "sZeroRecords":    "No se encontraron resultados",
                "sEmptyTable":     "Ningún dato disponible en esta tabla",
                "sInfo":           "Mostrando un total de _TOTAL_ registros",
                "sInfoEmpty":      "Mostrando un total de 0 registros",
                "sInfoFiltered":   "(filtrado de un total de _MAX_ registros)",
                "sSearch":         "Buscar:",
                "oPaginate": {
                    "sFirst":    "Primero",
                    "sLast":     "Último",
                    "sNext":     "Siguiente",
                    "sPrevious": "Anterior"
                }
            },
        "ajax":{
                url: '../../controller/agenda.php?op=listar_informe',
                type : "POST",
                data: function(d) {
                d.fic_id = $('#fic_id').val(); 
                d.anio = $('#anio').val();
                d.mes = $('#mes').val();
                },
                dataType : "json",
                error: function(e){
                console.log(e.responseText);	
            }
        },
        "columns": [
        { data: "especialidad" },
        { data: "fecha" },
        { data: "hora" },
        { data: "valor" },
        { data: "estado_pago" } 
    ]
         
    });
    $('#detalle_data').on('xhr.dt', function ( e, settings, json, xhr ) {
    if (json.data.length > 0) {
        $("#apo_nombre").val(json.data[0].apo_nombre);
        $("#apo_email").val(json.data[0].apo_email);
    }
});

}

// Click en el botón
$(document).on("click", "#btnsiguiente1", function () {
    const fic_id = document.getElementById('fic_id').value;
    const anio = document.getElementById('anio').value;
    const mes = document.getElementById('mes').value;

    if (!fic_id || !anio || !mes) {
        alert("Por favor, selecciona todos los campos obligatorios.");
        return;
    }
    // Cambiar paneles
    $('#panel1').addClass('hide');
    $('#panel2').removeClass('hide');

   cargarTabla($('#fic_id').val());
});



$(document).on("click","#btnanterior2",function(){
location.reload();
});

$("#btncancelar").click(function() {
    location.reload();  // Aquí recarga la página

});

// Evento al hacer clic en Imprimir PDF
$("#btnimprimirpdf").on("click", function () {
    let alumnoNombre = $("#fic_nom_label").text().trim();
    let apoderadonombre = $("#apo_nombre").val().trim();
    let apoderadoemail = $("#apo_email").val().trim();
    let alumnoRun = $("#fic_run").val().trim();

    let sesiones = [];
    let resumen = {}; // Totales por especialidad (solo no pagados)
    let totalGeneral = 0;

    $("#detalle_data tbody tr").each(function () {
        let especialidad = $(this).find("td:eq(0)").text().trim();
        let fecha = $(this).find("td:eq(1)").text().trim();
        let hora = $(this).find("td:eq(2)").text().trim();
        let valor = parseFloat($(this).find("td:eq(3)").text().trim()) || 0;
        let estado = $(this).find("td:eq(4)").text().trim().toLowerCase();

        // Registrar todas las sesiones en el PDF
        if (especialidad && fecha && hora) {
            sesiones.push({ especialidad, fecha, hora, valor, estado });
        }

        // Solo sumar al resumen si NO está pagado
        if (estado === "no pagado" || estado === "pendiente") {
            if (!resumen[especialidad]) {
                resumen[especialidad] = 0;
            }
            resumen[especialidad] += valor;
            totalGeneral += valor;
        }
    });

    if (sesiones.length === 0) {
        alert("No hay sesiones registradas para generar el PDF.");
        return;
    }

    $.ajax({
        url: "generar_pdf.php",
        type: "POST",
        data: {
            alumno_nombre: alumnoNombre,
            alumno_run: alumnoRun,
            apoderado_nombre: apoderadonombre,
            apoderado_email: apoderadoemail,
            sesiones: JSON.stringify(sesiones),
            resumen: JSON.stringify(resumen),
            total_general: totalGeneral
        },
        xhrFields: { responseType: 'blob' },
        success: function(data) {
            let blob = new Blob([data], { type: "application/pdf" });
            let link = document.createElement("a");
            link.href = URL.createObjectURL(blob);
            link.download = "informe_" + alumnoNombre + ".pdf";
            document.body.appendChild(link);
            link.click();
            document.body.removeChild(link);
        }
    });
});


document.addEventListener("DOMContentLoaded", function () {
    // Llenar select de años desde 2020 hasta el actual
    const anioSelect = document.getElementById("anio");
    if (anioSelect) {
        const anioActual = new Date().getFullYear();
        for (let año = anioActual; año >= 2025; año--) {
            let option = document.createElement("option");
            option.value = año;
            option.textContent = año;
            anioSelect.appendChild(option);
        }
    }
});
