<?php $__env->startSection('scripts'); ?>
    <script>
   
        $(document).ready(function(){

        var storage_id = "calidad.<?php echo e($id); ?>";
        var jsonData = {};
        if  (localStorage.getItem(storage_id) != null) {
            jsonData = JSON.parse(localStorage.getItem(storage_id));
        } else {
            jsonData.nreguist        = <?php echo e($formula->NREGUIST); ?>;
            jsonData.IDFORMULA       = <?php echo e($planificacion->ID); ?>;
            jsonData.nombre_producto = '<?php echo e($formula->NOMBRE); ?>';
            jsonData.observacion     = "<?php echo e(preg_replace( "/(\r|\n|\r\n)+/", "\\r\\n",$formula->OBSERVACION)); ?>";
            jsonData.volumen         = <?php echo e($formula->VOLUMEN); ?>;
            jsonData.vida_util       = <?php echo e($formula->VIDA_UTIL); ?>;
            jsonData.precio_venta    = <?php echo e($formula->PRECVTA); ?>;
            jsonData.NROVALE         = <?php echo e($planificacion->NROVALE); ?>;
            jsonData.NROGR           = <?php echo e($planificacion->NROGR); ?>;

            /* Si existe o no número de documento */
			var numero       = jsonData.NROVALE;
            var nroguia      = jsonData.NROGR; 
            $('#nrovale').val(numero);
			if (numero == 0)
            {
                $('#nrovale').attr('type', 'password');
			}
            else 
            {
                $('#nrovale').attr('type', 'text'); 
			}
            $('#nroguia').val(nroguia);
			if (nroguia == 0)
            {
                $('#nroguia').attr('type', 'password');
			}
            else 
            {
                $('#nroguia').attr('type', 'text'); 
			}

            var cantidadItems = 0;

            /* Recorre arreglo de materias primas */
            <?php foreach($detalles_formula as $index => $df): ?>
                 var pregunta = '<?php echo e($df->PREGUNTA); ?>';
                 if (pregunta != '')
                 {
                    cantidadItems = cantidadItems + 1;
                 }
            <?php endforeach; ?>

            /* Mensaje de error */
            if (cantidadItems < 1)
            {
                var mensaje = {'content' : 'Este producto no tiene creadas las preguntas de control de calidad, debe crearlas !!', "type" : "error", "timeout" : 100000};
                notification(mensaje, "big");
                localStorage.removeItem(storage_id);
                window.location = "<?php echo url('calidad/index'); ?>";
            }
            else
            {
               /* Recorre arreglo de materias primas */
               <?php foreach($detalles_formula as $index => $df): ?>
                  if(!jsonData.hasOwnProperty('materias_primas')) {
                      jsonData.materias_primas = [];
                  }
                  jsonData.materias_primas.push({
                      ID: '<?php echo e($df->ID); ?>',
                      PREGUNTA:'<?php echo e($df->PREGUNTA); ?>',
                      RESPUESTA:'<?php echo e($df->RESPUESTA); ?>',
                  });
               <?php endforeach; ?>
            }
        }

        poblar_formula(jsonData);

            $(document).on('click', '.eliminar',function(e) {
                var el = $(this).parents('tr').eq(0);
                eliminar_item($(this));
            });

            setup_select2('#producto_id', "<?php echo url('calidad/select_productos'); ?>", 'Seleccionar producto');

            // Cuando cambia la cantidad
            $(document).on('change', 'input[name*="RESPUESTA"]', function() {
			    /* Ve cual es el indice de la línea */			
                var itemString   = $(this).attr("name");
                var id_mp        = itemString.replace("RESPUESTA", "");
                var RESPUESTA    = $('input[name=RESPUESTA'+id_mp+']').val();

                /* Guarda en la memoria */
                jsonData.materias_primas[id_mp].RESPUESTA = RESPUESTA;

                //Almacena nombre producto en localStorage
                localStorage.setItem(storage_id, JSON.stringify(jsonData));
            });

            $('#form_guardar').on('submit', function() {
                var nrovale = $('#nrovale').val();
                var nroguia = $('#nroguia').val();

                var id      = <?php echo $id; ?>


                $.get("<?php echo url('calidad/editar_calidad'); ?>", { id: id, nrovale: nrovale, nroguia: nroguia, data: JSON.stringify(jsonData)}, function(response) {
					/* Limpia variables si se grabó bien */
                    jsonData = {};
                    localStorage.removeItem(storage_id);
					/* Mensaje */
                    success_notification(response);
					/* Vuelve a programa original */
                    window.location = "<?php echo url('calidad'); ?>";

                }, 'json').fail(function(response) {
                    if(response.status != 409) {
                        show_form_errors(response, $('#formulario'));
                        if($('#datos_formula').find('.has-error').length > 0) $('a[href="#datos_formula"]').tab('show');
                        else if($('#control_calidad').find('.has-error').length > 0) $('a[href="#control_calidad"]').tab('show');
                    } else {
                        error_notification(response);
                    }
                });
                return false;
            });
            /* Botón Cancelar */
            $('#limpiar_formula').on('click', function() 
            {
                /* Confirma Cancelar */
                $.confirm({
                    title:"Confirmación para salir del control de calidad",
                    text: "<h1><b>¿Desea salir sin grabar el control de calidad?</b></h1>",
                    modalOptionsBackdrop: 'static',
                    confirm: function() {
                        console.log(JSON.stringify(jsonData));
                        clean_form_errors($('#formulario'));

                        jsonData = {};
                        localStorage.removeItem(storage_id);
                        window.location = "<?php echo url('calidad/index'); ?>";

                        return false;
                    },
                    cancel: function() {
                        return false;
                    },
                    confirmButton: "Deseo Salir",
                    cancelButton: "No",
                    confirmButtonClass: 'btn-success',
                    cancelButtonClass: 'btn-danger'
                });
            });



        });

        //Retorna la cantidad de filas en tabla
        function cantidad_items(nom_item) {
            return $(nom_item).length
        }
        //Retorna el siguiente indice para la creacion de una nueva fila en la tabla
        function next_index(nom_item) {
            var cant = cantidad_items(nom_item);
            if(cant == 0) return 1;
            return $(nom_item).map(function(){return $(this).data('index');}).get().sort(function(a, b){return b-a})[0] + 1;
        }
        //Agrega una nueva fila en la tabla materias primas
        function agregar_item(nombre, lote, nreguist, cantidad) {
            var order = cantidad_items('.item-formula') + 1;
            var index = next_index('.item-formula');
            var id_item = 'item-' + index;
            var template = '<tr id="' + index  + '" class="item-formula" data-index="' + index + '">'+
                    '<td><input class="form-control" name="orden" type="text" value="' + order + '" readonly></td>'+
                    '<td><select id="materia_prima_' + index + '" name="MATERIA_PRIMA.' + index + '.NREGUIST_MATERIA_PRIMA" disabled></select></td>'+
                    '<td><input class="form-control" name="MATERIA_PRIMA.' + index + '.LOTE" type="text" value="' + lote + '" disabled></td>'+
                    '<td><input class="form-control" name="CANTIDAD' + index + '" id="CANTIDAD' + index + '" type="text" value="' + cantidad + '"></td>'+
                    '<td>' +
                    '<button class="btn btn-danger eliminar" type="button"><i class="fa fa-trash"></i></button>&nbsp;' +
                    '</td>'+
                    '</tr>';
            $('#sin-items').addClass('hide');
            $(template).appendTo('#contenido_formula');
            setup_select2('#materia_prima_' + index, "<?php echo url('formulas/select_materias_primas'); ?>", 'Buscar materia prima');
            if(nombre != '') {
                $('#materia_prima_' + index).html('<option value="' + nreguist + '">' + nombre + '</option>').trigger('change');
            }

            //Actualizamos variable jsonData
            if(jsonData.hasOwnProperty('materias_primas') == false) {
                jsonData.materias_primas = [];
            }

            /* Agrega resultados a la matriz */
            jsonData.materias_primas.push({
                ID: index,
                PREGUNTA: PREGUNTA,
                RESPUESTA: RESPUESTA,
            });
            /* Actualiza los valores */
            localStorage.setItem(storage_id, JSON.stringify(jsonData));
        }

        //Agrega una nueva fila en la tabla desde jsonData
        function agregar_item_jsonData(i, mp) {
            var id        = i;
            var id_item   = 'item-' + id;
            var pregunta  = mp.hasOwnProperty('PREGUNTA')?mp.PREGUNTA:'';
            var respuesta = mp.hasOwnProperty('RESPUESTA')?mp.RESPUESTA:'';

            var template = '<tr id="' + id  + '" class="item-formula" data-index="' + id + '">'+
                    '<td><input class="form-control" name="PREGUNTA'  + id +'" type="text" value="' + pregunta + '" disabled></td>'+
                    '<td><input class="form-control" name="RESPUESTA' + id +'" id="RESPUESTA' + id +'" type="text" value="' + respuesta + '"></td>'+
                    '</tr>';
            $('#sin-items').addClass('hide');
            $(template).appendTo('#contenido_formula');

        }

        //pobla los campos desde jsonData en caso de que hayan datos guardados en localStorage
        function poblar_formula(data) {
            if(!$.isEmptyObject(data)) {
                if(data.hasOwnProperty('nombre_producto')) {
                    var option = '<option value="' + data.nreguist + '">' + data.nombre_producto + '</option>';
                    $('#producto_id').html(option).trigger('change');

                }
                if(data.hasOwnProperty('precio_venta')) {
                    $('#precio_venta').val(data.precio_venta);
                }
                if(data.hasOwnProperty('volumen')) {
                    $('#volumen_formula').val(data.volumen);
                }
                if(data.hasOwnProperty('materias_primas') && data.materias_primas.length > 0) {
                    data.materias_primas.sort(function (a, b) {
                        return a.orden - b.orden;
                    });
                    $.each(data.materias_primas, function(i, v) {
                        agregar_item_jsonData(i, v);
                    })
                }
            }
        }

    </script>
