<?= $this->include('themes/_commonPartialsBs/datatables') ?>
<?= $this->include("themes/_commonPartialsBs/select2bs5") ?>
<?= $this->include("themes/_commonPartialsBs/sweetalert") ?>
<?= $this->extend('themes/vuexy/main/defaultlayout') ?>


<?= $this->section("content") ?>

<div id="mainContainer" class="row">
    <div class="col-12">
        <h3 class="card-title"><?= $boxTitle ?? $pageTitle ?></h3>
        <form id="presupuestoForm" class="card-body" method="post" action="<?= $formAction ?>">
            
            <?= csrf_field() ?>

            <?= view("themes/_commonPartialsBs/_alertBoxes") ?>
            <?= view("themes/vuexy/form/presupuestos/cliente/loader") ?>
            
            <?= !empty($validation->getErrors()) ? $validation->listErrors("bootstrap_style") : "" ?>
            <input type="hidden" name="tipo_impresion_id" id="tipo_impresion_id" class="form-control"
                   value="<?= $tipo_impresion_id ?>"></input>
            <input type="hidden" name="lomo" id="lomo" class="form-control" value=""></input>       
            <input type="hidden" name="lomo_cubierta" id="lomo_cubierta" class="form-control" value=""></input>
            <input type="hidden" name="lomo_sobrecubierta" id="lomo_sobrecubierta" class="form-control" value=""></input>
            <input type="hidden" name="isCosido" id="isCosido" class="form-control"
                   value="<?= $isCosido ?>"></input>
            
            <input type="hidden" name="presupuesto_id" id="presupuesto_id" class="form-control"
                   value="<?= $presupuestoEntity->id ?>"></input>
            
            <input type="hidden" name="POD" id="POD" class="form-control"
                   value="<?= $POD ?>"></input>

            <?php if (isset($orden__id) || isset($pedido_id)): ?>
                <div class="row mt-1 justify-content-end">
                    <?php if (isset($pedido_id)): ?>
                        <div class="col-auto">
                            <div class="btn mt-3 btn-warning waves-effect waves-light ml-2"
                                onclick="window.location.href='<?= route_to("editarPedido", $pedido_id) ?>'" >
                                <span class="align-middle d-sm-inline-block d-none me-sm-1"><?= lang('Pedidos.pedido') ?></span>
                                <i class="ti ti-file-description ti-xs"></i>
                            </div>
                        </div>
                    <?php endif; ?>
                    <?php if (isset($orden_id)): ?>
                        <div class="col-auto">
                            <div class="btn mt-3 btn-warning waves-effect waves-light ml-2"
                                onclick="window.location.href='<?= route_to("viewOrdenTrabajoEdit", $orden_id) ?>'" >
                                <span class="align-middle d-sm-inline-block d-none me-sm-1">Orden</span>
                                <i class="ti ti-building-factory-2 ti-xs"></i>
                            </div>
                        </div>
                    <?php endif; ?>
                </div>
            <?php endif; ?>
            <?= view("themes/vuexy/form/presupuestos/admin/_datosPresupuestoItems") ?>
            <?= view("themes/vuexy/form/presupuestos/admin/_datosLibroItems") ?>
            <?php if (str_contains($formAction, 'edit')): ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_datosPresupuestoClienteItems") ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems") ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_previewItems") ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_datosServiciosItems") ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_datosEnvios") ?>
                <?= view("themes/vuexy/form/presupuestos/admin/_comentariosItems") ?>
                <?= view("themes/vuexy/components/chat_internal_presupuesto",data:["modelId" => $presupuestoId,"type" => "presupuesto"]) ?>
                <?php if ($presupuestoEntity->estado_id == 2) : ?>
                    <?= view("themes/vuexy/components/dropzone",data: ['id' => 'dropzone-presupuesto-admin-files','modelId' => $presupuestoId]) ?>
                    <?php endif ?>
                <div class="container">
                    <div class="row px-0">
                        <div class="col-xl-4" style="padding-left: 0;">
                            <?= view("themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems") ?>
                        </div>
                        <div class="col-xl-8" style="padding-right: 0;">
                            <?= view("themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems") ?>
                            <?= view("themes/vuexy/form/presupuestos/admin/_resumenCreditoItems") ?>
                        </div>
                    </div>
                </div>    
            <?php else: ?> 
                <input type="hidden" name="total_presupuesto" id="total_presupuesto" class="form-control"
                       value="0.0"></input>
            <?php endif; ?>
            <div class="pt-4">
                <input type="submit"
                       class="btn btn-primary float-start me-sm-3 me-1"
                       name="save" 
                       id="saveForm"
                       value="<?= lang("Basic.global.Save") ?>"
                />
                <?php if (str_contains($formAction, 'edit')): ?>
                    <?= anchor(route_to("presupuestoToPdf", $presupuestoId), lang("Basic.global.Print"), ["class" => "btn btn-dark float-start me-sm-3 me-1",'target' => '_blank']) ?>
                    <input type="button"
                       class="btn btn-info float-start me-sm-3 me-1"
                       name="clone"
                       id="cloneForm"
                       value="<?= lang("Basic.global.Clone") ?>"
                    />
                <?php endif; ?>
                <?= anchor(route_to("presupuestoAdminList", $tipo_impresion_id), lang("Basic.global.Cancel"), ["class" => "btn btn-secondary float-start",]) ?>
            </div>

            <div class="container-fluid d-flex flex-md-row flex-column justify-content-between align-items-md-center gap-1 container-p-x py-3">
                    <div class="col-md-6">
                        <p>
                            <strong><?= lang("Presupuestos.created_by_at") ?></strong>
                            <span id="created_by"></span>, 
                            <span id="created_at"></span>
                        </p>
                    </div>
                    <div class="col-md-6">
                        <p>
                            <strong><?= lang("Presupuestos.updated_by_at") ?></strong>
                            <span id="updated_by"></span>, 
                            <span id="updated_at_footer"></span>
                        </p>
                    </div>
            </div>
        </form>

    </div><!--//.col -->
