Merge branch 'mod/tamanio_inputs' into 'main'

realizados cambios

See merge request jjimenez/safekat!378
This commit is contained in:
2024-11-13 09:20:42 +00:00
8 changed files with 138 additions and 78 deletions

View File

@ -76,7 +76,7 @@
<div class="row col-sm-10 mb-3 justify-content-center"> <div class="row col-sm-10 mb-3 justify-content-center">
<div class="col-sm-2 d-flex flex-column align-items-center mx-1"> <div class="col-sm-2 d-flex flex-column align-items-center mx-1 div-num-input">
<label for="tirada" class="form-label"> <label for="tirada" class="form-label">
<?= lang('Presupuestos.tirada') ?> 1* <?= lang('Presupuestos.tirada') ?> 1*
</label> </label>
@ -84,7 +84,7 @@
name="tirada" step="1" value="50"> name="tirada" step="1" value="50">
</div> </div>
<div class="col-sm-2 d-flex flex-column align-items-center mx-1"> <div class="col-sm-2 d-flex flex-column align-items-center mx-1 div-num-input">
<label for="tirada2" class="form-label"> <label for="tirada2" class="form-label">
<?= lang('Presupuestos.tirada') ?> 2 <?= lang('Presupuestos.tirada') ?> 2
</label> </label>
@ -92,7 +92,7 @@
name="tirada2" step="1" value=""> name="tirada2" step="1" value="">
</div> </div>
<div class="col-sm-2 d-flex flex-column align-items-center mx-1"> <div class="col-sm-2 d-flex flex-column align-items-center mx-1 div-num-input">
<label for="tirada3" class="form-label"> <label for="tirada3" class="form-label">
<?= lang('Presupuestos.tirada') ?> 3 <?= lang('Presupuestos.tirada') ?> 3
</label> </label>
@ -100,7 +100,7 @@
name="tirada3" step="1" value=""> name="tirada3" step="1" value="">
</div> </div>
<div class="col-sm-2 d-flex flex-column align-items-center mx-1"> <div class="col-sm-2 d-flex flex-column align-items-center mx-1 div-num-input">
<label for="tirada4" class="form-label"> <label for="tirada4" class="form-label">
<?= lang('Presupuestos.tirada') ?> 4 <?= lang('Presupuestos.tirada') ?> 4
</label> </label>
@ -122,16 +122,16 @@
<div id="formatoPersonalizado" class="row col-sm-8 justify-content-center d-none"> <div id="formatoPersonalizado" class="row col-sm-8 justify-content-center d-none">
<div class="col-sm-3 mb-1 mx-1"> <div class="col-sm-3 mb-1 mx-1 div-num-input">
<label class="form-label" for="papelFormatoAncho">Ancho Libro*</label> <label class="form-label" for="papelFormatoAncho">Ancho Libro*</label>
<input type="number" id="papelFormatoAncho" name="papel_formato_ancho" step="1" <input type="number" id="papelFormatoAncho" name="papel_formato_ancho" step="1"
class="form-control formato_libro calcular-presupuesto num-input" min="60" value="60"> class="form-control formato_libro calcular-presupuesto num-input" min="110" value="110">
</div> </div>
<div class="col-sm-3 mb-1 mx-1"> <div class="col-sm-3 mb-1 mx-1 div-num-input">
<label class="form-label" for="papelFormatoAlto">Alto Libro*</label> <label class="form-label" for="papelFormatoAlto">Alto Libro*</label>
<input type="number" id="papelFormatoAlto" name="papel_formato_alto" step="1" <input type="number" id="papelFormatoAlto" name="papel_formato_alto" step="1"
class="form-control formato_libro calcular-presupuesto num-input" min="60" value="60"> class="form-control formato_libro calcular-presupuesto num-input" min="170" value="170">
</div> </div>
</div> </div>

View File

