
var Arr = [];

var ArrPos = [];

$.ajax({
    url: urlEspec,
    type: 'GET',
    cache: false,
    async: false,
    success: function (result) {
        for(var i = 0; i < result.length; i++){
            Arr.push(result[i]);
        }
    },
    error: function(error){
    }
});

$.ajax({
    url: urlPostu,
    type: 'GET',
    cache: false,
    async: false,
    success: function (result) {
        for(var i = 0; i < result.length; i++){
            ArrPos.push(result[i]);
        }
    },
    error: function(error){
    }
});

var oTable = $('#table_gestion').DataTable({
    "language": {
        "sProcessing":     "Procesando...",
        "sLengthMenu":     "Mostrar _MENU_ registros",
        "sZeroRecords":    "No se encontraron resultados",
        "sEmptyTable":     "No existen registros creados",
        "sInfo":           "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros",
        "sInfoEmpty":      "Mostrando registros del 0 al 0 de un total de 0 registros",
        "sInfoFiltered":   "(filtrado de un total de _MAX_ registros)",
        "sInfoPostFix":    "",
        "sSearch":         "Buscar por DNI, Nombres y/o Apellidos:",
        "sUrl":            "",
        "sInfoThousands":  ",",
        "sLoadingRecords": "Cargando...",
        "oPaginate": {
            "sFirst":    "Primero",
            "sLast":     "Último",
            "sNext":     "Siguiente",
            "sPrevious": "Anterior"
        },
        "oAria": {
            "sSortAscending":  ": Activar para ordenar la columna de manera ascendente",
            "sSortDescending": ": Activar para ordenar la columna de manera descendente"
        }
    },
    processing: true,
    serverSide: true,
    destroy: true,
    responsive:true,
    autoWidth: false,
    ajax:{
        url: urlData,
        method: 'POST',
        data: function(d){
            d.data = 1;
        },
        error: function(error){
        }
    },
    columns:[
        {
            data:'dni',
            name:'dni',
            "searchable": true
        },
        {
            data:'nombres',
            name:'nombres',
            "searchable": true
        },
        {
            data:'apellido_paterno',
            name:'apellido_paterno',
            "searchable": true
        },
        {
            data:'apellido_materno',
            name:'apellido_materno',
            "searchable": true
        },
        {
            data:'created_at',
            name:'created_at',
            "searchable": true
        },
        {
            data:'id_especialidad',
            name:'id_especialidad',
            "searchable": true,
            render: function(data,type,row){
                var e = "";
                for(var i = 0; i < Arr.length; i++){
                    if(Arr[i]['id'] == data){
                        e = Arr[i]['nombre'];
                    }
                }
                return e;
            }
        },
        {
            data:'id_tipo_postulacion',
            name:'id_tipo_postulacion',
            "searchable": true,
            render: function(data,type,row){
                var e = "";
                for(var i = 0; i < ArrPos.length; i++){
                    if(ArrPos[i]['id'] == data){
                        e = ArrPos[i]['nombre'];
                    }
                }
                return e;
            }
        },
        {
            data:'id_turno',
            name:'id_turno',
            "searchable": true,
            render: function(data,type,row){
                switch (data)
                {
                    case '1':
                        $turno = 'Mañana';
                        break;
                    case '2':
                        $turno = 'Tarde';
                        break;
                }
                return $turno;
            }
        },
        {
            data:'estado_pago',
            name:'estado_pago',
            "searchable": true,
            render: function(data,type,row){
                switch (data)
                {
                    case '1':
                        $tramite = 'Pago';
                        break;
                    case '0':
                        $tramite = 'No pago';
                        break;
                }
                return $tramite;
            }
        },
        {
            data:'id',
            name:'id',
            "searchable": true,
            render: function(data,type,row){
                if(row.estado_pago == 1){
                    return '';
                }
                else{
                }
                return '<td><button class="vmas btn btn-primary waves-effect waves-light m-t-10 pago"' +
                    'data-pago="'+data+'" data-dni="'+row.dni+'" data-nombre="'+row.nombres+' '+row.apellido_paterno+' '+row.apellido_materno+'"><i class="icon-wallet"></i></button></td>';
            }
        }
    ],
    "pageLength": 10,
    "columnDefs": [{
        'orderable': false,
        "searchable": true,
        'targets': [0,1,2,3]
    }],
    "bInfo": false,
    "bLengthChange": false,
    "ordering": false
});

$('#table_gestion').on('click','.pago', function () {
    var id = $(this).data('pago');
    var nombre = $(this).data('nombre');
    var dn = $(this).data('dni');

    $.ajax({
        type: "GET",
        url: urlValidar,
        success: function (result) {
            if(result == 205){
                swal("No existe caja aperturada", "Debe aperturar una caja primero para realizar pagos.", "warning");
                return false;
            }
            else{
                $.ajax({
                    type: "POST",
                    url: urlRecibo ,
                    data: {
                        ed : id,
                        dni : dn,
                        no : nombre
                    },
                    success: function (result2) {
                        if(isNaN(result2)){
                            swal("Advertencia", "La conexión con el servidor fallo.", "warning");
                        }
                        else{
                            document.location.href = urlBase + "/recibo/" + result2;
                        }
                    }
                });


            }
        },
        error: function(data) {
        }
    });




});


function tableRefresh() {
    oTable.draw();
}
