const v_cantidad = 15;

$(document).ready(function() {
    cargarCabecera();
});


function cargarCabecera() {
    $.ajax({
        url: 'clientesProveedoresCabeceraCargar-ajax.php',
        success: function(data) {
            $("#tableContent").html(data).fadeIn('slow');
            actualizarInformacion()
        },
        error: function(msg) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        },
        complete: function() {
        }
    })
}

function limpiarInformacion() {
    $.ajax( {
        type: 'post',
        dataType: "json",
        url: 'clientesProveedoresFiltroLimpiar-ajax.php',
        success: function( msg ) {
            if ( msg.sesion ) {
                cerrar_sesion();
            } else if ( msg.success ) {
                $('#chb_filtroCliente').prop('checked', false);
                $('#chb_filtroProveedorSils').prop('checked', false);
                $('#chb_filtroProveedorCliente').prop('checked', false);
                $( '#cmb_filtroEstado' ).val( '' );
                $( '#txt_filtroRut' ).val( '' );
                $( '#txt_filtroRazonSocial' ).val( '' );
                $( '#cmb_filtroEstado' ).focus();
                actualizarInformacion();
            }
        },
        error: function( msg ) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        }
    } );
}

function aplicarFiltro() {
    var v_cliente               = $('#chb_filtroCliente').prop('checked');
    var v_proveedorSils         = $('#chb_filtroProveedorSils').prop('checked');
    var v_proveedorCliente      = $('#chb_filtroProveedorCliente').prop('checked');
    var v_estado                = $('#cmb_filtroEstado' ).val();
    var v_rut                   = $('#txt_filtroRut' ).val();
    var v_razonSocial           = $('#txt_filtroRazonSocial' ).val();

    $.ajax( {
        type: 'post',
        dataType: "json",
        url: 'clientesProveedoresFiltroCargar-ajax.php',
        data: {
            cliente                 : v_cliente,
            proveedorSils           : v_proveedorSils,
            proveedorCliente        : v_proveedorCliente,
            estado                  : v_estado,
            rut                     : v_rut,
            razonSocial             : v_razonSocial
        },
        success: function( msg ) {
            if ( msg.sesion ) {
                cerrar_sesion();
            } else if ( msg.success ) {
                actualizarInformacion();
            }
        },
        error: function( msg ) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        }
    } );
}

function actualizarInformacion() {
    cargarInformacion( 0, v_cantidad );
}

function cargarInformacion( p_page, p_quantity ) {

    $.ajax( {
        type: 'post',
        url: 'clientesProveedoresRecuperarRegistros-ajax.php',
        data: {
            page        : p_page,
            quantity    : p_quantity
        },
        beforeSend: function() {
            mostrar_blockUI();
        },
        success: function( msg ) {
            $( '#div_informacion' ).html( msg );
        },
        error: function( msg ) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        },
        complete: function() {
            ocultar_blockUI();
        }
    } );
}

function solicitaPersonaVerificar(par1, par2) {
    $.ajax({
        type: 'post',
        url: 'clientesProveedoresVerificarRecuperar-ajax.php',
        data: {
            par1: par1,
            par2: par2
        },
        success: function(data) {
            $("#div_modal_clienteProveedorVerificar").html(data).fadeIn('slow');
            $('#md_modal_clienteProveedorVerificar').modal('show');
        }
    })

}

function solicitaPersonaRecuperar(par1, par2) {
    $.ajax({
        type: 'post',
        url: 'clientesProveedoresRecuperar-ajax.php',
        data: {
            par1: par1
        },
        success: function(data) {
            $("#div_modal_clienteProveedor").html(data).fadeIn('slow');
            rutDarFormato();
            $('#md_modal_clienteProveedor').modal('show');
        }
    })

}

function guardarClienteProveedor() {
    $.ajax({
        type: 'post',
        url: 'clientesProveedoresGuardar-ajax.php',
        dataType: 'json',
        beforeSend: function() {
            mostrar_blockUI();
        },
        async: false,
        data: $("#frm_clienteProveedor").serialize(),
        success: function(msg) {
            if (msg.success) {
                $('#md_modal_clienteProveedor').modal('hide');
                modalMensajeMostrar( 'Guardar cliente/proveedor', msg.mensaje, actualizarInformacion);
            } else {
                $('#md_modal_clienteProveedor').modal('hide');
                modalMensajeMostrar( 'Guardar cliente/proveedor', msg.mensaje);
            }
        },
        error: function(msg) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        },
        complete: function() {
            ocultar_blockUI();
        }
    });

}

function guardarClienteProveedorVerificar() {
    $.ajax({
        type: 'post',
        url: 'clientesProveedoresVerificarGuardar-ajax.php',
        dataType: 'json',
        beforeSend: function() {
            $('#md_modal_clienteProveedorVerificar').modal('hide');
            mostrar_blockUI();
        },
        data: $("#frm_clienteProveedorVerificar").serialize(),
        success: function(msg) {
            if (msg.success) {
                $('#md_modal_clienteProveedorVerificar').modal('hide');
                modalMensajeMostrar( 'Guardar cliente/proveedor', msg.mensaje, actualizarInformacion);
            } else {
                modalMensajeMostrar( 'Guardar cliente/proveedor', msg.mensaje);
            }
        },
        error: function(msg) {
            modalMensajeMostrar( 'Error', 'No se pudo cargar la información' );
        },
        complete: function() {
            ocultar_blockUI();
        }
    });

}

function clienteProveedorEliminarConfirmar(par1, par2) {

    modalConfirmarMostrar('Eliminación de un cliente y/o provedor', '¿Está seguro de eliminar al cliente y/o proveedor <b>' + par2 + '</b>?', 
                            clienteProveedorEliminar, par1, 'Eliminar', 'picons-thin-icon-thin-0018_office_trash_bin');

}

function clienteProveedorEliminar() {
    var v_par1 = $('#md_modal_confirmar_txt_id').val();
    $.ajax({
        type: 'post',
        url: 'clientesProveedoresEliminar-ajax.php',
        data: {
            par1: v_par1
        },
        dataType: 'json',
        beforeSend: function() {
            mostrar_blockUI();
        },
        success: function(msg) {
            if (msg.success) {
                $('#md_modal_confirmar').modal('hide');
                modalMensajeMostrar( 'Eliminación de un cliente y/o provedor', msg.mensaje, actualizarInformacion);
            } else {
                $('#md_modal_confirmar_lbl_mensaje').text(msg.mensaje);
            }
        },
        error: function(msg) {
            $('#md_modal_confirmar_lbl_mensaje').text('No se pudo eliminar al cliente y/o provedor');
        },
        complete: function() {
            ocultar_blockUI();			
        }

    });
}