<?php
//include("pre-pagina");
//No hacemos nada si no está  todo correcto
if ($todo_correcto) {
    $_WH = new PlantillaWidget();
    ini_set('include_path', ".." . PATH_SEPARATOR . get_include_path());
    include("comunes/email/emails.php");

    //$nombre_empresa = dame_valor_variable_global("nombre_empresa", "");
    ?>
    <div id="opciones_top">
        <div id="volver"><p><a href="<?= Shop::$configuracion->url; ?>admin" class="back_btn"><span>Volver</span></a></p></div>
    </div>
    <div id="title_panel">
        <h1>Panel de control</h1>
    </div>
    <div id="columna_pedidos">
        <?php
        //Si hemos recibido una referencia, tenemos que insertarla en el pedido
        $codigo_mod_ref = dame_valor_variable_global("codigo_mod_ref", "");
        $referencia = dame_valor_variable_global("referencia", "");
        $filas = array();

        if (($codigo_mod_ref > 0) && ($conexionBD)) {
            $sentencia_sql = "UPDATE mc_pedcli SET referencia = '$referencia' where codigo = $codigo_mod_ref";
            mysqli_query($conexionBD, $sentencia_sql);
        }
        //Vamos a controlar si se quiere que un pedido esté o no enviado
        $referencia_envio = dame_valor_variable_global("referencia_envio", "");
        //Para la modificacion de los avisos y el envío:
        $no_enviado = dame_valor_variable_global("no_enviado", 0);
        $enviado = dame_valor_variable_global("enviado", 0);
        $enviar_aviso = dame_valor_variable_global("enviar_aviso", 0);
        $conf_pedido = dame_valor_variable_global("conf_pedido", 0);
        if ($referencia_envio != "") {
            //Se quiere enviar un email de un pedido o se quiere poner como enviado/no enviado
            if ($no_enviado) {
                //Hay que actualizar el pedido como no enviado
                $sentencia_sql = "UPDATE mc_pedcli SET enviado = 0 where codigo = $referencia_envio";
                mysqli_query($conexionBD, $sentencia_sql);
            }
            if ($enviado) {
                //Hay que actualizar el pedido como no enviado
                $sentencia_sql = "UPDATE mc_pedcli SET enviado = 1 where codigo = $referencia_envio";
                mysqli_query($conexionBD, $sentencia_sql);
            }
            //Queda comprobar si se quiere o no enviar un email
            if ($enviar_aviso) {
                //Vamos a enviar al cliente un aviso de que el pedido está en camino y la referencia del transportista
                /* $sentencia_sql = "SELECT cliente.nombre_legal nombre_cliente, cliente.email email, mc_pedcli.codigo codigo, referencia
                  FROM cliente, mc_pedcli
                  WHERE mc_pedcli.cliente = cliente.codigo
                  AND mc_pedcli.codigo = $referencia_envio"; */
                $sentencia_sql = "SELECT nombre_legal, email, codigo, referencia
					FROM mc_pedcli
					WHERE codigo = $referencia_envio";
                if ($resultado_email = mysqli_query($conexionBD, $sentencia_sql)) {
                    //echo("$sentencia_sql\n<br />");
                    if ($fila_email = mysqli_fetch_array($resultado_email)) {
                        $asunto = Shop::$empresa->nombre . " informa: pedido " . $fila_email["codigo"] . " enviado";
                        $texto = "Hola " . $fila_email["nombre_legal"] . ":<br />
						Le informamos de que su pedido ha sido enviado.<br />
						";
                        $texto .= "El número de envío es el " . $fila_email["referencia"] . "<br />
						";
                        $texto .= 'Puede realizar un seguimiento del mismo haciendo click <a href="http://www.mrw.es/seguimiento_envios/MRW_seguimiento_envios.asp">Aquí</a> e introduciendo el número que le hemos proporcionado<br />';
                        $texto .= "
						Reciba un cordial saludo";
                        $cuerpo = dame_email($asunto, $texto);
                        $destinatario = $fila_email["email"] . "," . $fila_email["nombre_legal"];
                        //echo 'Destinatario: '.$destinatario;
                        envia_email($destinatario, $asunto, $cuerpo);
                    }
                }
            }

            if ($conf_pedido) {
                envia_email_pedido($referencia_envio, "email_pedido");
            }
        }
        //Ahora viene el momento de cargar los pedidos de clientes y dar la posibilidad de marcarlos como enviados o no y de añadirles el código de envialia
        $pagina = dame_valor_variable_global("pagina", 0);
        $sentencia_sql = "SELECT codigo, nombre_legal, direccion, localidad, provincia, telefono, referencia, enviado, pagado
						FROM mc_pedcli
						ORDER BY codigo DESC";

        if ($conexionBD) {
            if ($resultado = mysqli_query($conexionBD, $sentencia_sql)) {
                while ($fila = mysqli_fetch_array($resultado)) {
                    //Vamos a mostrar los datos de cada pedido
                    if ($fila["codigo"] == "") {
                        $fila["codigo"] = "&nbsp;";
                    }
                    $filas[] = new PedidoCliente($fila['codigo'], $fila['pagado']);
                }
            }
        }
        ?>
    </div>
    <div class="container">
        <table class="table table-hover">
            <thead>
                <tr>
                    <th>Codigo</th>
                    <th>Nombre</th>
                    <th>Direccion</th>
                    <th>Localidad</th>
                    <th>Provincia</th>
                    <th>Telefono</th>
                    <th>Referencia</th>
                    <th>Enviado</th>
                    <th>Importe</th>
                    <th>G_Envio</th>
                    <th>G_Total</th>
                    <th>Pagado</th>
                    <th>Notificar</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td>
                        <form class="mod_referencia" method="post">
                            <input type="text" name="referencia" class="input_referencia" value="" />
                            <input type="hidden" name="codigo_mod_ref" value=""  />
                            <input type="submit" class="enviar_ref" value="asignar" />
                        </form>
                    </td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td></td>
                </tr>
            </tbody>
        </table>
        <div class="modal fade bs-example-modal-sm" id="myModal" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel">
            <div class="modal-dialog modal-sm" role="document">
                <div class="modal-content">
                    <div class="modal-header">
                        <h4 class="modal-title" id="myModalLabel">Modificaciones para el cliente: </h4>
                    </div>
                    <div class="modal-body">
                        <form class='datosModal'>
                            <input type="hidden" name="code" value="" />
                            <label>Importe:</label><input type="text" name="importe" class="importe" value="" disabled />€<br/>
                            <label for="g_envio">G_Envio:</label><input type="text" name="g_envio" id="g_envio" class="g_envio" value="" />€<br/>
                            <label>G_Total:</label><input type="text" name="g_total" class="g_total" value="" disabled />€
                        </form>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
                        <button type="button" class="btn btn-primary">Guardar Cambios</button>
                    </div>
                </div>
            </div>
        </div>


        <script type="text/javascript" src="js/bootstrap.min.js"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                var postData = {
                    and: {
                        codigo: ' > 1'
                    }};
                var dataString = JSON.stringify(postData);
                console.log(dataString);
                $.ajax({
                    type: 'POST',
                    dataType: 'json',
                    url: "<?= Shop::$configuracion->url; ?>comunes/consultas/tablasJson/getPedidoClienteJson.php",
                    data: dataString,
                    contentType: 'application/json; charset=utf-8',
                    //cache: false,
                    success: function (data) {
                        cargaAsincronca(data.pedidos);
                        console.log(data.pedidos);
                    },
                    error: function (e) {
                        console.log(e.message);
                    }
                });

            });
            function cargaAsincronca(data) {
                crearTabla(data);
                $('.modificar').on('click', function () {
                    /* Cogo el codigo del pedido y lo almaceno en code. */
                    var code = $(this).data('codigo');

                    /* almaceno en estas variables el importe, los gastos de envio y el importe total a pagar (importe + gastos de envio). */
                    var nombre = 'nombre_' + $(this).data('codigo');
                    nombre = $('td[class=' + nombre).text();

                    var importe = 'importe_' + $(this).data('codigo');
                    importe = $('td[class=' + importe).text();

                    var envio = 'envio_' + $(this).data('codigo');
                    envio = $('td[class=' + envio).text();

                    var total = 'total_' + $(this).data('codigo');
                    total = $('td[class=' + total).text();
                    cargarDatos(code, nombre, importe, envio, total);

                });

                function cargarDatos(codigo, nombre, importe, envio, total) {
                    $('#myModal [name^="importe"').val(importe);
                    $('#myModal [name^="g_envio"').val(envio);
                    $('#myModal [name^="g_total"').val(total);
                    $('#myModal [name^="code"').val(codigo);
                    $('#myModalLabel').html('Modificaciones para el cliente: <b>' + nombre + '</b>');
                }

                $('.btn-primary').on('click', function () {
                    var envio = $('#myModal [name^="g_envio"').val();
                    var code = $('#myModal [name^="code"').val();
                    var postData = {
                        codigo: code,
                        g_envio: envio
                    };

                    var dataString = JSON.stringify(postData);
                    console.log(dataString);
                    $.ajax({
                        type: 'POST',
                        dataType: 'json',
                        url: "<?= Shop::$configuracion->url; ?>comunes/consultas/actualizarPedidoCliente.php",
                        data: dataString,
                        contentType: 'application/json; charset=utf-8',
                        //cache: false,
                        success: function (data) {
                            console.log(data);
                        },
                        error: function (e) {
                            console.log(e.message);
                        }
                    });
                    var nuevoGasto = (parseFloat($('#myModal [name^="g_envio"').val())).toFixed(2);
                    var nuevoImporteTotal = (parseFloat($('#myModal [name^="g_total"').val())).toFixed(2);
                    var code = $('#myModal [name^="code"').val();

                    $('td[class=envio_' + code).text(nuevoGasto);
                    $('td[class=total_' + code).text(nuevoImporteTotal);
                    $('#myModal').modal('hide');

                });

                $('input[class=g_envio]').on('keyup', function () {
                    var importe = parseFloat($('.importe').val());
                    var envio = parseFloat($('.g_envio').val());

                    if (isNaN(envio)) {
                        var suma = importe + 0;
                    } else {
                        var suma = importe + envio;
                    }
                    $('.g_total').val(suma.toFixed(2));
                });
                function crearTabla(vector) {
                    $('tbody').children('tr').hide();

                    for (var i = 0; i < vector.length; i++) {

                        $('tbody').children('tr').first().clone().addClass('mostrar').appendTo('tbody');
                        $('tbody').children('tr:last-child').children('td').first().text(vector[i].codigo);
                        $('tbody').children('tr:last-child').children('td').eq(1).addClass('nombre_' + vector[i].codigo).text(vector[i].nombre_legal);
                        $('tbody').children('tr:last-child').children('td').eq(2).text(vector[i].direccion);
                        $('tbody').children('tr:last-child').children('td').eq(3).text(vector[i].localidad);
                        $('tbody').children('tr:last-child').children('td').eq(4).text(vector[i].provincia);
                        $('tbody').children('tr:last-child').children('td').eq(5).text(vector[i].telefono);
                        /* Para que aparezca el formulario de referencia. */
                        $('tbody').children('tr:last-child').children('td').eq(6).children('form').addClass('referencia_' + vector[i].codigo);
                        $('.referencia_' + vector[i].codigo).children('input').eq(0).val(vector[i].referencia);
                        $('.referencia_' + vector[i].codigo).children('input').eq(1).val(vector[i].codigo);

                        $('tbody').children('tr:last-child').children('td').eq(7).children('form').addClass('mod_envio_' + vector[i].codigo);

                        if (vector[i].enviado == 1) {
                            $('tbody').children('tr:last-child').children('td').eq(7).append('<form method="post" class="mod_envio mod_envio_' + vector[i].codigo + '"></form>');
                            $('.mod_envio_' + vector[i].codigo).append('<fieldset class="pedido_enviado"></fieldset>');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_enviado').append('<label>S&iacute;</label>');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_enviado').append('<input type="hidden" name="no_enviado" value="1" />');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_enviado').append('<input type="hidden" name="referencia_envio" value="' + vector[i].codigo + '"  />');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_enviado').append('<input type="submit" class="pedido_no_enviado" value="NO enviado" />');


                            $('tbody').children('tr:last-child').children('td').eq(7).append('<form method="post" class="enviar_aviso enviar_aviso_' + vector[i].codigo + '"></form>');
                            $('.enviar_aviso_' + vector[i].codigo).append('<input type="hidden" name="enviar_aviso" value="1" />');
                            $('.enviar_aviso_' + vector[i].codigo).append('<input type="hidden" name="referencia_envio" value="' + vector[i].codigo + '"  />');
                            $('.enviar_aviso_' + vector[i].codigo).append('<input type="submit" class="enviar_datos_pedido" value="NO enviado" />');


                            $('tbody').children('tr:last-child').children('td').eq(7).append('<form method="post" class="conf_pedido conf_pedido_' + vector[i].codigo + '"></form>');
                            $('.conf_pedido_' + vector[i].codigo).append('<input type="hidden" name="conf_pedido" value="1" />');
                            $('.conf_pedido_' + vector[i].codigo).append('<input type="hidden" name="referencia_envio" value="' + vector[i].codigo + '"  />');
                            $('.conf_pedido_' + vector[i].codigo).append('<input type="submit" class="enviar_conf" value="Confirmar envio" />');
                        } else {
                            $('tbody').children('tr:last-child').children('td').eq(7).append('<form method="post" class="mod_envio mod_envio_' + vector[i].codigo + '"></form>');
                            $('.mod_envio_' + vector[i].codigo).append('<fieldset class="pedido_no_enviado"></fieldset>');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_no_enviado').append(' <label>No</label>');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_no_enviado').append('<input type="hidden" name="enviado" value="1" />');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_no_enviado').append('<input type="hidden" name="referencia_envio" value="' + vector[i].codigo + '"  />');
                            $('.mod_envio_' + vector[i].codigo).children('.pedido_no_enviado').append('<input type="submit" class="pedido_enviado" value="enviado" />');
                        }


                        $('tbody').children('tr:last-child').children('td').eq(8).addClass('importe_' + vector[i].codigo).text((parseFloat(vector[i].importe_total)).toFixed(2));
                        $('tbody').children('tr:last-child').children('td').eq(9).addClass('envio_' + vector[i].codigo).text((parseFloat(vector[i].g_envio)).toFixed(2));
                        $('tbody').children('tr:last-child').children('td').eq(10).addClass('total_' + vector[i].codigo).text((parseFloat(vector[i].importe_total) + (parseFloat(vector[i].g_envio))).toFixed(2));

                        if (vector[i].pagado == 1) {
                            vector[i].pagado = 'SI';
                        } else {
                            vector[i].pagado = 'NO';
                        }
                        $('tbody').children('tr:last-child').children('td').eq(11).text(vector[i].pagado);
                        $('tbody').children('tr:last-child').children('td').eq(12).html('<button type="button" class="btn modificar" data-toggle="modal" data-codigo="' + vector[i].codigo + '" data-target="#myModal">Modificar</button>');
                        //$('.mostrar').children('td').
                    }

                    $('.mostrar').show();
                }
            }
        </script>
        <?php
    }

//include("post-pagina.php");
    ?>