1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2024-12-25 23:33:02 +01:00
openstamanager/modules/categorie/actions.php
Thomas Zilio 9c5625c3bb Completo utilizzo delle funzionalità di Symfony Translator
Miglioramento nella gestione delle sostituzioni inline per le traduzioni, con aggiunta di alcune opzioni integrate per modificare l'output (tutto maiuscolo o tutto minuscolo).
Aggiunta della libreria danielstjules/stringy per migliorare la gestione delle stringhe con supporto completo alla codifica UTF-8.
2017-09-10 14:35:41 +02:00

87 lines
3.0 KiB
PHP

<?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));
$_SESSION['infos'][] = tr('Salvataggio completato!');
} else {
$_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio!');
}
break;
case 'add':
$nome = filter('nome');
if (isset($nome)) {
$dbo->query('INSERT INTO `mg_categorie` (`nome`) VALUES ('.prepare($nome).')');
$id_record = $dbo->lastInsertedID();
if (isAjaxRequest()) {
echo json_encode(['id' => $id_record, 'text' => $nome]);
}
$_SESSION['infos'][] = tr('Aggiunta nuova tipologia di _TYPE_', [
'_TYPE_' => 'categoria',
]);
} else {
$_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio!');
}
break;
case 'delete':
$id = filter('id');
if (empty($id)) {
$id = $id_record;
}
$res = $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).')');
if ($res) {
$dbo->query('DELETE FROM `mg_categorie` WHERE `id`='.prepare($id));
$_SESSION['infos'][] = tr('Tipologia di _TYPE_ eliminata con successo!', [
'_TYPE_' => 'categoria',
]);
} else {
$_POST['backto'] = 'record-edit';
$_SESSION['errors'][] = tr('Esistono ancora alcuni articoli sotto questa categoria!');
}
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]);
}
}
$_SESSION['infos'][] = tr('Salvataggio completato!');
$id_record = $original;
} else {
$_SESSION['errors'][] = tr('Ci sono stati alcuni errori durante il salvataggio!');
}
break;
}