Skip to content

Commit 985d5a1

Browse files
committed
fix: aggiunta categoria e marca da modale su edit
1 parent 5abf8c2 commit 985d5a1

3 files changed

Lines changed: 35 additions & 15 deletions

File tree

modules/articoli/actions.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -182,8 +182,8 @@
182182

183183
$articolo->codice = post('codice', true);
184184
$articolo->um = post('um');
185-
$articolo->id_categoria = post('categoria');
186-
$articolo->id_sottocategoria = post('subcategoria');
185+
$articolo->id_categoria = post('categoria_edit') ?: post('categoria');
186+
$articolo->id_sottocategoria = post('subcategoria_edit') ?: post('subcategoria');
187187
$articolo->abilita_serial = post('abilita_serial');
188188
$articolo->ubicazione = post('ubicazione');
189189
$articolo->coefficiente = post('coefficiente');
@@ -196,8 +196,8 @@
196196
$articolo->servizio = post('servizio');
197197
$articolo->volume = post('volume');
198198
$articolo->peso_lordo = post('peso_lordo');
199-
$articolo->id_marca = post('id_marca');
200-
$articolo->id_modello = post('id_modello');
199+
$articolo->id_marca = post('id_marca_edit') ?: post('id_marca');
200+
$articolo->id_modello = post('id_modello_edit') ?: post('id_modello');
201201

202202
$articolo->um_secondaria = post('um_secondaria');
203203
$articolo->fattore_um_secondaria = post('fattore_um_secondaria');

modules/articoli/add.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
</div>
6060

6161
<div class="col-md-3">
62-
{[ "type": "select", "label": "<?php echo tr('Modello'); ?>", "name": "id_modello", "id": "id_modello_add", "ajax-source": "modelli", "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>||hide" ]}
62+
{[ "type": "select", "label": "<?php echo tr('Modello'); ?>", "name": "id_modello", "id": "id_modello_add", "ajax-source": "modelli", "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>|id_original=0|hide" ]}
6363
</div>
6464
</div>
6565

@@ -191,6 +191,11 @@
191191
}
192192
});
193193

