diff --git a/modules/anagrafiche/actions.php b/modules/anagrafiche/actions.php
index cab960a..49051df 100644
--- a/modules/anagrafiche/actions.php
+++ b/modules/anagrafiche/actions.php
@@ -1,443 +1,452 @@
-form('op', 'post') ){
- case "update":
-
- $idanagrafica = $_POST['id_record'];
- if( $modules_info[$module_name]["permessi"] == 'rw' ){
-
- //leggo tutti i valori passati dal POST e li salvo in un array
- $html_post = array();
- foreach ($_POST as $key => $value) {
- $html_post[$key] = save($value);
- }
-
- if( isset($_POST['id_record']) ){
-
-
- include ($docroot . "/lib/salva_personalizzati.php");
-
-
- $data_nascita = saveDate($html_post['data_nascita']);
- if( $data_nascita == '' ){
- $data_nascita = '';
- }
-
- ( $_POST['perc_netto'] == 'on' ) ? $perc_netto=1 : $perc_netto=0;
- ( $_POST['perc_iva'] == 'on' ) ? $perc_iva=1 : $perc_iva=0;
- $perc_agente = force_decimal($_POST['perc_agente']);
-
- $query = "UPDATE an_anagrafiche SET ".
-
- "componente_filename=\"".$html_post['componente_filename']."\",".
- "ragione_sociale=\"".$html_post['ragione_sociale']."\",".
- "tipo=\"".$html_post['tipo']."\",".
- "piva=\"".$html_post['piva']."\",".
- "codice_fiscale=\"".$html_post['codice_fiscale']."\",".
- "data_nascita=\"".$data_nascita."\",".
- "luogo_nascita=\"".$html_post['luogo_nascita']."\",".
- "sesso=\"".$html_post['sesso']."\",".
- "capitale_sociale=\"".$html_post['capitale_sociale']."\",".
- "indirizzo=\"".$html_post['indirizzo']."\",".
- "indirizzo2=\"".$html_post['indirizzo2']."\",".
- "citta=\"".$html_post['citta']."\",".
- "cap=\"".$html_post['cap']."\",".
- "provincia=\"".$html_post['provincia']."\",".
- "km=\"".str_replace( ",", ".", $html_post['km'] )."\",".
- "id_nazione=\"".$html_post['nazione']."\",".
- "telefono=\"".$html_post['telefono']."\",".
- "cellulare=\"".$html_post['cellulare']."\",".
- "fax=\"".$html_post['fax']."\",".
- "email=\"".$html_post['email']."\",".
- "idsede_fatturazione=\"".$html_post['idsede_fatturazione']."\",".
- "note=\"".$html_post['note']."\",".
- "codiceri=\"".$html_post['codiceri']."\",".
- "codicerea=\"".$html_post['codicerea']."\",".
- "appoggiobancario=\"".$html_post['appoggiobancario']."\",".
- "filiale=\"".$html_post['filiale']."\",".
- "codiceiban=\"".$html_post['codiceiban']."\",".
- "bic=\"".$html_post['bic']."\",".
- "diciturafissafattura=\"".$html_post['diciturafissafattura']."\",".
- "idpagamento=\"".$html_post['idpagamento']."\",".
- "idlistino=\"".$html_post['idlistino']."\",".
- "idiva=\"".$html_post['idiva']."\",".
- "settore=\"".$html_post['settore']."\",".
- "marche=\"".$html_post['marche']."\",".
- "dipendenti=\"".$html_post['dipendenti']."\",".
- "macchine=\"".$html_post['macchine']."\",".
- "idagente=\"".$html_post['idagente']."\",".
- "idrelazione=\"".$html_post['idrelazione']."\",".
- "sitoweb=\"".$html_post['sitoweb']."\",".
- "idzona=\"".$html_post['idzona']."\",".
- "nome_cognome=\"".$html_post['nome_cognome']."\",".
- "iscrizione_tribunale=\"".$html_post['iscrizione_tribunale']."\",".
- "cciaa=\"".$html_post['cciaa']."\",".
- "cciaa_citta=\"".$html_post['cciaa_citta']."\",".
- "n_alboartigiani=\"".$html_post['n_alboartigiani']."\",".
- "foro_competenza=\"".$html_post['foro_competenza']."\",".
- "colore=\"".$html_post['colore']."\",".
- "colore_marker=\"".$html_post['colore_marker']."\",".
- "cod_sogei=\"".$html_post['cod_sogei']."\",".
- "lng=\"".$html_post['lng']."\",".
- "lat=\"".$html_post['lat']."\",".
- "cod_sogei_pec=\"".$html_post['cod_sogei_pec']."\",".
- "perc_agente=\"".$perc_agente."\",".
- "perc_netto=\"".$perc_netto."\",".
- "esigibilita_iva=\"".$html_post['esigibilita_iva']."\",".
- "identificativo_xml=\"".$html_post['identificativo_xml']."\",".
- "perc_iva=\"".$perc_iva."\",".
- "default_ritenuta_acconto=\"".$html_post['default_ritenuta_acconto']."\",". // release 2.3.5
- "default_rivalsa_inps=\"".$html_post['default_rivalsa_inps']."\",". // release 2.3.5
- "idtipointervento_default=\"".$html_post['idtipointervento_default']."\"".
- "WHERE idanagrafica='$idanagrafica' ".$additional_where['Anagrafiche'];
-
- $rs = $dbo->query( $query );
-
-
- // log anagrafiche
- add_storico($idanagrafica,"Eseguito modifica salvataggio anagrafica");
-
-
- // testo se inserito banca appoggiobancario
-
- $idbanca_vendite=$html_post['idbanca_vendite'];
- if( $idbanca_vendite > 0 ){
- $rs_banca = $dbo->fetchArray("SELECT * FROM co_banche WHERE id='".$idbanca_vendite."'");
- $query = "UPDATE an_anagrafiche SET idbanca_vendite='".$idbanca_vendite."', appoggiobancario='".$rs_banca[0]['nome']."', filiale='".$rs_banca[0]['filiale']."',codiceiban='".$rs_banca[0]['iban']."',bic='".$rs_banca[0]['bic']."' WHERE idanagrafica='$idanagrafica'";
- $rs = $dbo->query( $query );
-
-
-
-
-
- }
-
- /*
- Salvataggio info componente (campo `contenuto`)
- */
- $filename = save( $_POST['componente_filename'] );
-
- $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){
-
- //Quando trovo l'impostazione 'valore' la sostituisco con il valore passato dal post
- 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 an_anagrafiche SET contenuto=\"".($contenuto)."\" WHERE idanagrafica='".$idanagrafica."'");
-
-
-
- array_push( $_SESSION['infos'], "Informazioni per l'anagrafica ''".$html_post['ragione_sociale']."'' salvate correttamente!");
-
- //Aggiorno il codice anagrafica se non è già presente, altrimenti lo ignoro
- $esiste = $dbo->fetchNum("SELECT idanagrafica FROM an_anagrafiche WHERE codice=\"".$html_post['codice']."\" AND NOT idanagrafica=\"".$idanagrafica."\"", 1);
-
-
- //Aggiorno gli agenti
-
- $dbo->query("DELETE FROM an_anagrafiche_agenti WHERE idanagrafica=\"".$idanagrafica."\"");
- $rs = $dbo->fetchArray("SELECT idagente FROM an_anagrafiche WHERE idanagrafica='".$idanagrafica."'");
- $idagente = $rs[0]['idagente'];
- $dbo->query("INSERT INTO an_anagrafiche_agenti( idanagrafica, idagente ) VALUES( \"".$idanagrafica."\", \"".$idagente."\" )");
-
-
-
- //Aggiorno le tipologie di anagrafica
- $dbo->query("DELETE FROM an_tipianagrafiche_anagrafiche WHERE idanagrafica=\"".$idanagrafica."\"");
-
- foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
-
- $dbo->query("INSERT INTO an_tipianagrafiche_anagrafiche(idtipoanagrafica,idanagrafica) VALUES( \"".$idtipoanagrafica."\", \"".$idanagrafica."\" )");
-
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
- $tipoanagrafica_desc = $rs[0]['descrizione'];
-
-
- if (($tipoanagrafica_desc=='Azienda') and ( get_var("Azienda predefinita") == "0" ))
- array_push( $_SESSION['infos'], "Sembra che tu abbia inserito la tua anagrafica Azienda, ricordati di impostarla come predefinita dal menù ''Strumenti -> Impostazioni -> Generali''." );
-
-
- }
-
-
-
- //Verifico se esiste già l'associazione dell'anagrafica a conti del partitario
- $rs = $dbo->fetchArray("SELECT idconto_cliente, idconto_fornitore FROM an_anagrafiche WHERE idanagrafica=\"".$idanagrafica."\"");
- $idconto_cliente = $rs[0]['idconto_cliente'];
- $idconto_fornitore = $rs[0]['idconto_fornitore'];
-
-
- //Creo il relativo conto nel partitario se non esiste
- if( $idconto_cliente == '0' ){
- foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica=\"".$idtipoanagrafica."\"");
-
- if( $rs[0]['descrizione'] == 'Cliente' ){
- //Calcolo prossimo numero cliente
- $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Crediti clienti e crediti diversi'");
- $new_numero = $rs[0]['max_numero'] + 1;
- $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
-
- $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$html_post['ragione_sociale']."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Crediti clienti e crediti diversi'), 1, 1 )");
- $idconto = $dbo->last_inserted_id();
-
- //Collegamento conto
- $dbo->query("UPDATE an_anagrafiche SET idconto_cliente=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
- }
- }
- }
-
-
- if( $idconto_fornitore == '0' ){
- foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica=\"".$idtipoanagrafica."\"");
-
- if( $rs[0]['descrizione'] == 'Fornitore' ){
- //Calcolo prossimo numero cliente
- $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Debiti fornitori e debiti diversi'");
- $new_numero = $rs[0]['max_numero'] + 1;
- $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
-
- $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$html_post['ragione_sociale']."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Debiti fornitori e debiti diversi'), 1, 1 )");
- $idconto = $dbo->last_inserted_id();
-
- //Collegamento conto
- $dbo->query("UPDATE an_anagrafiche SET idconto_fornitore=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
- }
- }
- }
-
-
-
- //Verifica dell'esistenza codice anagrafica
- if( $esiste ){
- array_push( $_SESSION['errors'], "Il codice anagrafica inserito esiste già! Inserirne un'altro...");
- }
- else{
- $dbo->query("UPDATE an_anagrafiche SET codice=\"".$html_post['codice']."\" WHERE idanagrafica=\"".$idanagrafica."\"");
- }
-
- }
- }
-
- else{
- array_push( $_SESSION['errors'], "Permesso negato!");
- }
-
-
- break;
-
- case "add":
- if( $modules_info[$module_name]["permessi"] == 'rw' ){
- $idtipoanagrafica = $html->form( 'idtipoanagrafica', 'post', false );
- $ragione_sociale = $html->form( 'ragione_sociale', 'post' );
-
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
- $tipoanagrafica_desc = $rs[0]['descrizione'];
-
-
- //Inserimento anagrafica base
- if( sizeof($idtipoanagrafica) > 0 && $ragione_sociale != '' ){
- //Leggo l'ultimo codice anagrafica per calcolare il successivo
- $rs = $dbo->fetchArray("SELECT codice FROM an_anagrafiche ORDER BY CAST(codice AS SIGNED) DESC LIMIT 0,1");
- $codice = get_next_code( $rs[0]['codice'], 1, get_var("Formato codice anagrafica") );
-
- //Se ad aggiungere un cliente è un agente, lo imposto come agente di quel cliente
- //Lettura tipologia della nuova anagrafica
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
- $tipoanagrafica_dst = $rs[0]['descrizione'];
-
- //Lettura tipologia dell'utente loggato
- $agente_is_logged = false;
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica WHERE idanagrafica='".$user_idanagrafica."'");
-
- for( $i=0; $iquery($query);
- $idanagrafica = $dbo->last_inserted_id();
- if ( $idagente != 0 ){
- $dbo->query("INSERT INTO an_anagrafiche_agenti( idanagrafica, idagente ) VALUES( \"".$idanagrafica."\", \"".$idagente."\" )");
- }
- // log anagrafiche
- add_storico($idanagrafica,"Eseguito inserimento nuova anagrafica");
-
- }
-
-
- //Inserisco il rapporto dell'anagrafica (cliente, tecnico, ecc)
- for( $t=0; $tquery($query);
-
- $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica[$t]."'");
- $tipoanagrafica_desc = $rs[0]['descrizione'];
-
-
- if ($tipoanagrafica_desc=='Azienda')
- array_push( $_SESSION['infos'], "Sembra che tu abbia inserito la tua anagrafica Azienda, ricordati di impostarla come predefinita dal menù ''Strumenti -> Impostazioni -> Generali''." );
- }
-
-
- //Creo il relativo conto nel partitario
- if( $tipoanagrafica_desc == 'Cliente' ){
- //Calcolo prossimo numero cliente
- $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Crediti clienti e crediti diversi'");
- $new_numero = $rs[0]['max_numero'] + 1;
- $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
-
- //Creazione conto
- $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$ragione_sociale."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Crediti clienti e crediti diversi'), 1, 1 )");
- $idconto = $dbo->last_inserted_id();
-
- //Collegamento conto
- $dbo->query("UPDATE an_anagrafiche SET idconto_cliente=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
- }
-
- else if( $tipoanagrafica_desc == 'Fornitore' ){
- //Calcolo prossimo numero cliente
- $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Debiti fornitori e debiti diversi'");
- $new_numero = $rs[0]['max_numero'] + 1;
- $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
-
- //Creazione conto
- $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$ragione_sociale."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Debiti fornitori e debiti diversi'), 1, 1 )");
- $idconto = $dbo->last_inserted_id();
-
- //Collegamento conto
- $dbo->query("UPDATE an_anagrafiche SET idconto_fornitore=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
- }
-
-
- $id_record = $idanagrafica;
- array_push( $_SESSION['infos'], "Aggiunta nuova anagrafica di tipo ''".$tipoanagrafica_desc."''" );
-
- }
-
- break;
-
-
- case "delete":
- if( $modules_info[$module_name]["permessi"] == 'rw' ){
- //Disattivo solamente l'anagrafica
- $dbo->query("UPDATE an_anagrafiche SET deleted=1 WHERE idanagrafica=\"".$id_record."\" ".$additional_where['Anagrafiche']);
- array_push( $_SESSION['infos'], "Anagrafica eliminata!" );
- // log anagrafiche
- add_storico($idanagrafica,"Anagrafica disattivata");
- }
-
- break;
-
- case "sendemail":
-
- $from_address = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
- $oggetto = html_entity_decode($_POST['oggetto']);
- $testo_email = html_entity_decode($_POST['body'], ENT_QUOTES);
- $destinatario=$_POST['destinatario'];
- $messaggio = new PHPmailer(str_replace( ",", ".", get_var("Indirizzo per le email in uscita") ));
- $messaggio->FromName = str_replace( ",", ".", get_var("Nome Form Mail") );
- $messaggio->From = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
- $messaggio->AddAddress($destinatario);
- $messaggio->Subject=($oggetto);
- $messaggio->Body=strip_tags($testo_email);
- if(!$messaggio->Send()){
- array_push( $_SESSION['infos'], $messaggio->ErrorInfo );
-
- }else{
- array_push( $_SESSION['infos'], "Email to SMS inviata correttamente" );
- // log anagrafiche
- add_storico($idanagrafica,"Inviato nuovo SMS");
- }
- break;
-
- case "sendemail_web":
-
- $from_address = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
- $oggetto = html_entity_decode($_POST['oggetto']);
- $test=get_var("Form Mail Lab");
- $testo_email = html_entity_decode($_POST['body'], ENT_QUOTES);
- $destinatario=$_POST['destinatario'];
- $messaggio = new PHPmailer(str_replace( ",", ".", get_var("Indirizzo per le email in uscita") ));
- $messaggio->FromName = str_replace( ",", ".", get_var("Nome Form Mail") );
- $messaggio->From = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
- $messaggio->AddAddress($destinatario);
- $messaggio->Subject=($oggetto);
- $messaggio->Body=strip_tags($testo_email);
- $mail_cc=str_replace( ",", ".", get_var("Destinatario fisso in copia (campo CC)"));
- if ($mail_cc != ""){
- $messaggio->AddCC($mail_cc);
- }
-
-
- if(!$messaggio->Send()){
- array_push( $_SESSION['infos'], $messaggio->ErrorInfo );
- }else{
- array_push( $_SESSION['infos'], "Email inviata correttamente" );
- // log anagrafiche
- add_storico($_POST['id_record'],"Inviato nuova MAIL");
- }
-
- break;
-
- }
-
-?>
+form('op', 'post') ){
+ case "update":
+
+ $idanagrafica = $_POST['id_record'];
+ if( $modules_info[$module_name]["permessi"] == 'rw' ){
+
+ //leggo tutti i valori passati dal POST e li salvo in un array
+ $html_post = array();
+ foreach ($_POST as $key => $value) {
+ $html_post[$key] = save($value);
+ }
+
+ if( isset($_POST['id_record']) ){
+
+
+ include ($docroot . "/lib/salva_personalizzati.php");
+
+
+ $data_nascita = saveDate($html_post['data_nascita']);
+ if( $data_nascita == '' ){
+ $data_nascita = '';
+ }
+
+ ( $_POST['perc_netto'] == 'on' ) ? $perc_netto=1 : $perc_netto=0;
+ ( $_POST['perc_iva'] == 'on' ) ? $perc_iva=1 : $perc_iva=0;
+ $perc_agente = force_decimal($_POST['perc_agente']);
+
+ $query = "UPDATE an_anagrafiche SET ".
+
+ "componente_filename=\"".$html_post['componente_filename']."\",".
+ "ragione_sociale=\"".$html_post['ragione_sociale']."\",".
+ "tipo=\"".$html_post['tipo']."\",".
+ "piva=\"".$html_post['piva']."\",".
+ "codice_fiscale=\"".$html_post['codice_fiscale']."\",".
+ "data_nascita=\"".$data_nascita."\",".
+ "luogo_nascita=\"".$html_post['luogo_nascita']."\",".
+ "sesso=\"".$html_post['sesso']."\",".
+ "capitale_sociale=\"".$html_post['capitale_sociale']."\",".
+ "indirizzo=\"".$html_post['indirizzo']."\",".
+ "indirizzo2=\"".$html_post['indirizzo2']."\",".
+ "citta=\"".$html_post['citta']."\",".
+ "cap=\"".$html_post['cap']."\",".
+ "provincia=\"".$html_post['provincia']."\",".
+ "km=\"".str_replace( ",", ".", $html_post['km'] )."\",".
+ "id_nazione=\"".$html_post['nazione']."\",".
+ "telefono=\"".$html_post['telefono']."\",".
+ "cellulare=\"".$html_post['cellulare']."\",".
+ "fax=\"".$html_post['fax']."\",".
+ "email=\"".$html_post['email']."\",".
+ "idsede_fatturazione=\"".$html_post['idsede_fatturazione']."\",".
+ "note=\"".$html_post['note']."\",".
+ "codiceri=\"".$html_post['codiceri']."\",".
+ "codicerea=\"".$html_post['codicerea']."\",".
+ "appoggiobancario=\"".$html_post['appoggiobancario']."\",".
+ "filiale=\"".$html_post['filiale']."\",".
+ "codiceiban=\"".$html_post['codiceiban']."\",".
+ "bic=\"".$html_post['bic']."\",".
+ "diciturafissafattura=\"".$html_post['diciturafissafattura']."\",".
+ "idpagamento=\"".$html_post['idpagamento']."\",".
+ "idlistino=\"".$html_post['idlistino']."\",".
+ "idiva=\"".$html_post['idiva']."\",".
+ "settore=\"".$html_post['settore']."\",".
+ "marche=\"".$html_post['marche']."\",".
+ "dipendenti=\"".$html_post['dipendenti']."\",".
+ "macchine=\"".$html_post['macchine']."\",".
+ "idagente=\"".$html_post['idagente']."\",".
+ "idrelazione=\"".$html_post['idrelazione']."\",".
+ "sitoweb=\"".$html_post['sitoweb']."\",".
+ "idzona=\"".$html_post['idzona']."\",".
+ "nome_cognome=\"".$html_post['nome_cognome']."\",".
+ "iscrizione_tribunale=\"".$html_post['iscrizione_tribunale']."\",".
+ "cciaa=\"".$html_post['cciaa']."\",".
+ "cciaa_citta=\"".$html_post['cciaa_citta']."\",".
+ "n_alboartigiani=\"".$html_post['n_alboartigiani']."\",".
+ "foro_competenza=\"".$html_post['foro_competenza']."\",".
+ "colore=\"".$html_post['colore']."\",".
+ "colore_marker=\"".$html_post['colore_marker']."\",".
+ "cod_sogei=\"".$html_post['cod_sogei']."\",".
+ "lng=\"".$html_post['lng']."\",".
+ "lat=\"".$html_post['lat']."\",".
+ "cod_sogei_pec=\"".$html_post['cod_sogei_pec']."\",".
+ "perc_agente=\"".$perc_agente."\",".
+ "perc_netto=\"".$perc_netto."\",".
+ "esigibilita_iva=\"".$html_post['esigibilita_iva']."\",".
+ "identificativo_xml=\"".$html_post['identificativo_xml']."\",".
+ "perc_iva=\"".$perc_iva."\",".
+ "default_ritenuta_acconto=\"".$html_post['default_ritenuta_acconto']."\",". // release 2.3.5
+ "default_rivalsa_inps=\"".$html_post['default_rivalsa_inps']."\",". // release 2.3.5
+ "idtipointervento_default=\"".$html_post['idtipointervento_default']."\"".
+ "WHERE idanagrafica='$idanagrafica' ".$additional_where['Anagrafiche'];
+
+ $rs = $dbo->query( $query );
+
+
+ // log anagrafiche
+ add_storico($idanagrafica,"Eseguito modifica salvataggio anagrafica");
+
+
+ // testo se inserito banca appoggiobancario
+
+ $idbanca_vendite=$html_post['idbanca_vendite'];
+ if( $idbanca_vendite > 0 ){
+ $rs_banca = $dbo->fetchArray("SELECT * FROM co_banche WHERE id='".$idbanca_vendite."'");
+ $query = "UPDATE an_anagrafiche SET idbanca_vendite='".$idbanca_vendite."', appoggiobancario='".$rs_banca[0]['nome']."', filiale='".$rs_banca[0]['filiale']."',codiceiban='".$rs_banca[0]['iban']."',bic='".$rs_banca[0]['bic']."' WHERE idanagrafica='$idanagrafica'";
+ $rs = $dbo->query( $query );
+
+
+
+
+
+ }
+
+ /*
+ Salvataggio info componente (campo `contenuto`)
+ */
+ $filename = save( $_POST['componente_filename'] );
+
+ $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){
+
+ //Quando trovo l'impostazione 'valore' la sostituisco con il valore passato dal post
+ 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 an_anagrafiche SET contenuto=\"".($contenuto)."\" WHERE idanagrafica='".$idanagrafica."'");
+
+
+
+ array_push( $_SESSION['infos'], "Informazioni per l'anagrafica ''".$html_post['ragione_sociale']."'' salvate correttamente!");
+
+ //Aggiorno il codice anagrafica se non è già presente, altrimenti lo ignoro
+ $esiste = $dbo->fetchNum("SELECT idanagrafica FROM an_anagrafiche WHERE codice=\"".$html_post['codice']."\" AND NOT idanagrafica=\"".$idanagrafica."\"", 1);
+
+
+ //Aggiorno gli agenti
+
+ $dbo->query("DELETE FROM an_anagrafiche_agenti WHERE idanagrafica=\"".$idanagrafica."\"");
+ $rs = $dbo->fetchArray("SELECT idagente FROM an_anagrafiche WHERE idanagrafica='".$idanagrafica."'");
+ $idagente = $rs[0]['idagente'];
+ $dbo->query("INSERT INTO an_anagrafiche_agenti( idanagrafica, idagente ) VALUES( \"".$idanagrafica."\", \"".$idagente."\" )");
+
+
+
+ //Aggiorno le tipologie di anagrafica
+ $dbo->query("DELETE FROM an_tipianagrafiche_anagrafiche WHERE idanagrafica=\"".$idanagrafica."\"");
+
+ foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
+
+ $dbo->query("INSERT INTO an_tipianagrafiche_anagrafiche(idtipoanagrafica,idanagrafica) VALUES( \"".$idtipoanagrafica."\", \"".$idanagrafica."\" )");
+
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
+ $tipoanagrafica_desc = $rs[0]['descrizione'];
+
+
+ if (($tipoanagrafica_desc=='Azienda') and ( get_var("Azienda predefinita") == "0" ))
+ array_push( $_SESSION['infos'], "Sembra che tu abbia inserito la tua anagrafica Azienda, ricordati di impostarla come predefinita dal menù ''Strumenti -> Impostazioni -> Generali''." );
+
+
+ }
+
+
+
+ //Verifico se esiste già l'associazione dell'anagrafica a conti del partitario
+ $rs = $dbo->fetchArray("SELECT idconto_cliente, idconto_fornitore FROM an_anagrafiche WHERE idanagrafica=\"".$idanagrafica."\"");
+ $idconto_cliente = $rs[0]['idconto_cliente'];
+ $idconto_fornitore = $rs[0]['idconto_fornitore'];
+//TECNOGEST aggiornamento intestazione conto partitario
+ $rs = $dbo->fetchArray("SELECT id, descrizione FROM co_pianodeiconti3 WHERE id=\"".$idconto_cliente."\"");
+ if ($idconto_cliente <> '0' ){
+ $dbo->query("UPDATE co_pianodeiconti3 SET descrizione=\"".$html_post['ragione_sociale']."\" WHERE id=\"".$idconto_cliente."\"");
+ }
+ else{
+ $rs = $dbo->fetchArray("SELECT id, descrizione FROM co_pianodeiconti3 WHERE id=\"".$idconto_fornitore."\"");
+ $dbo->query("UPDATE co_pianodeiconti3 SET descrizione=\"".$html_post['ragione_sociale']."\" WHERE id=\"".$idconto_fornitore."\"");
+ }
+//FINE
+
+ //Creo il relativo conto nel partitario se non esiste
+ if( $idconto_cliente == '0' ){
+ foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica=\"".$idtipoanagrafica."\"");
+
+ if( $rs[0]['descrizione'] == 'Cliente' ){
+ //Calcolo prossimo numero cliente
+ $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Crediti clienti e crediti diversi'");
+ $new_numero = $rs[0]['max_numero'] + 1;
+ $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
+
+ $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$html_post['ragione_sociale']."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Crediti clienti e crediti diversi'), 1, 1 )");
+ $idconto = $dbo->last_inserted_id();
+
+ //Collegamento conto
+ $dbo->query("UPDATE an_anagrafiche SET idconto_cliente=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
+ }
+ }
+ }
+
+
+ if( $idconto_fornitore == '0' ){
+ foreach( $_POST['idtipoanagrafica'] as $idtipoanagrafica ){
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica=\"".$idtipoanagrafica."\"");
+
+ if( $rs[0]['descrizione'] == 'Fornitore' ){
+ //Calcolo prossimo numero cliente
+ $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Debiti fornitori e debiti diversi'");
+ $new_numero = $rs[0]['max_numero'] + 1;
+ $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
+
+ $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$html_post['ragione_sociale']."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Debiti fornitori e debiti diversi'), 1, 1 )");
+ $idconto = $dbo->last_inserted_id();
+
+ //Collegamento conto
+ $dbo->query("UPDATE an_anagrafiche SET idconto_fornitore=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
+ }
+ }
+ }
+
+
+
+ //Verifica dell'esistenza codice anagrafica
+ if( $esiste ){
+ array_push( $_SESSION['errors'], "Il codice anagrafica inserito esiste già! Inserirne un'altro...");
+ }
+ else{
+ $dbo->query("UPDATE an_anagrafiche SET codice=\"".$html_post['codice']."\" WHERE idanagrafica=\"".$idanagrafica."\"");
+ }
+
+ }
+ }
+
+ else{
+ array_push( $_SESSION['errors'], "Permesso negato!");
+ }
+
+
+ break;
+
+ case "add":
+ if( $modules_info[$module_name]["permessi"] == 'rw' ){
+ $idtipoanagrafica = $html->form( 'idtipoanagrafica', 'post', false );
+ $ragione_sociale = $html->form( 'ragione_sociale', 'post' );
+
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
+ $tipoanagrafica_desc = $rs[0]['descrizione'];
+
+
+ //Inserimento anagrafica base
+ if( sizeof($idtipoanagrafica) > 0 && $ragione_sociale != '' ){
+ //Leggo l'ultimo codice anagrafica per calcolare il successivo
+ $rs = $dbo->fetchArray("SELECT codice FROM an_anagrafiche ORDER BY CAST(codice AS SIGNED) DESC LIMIT 0,1");
+ $codice = get_next_code( $rs[0]['codice'], 1, get_var("Formato codice anagrafica") );
+
+ //Se ad aggiungere un cliente è un agente, lo imposto come agente di quel cliente
+ //Lettura tipologia della nuova anagrafica
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica."'");
+ $tipoanagrafica_dst = $rs[0]['descrizione'];
+
+ //Lettura tipologia dell'utente loggato
+ $agente_is_logged = false;
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche INNER JOIN an_tipianagrafiche_anagrafiche ON an_tipianagrafiche.idtipoanagrafica=an_tipianagrafiche_anagrafiche.idtipoanagrafica WHERE idanagrafica='".$user_idanagrafica."'");
+
+ for( $i=0; $iquery($query);
+ $idanagrafica = $dbo->last_inserted_id();
+ if ( $idagente != 0 ){
+ $dbo->query("INSERT INTO an_anagrafiche_agenti( idanagrafica, idagente ) VALUES( \"".$idanagrafica."\", \"".$idagente."\" )");
+ }
+ // log anagrafiche
+ add_storico($idanagrafica,"Eseguito inserimento nuova anagrafica");
+
+ }
+
+
+ //Inserisco il rapporto dell'anagrafica (cliente, tecnico, ecc)
+ for( $t=0; $tquery($query);
+
+ $rs = $dbo->fetchArray("SELECT descrizione FROM an_tipianagrafiche WHERE idtipoanagrafica='".$idtipoanagrafica[$t]."'");
+ $tipoanagrafica_desc = $rs[0]['descrizione'];
+
+
+ if ($tipoanagrafica_desc=='Azienda')
+ array_push( $_SESSION['infos'], "Sembra che tu abbia inserito la tua anagrafica Azienda, ricordati di impostarla come predefinita dal menù ''Strumenti -> Impostazioni -> Generali''." );
+ }
+
+
+ //Creo il relativo conto nel partitario
+ if( $tipoanagrafica_desc == 'Cliente' ){
+ //Calcolo prossimo numero cliente
+ $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Crediti clienti e crediti diversi'");
+ $new_numero = $rs[0]['max_numero'] + 1;
+ $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
+
+ //Creazione conto
+ $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$ragione_sociale."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Crediti clienti e crediti diversi'), 1, 1 )");
+ $idconto = $dbo->last_inserted_id();
+
+ //Collegamento conto
+ $dbo->query("UPDATE an_anagrafiche SET idconto_cliente=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
+ }
+
+ else if( $tipoanagrafica_desc == 'Fornitore' ){
+ //Calcolo prossimo numero cliente
+ $rs = $dbo->fetchArray("SELECT MAX( CAST(co_pianodeiconti3.numero AS UNSIGNED) ) AS max_numero FROM co_pianodeiconti3 INNER JOIN co_pianodeiconti2 ON co_pianodeiconti3.idpianodeiconti2=co_pianodeiconti2.id WHERE co_pianodeiconti2.descrizione='Debiti fornitori e debiti diversi'");
+ $new_numero = $rs[0]['max_numero'] + 1;
+ $new_numero = str_pad( $new_numero, 6, "0", STR_PAD_LEFT );
+
+ //Creazione conto
+ $dbo->query("INSERT INTO co_pianodeiconti3( numero, descrizione, idpianodeiconti2, can_delete, can_edit ) VALUES( \"".$new_numero."\", \"".$ragione_sociale."\", (SELECT id FROM co_pianodeiconti2 WHERE descrizione='Debiti fornitori e debiti diversi'), 1, 1 )");
+ $idconto = $dbo->last_inserted_id();
+
+ //Collegamento conto
+ $dbo->query("UPDATE an_anagrafiche SET idconto_fornitore=\"".$idconto."\" WHERE idanagrafica=\"".$idanagrafica."\"");
+ }
+
+
+ $id_record = $idanagrafica;
+ array_push( $_SESSION['infos'], "Aggiunta nuova anagrafica di tipo ''".$tipoanagrafica_desc."''" );
+
+ }
+
+ break;
+
+
+ case "delete":
+ if( $modules_info[$module_name]["permessi"] == 'rw' ){
+ //Disattivo solamente l'anagrafica
+ $dbo->query("UPDATE an_anagrafiche SET deleted=1 WHERE idanagrafica=\"".$id_record."\" ".$additional_where['Anagrafiche']);
+ array_push( $_SESSION['infos'], "Anagrafica eliminata!" );
+ // log anagrafiche
+ add_storico($idanagrafica,"Anagrafica disattivata");
+ }
+
+ break;
+
+ case "sendemail":
+
+ $from_address = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
+ $oggetto = html_entity_decode($_POST['oggetto']);
+ $testo_email = html_entity_decode($_POST['body'], ENT_QUOTES);
+ $destinatario=$_POST['destinatario'];
+ $messaggio = new PHPmailer(str_replace( ",", ".", get_var("Indirizzo per le email in uscita") ));
+ $messaggio->FromName = str_replace( ",", ".", get_var("Nome Form Mail") );
+ $messaggio->From = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
+ $messaggio->AddAddress($destinatario);
+ $messaggio->Subject=($oggetto);
+ $messaggio->Body=strip_tags($testo_email);
+ if(!$messaggio->Send()){
+ array_push( $_SESSION['infos'], $messaggio->ErrorInfo );
+
+ }else{
+ array_push( $_SESSION['infos'], "Email to SMS inviata correttamente" );
+ // log anagrafiche
+ add_storico($idanagrafica,"Inviato nuovo SMS");
+ }
+ break;
+
+ case "sendemail_web":
+
+ $from_address = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
+ $oggetto = html_entity_decode($_POST['oggetto']);
+ $test=get_var("Form Mail Lab");
+ $testo_email = html_entity_decode($_POST['body'], ENT_QUOTES);
+ $destinatario=$_POST['destinatario'];
+ $messaggio = new PHPmailer(str_replace( ",", ".", get_var("Indirizzo per le email in uscita") ));
+ $messaggio->FromName = str_replace( ",", ".", get_var("Nome Form Mail") );
+ $messaggio->From = str_replace( ",", ".", get_var("Indirizzo per le email in uscita") );
+ $messaggio->AddAddress($destinatario);
+ $messaggio->Subject=($oggetto);
+ $messaggio->Body=strip_tags($testo_email);
+ $mail_cc=str_replace( ",", ".", get_var("Destinatario fisso in copia (campo CC)"));
+ if ($mail_cc != ""){
+ $messaggio->AddCC($mail_cc);
+ }
+
+
+ if(!$messaggio->Send()){
+ array_push( $_SESSION['infos'], $messaggio->ErrorInfo );
+ }else{
+ array_push( $_SESSION['infos'], "Email inviata correttamente" );
+ // log anagrafiche
+ add_storico($_POST['id_record'],"Inviato nuova MAIL");
+ }
+
+ break;
+
+ }
+
+?>