$(function () {
    $("#example1").DataTable({
        "responsive": true, "lengthChange": false, "autoWidth": false,
        "buttons": ["copy", "csv", "excel", "pdf", "print", "colvis"]
    }).buttons().container().appendTo('#example1_wrapper .col-md-6:eq(0)');
    $('#example2').DataTable({
        "paging": true,
        "lengthChange": false,
        "searching": false,
        "ordering": true,
        "info": true,
        "autoWidth": false,
        "responsive": true,
    });
    $("#formInstitucion").on("submit", function (e) {
        guardaryactualizarInstitucion(e);
    });
});

$(document).ready(function () {    
    $('#institucion-data').DataTable({
        "aProcessing": true,
        "aServerSide": true,
        dom: 'Bfrtip',
        buttons: [
            'copyHtml5',
            'excelHtml5',
            'csvHtml5',
            'pdfHtml5',
            'print',
            'colvis'
        ],
        "ajax": {
            url: "../../controller/institucion.php?op=listar&fil=all",
            type: "post"
        },
        "bDestroy": true,
        "responsive": true,
        "bInfo": true,
        "iDisplayLength": 20,
        "order": [[0, "desc"]],
        "language": {
            "sProcessing": "Procesando...",
            "sLengthMenu": "Mostrar _MENU_ registros",
            "sZeroRecords": "No se encontraron resultados",
            "sEmptyTable": "Ningun dato disponible en esta tabla",
            "sInfo": "Mostrando registro 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:",
            "sUrl": "",
            "sInfoThousands": ",",
            "sLoadingRecords": "Cargando...",
            "oPaginate": {
                "sFirst": "Primero",
                "sLast": "Ultimo",
                "sNext": "Siguiente",
                "sPrevious": "Anterior"
            },
            "oAria": {
                "sSortAscending": ": Activar para ordenar la columna de manera ascendente",
                "sSortDescending": ": Activar para ordenar la columna de manera descendente"
            }
        },
    });
    combo_Tipo();
    combo_SectorEconomico();
});
function combo_Tipo() {
    $.post("../../controller/catalogo.php?op=tipoInstitucion", function (data) {
        $('#tipo').html(data);
    });
}
function combo_SectorEconomico() {
    $.post("../../controller/catalogo.php?op=sectorEconomico", function (data) {
        $('#sector_economico').html(data);
    });
}
function nuevo() {
    $('#instituciondbk').val('');
    $('#razon_social').val('');
    $('#ruc').val('');
    $('#domicilio').val('');
    $('#telefono').val('');
    $('#actividad').val('');
    $('#email').val('');    
    $('#lblTitulo').html('Nuevo Registro');
    $('#formInstitucion')[0].reset();
    $('#institucion_man').modal('show');
    $('#tipo').val('').trigger('change');
    $('#sector_economico').val('').trigger('change');
}
function guardaryactualizarInstitucion(e) {
    e.preventDefault();
    var formData = new FormData($("#formInstitucion")[0]);
    $.ajax({
        url: '../../controller/institucion.php?op=guardar',
        type: "POST",
        data: formData,
        contentType: false,
        processData: false,
        success: function (data) {
            $('#institucion-data').DataTable().ajax.reload();
            $('#institucion_man').modal('hide');
            Swal.fire({
                title: 'Operacion Exitosa',
                text: 'La información se ha guardada satisfactoriamente',
                icon: 'success',
                confirmButtonText: 'Aceptar'
            })
        }
    });
}
function editar(instituciondbk) {
    $.post("../../controller/institucion.php?op=consultar_institucion", {instituciondbk: instituciondbk}, function (data) {
        data = JSON.parse(data);
        $('#instituciondbk').val(data.instituciondbk);
        $('#razon_social').val(data.razon_social);
        $('#ruc').val(data.ruc);
        $('#telefono').val(data.telefono);
        $('#email').val(data.email);
        $('#domicilio').val(data.domicilio);
        $('#actividad').val(data.actividad);
        $('#tipo').val(data.tipo).trigger("change");
        $('#sector_economico').val(data.sector_economico).trigger("change");
    });
    $('#lblTitulo').html('Editar Institución');
    $('#institucion_man').modal('show');
}

function eliminar(instituciondbk) {
    swal.fire({
        title: "Eliminar",
        text: "Desea Eliminar el Registro de manera definitiva",
        icon: "error",
        confirmButtonText: "Si",
        showCancelButton: true,
        cancelButtonText: "No",
    }).then((result) => {
        if (result.value) {
            $.post("../../controller/institucion.php?op=eliminar_institucion", {instituciondbk: instituciondbk}, function (data) {
                $('#institucion-data').DataTable().ajax.reload();
                Swal.fire({
                    title: 'Operacion Exitosa',
                    text: 'El registro se elimino correctamente',
                    icon: 'success',
                    confirmButtonText: 'Aceptar'
                })
            });
        }
    });
}

$(".tablas").on("click", ".btnActivarInstitucion", function () {
    var instituciondbk = $(this).attr("idInstitucion");
    var estado = $(this).attr("estadoInstitucion");
    var datos = new FormData();
    datos.append("activarId", instituciondbk);
    datos.append("activarInstitucion", estado);
    $.ajax({
        url: "../../controller/institucion.php?op=estado",
        method: "POST",
        data: datos,
        cache: false,
        contentType: false,
        processData: false,
        success: function (data) {
        }
    })
    if (estado == "INACTIVO") {
        $(this).removeClass('btn-success');
        $(this).addClass('btn-danger');
        $(this).html('Inactivo');
        $(this).attr('estadoInstitucion', "ACTIVO");
    } else {
        $(this).addClass('btn-success');
        $(this).removeClass('btn-danger');
        $(this).html('Activo');
        $(this).attr('estadoInstitucion', "INACTIVO");
    }
})