<div class="content-wrapper">
    <section class="content-header">
        <h1>Motivos de Ajuste</h1>
    </section>

    <section class="content">
        <div class="row">
            <div class="col-md-8">

                <?php if(tiene_permiso('motivo_ajuste_crear')): ?>
                    <button type="button" class="btn btn-success" id="btnNuevo">
                        <i class="fa fa-plus"></i> Nuevo Motivo
                    </button>
                <?php endif; ?>

                <br><br>

                <div class="panel panel-primary">
                    <div class="panel-heading"><strong>Listado de Motivos de Ajuste</strong></div>
                    <div class="panel-body">
                        <div class="table-responsive">
                            <table id="tablaMotivos" class="table table-bordered table-hover table-striped" width="100%">
                                <thead>
                                    <tr>
                                        <th>ID</th>
                                        <th>Nombre</th>
                                        <th>Estado</th>
                                        <th style="width:100px;">Acciones</th>
                                    </tr>
                                </thead>
                            </table>
                        </div>
                    </div>
                </div>

            </div>
        </div>
    </section>
</div>

<!-- MODAL -->
<div class="modal fade" id="modalMotivo" tabindex="-1" role="dialog">
    <div class="modal-dialog">
        <div class="modal-content">
            <form id="formMotivo">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal">&times;</button>
                    <h4 class="modal-title" id="tituloModal">Nuevo Motivo de Ajuste</h4>
                </div>
                <div class="modal-body">
                    <input type="hidden" id="item_id">

                    <div class="form-group">
                        <label>Nombre <span class="text-danger">*</span></label>
                        <input type="text" id="nombre" class="form-control" maxlength="150" required>
                    </div>
                </div>
                <div class="modal-footer">
                    <button type="submit" class="btn btn-primary">
                        <i class="fa fa-save"></i> Guardar
                    </button>
                    <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
                </div>
            </form>
        </div>
    </div>
</div>

<script>
window.addEventListener('load', function () {

    var tabla = $('#tablaMotivos').DataTable({
        ajax: {
            url: '<?php echo base_url("index.php/mantenimiento/motivo_ajuste/listar"); ?>',
            type: 'GET',
            dataSrc: 'data'
        },
        language: {
            lengthMenu:   "Mostrar _MENU_ registros",
            zeroRecords:  "No se encontraron resultados",
            info:         "Mostrando _START_ al _END_ de _TOTAL_",
            infoEmpty:    "Sin registros",
            infoFiltered: "(filtrado de _MAX_ registros)",
            search:       "Buscar:",
            paginate: { first: "Primero", last: "Último", next: "Siguiente", previous: "Anterior" }
        },
        pageLength: 10,
        order: [[0, 'desc']]
    });

    $('#btnNuevo').on('click', function() {
        $('#formMotivo')[0].reset();
        $('#item_id').val('');
        $('#tituloModal').text('Nuevo Motivo de Ajuste');
        $('#modalMotivo').modal('show');
    });

    $('#formMotivo').on('submit', function(e) {
        e.preventDefault();

        var id  = $('#item_id').val();
        var url = id
            ? '<?php echo base_url("index.php/mantenimiento/motivo_ajuste/actualizar/"); ?>' + id
            : '<?php echo base_url("index.php/mantenimiento/motivo_ajuste/guardar"); ?>';

        $.ajax({
            url: url,
            type: 'POST',
            data: { nombre: $('#nombre').val() },
            dataType: 'json',
            success: function(resp) {
                if (resp.status) {
                    $('#modalMotivo').modal('hide');
                    tabla.ajax.reload(null, false);
                    Swal.fire({ icon: 'success', title: 'Correcto', text: resp.message, timer: 1800, showConfirmButton: false });
                } else {
                    Swal.fire({ icon: 'error', title: 'Error', text: resp.message });
                }
            }
        });
    });

    $(document).on('click', '.btn-editar', function() {
        var id = $(this).data('id');
        $.ajax({
            url: '<?php echo base_url("index.php/mantenimiento/motivo_ajuste/obtener/"); ?>' + id,
            type: 'GET',
            dataType: 'json',
            success: function(resp) {
                if (resp.status) {
                    $('#item_id').val(resp.data.id);
                    $('#nombre').val(resp.data.nombre);
                    $('#tipo').val(resp.data.tipo);
                    $('#tituloModal').text('Editar Motivo de Ajuste');
                    $('#modalMotivo').modal('show');
                }
            }
        });
    });

    $(document).on('click', '.btn-estado', function() {
        var id     = $(this).data('id');
        var accion = $(this).data('accion');
        var nombre = $(this).data('nombre');

        Swal.fire({
            title: '¿Estás seguro?',
            text: 'Vas a ' + accion + ': ' + nombre,
            icon: 'warning',
            showCancelButton: true,
            confirmButtonText: 'Sí, continuar',
            cancelButtonText: 'Cancelar'
        }).then(function(result) {
            if (result.isConfirmed) {
                $.ajax({
                    url: '<?php echo base_url("index.php/mantenimiento/motivo_ajuste/estado/"); ?>' + id,
                    type: 'POST',
                    dataType: 'json',
                    success: function(resp) {
                        if (resp.status) {
                            tabla.ajax.reload(null, false);
                            Swal.fire({ icon: 'success', title: 'Correcto', text: resp.message, timer: 1800, showConfirmButton: false });
                        } else {
                            Swal.fire({ icon: 'error', title: 'Error', text: resp.message });
                        }
                    }
                });
            }
        });
    });

});
</script>
