2020-01-22 19:39:56 +01: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 />.
*/
2020-01-22 19:39:56 +01:00
include_once __DIR__ . '/../../core.php' ;
switch ( filter ( 'op' )) {
case 'update' :
$descrizione = filter ( 'descrizione' );
$colore = filter ( 'colore' );
2022-02-06 00:15:35 +01:00
$is_bloccata = filter ( 'is_bloccata' );
2020-01-22 19:39:56 +01:00
if ( isset ( $descrizione )) {
2024-03-22 15:52:24 +01:00
if ( $dbo -> fetchNum ( 'SELECT * FROM `an_relazioni` LEFT JOIN (`an_relazioni_lang` ON `an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`=' . prepare ( Models\Locale :: getDefault () -> id ) . ') WHERE `an_relazioni_lang`.`name`=' . prepare ( $descrizione ) . ' AND `an_relazioni`.`id`!=' . prepare ( $id_record )) == 0 ) {
2024-02-05 17:07:33 +01:00
$dbo -> query ( 'UPDATE `an_relazioni` SET `colore`=' . prepare ( $colore ) . ', `is_bloccata`=' . prepare ( $is_bloccata ) . ' WHERE `id`=' . prepare ( $id_record ));
$dbo -> query ( 'UPDATE `an_relazioni_lang` SET `name`=' . prepare ( $descrizione ) . ' WHERE `id_record`=' . prepare ( $id_record ));
2020-01-22 19:39:56 +01:00
flash () -> info ( tr ( 'Salvataggio completato.' ));
} else {
2022-09-19 10:18:29 +02:00
flash () -> error ( tr ( " E' già presente una relazione '_NAME_'. " , [
'_NAME_' => $descrizione ,
2020-01-22 19:39:56 +01:00
]));
}
} else {
2020-03-03 10:33:32 +01:00
flash () -> error ( tr ( 'Ci sono stati alcuni errori durante il salvataggio' ));
2020-01-22 19:39:56 +01:00
}
break ;
case 'add' :
$descrizione = filter ( 'descrizione' );
$colore = filter ( 'colore' );
2022-02-06 00:15:35 +01:00
$is_bloccata = filter ( 'is_bloccata' );
2020-01-22 19:39:56 +01:00
if ( isset ( $descrizione )) {
2024-03-22 15:52:24 +01:00
if ( $dbo -> fetchNum ( 'SELECT * FROM `an_relazioni` LEFT JOIN (`an_relazioni_lang` ON `an_relazioni`.`id`=`an_relazioni_lang`.`id_record` AND `an_relazioni_lang`.`id_lang`=' . prepare ( Models\Locale :: getDefault () -> id ) . ') WHERE `an_relazioni_lang`.`name`=' . prepare ( $descrizione )) == 0 ) {
2024-02-05 17:07:33 +01:00
$dbo -> query ( 'INSERT INTO `an_relazioni` (`colore`, `is_bloccata`) VALUES (' . prepare ( $colore ) . ', ' . prepare ( $is_bloccata ) . ' )' );
2020-01-22 19:39:56 +01:00
$id_record = $dbo -> lastInsertedID ();
2024-03-22 15:52:24 +01:00
$dbo -> query ( 'INSERT INTO `an_relazioni_lang` (`name`, `id_record`, `id_lang`) VALUES (' . prepare ( $descrizione ) . ', ' . prepare ( $id_record ) . ', ' . prepare ( Models\Locale :: getDefault () -> id ) . ')' );
2020-01-22 19:39:56 +01:00
if ( isAjaxRequest ()) {
echo json_encode ([ 'id' => $id_record , 'text' => $descrizione ]);
}
flash () -> info ( tr ( 'Aggiunta nuova relazione _NAME_' , [
'_NAME_' => $descrizione ,
]));
} else {
flash () -> error ( tr ( " E' già presente una relazione di _NAME_. " , [
'_NAME_' => $descrizione ,
]));
}
} else {
2020-03-03 10:33:32 +01:00
flash () -> error ( tr ( 'Ci sono stati alcuni errori durante il salvataggio' ));
2020-01-22 19:39:56 +01:00
}
break ;
case 'delete' :
2024-02-05 17:07:33 +01:00
$dbo -> query ( 'UPDATE `an_relazioni` SET `deleted_at`=NOW() WHERE `id`=' . prepare ( $id_record ));
2023-04-18 16:55:37 +02:00
flash () -> info ( tr ( 'Relazione _NAME_ eliminata con successo!' , [
'_NAME_' => $descrizione ,
]));
2020-01-22 19:39:56 +01:00
break ;
}