form('op', 'post') ){ case "update": $idintervento = $html->form('id_record'); if( $modules_info[$module_name]["permessi"] == 'rw' ){ include ($docroot . "/lib/salva_personalizzati.php"); $idtipoagenda = save( $_POST['idtipoagenda'] ); $idstatoagenda = save( $_POST['idstatoagenda'] ); $data = saveDate( $_POST['data'] ); $data_richiesta = saveDate( $_POST['data_richiesta'] ); $richiesta = save($_POST['richiesta']); $descrizione = save($_POST['descrizione']); $idsede = save( $_POST['idsede'] ); $ora_sla = saveTime( $_POST['ora_sla'] ); $filename = save( $_POST['componente_filename'] ); $idtipodoc = save( $_POST['idtipodoc'] ); $iddocumento = save( $_POST['iddocumento'] ); $data_documento=query_secca("","data","co_documenti","where id ='".$iddocumento."'"); if( $_POST['data_sla']!="" ){ $data_sla = saveDate( $_POST['data_sla'] ); } $n_tecnici = 0; $array_interventi = array(); foreach( $_POST['orario'] as $idriga => $valore ){ $orario = $_POST['orario'][$idriga]; $v = explode( ' - ', $orario ); $orario_inizio = saveDateTime( $v[0] ); $orario_fine = saveDateTime( $v[1] ); if( $user_idanagrafica!='' && $_SESSION['gruppo']=='Tecnici' ){ if ($_POST['idtecnico'][$idriga] == $user_idanagrafica){ if( !$dbo->query("UPDATE agenda_anagrafica SET idintervento=\"".$idintervento."\", idtecnico=\"".$_POST['idtecnico'][$idriga]."\", idtipoagenda=\"".$_POST['idtipoagendat'][$idriga]."\", orario_inizio=\"".$orario_inizio."\", orario_fine=\"".$orario_fine."\", km=\"".$km."\", prezzo_ore_unitario=\"".$prezzo_ore_unitario."\", prezzo_km_unitario=\"".$prezzo_km_unitario."\", prezzo_ore_consuntivo=\"".$prezzo_ore_consuntivo."\", prezzo_km_consuntivo=\"".$prezzo_km_consuntivo."\", prezzo_dirittochiamata=\"".$prezzo_dirittochiamata."\", prezzo_ore_unitario_tecnico=\"".$prezzo_ore_unitario_tecnico."\", prezzo_km_unitario_tecnico=\"".$prezzo_km_unitario_tecnico."\", prezzo_ore_consuntivo_tecnico=\"".$prezzo_ore_consuntivo_tecnico."\", prezzo_km_consuntivo_tecnico=\"".$prezzo_km_consuntivo_tecnico."\", prezzo_dirittochiamata_tecnico=\"".$prezzo_dirittochiamata_tecnico."\", ore=\"".force_decimal($_POST['ore'][$idriga])."\" WHERE id=\"".$idriga."\" " ) ){ array_push( $_SESSION['infos'], "Errore durante il salvataggio della sessione di lavoro #".$idriga."!" ); } } else { array_push( $_SESSION['infos'], "Non hai i permessi per apportare queste modifiche!" ); } } else{ if( !$dbo->query("UPDATE agenda_anagrafica SET idintervento=\"".$idintervento."\", idtecnico=\"".$_POST['idtecnico'][$idriga]."\", idtipoagenda=\"".$_POST['idtipoagendat'][$idriga]."\", orario_inizio=\"".$orario_inizio."\", orario_fine=\"".$orario_fine."\" WHERE id=\"".$idriga."\" " ) ){ array_push( $_SESSION['infos'], "Errore durante il salvataggio della sessione di lavoro #".$idriga."!" ); } } } $query = "UPDATE agenda SET data_richiesta=\"$data_richiesta\",". "richiesta=\"$richiesta\",". "descrizione=\"$descrizione\",". "idstatoagenda=\"$idstatoagenda\",". "idsede=\"$idsede\",". "data_sla=\"$data_sla\",". "ora_sla=\"$ora_sla\",". "ass_idtipodocumento=\"$idtipodoc\",". "ass_iddocumento=\"$iddocumento\",". "ass_data_documento=\"$data_documento\",". "componente_filename=\"$filename\",". "idtipoagenda=\"$idtipoagenda\" WHERE idintervento=\"$idintervento\" ".$additional_where['Interventi']; $dbo->query( $query ); $post_array = array(); foreach( $_POST as $impostazione_post=>$valore_impostazione_post ){ //Creo l'array con tutti i valori passati dal POST $impostazione_post = str_replace( "_", " ", $impostazione_post ); $post_array[$impostazione_post] = save($valore_impostazione_post); } $nome = save($_POST['Nome']); //Lettura info componente if( file_exists($docroot."/files/my_impianti/".$filename) ) $contenuto = file_get_contents( $docroot."/files/my_impianti/".$filename ); else $contenuto = ''; //Converto 'contenuto' di questo componente in un array $ini_array = parse_ini_string( $contenuto, true ); //Creo variabile contenuto temporaneo $contenuto_tmp = array(); //Resetto il valore di contenuto $contenuto = ''; //Per ogni sezione dell'array estratto dal file ini foreach ($ini_array as $sezione => $array_impostazioni){ $sezione = str_replace( "\r\n", "\n", $sezione ); $sezione = str_replace( "\n", "
", $sezione ); $contenuto .= "["".$sezione.""]\n"; //Per ogni impostazione foreach ($array_impostazioni as $impostazione => $valore_impostazione){ if ($impostazione=='valore'){ $da = array($impostazione => $valore_impostazione); $a = array($impostazione => $post_array[$sezione]); $contenuto_tmp = array_replace($ini_array[$sezione], $da, $a); foreach ($contenuto_tmp as $impostazione_tmp => $valore_impostazione_tmp){ $valore = $valore_impostazione_tmp; $valore = str_replace( "\r\n", "\n", $valore ); $valore = str_replace( "\n", "
", $valore ); $contenuto .= save($impostazione_tmp)." = "".save($valore).""\n"; } } } } $dbo->query("UPDATE agenda SET contenuto=\"".($contenuto)."\" WHERE idintervento='".$idintervento."'"); array_push( $_SESSION['infos'], "Informazioni salvate correttamente!" ); } break; case "add": $idintervento = save ($_POST['idintervento']); $rs = $dbo->fetchArray( "SELECT idintervento FROM agenda WHERE idintervento=\"".$idintervento."\"" ); $n = sizeof($rs); if ($n>0){ do{ if( $html->form('ref', 'post') != 'agenda' ){ array_push( $_SESSION['warnings'], "Numero appuntamento '".$idintervento."' saltato perchè già esistente!" ); } $rs = $dbo->fetchArray( "SELECT idintervento FROM agenda WHERE idintervento=\"".$idintervento."\"" ); $n = sizeof($rs); $new_codice = get_next_code( $idintervento, 1, get_var("Formato codice agenda") ); if (!is_numeric($new_codice)): $new_codice = get_next_code( $idintervento, 1, get_var("Formato codice agenda") ); endif; $idintervento = $new_codice; } while ($n==0); if( $html->form('ref', 'post') != 'agenda' ){ array_push( $_SESSION['warnings'], "Nuovo numero appuntamento calcolato '".$idintervento."'" ); } } //controllo permessi if( $modules_info[$module_name]["permessi"] == 'rw' ){ $idanagrafica = save( $_POST['idanagrafica'] ); $idtipoagenda = save( $_POST['idtipoagenda'] ); $idstatoagenda = save( $_POST['idstatoagenda'] ); $idsede = save( $_POST['idsede'] ); $data = savedate( $_POST['data'] ); $data_richiesta = savedate( $_POST['data_richiesta'] ); $richiesta = save( $_POST['richiesta'] ); $orario_inizio = str_replace( ".", ":", $_POST['orario_inizio'] ); $orario_fine = str_replace( ".", ":", $_POST['orario_fine'] ); $n_tecnici = sizeof($_POST['idtecnici']); $q = "SELECT * FROM agenda_tipi WHERE idtipoagenda='".$idtipoagenda."'"; if ( $dbo->fetchNum($q) == 1 ){ $rs = $dbo->fetchArray( $q ); if( isset($_POST['idintervento']) && isset($_POST['idanagrafica']) && isset($_POST['idtipoagenda']) ){ $dbo->query("INSERT INTO agenda( idintervento, idanagrafica, idtipoagenda, idstatoagenda, idsede, data_richiesta, richiesta ) VALUES (\"".$idintervento."\", \"".$idanagrafica."\", \"".$idtipoagenda."\", \"".$idstatoagenda."\", \"".$idsede."\", \"".$data_richiesta."\", \"".$richiesta."\" )" ); $id_record = $idintervento; if( $html->form('ref', 'post') != 'agenda' ){ array_push( $_SESSION['infos'], "Aggiunto nuovo appuntamento!" ); } } ( !is_array($_POST['idtecnico']) ) ? $idtecnici=array( $_POST['idtecnico'] ) : $idtecnici=$_POST['idtecnico']; foreach( $idtecnici as $idtecnico ){ $dbo->query("INSERT INTO agenda_anagrafica( idintervento, idtecnico, idtipoagenda, idstatoagenda, orario_inizio, orario_fine ) VALUES( \"".$idintervento."\", \"".$idtecnico."\", \"".$idtipoagenda."\", \"".$idstatoagenda."\", \"".( date("Y-m-d", strtotime($data)) )." ".$orario_inizio."\", \"".( date("Y-m-d", strtotime($data)) )." ".$orario_fine."\")"); } }else{ array_push( $_SESSION['errors'], "Il tipo di appuntamento scelto non é valido!" ); } } //fine controllo permessi if($html->form('ref', 'post') != 'agenda'){ echo $idintervento; } break; case "delete": $idintervento = $id_record; if( $modules_info[$module_name]["permessi"] == 'rw' ){ $query="DELETE FROM agenda WHERE idintervento=\"$idintervento\" ".$additional_where['Interventi']; $rs = $dbo->query($query); $query = "DELETE FROM agenda_anagrafica WHERE idintervento=\"$idintervento\""; $rs = $dbo->query($query); array_push( $_SESSION['infos'], "Appuntamento \"".$idintervento."\" eliminato!" ); } break; } ?>