/* 
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
var tipoPago = 0;
var mesesAdelantar = [];

$("#gif").hide();
$("#gifI").hide();
$("#banco").hide();
$("#efectivo").hide();
$("#bancoI").hide();
$("#efectivoI").hide();
$("#banco3").hide();
$("#efectivo3").hide();

$("#gifAbono").hide();
$("#gifTablaAlumno").hide();

function adelantarMeses() {
    if (document.getElementById("adelantarMeses").checked == false) {
        //document.getElementById("contenedorMesesAdelantar").hidden = true;
        document.getElementById("contenedorMesesAdelantar").style.display = "none";
        mesesAdelantar = [];
        var meses = document.getElementsByClassName('maC');
        for (var i = 0; i < meses.length; i++) {
            if (meses[i].checked == true) {
                meses[i].checked = false;
            }
        }
        //console.log("OCULTAR");
    } else {
        document.getElementById("contenedorMesesAdelantar").style.display = "block";
        //console.log("MOSTRAR");
    }
}

function agregarMes(id) {
    if (document.getElementById(id).checked == true) {
        //console.log("Agrego");
        mesesAdelantar.push(id);
    } else {
        var i = mesesAdelantar.indexOf(id);
        //console.log(i);
        if (i !== -1) {
            mesesAdelantar.splice(i, 1);
        }
    }
    //console.log(mesesAdelantar);
}

function validarMensualidad() {
    if (document.getElementById("editarMensualidad").checked == false) {
        var cantidad = document.getElementById("mT").value;
        document.getElementById("totalM").value = cantidad;
        document.getElementById("totalM").readOnly = true;
    } else {
        document.getElementById("totalM").readOnly = false;
    }
}

function validarRecargos() {
    if (document.getElementById("editarRecargos").checked == false) {
        //var cantidad = document.getElementById("tMR").value;
        document.getElementById("totalMR").value = 0;
        document.getElementById("totalMR").readOnly = true;

        var cantidad = document.getElementById("mT").value;
        document.getElementById("totalM").value = cantidad;
    } else {
        var cantidad = document.getElementById("tMR").value;
        document.getElementById("totalMR").value = cantidad;
        document.getElementById("totalMR").readOnly = false;

        var cR = document.getElementById("totalM").value;
        document.getElementById("totalM").value = (cR * 1) + (cantidad * 1);
    }
}

function validarRecargos2() {
    if (document.getElementById("editarRecargos").checked == false) {
        //var cantidad = document.getElementById("tMR").value;
        document.getElementById("totalMR").value = 0;
        document.getElementById("totalMR").readOnly = true;

        var cantidad = document.getElementById("mT").value;
        document.getElementById("totalM").value = cantidad;
    } else {
        var cantidad = document.getElementById("totalMR").value;

        var cR = document.getElementById("mT").value;
        document.getElementById("totalM").value = (cR * 1) + (cantidad * 1);
    }
}

function validarInscripcion() {
    if (document.getElementById("editarInscripcion").checked == false) {
        var cantidad = document.getElementById("cosI").value;
        document.getElementById("inscripcion").value = cantidad;
        document.getElementById("inscripcion").readOnly = true;
    } else {
        document.getElementById("inscripcion").readOnly = false;
    }
}



$("#modoPago").change(function () {
    if ($(this).val() == "default") {
        $("#banco").hide();
        $("#efectivo").hide();
    } else if ($(this).val() == 0 | $(this).val() == 2 | $(this).val() == 3) { // BANCO
        $("#efectivo").hide();
        $("#banco").show();
    } else if ($(this).val() == 1) { // EFECTIVO
        $("#banco").hide();
        $("#efectivo").show();
    }
});

$("#modoPagoI").change(function () {
    if ($(this).val() == "default") {
        $("#bancoI").hide();
        $("#efectivoI").hide();
    } else if ($(this).val() == 0) { // BANCO
        $("#efectivoI").hide();
        $("#bancoI").show();
    } else if ($(this).val() == 1) { // EFECTIVO
        $("#bancoI").hide();
        $("#efectivoI").show();
    }
});

$("#pCon").change(function () {
    var efectivo = $(this).val();
    var total = document.getElementById("montoAbono").value;
    var cambio = efectivo - total;
    $("#cambio").val("$ " + cambio);
});

$("#pConI").change(function () {
    var efectivo = $(this).val();
    var total = document.getElementById("inscripcion").value;
    var cambio = efectivo - total;
    $("#cambioI").val("$ " + cambio);
});

$("#btnFinalizar").click(function () {
    if (confirm("Esta seguro???")) {
        window.location = "/ControlCeepam/web/app_dev.php/caja";
    }
});

$("#btnInscripcion").click(function () {
    var ideAlu = $("#idAlu").val();
    cargarPagoInscripcion(ideAlu);
});

//$("#btnAgregarPago").click(function () {
//    var idePag = this.getAttribute('href');
//    var ideAlu = $("#idAlu").val();
//    cargarPagoMensualidad(ideAlu, idePag);
//});

function btnAgregarPago(cvePag) {
    $("#modoPago").val("default");
    $("#montoAbono").val("0");
    $("#referencia2").val("");
    $("#pCon").val("");
    $("#cambio").val("");

    $("#banco").hide();
    $("#efectivo").hide();

    var idePag = cvePag;
    var ideAlu = $("#idAlu").val();
    cargarPagoMensualidad(ideAlu, idePag);
}
function btnVerPago(cvePag) {
    var idePag = cvePag;
    var ideAlu = $("#idAlu").val();
    verPagoMensualidad(ideAlu, idePag);
}

$("#btnModCancelarMes").click(function () {
    var ideAlu = $("#idAlu").val();
    cargarTablaDePagos(ideAlu);
});

$("#btnModPagar").click(function () {

    var ideAlu = $("#idAlu").val();
    var ref = $("#referencia").val();
    var tI = document.getElementById('inscripcion').value;

    guardarPagoInscripcion(ideAlu, ref, tI);
});

$("#btnModPagarMes").click(function () {
    var idePag = document.getElementById('ideAbonoAPagar').value;
    var ideAlu = $("#idAlu").val();
    var ref = $("#referencia2").val();
    var modoPago = $("#modoPago").val();
    var ideRs = $("#rsM").val();
    var totalM = (document.getElementById('montoAbono').value)*1;

    var totalRestaAbono = (document.getElementById('totalRestaAbono').value)*1;

    if (totalRestaAbono == 0) {
        // ENTONCES YA NO PUEDE SEGUIR ABONANDO A LA CUENTA
        alert("YA HA TERMINADO DE PAGAR !!");
    } else {
        // PUEDE SEGUIR ABONANDO, PERO HAY QUE VALIDAR QUE EL MONTO A ABONAR NO EXCEDA EL MONTO QUE DEBE DE CUBRIR
        if (totalM > totalRestaAbono) {
            // ESTÁ ABONANDO UNA CANTIDAD MAYOR A LA REQUERIDA
            alert("ESTA ABONANDO UNA CANTIDAD MAYOR A LA REQUERIDA");
            $("#montoAbono").effect("highlight", {color: 'red'}, 3000);
        } else {
            // SEGUIR LA SECUENCIA DE OPERACIONES NORMALMENTE
            if (modoPago === "1") { // PAGÓ EN EFECTIVO
                var d = new Date();
                ref = "";
                ref = ref.concat(d.getFullYear(), d.getMonth(), d.getDate(),
                        d.getHours(), d.getMinutes(), d.getSeconds());
            }

            if (modoPago == "0" | modoPago == "2" | modoPago == "3") {
                if (ref == "") {
                    alert("FALTA INGRESAR EL FOLIO DEL COMPROBANTE DE PAGO");
                    $("#referencia2").effect("highlight", {color: 'yellow'}, 3000);
                } else {
                    if (totalM == 0) {
                        if (confirm("EL MONTO A ABONAR ES DE CERO PESOS, ESTA SEGURO DE CONTINUAR")) {
                            guardarPagoMensualidad(ideAlu, ref, modoPago, totalM, ideRs, idePag);
                            alert("SE GUARDÓ UN ABONO CON CERO PESOS");
                            $("#montoAbono").effect("highlight", {color: 'yellow'}, 3000);
                        } else {
                            alert("LA OPERACIÓN SE HA CANCELADO");
                            $("#montoAbono").effect("highlight", {color: 'yellow'}, 3000);
                        }
                    } else {
                        guardarPagoMensualidad(ideAlu, ref, modoPago, totalM, ideRs, idePag);
                    }
                }
            } else if (modoPago == "default") {
                alert("SELECCIONA EL MODO DE PAGO");
                $("#modoPago").effect("highlight", {color: 'yellow'}, 3000);
            } else {
                if (totalM == 0) {
                    if (confirm("EL MONTO A ABONAR ES DE CERO PESOS, ESTA SEGURO DE CONTINUAR")) {
                        guardarPagoMensualidad(ideAlu, ref, modoPago, totalM, ideRs, idePag);
                        alert("SE GUARDÓ UN ABONO CON CERO PESOS");
                        $("#montoAbono").effect("highlight", {color: 'yellow'}, 3000);
                    } else {
                        alert("LA OPERACIÓN SE HA CANCELADO");
                        $("#montoAbono").effect("highlight", {color: 'yellow'}, 3000);
                    }
                } else {
                    guardarPagoMensualidad(ideAlu, ref, modoPago, totalM, ideRs, idePag);
                }
            }


        }

    }
});

$("#btnModPagarInscripcion").click(function () {

    var ideAlu = $("#idAlu").val();
    var ref = $("#referenciaI").val();
    var inscripcion = document.getElementById("inscripcion").value;
    var ideRs = $("#rsI").val();
    var modoPago = $("#modoPagoI").val();
    if (modoPago === "1") { // PAGÓ EN EFECTIVO
        var d = new Date();
        ref = "";
        ref = ref.concat(d.getFullYear(), d.getMonth(), d.getDate(),
                d.getHours(), d.getMinutes(), d.getSeconds());
    }

    guardarPagoInscripcion(ideAlu, ref, modoPago, inscripcion, ideRs);
});

$("#btnOtros").click(function () {

    var ideAlu = $("#idAlu").val();
    var otro = $("#otros").val();

    cargarOtros(otro);
});

$("#modoPago3").change(function () {
    if ($(this).val() == "default") {
        $("#banco3").hide();
        $("#efectivo3").hide();
    } else if ($(this).val() == 0) { // BANCO
        $("#efectivo3").hide();
        $("#banco3").show();
    } else if ($(this).val() == 1) { // EFECTIVO
        $("#banco3").hide();
        $("#efectivo3").show();
    }
});

$("#btnModPagarOtros").click(function () {
    var ideAlu = $("#idAlu").val();
    var otro = $("#otros").val();
    var ref = $("#referencia3").val();
    var monto = document.getElementById("montoOtro").value;
    var ideRs = $("#rsO").val();
    var modoPago = $("#modoPago3").val();
    if (modoPago === "1") { // PAGÓ EN EFECTIVO
        var d = new Date();
        ref = "";
        ref = ref.concat(d.getFullYear(), d.getMonth(), d.getDate(),
                d.getHours(), d.getMinutes(), d.getSeconds());
    }

    guardarOtros(ideAlu, otro, ref, monto, ideRs);


});

function cargarPagoInscripcion(ideAlu) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/cargarInscripcion',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gif2").show();
        },
        success: function (respuesta) {
            //alert("Correcto");
            $("#gif2").hide();
            document.getElementById("contTablaModI").innerHTML = respuesta;
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gif2").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function guardarPagoInscripcion(ideAlu, ref, modoPago, inscripcion, rs) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/guardarInscripcion',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu, referencia: ref, modoPago: modoPago, ins: inscripcion, rs: rs},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
        },
        success: function (respuesta) {
            //alert("Correcto");
            document.getElementById("conTablaAlumno").innerHTML = respuesta;
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function cargarTablaDePagos(ideAlu) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/cargarTablaPagoBachi',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gifTablaAlumno").show();
        },
        success: function (respuesta) {
            //alert("Correcto");
            document.getElementById("conTablaAlumno").innerHTML = respuesta;
            $("#gifTablaAlumno").hide();
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gifTablaAlumno").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function cargarPagoMensualidad(ideAlu, idePag) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/cargarPagoBachi',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu, idePag: idePag},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gifAbono").show();
            document.getElementById("contTablaMod2").innerHTML = "";
        },
        success: function (respuesta) {
            //alert("Correcto");
            document.getElementById("contTablaMod2").innerHTML = respuesta;
            $("#gifAbono").hide();
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gifAbono").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function verPagoMensualidad(ideAlu, idePag) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/cargarPagoBachi',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu, idePag: idePag},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gif5").show();
        },
        success: function (respuesta) {
            //alert("Correcto");
            $("#gif5").hide();
            document.getElementById("contTablaMod4").innerHTML = respuesta;
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gif5").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function guardarPagoMensualidad(ideAlu, ref, modoPago, tM, rs, idePag) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/guardarPagoBachi',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu, referencia: ref, modoPago: modoPago, tM: tM, rs: rs, idePag: idePag},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gifAbono").show();
            document.getElementById('btnModPagarMes').disabled = true;
            document.getElementById('btnModPagarMes').innerHTML = "GUARDANDO..."
        },
        success: function (respuesta) {
            //alert("Correcto");
            document.getElementById("contTablaMod2").innerHTML = respuesta;
            $("#gifAbono").hide();
            document.getElementById('btnModPagarMes').disabled = false;
            document.getElementById('btnModPagarMes').innerHTML = "PAGAR"
            document.getElementById('montoAbono').value = 0;
            document.getElementById('modoPago').value = "default";
            document.getElementById('pCon').value = 0;
            document.getElementById('cambio').value = 0;
            $("#banco").hide();
            $("#efectivo").hide();

        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gifAbono").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function cargarOtros(otro) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/cargarOtro',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideOtro: otro},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
            $("#gif4").show();
        },
        success: function (respuesta) {
            //alert("Correcto");
            $("#gif4").hide();
            document.getElementById("contTablaMod3").innerHTML = respuesta;
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
            $("#gif4").hide();
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}

function guardarOtros(ideAlu, otro, ref, monto, rs) {
    $.ajax({
        // la URL para la petición
        url: '/ControlCeepam/web/app_dev.php/guardarOtro',
        // la información a enviar
        // (también es posible utilizar una cadena de datos)
        data: {ideAlu: ideAlu, ideOtro: otro, referencia: ref, monto: monto, rs: rs},
        // especifica si será una petición POST o GET
        type: 'POST',
        // el tipo de información que se espera de respuesta
        dataType: 'html',
        // código a ejecutar si la petición es satisfactoria;
        // la respuesta es pasada como argumento a la función
        beforeSend: function () {
        },
        success: function (respuesta) {
            //alert("Correcto");
            document.getElementById("contOtros").innerHTML = respuesta;
        },
        // código a ejecutar si la petición falla;
        // son pasados como argumentos a la función
        // el objeto de la petición en crudo y código de estatus de la petición
        error: function (xhr, status) {
            alert('Disculpe, existió un problema');
        },

        // código a ejecutar sin importar si la petición falló o no
        complete: function (xhr, status) {
            //alert('Petición realizada');
        }
    });
}