añadidos todos los servicios a falta del solapas grandes (incluido plegado de guardas)

This commit is contained in:
2025-01-20 20:15:27 +01:00
parent e7163efc5e
commit 036998e71a
12 changed files with 423 additions and 206 deletions

View File

@ -45,6 +45,10 @@ const SK_PERMISSION_MATRIX = [
"tarifa-encuadernacion.edit",
"tarifa-encuadernacion.delete",
"tarifa-encuadernacion.menu",
"tarifa-extra.create",
"tarifa-extra.edit",
"tarifa-extra.delete",
"tarifa-extra.menu",
"tarifa-envio.create",
"tarifa-envio.edit",
"tarifa-envio.delete",

View File

@ -45,6 +45,10 @@ const SK_PERMISSIONS = [
'tarifa-encuadernacion.edit' => 'Can edit',
'tarifa-encuadernacion.delete' => 'Can delete',
'tarifa-encuadernacion.menu' => 'Menu shall be visualize',
'tarifa-extra.create' => 'Can create',
'tarifa-extra.edit' => 'Can edit',
'tarifa-extra.delete' => 'Can delete',
'tarifa-extra.menu' => 'Menu shall be visualize',
'tarifa-envio.create' => 'Can create',
'tarifa-envio.edit' => 'Can edit',
'tarifa-envio.delete' => 'Can delete',

View File

@ -328,12 +328,12 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$this->viewData['POD'] = $this->getPOD();
$this->viewData['serviciosAutomaticos'] = [
'retractilado' => 3,
'retractilado5' => 5,
'ferro' => 24,
'prototipo' => 9,
'fajaColor' => 16,
'plegadoGuardas' => 62,
'retractilado' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_retractilado')->value,
'retractilado5' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_retractilado5')->value,
'ferro' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_ferro')->value,
'prototipo' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_prototipo')->value,
'plegado_guardas' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_plegado_guardas')->value,
'solapas_grandes' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_plegado_exceso_solapas')->value,
];
$this->viewData['tipo_impresion_id'] = $presupuestoEntity->tipo_impresion_id; // Cosido tapa blanda JJO
@ -496,7 +496,8 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$data['comparador']['json_data'] = json_decode($presupuesto->comparador_json_data, true);
if ($data['comparador']['json_data'] != null) {
foreach ($data['comparador']['json_data'] as &$item) {
$item['papel_nombre'] = $modelPapelGenerico->getNombre($item['papel_id'])['nombre'];
if(intval($item['papel_id'])>0)
$item['papel_nombre'] = $modelPapelGenerico->getNombre($item['papel_id'])['nombre'];
}
}
$data['comparador']['posPagColor'] = $presupuesto->comp_pos_paginas_color;
@ -701,6 +702,10 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$tipo_impresion_id = $this->request->getPost('tipo_impresion_id');
$uso = $this->request->getPost('uso');
// cubierta y sobrecubierta siempre colorhq
$isColor = true;
$isHq = true;
// Para el caso de Fresado y Cosido tapa dura, las guardas son un diptico
// y hay que imprimirlas como "cosido" (dos hojas pegadas). En el caso de espiral
// o wire-o tapa dura, las guardas se imprimen como hojas sueltas

View File

@ -2286,38 +2286,62 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
// Servicios
/*
'retractilado' => 3,
'prototipo' => 9,
*/
$serviciosAutomaticos = [];
$servicios = [];
$servicio_ferro = (object) [
'nombre' => 'ferro',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_ferro')->value
];
$servicio_prototipo = (object) [
'nombre' => 'prototipo',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_prototipo')->value
];
$servicio_retractilado = (object) [
'nombre' => 'retractilado',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_retractilado')->value
];
$servicio_retractilado5 = (object) [
'nombre' => 'retractilado5',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_retractilado5')->value
];
$servicio_plegado_guardas = (object) [
'nombre' => 'plegado_guardas',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_plegado_guardas')->value
];
$servicio_solapas_grandes = (object) [
'nombre' => 'solapas_grandes',
'id' => model('App\Models\Configuracion\ConfigVariableModel')->getVariable('id_servicio_plegado_exceso_solapas')->value
];
// se comprueba si $datos guardas es un array
if (is_array($datos_guardas)) {
if (count($datos_guardas) > 0) {
array_push($servicios, 62); // Plegado de guardas
array_push($servicios, $servicio_plegado_guardas); // Plegado de guardas
}
} else {
if ($datos_guardas > 0) {
array_push($servicios, 62); // Plegado de guardas
array_push($servicios, $servicio_plegado_guardas); // Plegado de guardas
}
}
if ($datos_entrada['servicios']['retractilado']) // acabado
array_push($servicios, 3);
array_push($servicios, $servicio_retractilado);
if ($datos_entrada['servicios']['retractilado5']) // acabado
array_push($servicios, 98);
array_push($servicios, $servicio_retractilado5);
if ($datos_entrada['servicios']['prototipo']) // extra
array_push($servicios, 9);
array_push($servicios, $servicio_prototipo);
if ($datos_entrada['servicios']['ferro']) // extra
array_push($servicios, 30);
array_push($servicios, $servicio_ferro);
/*if ($datos_entrada['servicios']['ferroDigital'])
array_push($servicios, 29);*/ // Es gratis
foreach ($servicios as $servicio) {
if (intval($servicio) == 3 || intval($servicio) == 98) {
if ($servicio->nombre == "retractilado" || $servicio->nombre == "retractilado5") {
// Servicios acabado
$resultado = PresupuestoCLienteService::getServiciosAcabados([
'tarifa_id' => $servicio,
'tarifa_id' => intval($servicio->id),
'tirada' => $datosPedido->tirada,
'POD' => $POD,
]);
@ -2345,10 +2369,10 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$totalServicios += floatval($resultado[0]->total);
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
}
} else if (intval($servicio) == 9 || intval($servicio) == 30 || intval($servicio) == 29) {
} else if ($servicio->nombre == "ferro" || $servicio->nombre == "prototipo") {
// Extra
$resultado = PresupuestoCLienteService::getServiciosExtra([
'tarifa_id' => $servicio,
'tarifa_id' => intval($servicio->id),
]);
array_push($serviciosAutomaticos, $resultado[0]);
if ($resultado[0]->precio <= 0) {
@ -2385,7 +2409,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
// Servicios acabado
$resultado = PresupuestoCLienteService::getServiciosManipulado([
'tarifa_id' => 73,
'tarifa_id' => intval($servicio_solapas_grandes->id),
'tirada' => $datosPedido->tirada,
'POD' => $POD,
]);

View File

@ -115,7 +115,7 @@ class Presupuestomanipulados extends \App\Controllers\BaseResourceController
if (count($datos_tarifas) > 0) {
foreach ($datos_tarifas as $tarifa) {
$values = $model->getPrecioTarifa($tarifa['tarifa_id'], $tirada, $POD);
$values = $model->getPrecioTarifa($tarifa, $tirada, $POD);
$values[0]->cubierta = $tarifa['cubierta'] ?? 0;
$values[0]->sobrecubierta = $tarifa['sobrecubierta'] ?? 0;
array_push($result, $values[0]);

View File

@ -1,7 +1,8 @@
<div class="accordion accordion-bordered mt-3" id="accordionDatosLibro">
<div class="card accordion-item active">
<h2 class="accordion-header" id="headingOne">
<button type="button" class="accordion-button" data-bs-toggle="collapse" data-bs-target="#accordionDatosLibroTip" aria-expanded="false" aria-controls="accordionDatosLibroTip">
<button type="button" class="accordion-button" data-bs-toggle="collapse"
data-bs-target="#accordionDatosLibroTip" aria-expanded="false" aria-controls="accordionDatosLibroTip">
<h4><?= lang("Presupuestos.datosLibro") ?></h4>
</button>
</h2>
@ -19,18 +20,20 @@
<label for="paginas" class="form-label">
<?= lang('Presupuestos.paginas') ?>*
</label>
<input type="number" id="paginas" name="paginas" tabindex="1" maxLength="11" class="form-control" value="" <?php echo ($tipo_impresion_id == 21)?' max=80':'' ?>>
<input type="number" id="paginas" name="paginas" tabindex="1" maxLength="11"
class="form-control" value="" <?php echo ($tipo_impresion_id == 21) ? ' max=80' : '' ?>>
</div><!--//.mb-3 -->
</div>
</div><!--//.col -->
<div class="col-md-12 col-lg-2 px-4">
<div class="mb-1">
<label for="tirada" class="form-label">
<?= lang('Presupuestos.tirada') ?>*
</label>
<input type="number" id="tirada" name="tirada" tabindex="2" maxLength="11" class="form-control" value="">
<input type="number" id="tirada" name="tirada" tabindex="2" maxLength="11"
class="form-control" value="">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -42,21 +45,24 @@
<?= lang('Presupuestos.papelFormatoId') ?>*
</label>
<div class="row tamanio-estandar">
<select id="papelFormatoId" name="papel_formato_id" tabindex="3" class="form-control select2bs2" style="width: 100%;">
</select>
<select id="papelFormatoId" name="papel_formato_id" tabindex="3"
class="form-control select2bs2" style="width: 100%;">
</select>
</div>
<div class="row">
<div class="col-md-12 col-lg-6 tamanio-personalizado d-none">
<div class="mb-1">
<input type="number" id="papelFormatoAncho" name="papel_formato_ancho" maxLength="8" step="0.01" class="form-control formato_libro" value="">
<input type="number" id="papelFormatoAncho" name="papel_formato_ancho"
maxLength="8" step="0.01" class="form-control formato_libro" value="">
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-6 tamanio-personalizado d-none">
<div class="mb-1">
<input type="number" id="papelFormatoAlto" name="papel_formato_alto" maxLength="8" step="0.01" class="form-control formato_libro" value="">
<div class="mb-1">
<input type="number" id="papelFormatoAlto" name="papel_formato_alto"
maxLength="8" step="0.01" class="form-control formato_libro" value="">
</div><!--//.mb-3 -->
</div><!--//.col -->
</div>
@ -70,7 +76,8 @@
<label for="merma" class="form-label">
<?= lang('Presupuestos.merma') ?>*
</label>
<input readonly style="background: #E8E8E8;" id="merma" name="merma" maxLength="8" tabindex="4" step="1" placeholder="10" class="form-control" value="">
<input readonly style="background: #E8E8E8;" id="merma" name="merma" maxLength="8"
tabindex="4" step="1" placeholder="10" class="form-control" value="">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -79,7 +86,8 @@
<label for="mermacubierta" class="form-label">
<?= lang('Presupuestos.mermacubierta') ?>*
</label>
<input readonly style="background: #E8E8E8;" id="mermacubierta" name="merma_cubierta" tabindex="5" placeholder="10" maxLength="8" step="1" class="form-control" value="">
<input readonly style="background: #E8E8E8;" id="mermacubierta" name="merma_cubierta"
tabindex="5" placeholder="10" maxLength="8" step="1" class="form-control" value="">
</div><!--//.mb-3 -->
</div><!--//.col -->
@ -90,34 +98,41 @@
<!-- Fila 2 -->
<div class="row">
<div class="col-md-12 col-lg-2 px-4">
<div class="row solapas-cubierta-div">
<div class="mb-1">
<div class="form-check form-switch mb-2">
<input class="form-check-input solapas_cubierta" type="checkbox" id="solapas" name="solapas" tabindex="6" value="1">
<label class="form-check-label" for="solapas"><?= lang('Presupuestos.solapasCubierta') ?></label>
</div>
</div><!--//.mb-3 -->
<div class="row solapas-cubierta-div">
<div class="mb-1">
<div class="form-check form-switch mb-2">
<input class="form-check-input solapas_cubierta" type="checkbox" id="solapas"
name="solapas" tabindex="6" value="1">
<label class="form-check-label"
for="solapas"><?= lang('Presupuestos.solapasCubierta') ?></label>
</div>
</div><!--//.mb-3 -->
</div>
</div>
</div>
<div class="col-md-12 col-lg-2 px-4">
<div class="row solapas-sobrecubierta-div">
<div class="mb-1">
<div class="form-check form-switch mb-2">
<input class="form-check-input solapas_sobrecubierta" type="checkbox" id="solapas_sobrecubierta" name="solapas_sobrecubierta" tabindex="6" value="1" onclick="return false;">
<label class="form-check-label" for="solapas_sobrecubierta"><?= lang('Presupuestos.solapasSobrecubierta') ?></label>
<input class="form-check-input solapas_sobrecubierta" type="checkbox"
id="solapas_sobrecubierta" name="solapas_sobrecubierta" tabindex="6" value="1"
onclick="return false;">
<label class="form-check-label"
for="solapas_sobrecubierta"><?= lang('Presupuestos.solapasSobrecubierta') ?></label>
</div>
</div><!--//.mb-3 -->
</div>
</div>
<div class="col-md-12 col-lg-6 px-4">
<div class="row">
<div class="mb-1">
<div class="form-check form-switch mb-2">
<input class="form-check-input" type="checkbox" id="papelFormatoPersonalizado" name="papel_formato_personalizado" value="1">
<label class="form-check-label" for="papelFormatoPersonalizado"><?= lang('Presupuestos.papelFormatoPersonalizado') ?></label>
<input class="form-check-input" type="checkbox" id="papelFormatoPersonalizado"
name="papel_formato_personalizado" value="1">
<label class="form-check-label"
for="papelFormatoPersonalizado"><?= lang('Presupuestos.papelFormatoPersonalizado') ?></label>
</div>
</div>
</div>
@ -132,7 +147,8 @@
<label for="solapas_ancho" class="form-label">
<?= lang('Presupuestos.solapasAnchoCubierta') ?>*
</label>
<input type="number" id="solapas_ancho" name="solapas_ancho" placeholder="0" maxLength="8" step="1" class="form-control solapas_cubierta" value="">
<input type="number" id="solapas_ancho" name="solapas_ancho" placeholder="0" maxLength="8"
step="1" class="form-control solapas_cubierta" value="">
</div><!--//.mb-1 -->
</div>
@ -141,20 +157,24 @@
<label for="solapas_ancho_sobrecubierta" class="form-label">
<?= lang('Presupuestos.solapasAnchoSobrecubierta') ?>*
</label>
<input type="number" id="solapas_ancho_sobrecubierta" name="solapas_ancho_sobrecubierta" placeholder="60" min="60" maxLength="8" step="1" class="form-control solapas_sobrecubierta" value="">
<input type="number" id="solapas_ancho_sobrecubierta" name="solapas_ancho_sobrecubierta"
placeholder="60" min="60" maxLength="8" step="1"
class="form-control solapas_sobrecubierta" value="">
</div><!--//.mb-1 -->
</div>
</div>
</div>
<!----------------------------------------------------------------------------->
<?php if(str_contains($formAction,'edit')): ?>
<?php if (str_contains($formAction, 'edit')): ?>
<div class="divider divider-dark text-start mb-1">
<div class="divider-text">
<h5><?= lang("Presupuestos.acabadosExteriores") ?></h5>
<h5>
<?= lang("Presupuestos.acabadosExteriores") ?>
</h5>
</div>
</div>
@ -165,10 +185,11 @@
<label id="label_acabado_cubierta_id" for="acabado_cubierta_id" class="form-label">
<?= lang('Presupuestos.acabadoCubierta') ?>*
</label>
<select id="acabado_cubierta_id" name="acabado_cubierta_id" tabindex="3" class="form-control select2bs2" style="width: 100%;">
<select id="acabado_cubierta_id" name="acabado_cubierta_id" tabindex="3"
class="form-control select2bs2" style="width: 100%;">
</select>
</div>
</div>
</div>
</div>
<div class="col-md-12 col-lg-6 px-4">
<div class="row impresion-con-sobrecubierta">
@ -176,18 +197,21 @@
<label id="label_acabado_cubierta_id" for="acabado_sobrecubierta_id" class="form-label">
<?= lang('Presupuestos.acabadoSobrecubierta') ?>*
</label>
<select id="acabado_sobrecubierta_id" name="acabado_sobrecubierta_id" tabindex="3" class="form-control select2bs2" style="width: 100%;">
<select id="acabado_sobrecubierta_id" name="acabado_sobrecubierta_id" tabindex="3"
class="form-control select2bs2" style="width: 100%;">
</select>
</div>
</div>
</div>
</div>
</div>
<!----------------------------------------------------------------------------->
<div class="divider divider-dark text-start mb-1">
<div class="divider-text">
<h5><?= lang("Presupuestos.opcionesPresupuesto") ?></h5>
<h5>
<?= lang("Presupuestos.opcionesPresupuesto") ?>
</h5>
</div>
</div>
@ -196,85 +220,99 @@
<div class="mb-3">
<div class="form-check">
<label for="retractilado" class="form-check-label">
<input type="checkbox" id="retractilado" name="retractilado" value="1" class="form-check-input" >
<input type="checkbox" id="retractilado" name="retractilado" value="1"
class="form-check-input" service="acabado"
service-id=<?= $serviciosAutomaticos['retractilado'] ?>>
<?= lang('Presupuestos.retractilado') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="retractilado5" class="form-check-label">
<input type="checkbox" id="retractilado5" name="retractilado_5" value="1" class="form-check-input" >
<?= lang('Presupuestos.retractilado5') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="retractilado5" class="form-check-label">
<input type="checkbox" id="retractilado5" name="retractilado_5" value="1"
class="form-check-input" service="acabado"
service-id=<?= $serviciosAutomaticos['retractilado5'] ?>>
<?= lang('Presupuestos.retractilado5') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="prototipo" class="form-check-label">
<input type="checkbox" id="prototipo" name="prototipo" value="1" class="form-check-input" >
<?= lang('Presupuestos.prototipo') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
<div class="mb-3">
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="prototipo" class="form-check-label">
<input type="checkbox" id="prototipo" name="prototipo" value="1"
class="form-check-input" service="extra"
service-id=<?= $serviciosAutomaticos['prototipo'] ?>>
<?= lang('Presupuestos.prototipo') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
<div class="mb-3">
</div><!--//.mb-3 -->
</div><!--//.col -->
</div><!--//.mb-3 -->
</div><!--//.col -->
</div>
</div>
<div class="row">
<div class="row">
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="ferro" class="form-check-label">
<input type="checkbox" id="ferro" name="ferro" value="1" class="form-check-input" >
<?= lang('Presupuestos.ferro') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="ferro" class="form-check-label">
<input type="checkbox" id="ferro" name="ferro" value="1" class="form-check-input"
service="extra" service-id=<?= $serviciosAutomaticos['ferro'] ?>>
<?= lang('Presupuestos.ferro') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="ferroDigital" class="form-check-label">
<input type="checkbox" id="ferroDigital" name="ferro_digital" value="1" class="form-check-input">
<?= lang('Presupuestos.ferroDigital') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="ferroDigital" class="form-check-label">
<input type="checkbox" id="ferroDigital" name="ferro_digital" value="1"
class="form-check-input">
<?= lang('Presupuestos.ferroDigital') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="marcapaginas" class="form-check-label">
<input type="checkbox" id="marcapaginas" name="marcapaginas" value="1" class="form-check-input" >
<?= lang('Presupuestos.marcapaginas') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
<div class="col-md-12 col-lg-3 px-4">
<div class="mb-3">
<div class="form-check">
<label for="marcapaginas" class="form-check-label">
<input type="checkbox" id="marcapaginas" name="marcapaginas" value="1"
class="form-check-input">
<?= lang('Presupuestos.marcapaginas') ?>
</label>
</div><!--//.form-check -->
</div><!--//.mb-3 -->
</div><!--//.col -->
</div>
<input type="checkbox" id="plegado_guardas" name="plegado_guardas" value="1"
class="form-check-input d-none" service="manipulado"
service-id=<?= $serviciosAutomaticos['plegado_guardas'] ?>>
<input type="checkbox" id="solapas_grandes" name="solapas_grandes" value="1"
class="form-check-input d-none" service="manipulado"
service-id=<?= $serviciosAutomaticos['solapas_grandes'] ?>>
</div>
<?php endif; ?>
</div> <!-- //.accordion-body -->
</div> <!-- //.accordion-collapse -->
</div> <!-- //.accordion-item -->
</div> <!-- //.accordion -->
</div> <!-- //.accordion -->

View File

@ -182,63 +182,6 @@
<!------------------------------------------->
<!-- Acciones antes de submit... -->
<!------------------------------------------->
<?php if (str_contains($formAction, 'edit')): ?>
<?= $this->section("additionalInlineJs") ?>
<?php /*
var submitButtonClicked; // Variable para almacenar el botón que fue clickeado
// funcion que genera un JSON con la tabla de tiradas alternativas
function generate_json_tiradas() {
const data = tableTiradas.rows().data().toArray();
$('#tirada_alternativa_json_data').val(JSON.stringify(data));
}
$('#saveForm').on("click", function(event) {
event.preventDefault();
save_servicios();
save_datos_envios();
var presupuesto_id = $('#presupuesto_id').val()
$.when(fill_bbdd_from_lp(presupuesto_id).then(function(data, textStatus, jqXHR) {
generateCompJSON()
generate_json_tiradas()
form = $('#presupuestoForm').serialize()
form += getValuesResumenForm()
$.ajax({
type: "POST",
url: "<?php echo $formAction; ?>",
data: form,
success: function (data) {
yeniden(data.<?= csrf_token() ?>)
if('errorMensaje' in data)
popErrorAlert(data.errorMensaje)
else{
showBreadCrumbSaveButton(false)
popSuccessAlert(data.mensaje)
if($('#confirmar_presupuesto').prop('checked')) {
$('#estado_id').val(2)
}
}
}
}).fail(function (jqXHR, textStatus, error) {
// Handle error here
console.log(jqXHR)
});;
}))
return false; //stop the actual form post !important!
});
*/ ?>
<?= $this->endSection() ?>
<?php endif; ?>
<?php if (str_contains($formAction, 'edit')): ?>