2017-08-04 16:28:16 +02:00
< ? php
2020-09-07 15:04:06 +02:00
/*
* OpenSTAManager : il software gestionale open source per l ' assistenza tecnica e la fatturazione
2021-01-20 15:08:51 +01:00
* Copyright ( C ) DevCode s . r . l .
2020-09-07 15:04:06 +02:00
*
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < https :// www . gnu . org / licenses />.
*/
2017-08-04 16:28:16 +02:00
2020-11-12 17:11:09 +01:00
use Carbon\Carbon ;
2020-03-16 09:28:40 +01:00
use Modules\Articoli\Articolo ;
use Modules\Articoli\Categoria ;
2021-08-31 15:46:14 +02:00
use Modules\CombinazioniArticoli\Combinazione ;
2022-04-27 10:33:02 +02:00
use Modules\Iva\Aliquota ;
2020-09-09 15:12:02 +02:00
use Util\Ini ;
2020-03-16 09:28:40 +01:00
2017-08-04 16:28:16 +02:00
include_once __DIR__ . '/../../core.php' ;
switch ( post ( 'op' )) {
2021-03-19 18:18:32 +01:00
case 'restore' :
$articolo -> restore ();
flash () -> info ( tr ( 'Articolo ripristinato correttamente!' ));
2024-01-15 15:30:45 +01:00
// Aggiunta articolo
// no break
2018-07-03 21:22:29 +02:00
case 'add' :
2024-01-15 15:30:45 +01:00
// Se non specifico il codice articolo lo imposto uguale all'id della riga
2019-06-29 11:01:26 +02:00
if ( empty ( post ( 'codice' ))) {
2019-12-13 15:13:19 +01:00
$codice = $dbo -> fetchOne ( 'SELECT MAX(id) as codice FROM mg_articoli' )[ 'codice' ] + 1 ;
2019-06-29 11:01:26 +02:00
} else {
2021-06-02 11:23:57 +02:00
$codice = post ( 'codice' , true );
2019-06-20 18:44:11 +02:00
}
2018-07-03 21:22:29 +02:00
2018-07-17 18:06:37 +02:00
// Inserisco l'articolo e avviso se esiste un altro articolo con stesso codice.
2020-07-06 17:52:10 +02:00
$numero_codice = Articolo :: where ([
[ 'codice' , $value ],
[ 'id' , '<>' , $id_record ],
]) -> count ();
if ( $numero_codice > 0 ) {
2019-06-20 18:59:49 +02:00
flash () -> warning ( tr ( 'Attenzione: il codice _CODICE_ è già stato utilizzato _N_ volta' , [
'_CODICE_' => $codice ,
2020-07-06 17:52:10 +02:00
'_N_' => $numero_codice ,
2019-06-20 18:59:49 +02:00
]));
2018-07-03 21:22:29 +02:00
}
2020-03-16 09:28:40 +01:00
$categoria = Categoria :: find ( post ( 'categoria' ));
$sottocategoria = Categoria :: find ( post ( 'subcategoria' ));
2024-02-29 15:10:55 +01:00
$articolo = Articolo :: build ( $codice , $categoria , $sottocategoria );
2020-03-16 09:28:40 +01:00
2020-03-19 13:26:50 +01:00
$articolo -> barcode = post ( 'barcode' );
2020-03-16 09:28:40 +01:00
$articolo -> threshold_qta = post ( 'threshold_qta' );
2022-03-07 09:35:58 +01:00
$articolo -> coefficiente = post ( 'coefficiente' );
$articolo -> idiva_vendita = post ( 'idiva_vendita' );
2020-03-16 09:28:40 +01:00
$articolo -> prezzo_acquisto = post ( 'prezzo_acquisto' );
2022-03-07 09:35:58 +01:00
if ( empty ( post ( 'coefficiente' ))) {
$articolo -> setPrezzoVendita ( post ( 'prezzo_vendita' ), post ( 'idiva_vendita' ));
}
2021-09-28 14:39:26 +02:00
$articolo -> idconto_vendita = post ( 'idconto_vendita' );
$articolo -> idconto_acquisto = post ( 'idconto_acquisto' );
2022-03-14 14:34:30 +01:00
$articolo -> abilita_serial = post ( 'abilita_serial' );
2022-07-25 09:57:47 +02:00
$articolo -> um = post ( 'um' );
$articolo -> um_secondaria = post ( 'um_secondaria' );
$articolo -> fattore_um_secondaria = post ( 'fattore_um_secondaria' );
2020-03-16 09:28:40 +01:00
$articolo -> save ();
2024-02-29 15:10:55 +01:00
$database -> query ( 'INSERT INTO `mg_articoli_lang` (`id_record`, `id_lang`, `name`) VALUES (' . $articolo -> id . ', ' . setting ( 'Lingua' ) . ', \'' . post ( 'descrizione' ) . '\')' );
2021-08-31 15:46:14 +02:00
// Aggiornamento delle varianti per i campi comuni
Combinazione :: sincronizzaVarianti ( $articolo );
2020-10-16 08:31:10 +02:00
if ( ! empty ( post ( 'qta' ))) {
2020-10-15 12:24:22 +02:00
$data_movimento = new Carbon ();
$articolo -> movimenta ( post ( 'qta' ), tr ( 'Carico manuale' ), $data_movimento -> format ( 'Y-m-d' ), true );
}
2020-03-16 09:28:40 +01:00
$id_record = $articolo -> id ;
2022-04-27 10:33:02 +02:00
$iva = post ( 'idiva_vendita' ) ? Aliquota :: find ( post ( 'idiva_vendita' )) : null ;
2018-07-19 17:48:02 +02:00
2018-11-27 00:32:24 +01:00
if ( isAjaxRequest ()) {
2019-11-12 17:16:10 +01:00
echo json_encode ([
'id' => $id_record ,
2021-06-02 11:23:57 +02:00
'text' => post ( 'codice' , true ) . ' - ' . post ( 'descrizione' ),
2019-11-12 17:16:10 +01:00
'data' => [
2020-06-08 15:12:41 +02:00
'prezzo_acquisto' => post ( 'prezzo_acquisto' ),
'prezzo_vendita' => post ( 'prezzo_vendita' ),
2022-04-27 10:33:02 +02:00
'idiva_vendita' => post ( 'idiva_vendita' ) ? : null ,
'iva_vendita' => $iva ? $iva -> descrizione : null ,
2022-07-25 09:57:47 +02:00
'um_secondaria' => post ( 'um_secondaria' ),
'um' => post ( 'um' ),
2019-11-12 17:16:10 +01:00
],
]);
2018-11-27 00:32:24 +01:00
}
2018-11-30 16:10:15 +01:00
2018-07-19 17:48:02 +02:00
flash () -> info ( tr ( 'Aggiunto un nuovo articolo' ));
2018-07-03 21:22:29 +02:00
break ;
2024-01-15 15:30:45 +01:00
// Modifica articolo
2018-07-03 21:22:29 +02:00
case 'update' :
2017-08-04 16:28:16 +02:00
$qta = post ( 'qta' );
2018-07-03 21:22:29 +02:00
2019-06-20 18:59:49 +02:00
// Inserisco l'articolo e avviso se esiste un altro articolo con stesso codice.
2020-07-06 17:55:16 +02:00
$numero_codice = Articolo :: where ([
[ 'codice' , $value ],
[ 'id' , '<>' , $id_record ],
]) -> count ();
if ( $numero_codice > 0 ) {
2019-06-20 18:59:49 +02:00
flash () -> warning ( tr ( 'Attenzione: il codice _CODICE_ è già stato utilizzato _N_ volta' , [
2021-06-02 11:23:57 +02:00
'_CODICE_' => post ( 'codice' , true ),
2020-07-06 17:55:16 +02:00
'_N_' => $numero_codice ,
2019-06-20 18:59:49 +02:00
]));
}
2021-06-02 11:23:57 +02:00
$articolo -> codice = post ( 'codice' , true );
2019-11-08 14:58:49 +01:00
$articolo -> barcode = post ( 'barcode' );
2019-10-01 18:01:00 +02:00
$articolo -> um = post ( 'um' );
$articolo -> id_categoria = post ( 'categoria' );
$articolo -> id_sottocategoria = post ( 'subcategoria' );
$articolo -> abilita_serial = post ( 'abilita_serial' );
2019-12-19 09:57:02 +01:00
$articolo -> ubicazione = post ( 'ubicazione' );
2019-10-01 18:01:00 +02:00
$articolo -> threshold_qta = post ( 'threshold_qta' );
2022-03-07 09:35:58 +01:00
$articolo -> coefficiente = post ( 'coefficiente' );
$articolo -> idiva_vendita = post ( 'idiva_vendita' );
2019-10-01 18:01:00 +02:00
$articolo -> prezzo_acquisto = post ( 'prezzo_acquisto' );
$articolo -> idconto_vendita = post ( 'idconto_vendita' );
$articolo -> idconto_acquisto = post ( 'idconto_acquisto' );
2019-11-12 18:45:52 +01:00
$articolo -> id_fornitore = post ( 'id_fornitore' );
2019-10-01 18:01:00 +02:00
$articolo -> gg_garanzia = post ( 'gg_garanzia' );
$articolo -> servizio = post ( 'servizio' );
$articolo -> volume = post ( 'volume' );
$articolo -> peso_lordo = post ( 'peso_lordo' );
2020-10-02 18:27:07 +02:00
$articolo -> um_secondaria = post ( 'um_secondaria' );
$articolo -> fattore_um_secondaria = post ( 'fattore_um_secondaria' );
2020-11-05 16:37:47 +01:00
$articolo -> qta_multipla = post ( 'qta_multipla' );
2022-11-15 17:38:42 +01:00
$articolo -> setMinimoVendita ( post ( 'minimo_vendita' ), post ( 'idiva_vendita' ));
2020-10-02 18:27:07 +02:00
2022-03-07 09:35:58 +01:00
if ( empty ( post ( 'coefficiente' ))) {
$articolo -> setPrezzoVendita ( post ( 'prezzo_vendita' ), post ( 'idiva_vendita' ));
}
2020-07-06 13:57:45 +02:00
2019-10-01 18:01:00 +02:00
$componente = post ( 'componente_filename' );
$articolo -> componente_filename = $componente ;
$articolo -> attivo = post ( 'attivo' );
$articolo -> note = post ( 'note' );
$articolo -> save ();
2017-08-04 16:28:16 +02:00
2024-02-29 15:10:55 +01:00
$database -> query ( 'UPDATE `mg_articoli_lang` SET `name` = ' . prepare ( post ( 'descrizione' )) . ' WHERE `id_record` = ' . prepare ( $id_record ) . ' AND `id_lang` = ' . prepare ( setting ( 'Lingua' )) . '' );
2021-08-31 15:46:14 +02:00
// Aggiornamento delle varianti per i campi comuni
Combinazione :: sincronizzaVarianti ( $articolo );
2017-08-04 16:28:16 +02:00
// Leggo la quantità attuale per capire se l'ho modificata
2023-01-24 18:30:45 +01:00
// TODO: gestire la movimentazione manuale per sede
$id_sede = 0 ;
$old_qta = $articolo -> getGiacenze ( post ( 'data_movimento' ));
$movimento = $qta - $old_qta [ $id_sede ][ 0 ];
2017-08-04 16:28:16 +02:00
2021-02-26 10:32:50 +01:00
$qta_manuale = post ( 'qta_manuale' );
if ( ! empty ( $qta_manuale )) {
2018-05-11 15:11:01 +02:00
$descrizione_movimento = post ( 'descrizione_movimento' );
$data_movimento = post ( 'data_movimento' );
2018-07-03 21:22:29 +02:00
2020-03-09 09:45:20 +01:00
$articolo -> movimenta ( $movimento , $descrizione_movimento , $data_movimento , true );
2017-08-04 16:28:16 +02:00
}
2018-07-03 21:22:29 +02:00
// Salvataggio info componente (campo `contenuto`)
2017-08-04 16:28:16 +02:00
if ( ! empty ( $componente )) {
2020-09-09 15:12:02 +02:00
$contenuto_precedente_esistente = ! empty ( $articolo -> contenuto );
2020-09-23 13:36:37 +02:00
$contenuto = file_get_contents ( base_dir () . '/files/impianti/' . $componente );
2020-09-09 15:12:02 +02:00
$contenuto_componente = Ini :: read ( $contenuto );
2017-08-04 16:28:16 +02:00
2020-09-09 15:12:02 +02:00
// Lettura dei campi esistenti per preservarne il valore
// Se non è presente un componente, copia i valori dal file di origine
$campi_componente = [];
foreach ( $contenuto_componente as $key => $value ) {
2024-01-15 15:30:45 +01:00
// Fix per nomi con spazi che vengono tradotti con "_" (es. Data_di_installazione)
2020-10-28 15:51:06 +01:00
$key = preg_replace ( '/\s+/' , '_' , $key );
2020-11-06 10:46:42 +01:00
2020-09-09 15:12:02 +02:00
$valore = $contenuto_precedente_esistente ? filter ( $key ) : $value [ 'valore' ];
$campi_componente [ $key ] = $valore ;
}
$contenuto = Ini :: write ( $contenuto , $campi_componente );
// Salvataggio dei dati
2024-02-29 15:10:55 +01:00
$dbo -> query ( 'UPDATE `mg_articoli` SET `contenuto`=' . prepare ( $contenuto ) . ' WHERE `id`=' . prepare ( $id_record ));
2019-11-26 17:03:25 +01:00
} else {
2024-02-29 15:10:55 +01:00
$dbo -> query ( 'UPDATE `mg_articoli` SET `contenuto` = \'\' WHERE `id`=' . prepare ( $id_record ));
2017-08-04 16:28:16 +02:00
}
// Upload file
2018-07-10 16:39:02 +02:00
if ( ! empty ( $_FILES ) && ! empty ( $_FILES [ 'immagine' ][ 'name' ])) {
2021-03-08 11:20:04 +01:00
$upload = Uploads :: upload ( $_FILES [ 'immagine' ], [
2018-07-03 21:22:29 +02:00
'name' => 'Immagine' ,
2021-09-01 13:27:11 +02:00
'category' => 'Immagini' ,
2018-07-03 21:22:29 +02:00
'id_module' => $id_module ,
'id_record' => $id_record ,
], [
'thumbnails' => true ,
]);
2021-03-08 11:20:04 +01:00
$filename = $upload -> filename ;
2018-07-03 21:22:29 +02:00
if ( ! empty ( $filename )) {
2018-07-10 16:39:02 +02:00
$dbo -> update ( 'mg_articoli' , [
'immagine' => $filename ,
], [
'id' => $id_record ,
]);
2017-08-04 16:28:16 +02:00
} else {
2019-10-01 18:01:00 +02:00
flash () -> warning ( tr ( " Errore durante il caricamento dell'immagine! " ));
2017-08-04 16:28:16 +02:00
}
}
// Eliminazione file
2018-07-10 16:39:02 +02:00
if ( post ( 'delete_immagine' ) !== null ) {
2018-07-18 15:20:10 +02:00
Uploads :: delete ( $record [ 'immagine' ], [
2018-07-03 21:22:29 +02:00
'id_module' => $id_module ,
'id_record' => $id_record ,
]);
2017-08-04 16:28:16 +02:00
2018-07-10 16:39:02 +02:00
$dbo -> update ( 'mg_articoli' , [
'immagine' => null ,
], [
'id' => $id_record ,
]);
2017-08-04 16:28:16 +02:00
}
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Informazioni salvate correttamente!' ));
2017-08-04 16:28:16 +02:00
break ;
2024-01-15 15:30:45 +01:00
// Duplica articolo
2018-07-19 17:48:02 +02:00
case 'copy' :
2019-04-19 20:52:02 +02:00
$new = $articolo -> replicate ();
2023-08-04 14:54:28 +02:00
2024-01-15 15:30:45 +01:00
// Se non specifico il codice articolo lo imposto uguale all'id della riga
2022-01-03 10:59:14 +01:00
if ( empty ( post ( 'codice' ))) {
2024-02-29 15:10:55 +01:00
$codice = $dbo -> fetchOne ( 'SELECT MAX(`id`) as codice FROM `mg_articoli`' )[ 'codice' ] + 1 ;
2022-01-03 10:59:14 +01:00
} else {
$codice = post ( 'codice' , true );
}
$new -> codice = $codice ;
2019-04-19 20:52:02 +02:00
$new -> qta = 0 ;
$new -> save ();
2018-09-26 15:37:46 +02:00
2020-04-14 08:49:48 +02:00
// Copia degli allegati
2020-07-31 08:44:05 +02:00
$copia_allegati = post ( 'copia_allegati' );
if ( ! empty ( $copia_allegati )) {
$allegati = $articolo -> uploads ();
foreach ( $allegati as $allegato ) {
$allegato -> copia ([
'id_module' => $new -> getModule () -> id ,
'id_record' => $new -> id ,
]);
}
2020-04-14 08:49:48 +02:00
}
// Salvataggio immagine relativa
$nome_immagine = $articolo -> immagine_upload -> name ;
$new -> immagine = $new -> uploads () -> where ( 'name' , $nome_immagine ) -> first () -> filename ;
$new -> save ();
2019-09-07 15:57:33 +02:00
$id_record = $new -> id ;
2018-09-26 15:37:46 +02:00
flash () -> info ( tr ( 'Articolo duplicato correttamente!' ));
2018-07-19 17:48:02 +02:00
2024-01-15 15:30:45 +01:00
break ;
2018-07-19 17:48:02 +02:00
2024-01-15 15:30:45 +01:00
// Generazione seriali in sequenza
2019-08-28 11:52:04 +02:00
case 'generate_serials' :
// Seriali
$serial_start = post ( 'serial_start' );
$serial_end = post ( 'serial_end' );
preg_match ( " /(.*?)([ \ d]* $ )/ " , $serial_start , $m );
$numero_start = intval ( $m [ 2 ]);
preg_match ( " /(.*?)([ \ d]* $ )/ " , $serial_end , $m );
$numero_end = intval ( $m [ 2 ]);
$totale = abs ( $numero_end - $numero_start ) + 1 ;
$prefix = rtrim ( $serial_end , $numero_end );
$pad_length = strlen ( $serial_end ) - strlen ( $prefix );
// Combinazione di seriali
$serials = [];
for ( $s = 0 ; $s < $totale ; ++ $s ) {
2024-01-15 15:30:45 +01:00
$serial = $prefix . str_pad ( $numero_start + $s , $pad_length , '0' , STR_PAD_LEFT );
2019-08-28 11:52:04 +02:00
$serials [] = $serial ;
2017-08-04 16:28:16 +02:00
}
2019-08-28 11:52:04 +02:00
2023-07-05 11:43:07 +02:00
if ( post ( 'check' )) {
echo json_encode ( $serials );
break ;
}
2019-08-28 16:58:47 +02:00
// no break
2019-08-28 11:52:04 +02:00
case 'add_serials' :
$serials = $serials ? : filter ( 'serials' );
$count = $dbo -> attach ( 'mg_prodotti' , [ 'id_articolo' => $id_record , 'dir' => 'uscita' ], [ 'serial' => $serials ]);
// Movimento il magazzino se l'ho specificato nelle impostazioni
if ( setting ( " Movimenta il magazzino durante l'inserimento o eliminazione dei lotti/serial number " )) {
2019-10-01 18:01:00 +02:00
$articolo -> movimenta ( $count , tr ( 'Carico magazzino con serial da _INIZIO_ a _FINE_' , [
2019-08-28 11:52:04 +02:00
'_INIZIO_' => $serial_start ,
'_FINE_' => $serial_end ,
2022-02-08 10:21:45 +01:00
]), date ( 'Y-m-d' ));
2017-08-04 16:28:16 +02:00
}
2017-09-12 18:14:42 +02:00
2019-08-28 11:52:04 +02:00
flash () -> info ( tr ( 'Aggiunti _NUM_ seriali!' , [
'_NUM_' => $count ,
]));
if ( $count != $totale ) {
2019-08-28 16:58:47 +02:00
flash () -> warning ( tr ( 'Alcuni seriali erano già presenti' ) . '...' );
2017-09-12 18:14:42 +02:00
}
2017-08-04 16:28:16 +02:00
break ;
case 'delprodotto' :
$idprodotto = post ( 'idprodotto' );
// Leggo info prodotto per descrizione mg_movimenti
$rs = $dbo -> fetchArray ( 'SELECT lotto, serial, altro FROM mg_prodotti WHERE id=' . prepare ( $idprodotto ));
$query = 'DELETE FROM mg_prodotti WHERE id=' . prepare ( $idprodotto );
if ( $dbo -> query ( $query )) {
// Movimento il magazzino se l'ho specificato nelle impostazioni
2018-07-08 18:11:17 +02:00
if ( setting ( " Movimenta il magazzino durante l'inserimento o eliminazione dei lotti/serial number " )) {
2019-10-01 18:01:00 +02:00
$articolo -> movimenta ( - 1 , tr ( 'Eliminazione dal magazzino del prodotto con serial _SERIAL_' , [
2017-09-10 14:35:41 +02:00
'_SERIAL_' => $rs [ 0 ][ 'serial' ],
2022-02-08 10:21:45 +01:00
]), date ( 'Y-m-d' ));
2017-08-04 16:28:16 +02:00
}
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Prodotto rimosso!' ));
2017-08-04 16:28:16 +02:00
}
break ;
2017-09-05 17:31:58 +02:00
case 'delmovimento' :
$idmovimento = post ( 'idmovimento' );
2018-07-03 21:22:29 +02:00
2018-07-03 10:29:53 +02:00
// Lettura qtà movimento
2018-07-03 21:22:29 +02:00
$rs = $dbo -> fetchArray ( 'SELECT idarticolo, qta FROM mg_movimenti WHERE id=' . prepare ( $idmovimento ));
2018-07-03 10:29:53 +02:00
$qta = $rs [ 0 ][ 'qta' ];
$idarticolo = $rs [ 0 ][ 'idarticolo' ];
2018-07-03 21:22:29 +02:00
2018-07-03 10:29:53 +02:00
// Aggiorno la quantità dell'articolo
2024-02-29 15:10:55 +01:00
$dbo -> query ( 'UPDATE `mg_articoli` SET `qta`=`qta`-' . $qta . ' WHERE `id`=' . prepare ( $idarticolo ));
2017-09-05 17:31:58 +02:00
$query = 'DELETE FROM mg_movimenti WHERE id=' . prepare ( $idmovimento );
if ( $dbo -> query ( $query )) {
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Movimento rimosso!' ));
2017-09-05 17:31:58 +02:00
}
break ;
2017-08-04 16:28:16 +02:00
case 'delete' :
2019-08-26 11:10:59 +02:00
$articolo -> delete ();
2017-08-04 16:28:16 +02:00
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Articolo eliminato!' ));
2017-08-04 16:28:16 +02:00
break ;
2022-10-18 11:28:06 +02:00
case 'add-movimento' :
$articolo = Articolo :: find ( post ( 'idarticolo' ));
$tipo_movimento = post ( 'tipo_movimento' );
$descrizione = post ( 'movimento' );
$data = post ( 'data' );
$qta = post ( 'qta' );
$idsede_partenza = post ( 'idsede_partenza' );
$idsede_destinazione = post ( 'idsede_destinazione' );
if ( $tipo_movimento == 'carico' || $tipo_movimento == 'scarico' ) {
if ( $tipo_movimento == 'carico' ) {
$id_sede_azienda = $idsede_destinazione ;
$id_sede_controparte = 0 ;
} elseif ( $tipo_movimento == 'scarico' ) {
$id_sede_azienda = $idsede_partenza ;
$id_sede_controparte = 0 ;
$qta = - $qta ;
}
// Registrazione del movimento con variazione della quantità
$articolo -> movimenta ( $qta , $descrizione , $data , 1 , [
'idsede' => $id_sede_azienda ,
]);
} elseif ( $tipo_movimento == 'spostamento' ) {
// Registrazione del movimento verso la sede di destinazione
$articolo -> registra ( $qta , $descrizione , $data , 1 , [
'idsede' => $idsede_destinazione ,
]);
// Registrazione del movimento dalla sede di origine
$articolo -> registra ( - $qta , $descrizione , $data , 1 , [
'idsede' => $idsede_partenza ,
]);
}
break ;
2017-08-04 16:28:16 +02:00
}
2018-07-03 21:22:29 +02:00
// Operazioni aggiuntive per l'immagine
2021-03-04 15:24:20 +01:00
if ( filter ( 'op' ) == 'rimuovi-allegato' && filter ( 'filename' ) == $record [ 'immagine' ]) {
2018-07-04 12:57:53 +02:00
$dbo -> update ( 'mg_articoli' , [
2018-07-10 16:39:02 +02:00
'immagine' => null ,
2018-07-04 12:57:53 +02:00
], [
'id' => $id_record ,
]);
2021-03-04 15:24:20 +01:00
} elseif ( filter ( 'op' ) == 'aggiungi-allegato' && filter ( 'nome_allegato' ) == 'Immagine' ) {
2018-07-04 12:57:53 +02:00
$dbo -> update ( 'mg_articoli' , [
2021-03-15 09:50:02 +01:00
'immagine' => $upload -> filename ,
2018-07-04 12:57:53 +02:00
], [
'id' => $id_record ,
]);
2018-07-03 21:22:29 +02:00
}