|
|
@ -1,443 +1,452 @@ |
|
|
|
<?php |
|
|
|
if( $docroot == '' ){ |
|
|
|
die( _("Accesso negato!") ); |
|
|
|
} |
|
|
|
|
|
|
|
switch( $html->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", "<br/>", $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", "<br/>", $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; $i<sizeof($rs); $i++ ){ |
|
|
|
if( $rs[$i]['descrizione']=='Agente' ){ |
|
|
|
$agente_is_logged = true; |
|
|
|
$i = sizeof($rs); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
( $agente_is_logged ) ? $idagente=$user_idanagrafica : $idagente=0; |
|
|
|
|
|
|
|
//Inserisco l'anagrafica
|
|
|
|
$query = "INSERT INTO an_anagrafiche( ragione_sociale, codice, idagente ) VALUES ( \"".save($ragione_sociale)."\", \"".$codice."\", \"".$idagente."\" )"; |
|
|
|
$dbo->query($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; $t<sizeof($idtipoanagrafica); $t++ ){ |
|
|
|
$query = "INSERT INTO an_tipianagrafiche_anagrafiche(idanagrafica, idtipoanagrafica) VALUES (\"".$idanagrafica."\", \"".$idtipoanagrafica[$t]."\")"; |
|
|
|
$dbo->query($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; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
?>
|
|
|
|
<?php |
|
|
|
if( $docroot == '' ){ |
|
|
|
die( _("Accesso negato!") ); |
|
|
|
} |
|
|
|
|
|
|
|
switch( $html->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", "<br/>", $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", "<br/>", $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; $i<sizeof($rs); $i++ ){ |
|
|
|
if( $rs[$i]['descrizione']=='Agente' ){ |
|
|
|
$agente_is_logged = true; |
|
|
|
$i = sizeof($rs); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
( $agente_is_logged ) ? $idagente=$user_idanagrafica : $idagente=0; |
|
|
|
|
|
|
|
//Inserisco l'anagrafica
|
|
|
|
$query = "INSERT INTO an_anagrafiche( ragione_sociale, codice, idagente ) VALUES ( \"".save($ragione_sociale)."\", \"".$codice."\", \"".$idagente."\" )"; |
|
|
|
$dbo->query($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; $t<sizeof($idtipoanagrafica); $t++ ){ |
|
|
|
$query = "INSERT INTO an_tipianagrafiche_anagrafiche(idanagrafica, idtipoanagrafica) VALUES (\"".$idanagrafica."\", \"".$idtipoanagrafica[$t]."\")"; |
|
|
|
$dbo->query($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; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
?>
|