194+
// Nascondi il pulsante modello se non c'è una marca selezionata all'inizio
195+
if(!$('#add-form').find('#id_marca').val()) {
196+
modello.parent().find(".input-group-append button").addClass("hide");
197+
}
198+
194199
input("coefficiente").on('keyup', function(){
195200
if (iva_vendita.val()) {
196201
percentuale = parseFloat(iva_vendita.selectData().percentuale);

modules/articoli/edit.php

Lines changed: 25 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,20 +61,20 @@
6161
<div class="col-md-3">
6262
<?php echo (!empty($record['id_categoria'])) ?
6363
Modules::link('Categorie', $record['id_categoria'], null, null, 'class="pull-right"') : ''; ?>
64-
{[ "type": "select", "label": "<?php echo tr('Categoria'); ?>", "name": "categoria", "required": 0, "value": "$id_categoria$", "ajax-source": "categorie", "icon-after": "add|<?php echo Module::where('name', 'Categorie')->first()->id; ?>" ]}
64+
{[ "type": "select", "label": "<?php echo tr('Categoria'); ?>", "name": "categoria_edit", "id": "categoria_edit", "required": 0, "value": "$id_categoria$", "ajax-source": "categorie", "icon-after": "add|<?php echo Module::where('name', 'Categorie')->first()->id; ?>" ]}
6565
</div>
6666

6767
<div class="col-md-3">
68-
{[ "type": "select", "label": "<?php echo tr('Sottocategoria'); ?>", "name": "subcategoria", "value": "$id_sottocategoria$", "ajax-source": "sottocategorie", "select-options": <?php echo json_encode(['id_categoria' => $record['id_categoria']]); ?>, "icon-after": "add|<?php echo Module::where('name', 'Categorie')->first()->id; ?>|id_original=<?php echo $record['id_categoria']; ?>" ]}
68+
{[ "type": "select", "label": "<?php echo tr('Sottocategoria'); ?>", "name": "subcategoria_edit", "id": "subcategoria_edit", "value": "$id_sottocategoria$", "ajax-source": "sottocategorie", "select-options": <?php echo json_encode(['id_categoria' => $record['id_categoria']]); ?>, "icon-after": "add|<?php echo Module::where('name', 'Categorie')->first()->id; ?>|id_original=<?php echo $record['id_categoria']; ?>" ]}
6969
</div>
7070

7171
<div class="col-md-3">
7272
<?php echo !empty($record['id_marca']) ? Modules::link('Marche', $record['id_marca'], null, null, 'class="pull-right"') : ''; ?>
73-
{[ "type": "select", "label": "<?php echo tr('Marca'); ?>", "name": "id_marca", "value":"$id_marca$", "ajax-source": "marche", "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>" ]}
73+
{[ "type": "select", "label": "<?php echo tr('Marca'); ?>", "name": "id_marca_edit", "id": "id_marca_edit", "value":"$id_marca$", "ajax-source": "marche", "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>" ]}
7474
</div>
7575
<div class="col-md-3">
7676
<?php echo !empty($record['id_modello']) ? Modules::link('Marche', $record['id_modello'], null, null, 'class="pull-right"') : ''; ?>
77-
{[ "type": "select", "label": "<?php echo tr('Modello'); ?>", "name": "id_modello", "value":"$id_modello$", "ajax-source": "modelli", "select-options": <?php echo json_encode(['id_marca' => $record['id_marca']]); ?>, "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>|id_original=<?php echo $record['id_marca']; ?>" ]}
77+
{[ "type": "select", "label": "<?php echo tr('Modello'); ?>", "name": "id_modello_edit", "id": "id_modello_edit", "value":"$id_modello$", "ajax-source": "modelli", "select-options": <?php echo json_encode(['id_marca' => $record['id_marca']]); ?>, "icon-after": "add|<?php echo Module::where('name', 'Marche')->first()->id; ?>|id_original=<?php echo $record['id_marca']; ?>" ]}
7878
</div>
7979
</div>
8080
<div class="row">
@@ -338,30 +338,45 @@
338338
});
339339
});
340340

341-
$("#categoria").change(function() {
341+
$("#categoria_edit").change(function() {
342342
updateSelectOption("id_categoria", $(this).val());
343343

344-
$("#subcategoria").val(null).trigger("change");
344+
$("#subcategoria_edit").val(null).trigger("change");
345+
346+
// Gestione del pulsante "aggiungi" per sottocategoria
347+
var sub = $("#subcategoria_edit");
348+
var button = sub.parent().find(".input-group-append button");
349+
350+
if($(this).val()) {
351+
button.removeClass("hide");
352+
var original = button.attr("onclick");
353+
if(original && original.indexOf("id_original=") !== -1) {
354+
var newOnclick = original.replace(/id_original=\d+/, "id_original=" + $(this).val());
355+
button.attr("onclick", newOnclick);
356+
}
357+
} else {
358+
button.addClass("hide");
359+
}
345360
});
346361

347362
// Gestione del cambio marca per aggiornare i modelli
348-
$("#id_marca").change(function() {
363+
$("#id_marca_edit").change(function() {
349364
updateSelectOption("id_marca", $(this).val());
350365

351366
// Reset del modello
352-
$("#id_modello").val(null).trigger("change");
367+
$("#id_modello_edit").val(null).trigger("change");
353368

354369
// Aggiornamento dell'icona "aggiungi" per il modello
355370
if($(this).val()) {
356-
var button = $("#id_modello").parent().find(".input-group-append button");
371+
var button = $("#id_modello_edit").parent().find(".input-group-append button");
357372
var original = button.attr("onclick");
358373
if(original) {
359374
var newOnclick = original.replace(/id_original=\d+/, "id_original=" + $(this).val());
360375
button.attr("onclick", newOnclick);
361376
button.removeClass("hide");
362377
}
363378
} else {
364-
$("#id_modello").parent().find(".input-group-append button").addClass("hide");
379+
$("#id_modello_edit").parent().find(".input-group-append button").addClass("hide");
365380
}
366381
});
367382

0 commit comments

Comments
 (0)