<?php $__env->stopSection(); ?>

<?php $__env->startSection('content'); ?>

    <div class="col-sm-12 col-md-12 col-lg-12">
        <!-- product -->
        <div id="formulario" class="product-content product-wrap clearfix product-deatil">
            <div class="col-sm-12">
                <h1 class="page-title">
                    Respuesta cuestionario control de calidad
                </h1>
            </div>
            <ul class="nav nav-tabs" role="tablist">
                <li role="presentation" class="active">
                    <a href="#datos_formula" aria-controls="datos_formula" role="tab" data-toggle="tab">Datos Fórmula</a>
                </li>
            </ul>
            <br><br>
            <div class="tab-content">
                <div role="tabpanel" class="tab-pane active" id="datos_formula">
                    <div class="row">
                        <div class="col-md-4">
                            <div id="select_producto" class="row">
                                <div class="form-group col-sm-12">
                                    <label for="producto_id" class="control-label">Nombre del Producto</label>
                                    <?php echo Form::select('NREGUIST_PROD_TERMINADO', [], NULL, ['id' => 'producto_id', 'class' => 'form-control', 'disabled' => true]); ?>

                                </div>
                            </div>
                        </div>
                        <div class="col-md-2">
                            <div class="form-group" style='display: none;'>
                                <label for="" class="control-label">Nro.Vale</label>
                                <?php echo Form::hidden('nrovale', NULL, ['id' => 'nrovale', 'class' => 'form-control', 'disabled' => true]); ?>

                            </div>
                            <div class="form-group">
                                <label for="" class="control-label">Nro.Guia Recepción</label>
                                <?php echo Form::hidden('nroguia', NULL, ['id' => 'nroguia', 'class' => 'form-control', 'disabled' => true]); ?>

                            </div>
                        </div>
                        <div class="col-md-2">
                            <div class="form-group">
                                <label for="" class="control-label">Vol/(Lts)</label>
                                <?php echo Form::text('VOLUMEN', NULL, ['id' => 'volumen_formula', 'class' => 'form-control', 'readonly' => true]); ?>

                            </div>
                        </div>
                        <div class="col-md-2">
                            <div class="form-group">
                                <label for="" class="control-label">Vida útil</label>
                                <?php echo Form::text('VIDA_UTIL', NULL, ['id' => 'vida_util', 'class' => 'form-control', 'readonly' => true]); ?>

                            </div>
                        </div>
                        <div class="col-md-2">
                            <div class="form-group">
                                <label for="" class="control-label">Precio Venta Unidad</label>
                                <?php echo Form::text('PRECVTA', NULL, ['id' => 'precio_venta', 'class' => 'form-control', 'disabled' => true]); ?>

                            </div>
                        </div>
                    </div>
                    <br>
                    <div class="table-responsive">
                        <table class="table table-bordered">
                            <thead>
                                <tr>
                                    <th class="col-sm-6">Pregunta</th>
                                    <th class="col-sm-6">Respuesta</th>
                                </tr>
                            </thead>
                            <tbody id="contenido_formula">
                                <tr id="sin-items">
                                    <td colspan="7" class="text-align-center">No hay registros</td>
                                </tr>
                            </tbody>
                        </table>
                    </div>
                </div>
            </div>
            <br>
            <div class="row pull-right">
                <div class="col-sm-12">
                    <form id="form_guardar">
                        <button type="submit" class="btn btn-success">Guardar</button>
                        <button type="button" class="btn btn-danger" id="limpiar_formula">Cancelar</button>
                    </form>
                </div>
            </div>
        </div>
        <!-- end product -->
    </div>

<?php $__env->stopSection(); ?>
<?php echo $__env->make('layouts.default', array_except(get_defined_vars(), array('__data', '__path')))->render(); ?>