gest366/modules/categorie/actions.php

82 lines
3.0 KiB
PHP

<?php
include_once ("../../core.php");
if ($modules_info[$module_name]["permessi"] == 'rw') {
switch (filter('op')) {
case "update" :
$nome = filter("nome");
$nota = filter("nota");
$colore = filter("colore");
$id_conto_e = filter("id_conto_e");
$id_conto_u = filter("id_conto_u");
if (isset($nome) && isset($nota) && isset($colore)) {
$dbo->query("UPDATE `mg_categorie` SET `nome`=" . prepare($nome) . ", `id_conto_e`=" . prepare($id_conto_e) . ",`id_conto_u`=" . prepare($id_conto_u) . ",`nota`=" . prepare($nota) . ", `colore`=" . prepare($colore) . " WHERE `id`=" . prepare($id_record));
array_push($_SESSION["infos"], _("Salvataggio completato!"));
}
else
array_push($_SESSION["errors"], "Ci sono stati alcuni errori durante il salvataggio!");
break;
case "add" :
$nome = filter("nome");
if (isset($nome)) {
$id_record = $dbo->query("INSERT INTO `mg_categorie` (`nome`) VALUES (" . prepare($nome) . ")");
array_push($_SESSION["infos"], str_replace("_TYPE_", "categoria", _("Aggiunta nuova tipologia di _TYPE_")));
}
else
array_push($_SESSION["errors"], "Ci sono stati alcuni errori durante il salvataggio!");
break;
case "delete" :
$temp = filter('id');
if(isset($temp)) $id = $temp;
else $id = $temp;
$n = $dbo->fetchNum("SELECT * FROM `mg_articoli` WHERE `id_categoria`=" . prepare($id) . " OR `id_sottocategoria`=" . prepare($id));
$res = true;
$rs = $dbo->fetchArray("SELECT id FROM `mg_categorie` WHERE `parent`=" . prepare($id));
foreach ($rs as $r) {
if ($dbo->fetchNum("SELECT * FROM `mg_articoli` WHERE `id_categoria`=" . prepare($r["id"]) . " OR `id_sottocategoria`=" . prepare($r["id"])) != 0) $res = false;
}
if ($n == 0 && $res) {
$dbo->query("DELETE FROM `mg_categorie` WHERE `id`=" . prepare($id));
array_push($_SESSION["infos"], str_replace("_TYPE_", "categoria", _("Tipologia di _TYPE_ eliminata con successo!")));
}
else{
$_POST["backto"] = "record-edit";
array_push($_SESSION["errors"], "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) . ")");
array_push($_SESSION["infos"], _("Salvataggio completato!"));
$id_record = $original;
}
else{
array_push($_SESSION["errors"], "Ci sono stati alcuni errori durante il salvataggio!");
}
break;
}
}
//Annullo le notifiche se le operazioni sono fatte via ajax
if( $html->form('ajax', 'post') == 'yes' ){
unset( $_SESSION['infos'] );
}
?>