@ -3,13 +3,6 @@
<h3 class="mb-1 fw-bold">Resumen del presupuesto</h3> <h3 class="mb-1 fw-bold">Resumen del presupuesto</h3>
<div class="line mb-4"></div> <div class="line mb-4"></div>
<div class="col-sm-8 mb-3 d-flex flex-column align-items-center">
<h5 class="mb-1 "> Precio unidad: <span id="resumenPrecioU"></span> </h5>
<h4 class="mb-1 "> Total base: <span id="resumenTotalBase"></span> </h>
<h4 class="mb-1 "> Iva (<span id="resumenIvaPorcentaje"></span>%): <span id="resumenIva"></span> </h>
<h3 class="mt-3 mb-1 fw-bold"> Total: <span id="resumenTotal"></span> </h>
</div><!--//.mb-3 -->
<div id="divFormaCubierta" class="col-sm-12 mb-3 d-flex flex-column align-items-center"> <div id="divFormaCubierta" class="col-sm-12 mb-3 d-flex flex-column align-items-center">
<div class="row justify-content-center col-sm-12"> <div class="row justify-content-center col-sm-12">
<div id="btnPreviewCubierta" class="btn col-sm-4 btn-primary waves-effect waves-light ml-2"> <div id="btnPreviewCubierta" class="btn col-sm-4 btn-primary waves-effect waves-light ml-2">
@ -203,4 +196,11 @@
</div> </div>
<?php endif; ?> <?php endif; ?>
<div class="col-sm-8 mb-3 d-flex flex-column align-items-center">
<h5 class="mb-1 "> Precio unidad: <span id="resumenPrecioU"></span> €</h5>
<h4 class="mb-1 "> Total base: <span id="resumenTotalBase"></span> €</h>
<h4 class="mb-1 "> Iva (<span id="resumenIvaPorcentaje"></span>%): <span id="resumenIva"></span> €</h>
<h3 class="mt-3 mb-1 fw-bold"> Total: <span id="resumenTotal"></span> €</h>
</div><!--//.mb-3 -->
</div> </div>

View File

@ -62,7 +62,7 @@ const actionBtns = function(data) {
return ` return `
<td class="text-right py-0 align-middle"> <td class="text-right py-0 align-middle">
<div class="btn-group btn-group-sm"> <div class="btn-group btn-group-sm">
<a href="javascript:void(0);"><i class="ti ti-pencil ti-sm btn-edit mx-2" data-id="${data.id}"></i></a> <a href="javascript:void(0);"><i class="ti ti-eye ti-sm btn-edit mx-2" data-id="${data.id}"></i></a>
</div> </div>
</td>`; </td>`;
}; };

View File

@ -14,7 +14,10 @@
<div class="container-xxl flex-grow-1 container-p-y"> <div class="container-xxl flex-grow-1 container-p-y">
<div class="col-12"> <div class="col-12">
<?php if ($state != 2): ?>
<h3 class="card-title"><?= $boxTitle ?? $pageTitle ?></h3> <h3 class="card-title"><?= $boxTitle ?? $pageTitle ?></h3>
<?php endif; ?>
<?= csrf_field() ?> <?= csrf_field() ?>
<?= view("themes/_commonPartialsBs/_alertBoxes") ?> <?= view("themes/_commonPartialsBs/_alertBoxes") ?>
<?= !empty($validation->getErrors()) ? $validation->listErrors("bootstrap_style") : "" ?> <?= !empty($validation->getErrors()) ? $validation->listErrors("bootstrap_style") : "" ?>

View File