</div><!--//.row -->
<?= view("themes/_commonPartialsBs/_modalConfirmDialog") ?>
<?= view("themes/_commonPartialsBs/_modalMessageDialog") ?>

<?= $this->endSection() ?>

<!------------------------------------------->
<!-- Código JS para el boton de duplicar -->
<!------------------------------------------->
<?php if (str_contains($formAction, 'edit')): ?>
<?= $this->section("additionalInlineJs") ?>
    $('#cloneForm').on('click', async function(e) {
        
        // se comprueba que no haya lineas de presupuesto en el que exista la variable gotaNegro
        var gotaNegro = false
        $("#tableLineasPresupuesto").DataTable().rows().every( function ( rowIdx, tableLoop, rowLoop ) {
            var rowData = this.data();
            if(rowData.hasOwnProperty('gotaNegro')){
                gotaNegro = true
                return;
            }
        })

        const domain = window.location.origin
        const url = window.location.href;
        const url_parts = url.split('/');
        var id = -1;
        if(url_parts[url_parts.length-2] == 'edit'){
            id = url_parts[url_parts.length-1];
        }

        if(gotaNegro){
            
            asyncMessageDialog('<?= lang("Basic.global.Warning") ?>', '<?= lang("Presupuestos.duplicarConTipologias") ?>', function() {
                $.ajax({
                    type: 'post',
                    url: '<?= route_to("updateDataOfPresupuestoAdmin") ?>',

                    data: {
                        tipo: 'duplicar',
                        presupuesto_id: id,
                        <?= csrf_token() ?? "token" ?>: <?= csrf_token() ?>v
                    },
                    dataType: 'json',
                    success:function(response){

                        token=response.<?= csrf_token() ?>;
                        yeniden(token);
                        // redirect
                        new_location = '<?= site_url("presupuestoadmin/edit/") ?>' + response.id
                        window.location.href = new_location;
                    }
                }).fail(function (jqXHR, textStatus, error) {
                    // Handle error here
                    console.log(jqXHR)
                });
            })
        }
        else{
            $.ajax({
                type: 'post',
                url: '<?= route_to("updateDataOfPresupuestoAdmin") ?>',

                data: {
                    tipo: 'duplicar',
                    presupuesto_id: id,
                    <?= csrf_token() ?? "token" ?>: <?= csrf_token() ?>v
                },
                dataType: 'json',
                success:function(response){

                    if(response.error){
                        console.error(response.error);
                        return;
                    }

                    token=response.<?= csrf_token() ?>;
                    yeniden(token);
                    // redirect
                    new_location = '<?= site_url("presupuestoadmin/edit/") ?>' + response.id
                    window.location.href = new_location;
                }
            }).fail(function (jqXHR, textStatus, error) {
                // Handle error here
                console.log(jqXHR)
            });
        }
    });
        
    
