2017-08-04 16:28:16 +02:00
< ? php
include_once __DIR__ . '/../../core.php' ;
switch ( filter ( 'op' )) {
case 'update' :
$nome = filter ( 'nome' );
$nota = filter ( 'nota' );
$colore = filter ( 'colore' );
if ( isset ( $nome ) && isset ( $nota ) && isset ( $colore )) {
$dbo -> query ( 'UPDATE `mg_categorie` SET `nome`=' . prepare ( $nome ) . ', `nota`=' . prepare ( $nota ) . ', `colore`=' . prepare ( $colore ) . ' WHERE `id`=' . prepare ( $id_record ));
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Salvataggio completato!' ));
2017-08-04 16:28:16 +02:00
} else {
2018-07-19 17:29:21 +02:00
flash () -> error ( tr ( 'Ci sono stati alcuni errori durante il salvataggio!' ));
2017-08-04 16:28:16 +02:00
}
break ;
case 'add' :
$nome = filter ( 'nome' );
2018-07-07 13:56:22 +02:00
$nota = filter ( 'nota' );
2018-07-04 11:01:09 +02:00
$colore = filter ( 'colore' );
2017-08-04 16:28:16 +02:00
2020-02-05 14:51:39 +01:00
$n = $dbo -> fetchNum ( 'SELECT * FROM `mg_categorie` WHERE `nome` LIKE ' . prepare ( $nome ));
2020-02-04 13:04:09 +01:00
2017-08-04 16:28:16 +02:00
if ( isset ( $nome )) {
2020-02-05 14:51:39 +01:00
if ( $n == 0 ) {
2020-02-04 13:04:09 +01:00
$dbo -> query ( 'INSERT INTO `mg_categorie` (`nome`, `colore`, `nota`) VALUES (' . prepare ( $nome ) . ', ' . prepare ( $colore ) . ', ' . prepare ( $nota ) . ')' );
2017-08-04 16:28:16 +02:00
2020-02-04 13:04:09 +01:00
$id_record = $dbo -> lastInsertedID ();
2017-08-04 16:28:16 +02:00
2020-02-04 13:04:09 +01:00
if ( isAjaxRequest ()) {
echo json_encode ([ 'id' => $id_record , 'text' => $nome ]);
}
2017-08-04 16:28:16 +02:00
2020-02-04 13:04:09 +01:00
flash () -> info ( tr ( 'Aggiunta nuova tipologia di _TYPE_' , [
'_TYPE_' => 'categoria' ,
]));
2020-02-05 14:51:39 +01:00
} else {
2020-02-04 13:04:09 +01:00
flash () -> error ( tr ( 'Esiste già una categoria con lo stesso nome!' ));
}
2017-08-04 16:28:16 +02:00
} else {
2018-07-19 17:29:21 +02:00
flash () -> error ( tr ( 'Ci sono stati alcuni errori durante il salvataggio!' ));
2017-08-04 16:28:16 +02:00
}
break ;
case 'delete' :
$id = filter ( 'id' );
if ( empty ( $id )) {
$id = $id_record ;
}
2018-06-26 14:30:26 +02:00
if ( $dbo -> fetchNum ( 'SELECT * FROM `mg_articoli` WHERE `id_categoria`=' . prepare ( $id ) . ' OR `id_sottocategoria`=' . prepare ( $id ) . ' OR `id_sottocategoria` IN (SELECT id FROM `mg_categorie` WHERE `parent`=' . prepare ( $id ) . ')' ) == 0 ) {
2017-08-04 16:28:16 +02:00
$dbo -> query ( 'DELETE FROM `mg_categorie` WHERE `id`=' . prepare ( $id ));
2018-07-07 13:56:22 +02:00
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Tipologia di _TYPE_ eliminata con successo!' , [
2017-09-10 14:35:41 +02:00
'_TYPE_' => 'categoria' ,
2018-07-07 13:56:22 +02:00
]));
2017-08-04 16:28:16 +02:00
} else {
2020-03-18 22:24:18 +01:00
flash () -> error ( tr ( 'Esistono alcuni articoli collegati a questa categoria. Impossibile eliminarla.' ));
2017-08-04 16:28:16 +02:00
}
break ;
case 'row' :
$nome = filter ( 'nome' );
$nota = filter ( 'nota' );
$colore = filter ( 'colore' );
$original = filter ( 'id_original' );
if ( isset ( $nome ) && isset ( $nota ) && isset ( $colore )) {
if ( isset ( $id_record )) {
$dbo -> query ( 'UPDATE `mg_categorie` SET `nome`=' . prepare ( $nome ) . ', `nota`=' . prepare ( $nota ) . ', `colore`=' . prepare ( $colore ) . ' WHERE `id`=' . prepare ( $id_record ));
} else {
$dbo -> query ( 'INSERT INTO `mg_categorie` (`nome`,`nota`,`colore`, `parent`) VALUES (' . prepare ( $nome ) . ', ' . prepare ( $nota ) . ', ' . prepare ( $colore ) . ', ' . prepare ( $original ) . ')' );
$id_record = $dbo -> lastInsertedID ();
if ( isAjaxRequest ()) {
echo json_encode ([ 'id' => $id_record , 'text' => $nome ]);
}
}
2018-07-19 17:29:21 +02:00
flash () -> info ( tr ( 'Salvataggio completato!' ));
2017-08-04 16:28:16 +02:00
$id_record = $original ;
} else {
2018-07-19 17:29:21 +02:00
flash () -> error ( tr ( 'Ci sono stati alcuni errori durante il salvataggio!' ));
2017-08-04 16:28:16 +02:00
}
break ;
}