@ -388,7 +388,19 @@
language: { language: {
url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"
}, },
buttons: [ { buttons: [
{
extend: 'collection',
text: 'Exportar',
buttons:[
'copy', 'csv', 'excel', 'print', {
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'A4'
}
]
},
{
className: 'btn btn-primary float-end me-sm-3 me-1', className: 'btn btn-primary float-end me-sm-3 me-1',
extend: "createInline", extend: "createInline",
editor: editor3, editor: editor3,
@ -410,7 +422,8 @@
editor3.inlineCreate(config.position, formOptions); editor3.inlineCreate(config.position, formOptions);
} }
}, },
} ] }
]
} ); } );
@ -581,7 +594,19 @@
language: { language: {
url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"
}, },
buttons: [ { buttons: [
{
extend: 'collection',
text: 'Exportar',
buttons:[
'copy', 'csv', 'excel', 'print', {
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'A4'
}
]
},
{
className: 'btn btn-primary float-end me-sm-3 me-1', className: 'btn btn-primary float-end me-sm-3 me-1',
extend: "createInline", extend: "createInline",
editor: editor, editor: editor,
@ -603,7 +628,8 @@
editor.inlineCreate(config.position, formOptions); editor.inlineCreate(config.position, formOptions);
} }
}, },
} ] }
]
} ); } );
@ -768,7 +794,19 @@
language: { language: {
url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"
}, },
buttons: [ { buttons: [
{
extend: 'collection',
text: 'Exportar',
buttons:[
'copy', 'csv', 'excel', 'print', {
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'A4'
}
]
},
{
className: 'btn btn-primary float-end me-sm-3 me-1', className: 'btn btn-primary float-end me-sm-3 me-1',
extend: "createInline", extend: "createInline",
editor: editor2, editor: editor2,

View File

@ -20,6 +20,15 @@ if (auth()->user()->inGroup('cliente-admin')
); );
?> ?>
</a> </a>
<?php if (auth()->user()->can('presupuesto-cliente.create')) { ?>
<ul class="menu-sub">
<li class="menu-item">
<a href="<?= route_to('nuevoPresupuestoCliente') ?>" class="menu-link">
Nuevo presupuesto
</a>
</li>
</ul>
<?php } ?>
<ul class="menu-sub"> <ul class="menu-sub">
<li class="menu-item"> <li class="menu-item">
<a href="<?= route_to("listaPresupuestos") ?>" class="menu-link"> <a href="<?= route_to("listaPresupuestos") ?>" class="menu-link">
@ -27,15 +36,6 @@ if (auth()->user()->inGroup('cliente-admin')
</a> </a>
</li> </li>
</ul> </ul>
<?php if (auth()->user()->can('presupuesto-cliente.create')) { ?>
<ul class="menu-sub">
<li class="menu-item">
<a href="<?= route_to('nuevoPresupuestoCliente') ?>" class="menu-link">
Añadir
</a>
</li>
</ul>
<?php } ?>
</li> </li>
<?php <?php
} }

View File

@ -89,6 +89,9 @@ class DatosGenerales {
this.pagColorConsecutivas.on('change', this.#handPaginasConsecutivas.bind(this)); this.pagColorConsecutivas.on('change', this.#handPaginasConsecutivas.bind(this));
this.papelDiferente.on('change', this.#handlePapelDiferente.bind(this)); this.papelDiferente.on('change', this.#handlePapelDiferente.bind(this));
this.anchoPersonalizado.on("change", this.#checkValue.bind(this));
this.altoPersonalizado.on("change", this.#checkValue.bind(this));
this.titulo.on('change', () => { $(".titulo").html(this.titulo.val()); }); this.titulo.on('change', () => { $(".titulo").html(this.titulo.val()); });
} }
@ -602,6 +605,14 @@ class DatosGenerales {
} }
} }
#checkValue(event){
let target = event.target;
if(target.value < target.min){
target.value = target.min;
}
}
#handleTipolibro(event) { #handleTipolibro(event) {
// Accede al ID del elemento que disparó el evento // Accede al ID del elemento que disparó el evento
const element = $(event.target); const element = $(event.target);

View File

@ -477,3 +477,11 @@
.texto-resumen-lateral{ .texto-resumen-lateral{
font-size: 0.9em; font-size: 0.9em;
} }
.num-input{
min-width: 100px;
}
.div-num-input{
min-width: 105px;
}