<?= $this->endSection() ?>
<?php endif; ?>

<!------------------------------------------->
<!-- Código JS para los selects -->
<!------------------------------------------->
<?= $this->section("additionalInlineJs") ?>

    $(document).keypress(function(e) {
        var key = e.which;
        if (key == 13) // the enter key code
        {
            e.preventDefault()
            if ($('#addressForm').hasClass('show')) {
                $("#saveDireccionEnvio").click();

            } else {
                $('#saveForm').click();
            }
        }
    });
    


<?= $this->endSection() ?>






<?php if (str_contains($formAction, 'edit')): ?>
    <?= $this->section("additionalInlineJs") ?>
    if(<?php echo $presupuestoEntity->is_duplicado?'true':'false'; ?>){
        asyncMessageDialog(
            '<?= lang("Basic.global.Warning") ?>',
            '<?= lang("Presupuestos.presupuestoDuplicadoActualizacion") ?>',
            function(){});
    }
    else if(<?php echo ($presupuestoEntity->cambios_lineas? 'true':'false'); ?> ||
            <?php echo ($presupuestoEntity->cambios_servicios? 'true':'false'); ?> ||
            <?php echo ($presupuestoEntity->cambios_envios ? 'true':'false'); ?>){
    
        let text = '<?= lang("Presupuestos.actualizacionPrecios") ?>';
        if(<?php echo ($presupuestoEntity->cambios_lineas ? 'true':'false'); ?>){
            text += '<?= lang("Presupuestos.actualizacionPreciosLP") ?>';
        }
        else if (<?php echo ($presupuestoEntity->cambios_servicios ? 'true':'false'); ?>){
            text += '<?= lang("Presupuestos.actualizacionPreciosServicios") ?>';
        }
        else if (<?php echo ($presupuestoEntity->cambios_envios ? 'true':'false'); ?>){
            text += '<?= lang("Presupuestos.actualizacionPreciosEnvios") ?>';
        }
        asyncMessageDialog(
            '<?= lang("Basic.global.Warning") ?>',
            text,
            function(){});

    }
    <?= $this->endSection() ?>
<?php endif; ?>

    



<?= $this->section('css') ?>
    <link rel="stylesheet" href="<?= site_url('themes/vuexy/css/datatables-editor/editor.dataTables.min.css') ?>">
    <link rel="stylesheet" href="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/buttons/buttons.bootstrap5.min.css") ?>">
    <link rel="stylesheet" href="<?= site_url('themes/vuexy/vendor/css/pages/app-chat.css') ?>">
    <link rel="stylesheet" href="<?= site_url('themes/vuexy/css/sk-datatables.css') ?>">
    <link rel="stylesheet" href="<?= site_url('themes/vuexy/css/presupuestoCliente.css') ?>">
    <link rel="stylesheet" href="<?= site_url('themes/vuexy/vendor/libs/sweetalert2/sweetalert2.css') ?>" />

<?= $this->endSection() ?>

<?= $this->section('additionalExternalJs') ?>
    <script src="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/buttons/dataTables.buttons.min.js") ?>"></script>
    <script src="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/buttons/buttons.bootstrap5.min.js") ?>"></script>
    <script src="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/buttons/buttons.html5.min.js") ?>"></script>
    <script src="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/buttons/buttons.print.min.js") ?>"></script>
    <script src="<?= site_url("themes/vuexy/vendor/libs/datatables-sk/plugins/select/dataTables.select.min.js") ?>"></script>
    <script src="<?= site_url('themes/vuexy/js/datatables-editor/dataTables.editor.min.js') ?>"></script>
    <script src="<?= site_url('themes/vuexy/vendor/libs/sweetalert2/sweetalert2.js') ?>"></script>
    <script src="<?= site_url('themes/vuexy/vendor/libs/autosize/autosize.js') ?>"></script>
<?php if (str_contains($formAction, 'edit')): ?>
    <script src="<?= site_url('themes/vuexy/vendor/libs/two/two.js') ?>"></script>
    <script src="<?= site_url('themes/vuexy/vendor/libs/perfect-scrollbar/perfect-scrollbar.js') ?>"></script>

    <script type="module" src="<?= site_url('assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js') ?>"></script>
<?php else: ?>
    <script type="module" src="<?= site_url('assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminAdd.js') ?>"></script>
<?php endif; ?>


<?= $this->endSection() ?>
