229 lines
8.2 KiB
PHP
229 lines
8.2 KiB
PHP
|
<?php
|
||
|
include_once(__DIR__."/../../core.php");
|
||
|
|
||
|
$op = $html->form('op', 'post');
|
||
|
|
||
|
switch($op){
|
||
|
|
||
|
//Aggiorno informazioni di base impianto
|
||
|
case "update":
|
||
|
|
||
|
if( isset($_POST['matricola']) ){
|
||
|
$matricola= save( $_POST['matricola'] );
|
||
|
|
||
|
$data = saveDate( $_POST['data'] );
|
||
|
$idtecnico = save( $_POST['idtecnico'] );
|
||
|
$idsede = save( $_POST['idsede'] );
|
||
|
$nome = save( $_POST['nome'] );
|
||
|
$descrizione = save( $_POST['descrizione'] );
|
||
|
$proprietario = save( $_POST['proprietario'] );
|
||
|
$palazzo = save( $_POST['palazzo'] );
|
||
|
$ubicazione = save( $_POST['ubicazione'] );
|
||
|
$scala = save( $_POST['scala'] );
|
||
|
$piano = save( $_POST['piano'] );
|
||
|
$interno = save( $_POST['interno'] );
|
||
|
$occupante = save( $_POST['occupante'] );
|
||
|
|
||
|
$query = "UPDATE my_impianti SET nome=\"$nome\",".
|
||
|
"matricola=\"$matricola\",".
|
||
|
"descrizione=\"$descrizione\",".
|
||
|
"idsede=\"$idsede\",".
|
||
|
"data=\"$data\",".
|
||
|
"proprietario=\"$proprietario\",".
|
||
|
"palazzo=\"$palazzo\",".
|
||
|
"ubicazione=\"$ubicazione\",".
|
||
|
"idtecnico=\"$idtecnico\",".
|
||
|
"scala=\"$scala\",".
|
||
|
"piano=\"$piano\",".
|
||
|
"interno=\"$interno\",".
|
||
|
"occupante=\"$occupante\"".
|
||
|
"WHERE id=\"".$id_record."\"";
|
||
|
$dbo->query( $query );
|
||
|
array_push( $_SESSION['infos'], "Informazioni salvate correttamente!" );
|
||
|
|
||
|
// log anagrafiche
|
||
|
add_storico_impianti($id_record,"Eseguito modifica installazione");
|
||
|
|
||
|
//Upload file/*
|
||
|
$f = pathinfo( $_FILES['immagine']['name'] );
|
||
|
$filename = $f['filename'].".jpg";
|
||
|
$tmp = $_FILES['immagine']['tmp_name'];
|
||
|
$upload_dir = $docroot."/files/".$modules_info['Installazioni']['module_dir'];
|
||
|
|
||
|
if( $_FILES['immagine']['name'] != '' ){
|
||
|
$filename = unique_filename( $filename, $upload_dir );
|
||
|
if( create_thumbnails( $tmp, $filename, $upload_dir ) ){
|
||
|
$dbo->query("UPDATE my_impianti SET immagine=\"".$filename."\" WHERE id=\"".$id_record."\"");
|
||
|
}
|
||
|
|
||
|
else{
|
||
|
array_push( $_SESSION['warnings'], "Errore durante il caricamento del file in ".$upload_dir."!" );
|
||
|
}
|
||
|
}
|
||
|
|
||
|
//Eliminazione file
|
||
|
if( $html->form('immagine','post') == 'deleteme' ){
|
||
|
$filename = $html->form('prev_immagine', 'post');
|
||
|
$f = pathinfo($filename);
|
||
|
|
||
|
if( @unlink($upload_dir."/".$f['filename'].".".$f['extension']) ){
|
||
|
$dbo->query("UPDATE my_impianti SET immagine='' WHERE id=\"".$id_record."\"");
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
//Aggiungo impianto
|
||
|
case "add":
|
||
|
$matricola = save( $_POST['matricola'] );
|
||
|
$idanagrafica = save( $_POST['idanagrafica'] );
|
||
|
$nome = save( $_POST['nome'] );
|
||
|
$idtecnico = save( $_POST['idtecnico'] );
|
||
|
|
||
|
if( isset($_POST['matricola']) ){
|
||
|
$query = "INSERT INTO my_impianti( matricola, idanagrafica, nome, data, idtecnico ) VALUES ( \"".$matricola."\", \"".$idanagrafica."\", \"".$nome."\", NOW(), \"".$idtecnico."\" )";
|
||
|
$id_record = $dbo->query( $query );
|
||
|
array_push( $_SESSION['infos'], "Aggiunto nuovo impianto!" );
|
||
|
// log anagrafiche
|
||
|
add_storico_impianti($id_record,"Aggiunto nuova installazione");
|
||
|
|
||
|
}
|
||
|
|
||
|
break;
|
||
|
|
||
|
|
||
|
//Carica i campi da compilare del componente
|
||
|
case "load_componente":
|
||
|
include_once($docroot."/modules/my_impianti/modutil.php");
|
||
|
|
||
|
$filename = $html->form('filename', 'post');
|
||
|
$idarticolo = $html->form('idarticolo', 'post');
|
||
|
|
||
|
|
||
|
//Se è stato specificato un idarticolo, carico il file .ini dal campo `contenuto` di quell'idarticolo
|
||
|
$rs = $dbo->fetchArray("SELECT contenuto, componente_filename FROM mg_articoli WHERE id=\"".$idarticolo."\"");
|
||
|
|
||
|
|
||
|
//Se i campi da caricare sono del componente già salvato leggo dal campo `contenuto`...
|
||
|
if( $rs[0]['componente_filename'] == $filename ){
|
||
|
$contenuto = read($rs[0]['contenuto']);
|
||
|
}
|
||
|
|
||
|
//...altrimenti carico dal file .ini
|
||
|
else{
|
||
|
if( file_exists( $docroot."/files/my_impianti/".$filename ) ){
|
||
|
$contenuto = file_get_contents( $docroot."/files/my_impianti/".$filename );
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$contenuto = str_replace( "`", "\"", $contenuto );
|
||
|
$ini_array = parse_ini_string( read($contenuto), true );
|
||
|
|
||
|
|
||
|
//Caricamento form per attributi componente
|
||
|
if( is_array($ini_array) && $ini_array['Nome']['valore']!='' ){
|
||
|
//per ogni sezione
|
||
|
$i = 0;
|
||
|
|
||
|
echo " <div class='row'>\n";
|
||
|
echo " <div class='col-md-12'>\n";
|
||
|
echo " <h4>Attributi per ".$ini_array['Nome']['valore']."</h4>\n";
|
||
|
echo " <input type='hidden' name='Nome' value=\"".$ini_array['Nome']['valore']."\" />\n";
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
|
||
|
|
||
|
foreach ($ini_array as $sezione => $array_impostazioni){
|
||
|
if( $sezione!='Nome' ){
|
||
|
$i++;
|
||
|
|
||
|
$nome = htmlentities($sezione, ENT_QUOTES, "UTF-8");
|
||
|
$tipo = $ini_array[$sezione]['tipo'];
|
||
|
$valore = $ini_array[$sezione]['valore'];
|
||
|
$opzioni = $ini_array[$sezione]['opzioni'];
|
||
|
|
||
|
( $tipo=='textarea' ) ? $valign="top" : $valign="middle";
|
||
|
|
||
|
echo " <div class='col-md-4'>\n";
|
||
|
echo " <div class='form-group'>\n";
|
||
|
echo " <label>".$nome.":</label>\n";
|
||
|
genera_campo( $nome, $tipo, $valore, $opzioni );
|
||
|
echo " </div>\n";
|
||
|
echo " </div>\n";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
exit;
|
||
|
|
||
|
//Aggiungo una riga
|
||
|
case "addriga":
|
||
|
if( $modules_info[$module_name]["permessi"] == 'rw' ){
|
||
|
$matricola = $id_record;
|
||
|
$idarticolo = save( $_POST['idarticolo'] );
|
||
|
$descrizione = save( $_POST['descrizione'] );
|
||
|
$seriale = save( $_POST['seriale'] );
|
||
|
$qta = force_decimal($_POST['qta']);
|
||
|
$d_seriale=$descrizione." - N°Seriale : ".$seriale;
|
||
|
$dbo->query("INSERT INTO my_impianti_righe( d_seriale,n_seriale,matricola, idarticolo, descrizione , qta ) VALUES
|
||
|
( '".$d_seriale."','".$seriale."','".$matricola."', '".$idarticolo."', \"".$descrizione."\", '".$qta."' )");
|
||
|
array_push( $_SESSION['infos'], "Articolo aggiunto!" );
|
||
|
// log anagrafiche
|
||
|
add_storico_impianti($id_record,"Aggiunto nuovo articolo");
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
|
||
|
case "editriga":
|
||
|
if( $modules_info[$module_name]["permessi"] == 'rw' ){
|
||
|
$idriga = $html->form('idriga', 'post');
|
||
|
$descrizione = save( $_POST['descrizione'] );
|
||
|
$seriale = save( $_POST['seriale'] );
|
||
|
$qta = force_decimal($_POST['qta']);
|
||
|
$d_seriale=$descrizione." - N°Seriale : ".$seriale;
|
||
|
//Modifica riga generica sul documento
|
||
|
$query = "UPDATE my_impianti_righe SET d_seriale=\"".$d_seriale."\", n_seriale=\"".$seriale."\", descrizione=\"".$descrizione."\", qta=\"".$qta."\" WHERE id=\"".$idriga."\"";
|
||
|
$dbo->query( $query );
|
||
|
array_push( $_SESSION['infos'], "Riga modificata!" );
|
||
|
// log anagrafiche
|
||
|
add_storico_impianti($id_record,"Articolo modificato");
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
//Scollegamento articolo
|
||
|
case "unlink_articolo":
|
||
|
if( $modules_info[$module_name]["permessi"] == 'rw' ){
|
||
|
if( isset($_POST['idriga']) ){
|
||
|
$idriga = save( $_POST['idriga'] );
|
||
|
$idarticolo = save( $_POST['idarticolo'] );
|
||
|
//Leggo la quantità di questo articolo
|
||
|
$query = "SELECT qta, subtotale FROM my_impianti_righe WHERE id='".$idrigapreventivo."'";
|
||
|
$rs = $dbo->fetchArray($query);
|
||
|
$qta = floatval( $rs[0]['qta'] );
|
||
|
$subtotale = $rs[0]['subtotale'];
|
||
|
//Elimino la riga
|
||
|
$dbo->query("DELETE FROM my_impianti_righe WHERE id=\"$idriga\"");
|
||
|
array_push( $_SESSION['infos'], "Riga rimossa!" );
|
||
|
// log anagrafiche
|
||
|
add_storico_impianti($id_record,"Articolo rimosso");
|
||
|
}
|
||
|
}
|
||
|
break;
|
||
|
|
||
|
|
||
|
|
||
|
//Rimuuovo impianto e scollego tutti i suoi componenti
|
||
|
case "delete":
|
||
|
$dbo->query("DELETE FROM my_impianti WHERE id=\"".$id_record."\"");
|
||
|
$dbo->query("DELETE FROM my_impianto_componenti WHERE idimpianto=\"".$id_record."\"");
|
||
|
$dbo->query("DELETE FROM my_impianti_interventi WHERE idimpianto=\"".$id_record."\"");
|
||
|
$dbo->query("DELETE FROM my_impianti_righe WHERE matricola=\"".$id_record."\"");
|
||
|
array_push( $_SESSION['infos'], "Impianto e relativi componenti eliminati!" );
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
//Annullo le notifiche se le operazioni sono fatte via ajax
|
||
|
if( $html->form('ajax', 'post') == 'yes' ){
|
||
|
unset( $_SESSION['infos'] );
|
||
|
}
|
||
|
?>
|