$(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,
    });
    $("#formCarrera").on("submit", function (e) {
        guardaryactualizarCarrera(e);
    });
});

$(document).ready(function () {
    $('#carrera-data').DataTable({
        "aProcessing": true,
        "aServerSide": true,
        dom: 'Bfrtip',
        buttons: [
            'copyHtml5',
            'excelHtml5',
            'csvHtml5',
            'pdfHtml5',
            'print',
            'colvis'
        ],
        "ajax": {
            url: "../../controller/carrera.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_tipoCarrera();
    combo_Modalidad();

});

function combo_tipoCarrera() {
    $.post("../../controller/catalogo.php?op=tipoCarrera", function (data) {
        $('#tipo').html(data);
    });
}

function combo_Modalidad() {
    $.post("../../controller/catalogo.php?op=modalidad", function (data) {
        $('#modalidad').html(data);
    });
}


function nuevo() {
    $('#carreradbk').val('');
    $('#descripcion').val('');
    $('#codigo').val('');
    $('#tipo').val('').trigger('change');
    $('#titulo').val('');
    $('#modalidad').val('').trigger('modalidad');
    $('#creacion').val('');
    $('#malla').val('');
    $('#lblTitulo').html('Nuevo Registro');
    $('#formCarrera')[0].reset();
    $('#mantenimiento').modal('show');
}
function guardaryactualizarCarrera(e) {
    e.preventDefault();
    var formData = new FormData($("#formCarrera")[0]);
    $.ajax({
        url: '../../controller/carrera.php?op=guardar',
        type: "POST",
        data: formData,
        contentType: false,
        processData: false,
        success: function (data) {
            $('#carrera-data').DataTable().ajax.reload();
            $('#mantenimiento').modal('hide');
            Swal.fire({
                title: 'Operacion Exitosa',
                text: 'La información se ha guardada satisfactoriamente',
                icon: 'success',
                confirmButtonText: 'Aceptar'
            })
        }
    });
}
function editar(carreradbk) {
    $.post("../../controller/carrera.php?op=consultar_carrera", {carreradbk: carreradbk}, function (data) {
        data = JSON.parse(data);
        $('#carreradbk').val(data.carreradbk);
        $('#descripcion').val(data.descripcion);
        $('#codigo').val(data.codigo);
        $('#tipo').val(data.tipo).trigger("change");
        $('#titulo').val(data.titulo);
        $('#modalidad').val(data.modalidad).trigger("change");
        $('#creacion').val(data.creacion);
        $('#malla').val(data.malla);
    });
    $('#lblTitulo').html('Editar Carrera');
    $('#mantenimiento').modal('show');
}

function creacion(carreradbk) {
    var iframe = document.getElementById("pdf");    
    $.post("../../controller/carrera.php?op=consultar_carrera", {carreradbk: carreradbk}, function (data) {
        data = JSON.parse(data);
        iframe.setAttribute("src", data.creacion);
    });
    $('#visualizar').modal('show');
}

function malla(carreradbk) {
    var iframe = document.getElementById("pdf");    
    $.post("../../controller/carrera.php?op=consultar_carrera", {carreradbk: carreradbk}, function (data) {
        data = JSON.parse(data);
        iframe.setAttribute("src", data.malla);
    });
    $('#visualizar').modal('show');
}

function eliminar(carreradbk) {
    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/carrera.php?op=eliminar_carrera", {carreradbk: carreradbk}, function (data) {
                $('#carrera-data').DataTable().ajax.reload();
                Swal.fire({
                    title: 'Operacion Exitosa',
                    text: 'El registro se elimino correctamente',
                    icon: 'success',
                    confirmButtonText: 'Aceptar'
                })
            });
        }
    });
}

$(".tablas").on("click", ".btnActivarCarrera", function () {
    var carreradbk = $(this).attr("idCarrera");
    var estado = $(this).attr("estadoCarrera");
    var datos = new FormData();
    datos.append("activarId", carreradbk);
    datos.append("activarCarrera", estado);
    $.ajax({
        url: "../../controller/carrera.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('estadoCarrera', "ACTIVO");
    } else {
        $(this).addClass('btn-success');
        $(this).removeClass('btn-danger');
        $(this).html('Activo');
        $(this).attr('estadoCarrera', "INACTIVO");
    }
})