<?php ################################################################################## # HOTELDRUID # Copyright (C) 2001-2023 by Marco Maria Francesco De Santis (marco@digitaldruid.net) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # any later version accepted by Marco Maria Francesco De Santis, which # shall act as a proxy as defined in Section 14 of version 3 of the # license. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. ################################################################################## $pag = "messaggi.php"; $titolo = "HotelDruid: Messaggi"; $var_pag = array(); $var_pag[0] = 'cambia_qualcosa'; $var_pag[1] = 'idmessaggi'; $var_pag[2] = 'elimina_messaggio'; $var_pag[3] = 'elimina_tutti_mess'; $var_pag[4] = 'prima_dopo'; $var_pag[5] = 'data_arrivo'; $var_pag[6] = 'anno_arrivo'; $var_pag[7] = 'continua'; $var_pag[8] = 'scarica_mess'; $var_pag[9] = 'mese'; $var_pag[10] = 'tipo_tabella'; $var_pag[11] = 'torna_indietro'; $var_pag[12] = 'pagina_messaggi'; $var_pag[13] = 'spedisci_messaggio'; $var_pag[14] = 'destinatario'; $var_pag[15] = 'ora_visione'; $var_pag[16] = 'min_visione'; $var_pag[17] = 'data_visione'; $var_pag[18] = 'anno_visione'; $var_pag[19] = 'testo'; $var_pag[20] = 'origine_vecchia'; $var_pag[21] = 'indietro'; $var_pag[22] = 'cambia_dati_ricavati'; $var_pag[23] = 'n_cognome_richiedente'; $var_pag[24] = 'n_email_richiedente'; $var_pag[25] = 'n_data_arrivo'; $var_pag[26] = 'n_data_partenza'; $var_pag[27] = 'n_num_persone'; $n_var_pag = 28; include("./costanti.php"); include(C_DATI_PATH."/dati_connessione.php"); include("./includes/funzioni_$PHPR_DB_TYPE.php"); $numconnessione = connetti_db($PHPR_DB_NAME,$PHPR_DB_HOST,$PHPR_DB_PORT,$PHPR_DB_USER,$PHPR_DB_PASS,$PHPR_LOAD_EXT); include("./includes/funzioni.php"); include("./includes/sett_gio.php"); $tablenometariffe = $PHPR_TAB_PRE."ntariffe".$anno; $tableperiodi = $PHPR_TAB_PRE."periodi".$anno; $tableanni = $PHPR_TAB_PRE."anni"; $tablemessaggi = $PHPR_TAB_PRE."messaggi"; $tablepersonalizza = $PHPR_TAB_PRE."personalizza"; $tableutenti = $PHPR_TAB_PRE."utenti"; $tableprivilegi = $PHPR_TAB_PRE."privilegi"; $tablecontratti = $PHPR_TAB_PRE."contratti"; $tableprenota = $PHPR_TAB_PRE."prenota".$anno; $tableprenotacanc = $PHPR_TAB_PRE."prenotacanc".$anno; $tablecache = $PHPR_TAB_PRE."cache"; $id_utente = controlla_login($numconnessione,$PHPR_TAB_PRE,$id_sessione,$nome_utente_phpr,$password_phpr,$anno); if ($id_utente) { if ($id_utente != 1) { $tableprivilegi = $PHPR_TAB_PRE."privilegi"; $tablerelgruppi = $PHPR_TAB_PRE."relgruppi"; $prendi_gruppi = ""; $privilegi_annuali_utente = esegui_query("select * from $tableprivilegi where idutente = '$id_utente' and anno = '$anno'"); if (numlin_query($privilegi_annuali_utente) == 0) $anno_utente_attivato = "NO"; else { $anno_utente_attivato = "SI"; $privilegi_globali_utente = esegui_query("select * from $tableprivilegi where idutente = '$id_utente' and anno = '1'"); $priv_mod_pers = risul_query($privilegi_globali_utente,0,'priv_mod_pers'); if (substr($priv_mod_pers,0,1) != "s") $modifica_pers = "NO"; else $modifica_pers = "SI"; $priv_messaggi = risul_query($privilegi_globali_utente,0,'priv_messaggi'); $priv_vedi_messaggi = substr($priv_messaggi,0,1); $priv_ins_messaggi = substr($priv_messaggi,1,1); $contratti_consentiti = risul_query($privilegi_annuali_utente,0,'contratti_consentiti'); $attiva_contratti_consentiti = substr($contratti_consentiti,0,1); if ($attiva_contratti_consentiti == "s") { $contratti_consentiti = explode(",",$contratti_consentiti); unset($contratti_consentiti_vett); for ($num1 = 1 ; $num1 < count($contratti_consentiti) ; $num1++) if ($contratti_consentiti[$num1]) $contratti_consentiti_vett[$contratti_consentiti[$num1]] = "SI"; } # fine if ($attiva_contratti_consentiti == "s") $costi_agg_consentiti = risul_query($privilegi_annuali_utente,0,'costi_agg_consentiti'); $attiva_costi_agg_consentiti = substr($costi_agg_consentiti,0,1); if ($attiva_costi_agg_consentiti == "s") { $costi_agg_consentiti = explode(",",substr($costi_agg_consentiti,2)); unset($costi_agg_consentiti_vett); for ($num1 = 0 ; $num1 < count($costi_agg_consentiti) ; $num1++) if ($costi_agg_consentiti[$num1]) $costi_agg_consentiti_vett[$costi_agg_consentiti[$num1]] = "SI"; } # fine if ($attiva_costi_agg_consentiti == "s") $priv_ins_prenota = risul_query($privilegi_annuali_utente,0,'priv_ins_prenota'); $priv_ins_nuove_prenota = substr($priv_ins_prenota,0,1); $priv_mod_prenota = risul_query($privilegi_annuali_utente,0,'priv_mod_prenota'); $priv_mod_prenotazioni = substr($priv_mod_prenota,0,1); if ($priv_mod_prenotazioni == "g") $prendi_gruppi = "SI"; $priv_mod_prenota_iniziate = substr($priv_mod_prenota,11,1); $priv_mod_prenota_ore = substr($priv_mod_prenota,12,3); } # fine else if (numlin_query($privilegi_annuali_utente) == 0) unset($utenti_gruppi); $utenti_gruppi[$id_utente] = 1; if ($prendi_gruppi == "SI") { $gruppi_utente = esegui_query("select idgruppo from $tablerelgruppi where idutente = '$id_utente' and idgruppo is not NULL "); $num_gruppi_utente = numlin_query($gruppi_utente); for ($num1 = 0 ; $num1 < $num_gruppi_utente ; $num1++) { $idgruppo = risul_query($gruppi_utente,$num1,'idgruppo'); $utenti_gruppo = esegui_query("select idutente from $tablerelgruppi where idgruppo = '$idgruppo' "); $num_utenti_gruppo = numlin_query($utenti_gruppo); for ($num2 = 0 ; $num2 < $num_utenti_gruppo ; $num2++) $utenti_gruppi[risul_query($utenti_gruppo,$num2,'idutente')] = 1; } # fine for $num1 } # fine if ($prendi_gruppi == "SI") } # fine if ($id_utente != 1) else { $anno_utente_attivato = "SI"; $modifica_pers = "SI"; $priv_vedi_messaggi = "s"; $priv_ins_messaggi = "s"; $attiva_contratti_consentiti = "n"; $attiva_costi_agg_consentiti = "n"; $priv_ins_nuove_prenota = "s"; $priv_mod_prenotazioni = "s"; $priv_mod_prenota_iniziate = "s"; $priv_mod_prenota_ore = "000"; } # fine else if ($id_utente != 1) if ($anno_utente_attivato == "SI" and $priv_vedi_messaggi == "s") { if (@is_file(C_DATI_PATH."/dati_subordinazione.php")) { $installazione_subordinata = "SI"; $inserimento_nuovi_clienti = "NO"; $priv_ins_messaggi = "n"; $priv_ins_nuove_prenota = "n"; $priv_mod_prenotazioni = "n"; $modifica_clienti = "NO"; $priv_ins_nuove_prenota = "n"; $priv_ins_spese = "n"; $priv_ins_entrate = "n"; $priv_ins_costi_agg = "n"; } # fine if (@is_file(C_DATI_PATH."/dati_subordinazione.php")) $titolo = "HotelDruid: ".mex("Messaggi",$pag); if ($tema[$id_utente] and $tema[$id_utente] != "base" and @is_dir("./themes/".$tema[$id_utente]."/php")) include("./themes/".$tema[$id_utente]."/php/head.php"); else include("./includes/head.php"); $Euro = nome_valuta(); $stile_soldi = stile_soldi(); $stile_data = stile_data(); $anno_corrente = date("Y",(time() + (C_DIFF_ORE * 3600))); $data_corrente = date("m-d",(time() + (C_DIFF_ORE * 3600))); $ora_corrente = date("H",(time() + (C_DIFF_ORE * 3600))); $min_corrente = date("i",(time() + (C_DIFF_ORE * 3600))); $mostra_form_iniziale = ""; if (!empty($cambia_qualcosa)) { if (!empty($spedisci_messaggio)) { $errore = "NO"; $tabelle_lock = array("$tablemessaggi"); $altre_tab_lock = array("$tableutenti"); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $tutti_utenti = esegui_query("select * from $tableutenti order by idutenti"); $num_tutti_utenti = numlin_query($tutti_utenti); $utente_trovato = "NO"; $lista_utenti = ","; for ($num1 = 0 ; $num1 < $num_tutti_utenti ; $num1++) { $idutenti = risul_query($tutti_utenti,$num1,'idutenti'); if ($destinatario == $idutenti) $utente_trovato = "SI"; $lista_utenti .= $idutenti.","; } # fine for $num1 if ($destinatario != "tutti" and $utente_trovato == "NO") $errore = "SI"; if (controlla_num_pos($ora_visione) == "NO" or $ora_visione > 23) $errore = "SI"; if ($min_visione != "00" and $min_visione != "15" and $min_visione != "30" and $min_visione != "45") $errore = "SI"; if (!preg_match("/-[0-9]{2}-[0-9]{2}/",$data_visione)) $errore = "SI"; if ($anno_visione != $anno_corrente and $anno_visione != ($anno_corrente + 1)) $errore = "SI"; if (!$testo) $errore = "SI"; if ($errore != "SI") { $mostra_form_iniziale = "NO"; $max_mess = esegui_query("select max(idmessaggi) from $tablemessaggi"); if (numlin_query($max_mess) != 0) $max_mess = (risul_query($max_mess,0,0) + 1); else $max_mess = 1; if ($destinatario != "tutti") $lista_utenti = ",".$destinatario.","; if ($anno_visione.str_replace("-","",$data_visione).$ora_visione.$min_visione < date("YmdHi",(time() + (C_DIFF_ORE * 3600)))) $datavisione = date("Y-m-d H:i",(time() + (C_DIFF_ORE * 3600))).":00"; else $datavisione = $anno_visione.$data_visione." ".$ora_visione.":".$min_visione.":00"; if (@get_magic_quotes_gpc()) $testo = stripslashes($testo); if (!defined('ENT_SUBSTITUTE')) define('ENT_SUBSTITUTE',ENT_IGNORE); $testo = substr(htmlspecialchars($testo,ENT_SUBSTITUTE),0,65530); $testo = aggslashdb($testo); $datainserimento = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600))); esegui_query("insert into $tablemessaggi (idmessaggi,tipo_messaggio,idutenti,idutenti_visto,datavisione,mittente,testo,datainserimento) values ('$max_mess','mess','$lista_utenti','$lista_utenti','$datavisione','$id_utente','$testo','$datainserimento')"); echo mex("Messaggio inviato",$pag).".<br>"; } # fine if ($errore != "SI") unlock_tabelle($tabelle_lock); } # fine if (!empty($spedisci_messaggio)) function cancella_messaggi_vecchi ($tableprivilegi,$tablemessaggi) { $utente_attivo = array(1 => "SI"); $priv_vedi_mess = esegui_query("select idutente,priv_messaggi from $tableprivilegi where anno = '1'"); $num_priv_vedi_mess = numlin_query($priv_vedi_mess); for ($num1 = 0 ; $num1 < $num_priv_vedi_mess ; $num1++) { $vedi_mess = substr(risul_query($priv_vedi_mess,$num1,'priv_messaggi'),0,1); if ($vedi_mess == "s") $utente_attivo[risul_query($priv_vedi_mess,$num1,'idutente')] = "SI"; } # fine for $num1 $messaggi = esegui_query("select idmessaggi,idutenti from $tablemessaggi"); $num_messaggi = numlin_query($messaggi); for ($num1 = 0 ; $num1 < $num_messaggi ; $num1++) { $utente_attivo_trovato = "NO"; $idutenti = risul_query($messaggi,$num1,'idutenti'); $idutenti = explode(",",$idutenti); $num_idutenti = count($idutenti); for ($num2 = 1 ; $num2 < ($num_idutenti - 1) ; $num2++) { if (isset($utente_attivo[$idutenti[$num2]]) and $utente_attivo[$idutenti[$num2]] == "SI") $utente_attivo_trovato = "SI"; } # fine for $num2 if ($utente_attivo_trovato == "NO") { $idmessaggi = risul_query($messaggi,$num1,'idmessaggi'); esegui_query("delete from $tablemessaggi where idmessaggi = '$idmessaggi'"); } # fine if ($utente_attivo_trovato == "NO") } # fine for $num1 } # fine function cancella_messaggi_vecchi if (!empty($elimina_messaggio)) { $tabelle_lock = array($tablemessaggi); $altre_tab_lock = array($tableutenti,$tableprivilegi); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $messaggio = esegui_query("select idutenti,tipo_messaggio,dati_messaggio1,mittente from $tablemessaggi where idmessaggi = '".aggslashdb($idmessaggi)."'"); if (numlin_query($messaggio) == 1) { $mostra_form_iniziale = "NO"; $tipo_messaggio = risul_query($messaggio,0,'tipo_messaggio'); $dati_messaggio1 = risul_query($messaggio,0,'dati_messaggio1'); $mittente = risul_query($messaggio,0,'mittente'); if ($tipo_messaggio == "rprenota" and $dati_messaggio1 == "da_inserire" and empty($continua)) { $continua = "NO"; echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"idmessaggi\" value=\"$idmessaggi\"> <input type=\"hidden\" name=\"continua\" value=\"SI\"> <input type=\"hidden\" name=\"elimina_messaggio\" value=\"SI\"> ".mex("Si è sicuri di voler eliminare la richiesta di prenotazione di",$pag)." $mittente ".mex("non ancora inserita?",$pag)." <button class=\"canc\" type=\"submit\"><div>".mex("SI",$pag)."</div></button> </div></form><br><br>"; } # fine if ($tipo_messaggio == "rprenota" and $dati_messaggio1 == "da_inserire" and empty($continua)) if (!isset($continua) or $continua != "NO") { $idutenti = risul_query($messaggio,0,'idutenti'); esegui_query("update $tablemessaggi set idutenti = '".str_replace(",$id_utente,",",",$idutenti)."' where idmessaggi = '$idmessaggi'"); cancella_messaggi_vecchi($tableprivilegi,$tablemessaggi); echo mex("Messaggio eliminato",$pag).".<br>"; $mostra_form_iniziale = "SI"; } # fine if (!isset($continua) or $continua != "NO") } # fine if (numlin_query($messaggio) == 1) unlock_tabelle($tabelle_lock); } # fine if (!empty($elimina_messaggio)) if (isset($elimina_tutti_mess) and $elimina_tutti_mess == "SI") { if ($prima_dopo != "prima") $prima_dopo = "dopo"; $mostra_form_iniziale = "NO"; if (!isset($continua) or $continua != "SI") { if (!preg_match("/-[0-9]{2}-[0-9]{2}/",$data_arrivo)) $data_arrivo = ""; if ($anno_arrivo != $anno_corrente and $anno_arrivo != ($anno_corrente - 1)) $anno_arrivo = ""; if ($data_arrivo and $anno_arrivo) $data_arrivo = $anno_arrivo.$data_arrivo; else $data_arrivo = ""; echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"elimina_tutti_mess\" value=\"SI\"> <input type=\"hidden\" name=\"continua\" value=\"SI\"> <input type=\"hidden\" name=\"prima_dopo\" value=\"$prima_dopo\"> <input type=\"hidden\" name=\"data_arrivo\" value=\"$data_arrivo\"> ".mex("Si è sicuri di voler eliminare <div style=\"display: inline; color: red;\"><b>tutti i messaggi</b></div>",$pag); if ($data_arrivo) { echo " ".mex("arrivati",$pag)." "; if ($prima_dopo == "prima") echo mex("prima del",$pag); if ($prima_dopo == "dopo") echo mex("dopo il",$pag); echo " <b>".formatta_data($data_arrivo,$stile_data)."</b>"; } # fine if ($data_arrivo) echo "? <button class=\"canc\" type=\"submit\"><div>".mex("SI",$pag)."</div></button> </div></form><br><br>"; } # fine if (!isset($continua) or $continua != "SI") else { if (!preg_match("/[0-9]{4}-[0-9]{2}-[0-9]{2}/",$data_arrivo)) $data_arrivo = ""; if (substr($data_arrivo,0,4) != $anno_corrente and substr($data_arrivo,0,4) != ($anno_corrente - 1)) $data_arrivo = ""; if (substr($data_arrivo,5,2) < 1 or substr($data_arrivo,5,2) > 12) $data_arrivo = ""; if (substr($data_arrivo,8,2) < 1 or substr($data_arrivo,8,2) > 31) $data_arrivo = ""; $cond_data_arrivo = ""; if ($data_arrivo) { if ($prima_dopo == "prima") $cond_data_arrivo = " and datavisione < '$data_arrivo 00:00:00'"; if ($prima_dopo == "dopo") $cond_data_arrivo = " and datavisione > '$data_arrivo 23:59:59'"; } # fine if ($data_arrivo) $tabelle_lock = array($tablemessaggi); $altre_tab_lock = array($tableutenti,$tableprivilegi); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $adesso = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600))); $messaggi = esegui_query("select idmessaggi,idutenti,idutenti_visto from $tablemessaggi where datavisione < '$adesso'$cond_data_arrivo and idutenti $LIKE '%,$id_utente,%'"); $num_messaggi = numlin_query($messaggi); for ($num1 = 0 ; $num1 < $num_messaggi ; $num1++) { $idmessaggi = risul_query($messaggi,$num1,'idmessaggi'); $idutenti = risul_query($messaggi,$num1,'idutenti'); $idutenti_visto = risul_query($messaggi,$num1,'idutenti_visto'); esegui_query("update $tablemessaggi set idutenti = '".str_replace(",$id_utente,",",",$idutenti)."', idutenti_visto = '".str_replace(",$id_utente,",",",$idutenti_visto)."' where idmessaggi = '$idmessaggi'"); } # fine for $num1 cancella_messaggi_vecchi($tableprivilegi,$tablemessaggi); unlock_tabelle($tabelle_lock); echo mex("Messaggi eliminati",$pag).".<br>"; } # fine else if (!isset($continua) or $continua != "SI") } # fine if (isset($elimina_tutti_mess) and $elimina_tutti_mess == "SI") if (!empty($scarica_mess) and function_exists('imap_open')) { $tabelle_lock = array($tablemessaggi,$tablecache); $altre_tab_lock = array($tablepersonalizza); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $server_email_tab_messaggi = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'server_email_tab_messaggi' and idutente = '$id_utente' "); if (numlin_query($server_email_tab_messaggi)) { $server = explode("#@#",risul_query($server_email_tab_messaggi,0,'valpersonalizza')); $proto_email_tm = $server[2]; $porta_email_tm = $server[3]; $username_email_tm = $server[1]; $password_email_tm = $server[4]; $num_trova_email_tm = $server[5]; $therad_email_tm = explode("#?#",$server[6]); $mittente_email_tm = explode("#?#",$server[7]); $oggetto_email_tm = explode("#?#",$server[8]); $server_email_tm = $server[0]; if ($porta_email_tm) $server_email_tm .= ":$porta_email_tm"; $server_email_tm = "$server_email_tm/$proto_email_tm"; $email_conn = @imap_open("{".$server_email_tm."}INBOX",$username_email_tm,$password_email_tm); if ($email_conn) { $messaggi_visti = esegui_query("select * from $tablecache where numero = '$id_utente' and tipo = 'messv_em' "); if (numlin_query($messaggi_visti)) { $ultimo_controllo = substr(risul_query($messaggi_visti,0,'data_modifica'),0,10); if (substr($ultimo_controllo,0,4).substr($ultimo_controllo,5,2).substr($ultimo_controllo,8,2) > date("Ymd",(time() - (36 * 3600)))) $ultimo_controllo = date("d-M-Y",(time() - (36 * 3600))); else $ultimo_controllo = date("d-M-Y",mktime(0,0,0,substr($ultimo_controllo,5,2),substr($ultimo_controllo,8,2),substr($ultimo_controllo,0,4))); $inbox_id_visto = risul_query($messaggi_visti,0,'testo'); } # fine if (numlin_query($messaggi_visti)) else { $ultimo_controllo = date("d-M-Y",(time() - (36 * 3600))); $inbox_id_visto = 0; } # fine else if (numlin_query($messaggi_visti)) $max_inbox_id = $inbox_id_visto; #$ultimo_controllo = date("d-M-Y",(time() - (96 * 3600))); $mess = imap_search($email_conn,"ALL UNDELETED SINCE \"$ultimo_controllo\""); if ($mess) { include("./includes/funzioni_testo.php"); $num_mess = count($mess); $mess_nuovi = 0; $mess_scaricati = 0; $info_mess = imap_fetch_overview($email_conn,implode(",",$mess)); $max_mess = esegui_query("select max(idmessaggi) from $tablemessaggi"); if (numlin_query($max_mess) != 0) $max_mess = (risul_query($max_mess,0,0) + 1); else $max_mess = 1; $lingue = ""; for ($num1 = 0 ; $num1 < $num_mess ; $num1++) { $inbox_id = $info_mess[$num1]->uid; echo "<b>$num1</b> ".htmlspecialchars("messaggio id: ".$info_mess[$num1]->message_id." / $inbox_id - date: ".$info_mess[$num1]->date." - from: ".$info_mess[$num1]->from." - ").@utf8_encode(imap_qprint($info_mess[$num1]->subject))." - ".fixset($info_mess[$num1]->in_reply_to)." - ".fixset($info_mess[$num1]->references)."<br>"; #echo "---------------------------------------------------------<br>".htmlspecialchars(utf8_encode(imap_qprint(imap_body($email_conn,$mess[$num1]))))."<br>"; echo "<br>"; #$inbox_id_visto = 26742; if ($inbox_id > $inbox_id_visto) { $mess_nuovi++; if ($max_inbox_id < $inbox_id) $max_inbox_id = $inbox_id; $id_messaggio = $info_mess[$num1]->message_id; $mittente = $info_mess[$num1]->from; if (isset($info_mess[$num1]->in_reply_to)) $risposta_a = $info_mess[$num1]->in_reply_to; else $risposta_a = null; if (isset($info_mess[$num1]->references)) $riferimento = $info_mess[$num1]->references; else $riferimento = null; $oggetto = imap_qprint($info_mess[$num1]->subject); if (function_exists('mb_convert_encoding')) $oggetto = mb_convert_encoding($oggetto,'UTF-8',mb_list_encodings()); elseif (function_exists('utf8_encode')) $oggetto = @utf8_encode($oggetto); $inserisci_mess = 0; for ($num2 = 0 ; $num2 < $num_trova_email_tm ; $num2++) { if (!$mittente_email_tm[$num2] or stristr($mittente,$mittente_email_tm[$num2])) { if (!strcmp((string) $oggetto_email_tm[$num2],"") or stristr($oggetto,$oggetto_email_tm[$num2])) { if ($therad_email_tm[$num2] == "tutti" or (!$risposta_a and !$riferimento and substr($oggetto,0,4) != "Re: " and substr($oggetto,0,3) != "R: ")) { $inserisci_mess = 1; $mess_scaricati++; break; } # fine if ($therad_email_tm[$num2] == "tutti" or (!$risposta_a and... } # fine if (!strcmp((string) $oggetto_email_tm[$num2],"") or stristr($oggetto,$oggetto_email_tm[$num2])) } # fine if (!$mittente_email_tm[$num2] or stristr($mittente,$mittente_email_tm[$num2])) } # fine for $num2 if ($inserisci_mess) { $lista_utenti = ",".$id_utente.","; $datavisione = date("Y-m-d H:i",(time() + (C_DIFF_ORE * 3600))).":00"; $datainserimento = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600))); if (strstr($mittente,"<")) $mittente = substr(strstr($mittente,"<"),1,-1); $eml_header = imap_headerinfo($email_conn,$mess[$num1]); #echo "<br><br>".var_dump($eml_header)."<br><br>"; $mittente = ""; $nome_cognome_richiedente = ""; $eml_reply_to = $eml_header->reply_to; if (is_array($eml_reply_to) and count($eml_reply_to) > 0) { for ($num2 = 0 ; $num2 < count($eml_reply_to) ; $num2++) $mittente .= $eml_reply_to[$num2]->mailbox."@".$eml_reply_to[$num2]->host.","; $mittente = substr($mittente,0,-1); $nome_cognome_richiedente = $eml_reply_to[0]->personal; } # fine if (is_array($eml_reply_to) and count($eml_reply_to) > 0) else { $eml_from = $eml_header->from; for ($num2 = 0 ; $num2 < count($eml_from) ; $num2++) $mittente .= $eml_from[$num2]->mailbox."@".$eml_from[$num2]->host.","; $mittente = substr($mittente,0,-1); $eml_cc = $eml_header->reply_to; if (is_array($eml_cc) and count($eml_cc) > 0) { for ($num2 = 0 ; $num2 < count($eml_cc) ; $num2++) $mittente .= ",".$eml_cc[$num2]->mailbox."@".$eml_cc[$num2]->host; } # fine if (is_array($eml_cc) and count($eml_cc) > 0) } # fine else if (is_array($reply_to) and count($reply_to) > 0) #if (strstr($mittente,"<")) $mittente = substr(strstr($mittente,"<"),1,-1); $testo = imap_utf8(imap_qprint(imap_body($email_conn,$mess[$num1],FT_PEEK))); #if (@get_magic_quotes_gpc()) $testo = stripslashes($testo); if (strlen($testo) > 30 and preg_replace("|[a-z0-9+/=]|i","",str_replace("\n","",str_replace("\r","",trim($testo)))) == "") $testo = imap_utf8(base64_decode($testo)); if ((stristr($testo,"Content-Type: multipart/alternative;") or stristr($testo,"This is a multi-part message in MIME format") or stristr(stristr($testo,"Content-Type: "),"Content-Type: ")) and stristr($testo,"Content-Type: text/plain;")) { if (stristr($testo,"------=_Part")) $testo = explode("------=_Part",$testo); else $testo = explode("Content-Type: ",$testo); for ($num2 = 0 ; $num2 < count($testo) ; $num2++) { if (stristr("Content-Type: ".$testo[$num2],"Content-Type: text/plain;")) { $testo = str_replace("\r","\n",str_replace("\r\n","\n",$testo[$num2])); if (stristr($testo,"Content-Transfer-Encoding: base64")) { $testo = explode("==",trim(strstr($testo,"\n\n"))); $testo = $testo[0]."=="; $testo = imap_utf8(base64_decode($testo)); } # fine if (stristr($testo[$num2],"Content-Transfer-Encoding: base64")) while (strstr($testo,"\n\n\n")) $testo = str_replace("\n\n\n","\n\n",$testo); break; } # fine if (stristr("Content-Type: ".$testo[$num2],"Content-Type: text/plain;")) } # fine for $num2 } # fine if (stristr($testo,"Content-Type: multipart/alternative;") and... else { if (stristr($testo,"Content-Type: text/html;") or stristr($testo,"<html>")) { $testo = str_replace("\r","",str_replace("\n","",$testo)); $testo = str_replace("<br>","\n",str_replace("<BR>","\n",str_replace("</div>","\n",str_replace("</DIV>","\n",str_replace("</tr>","\n",str_replace("</TR>","\n",$testo)))))); $testo = str_replace("<br/>","\n",str_replace("<BR/>","\n",$testo)); $testo = preg_replace("/<![a-z-][^>]*>/i","",preg_replace("|</?[a-z][^>]*>|i","",preg_replace("|<head>.*</head>|s","",str_replace(" "," ",$testo)))); $testo = preg_replace("/^ +/m","",str_replace(" "," ",$testo)); while (strstr($testo,"\n\n\n")) $testo = str_replace("\n\n\n","\n\n",$testo); } # fine if (stristr($testo,"Content-Type: text/html;") or stristr($testo,"<html>")) } # fine else if (stristr($testo,"Content-Type: multipart/alternative;") and... if (!defined('ENT_SUBSTITUTE')) define('ENT_SUBSTITUTE',ENT_IGNORE); $testo = substr(htmlspecialchars($testo,ENT_SUBSTITUTE),0,65530); $testo = aggslashdb($testo); $dati_richiedente = "$nome_cognome_richiedente<d><d>$mittente<d><d><d><d><d><d><d><d><d><d><d><d><d><d><d><d>"; esegui_query("insert into $tablemessaggi (idmessaggi,tipo_messaggio,idutenti,idutenti_visto,datavisione,mittente,testo,dati_messaggio1,dati_messaggio3,dati_messaggio8,dati_messaggio15,dati_messaggio20,datainserimento) values ('$max_mess','rprenota','$lista_utenti','$lista_utenti','$datavisione','$mittente','$testo','da_inserire','1','1','".aggslashdb($dati_richiedente)."','email','$datainserimento')"); # Estrazione dati da testo email $testo = preg_replace("/ +/"," ",str_replace("\n"," - ",$testo)); $arrivo_trovato = 0; $arrivo_cercato = array(); $partenza_trovata = 0; $partenza_cercata = array(); $num_persone = 0; $persone_cercate = array(); if (!is_array($lingue)) { $lingue = array(); if (is_dir("./includes/lang/en")) { $lingue[0] = "en"; $num_lingue = 1; } # fine if (is_dir("./includes/lang/en")) else $num_lingue = 0; $lingue[$num_lingue] = "ita"; $num_lingue++; $lang_dir = opendir("./includes/lang/"); while ($ini_lingua = readdir($lang_dir)) { if ($ini_lingua != "." and $ini_lingua != ".." and $ini_lingua != "en" and strlen($ini_lingua) < 4) { $lingue[$num_lingue] = $ini_lingua; $num_lingue++; } # fine if ($ini_lingua != "." and $ini_lingua != ".." and... } # fine while ($ini_lingua = readdir($lang_dig)) } # fine if (!is_array($lingue)) for ($num2 = 0 ; $num2 < $num_lingue ; $num2++) { $lingua_orig = $lingua_mex; $lingua_mex = $lingue[$num2]; $fr_arrivo = mex("arrivo",$pag); $fr_partenza = mex("partenza",$pag); $fr_date = mex("date",$pag); $fr_periodo = mex("periodo",$pag); $fr_persone = mex("persone",$pag); $lingua_mex = $lingua_orig; if (!$arrivo_trovato and empty($arrivo_cercato[$fr_arrivo])) { $arrivo_cercato[$fr_arrivo] = 1; # strano syntax error se si rimuove "." (dovuto a riconoscimento array?) $arrivo = preg_split("/$fr_arrivo"."[^0-9a-z]/i",$testo); if (!empty($arrivo[1])) { $arrivo = preg_split("/$fr_partenza"."[^0-9a-z]/i",substr($testo,strlen($arrivo[0]))); $arrivo = trova_prima_data(substr($arrivo[0],0,40),$stile_data,$lingue[$num2],$lung_resto); if ($arrivo) $arrivo_trovato = 1; } # fine if (!empty($arrivo[1])) if (!$arrivo_trovato) { $arrivo_r = preg_split("/$fr_date"."[^0-9a-z]/i",$testo); if (!empty($arrivo_r[1])) { $arrivo = preg_split("/$fr_partenza"."[^0-9a-z]/i",substr($testo,strlen($arrivo_r[0]))); $arrivo = trova_prima_data(substr($arrivo[0],0,40),$stile_data,$lingue[$num2],$lung_resto); if ($arrivo) $arrivo_trovato = 1; } # fine if (!empty($arrivo_r[1])) if (!$arrivo_trovato) { $arrivo_r = preg_split("/$fr_periodo"."[^0-9a-z]/i",$testo); if (!empty($arrivo_r[1])) { $arrivo = preg_split("/$fr_partenza"."[^0-9a-z]/i",substr($testo,strlen($arrivo_r[0]))); $arrivo = trova_prima_data(substr($arrivo[0],0,40),$stile_data,$lingue[$num2],$lung_resto); if ($arrivo) $arrivo_trovato = 1; } # fine if (!empty($arrivo_r[1])) } # fine if (!$arrivo_trovato) if ($arrivo_trovato and !$partenza_trovata) { $partenza = substr($testo,((int) $lung_resto + strlen($arrivo_r[0]))); $partenza = trova_prima_data(substr($partenza,0,40),$stile_data,$lingue[$num2],$lung_resto); if ($partenza) $partenza_trovata = 1; } # fine if ($arrivo_trovato and !$partenza_trovata) } # fine if (!$arrivo_trovato) } # fine if (!$arrivo_trovato and empty($arrivo_cercato[$fr_arrivo])) if (!$partenza_trovata and empty($partenza_cercata[$fr_partenza])) { $partenza_cercata[$fr_partenza] = 1; $partenza = preg_split("/$fr_partenza"."[^0-9a-z]/i",$testo); if ($partenza[1]) { $partenza = trova_prima_data(substr($testo,strlen($partenza[0]),40),$stile_data,$lingue[$num2],$lung_prima_data); if ($partenza and $partenza != $arrivo) $partenza_trovata = 1; } # fine if ($partenza[1]) } # fine if (!$partenza_trovata and empty($partenza_cercata[$fr_partenza])) if (!$num_persone and empty($persone_cercate[$fr_persone])) { $persone_cercate[$fr_persone] = 1; $lingua_mex = $lingue[$num2]; $fr_persone2 = mex("individui",$pag); $fr_ospiti = mex("ospiti",$pag); $fr_gruppo = mex("gruppo",$pag); $fr_adulti = mex("adulti",$pag); $fr_bambini = mex("bambini",$pag); $fr_viaggiatori = mex("viaggiatori",$pag); $lingua_mex = $lingua_orig; $num_persone = trova_numero_vicino($testo,$fr_adulti); if ($num_persone) { $num_bambini = trova_numero_vicino($testo,$fr_bambini); if ($num_bambini) $num_persone = $num_persone + $num_bambini; } # fine if ($num_persone) else { $num_persone = trova_numero_vicino($testo,$fr_ospiti); if (!$num_persone) { $num_persone = trova_numero_vicino($testo,$fr_gruppo); if (!$num_persone) { $num_persone = trova_numero_vicino($testo,$fr_persone2); if (!$num_persone) { $num_persone = trova_numero_vicino($testo,$fr_persone); if (!$num_persone) $num_persone = trova_numero_vicino($testo,$fr_viaggiatori); } # fine if (!$num_persone) } # fine if (!$num_persone) } # fine if (!$num_persone) } # fine else if ($num_persone) } # fine if (!$num_persone and empty($persone_cercate[$fr_persone])) } # fine for $num2 for ($num2 = 0 ; $num2 < $num_lingue ; $num2++) { $lingua_orig = $lingua_mex; $lingua_mex = $lingue[$num2]; $fr_notti = mex("notti",$pag); $lingua_mex = $lingua_orig; # Se non è stata fornita la data di partenza ma solo il numero di notti if (!$partenza_trovata and $arrivo_trovato and !$partenza_cercata[$fr_notti]) { $partenza = trova_numero_vicino($testo,$fr_notti); if ($partenza) { $partenza_trovata = 1; $partenza = date("Y-m-d",mktime(0,0,0,substr($arrivo,5,2),((integer) substr($arrivo,8,2) + $partenza),substr($arrivo,0,4))); } # fine if ($partenza) } # fine if (!$partenza_trovata and $arrivo_trovato and... } # fine for $num2 if ($arrivo_trovato) esegui_query("update $tablemessaggi set dati_messaggio4 = '$arrivo' where idmessaggi = '$max_mess' "); if ($partenza_trovata) esegui_query("update $tablemessaggi set dati_messaggio5 = '$partenza' where idmessaggi = '$max_mess' "); if ($num_persone) esegui_query("update $tablemessaggi set dati_messaggio7 = '$num_persone' where idmessaggi = '$max_mess' "); $max_mess++; } # fine if ($inserisci_mess) } # fine if ($inbox_id > $inbox_id_visto) } # fine for $num1 #echo "<br><br>".var_dump($info_mess); $data_modifica = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600))); if (numlin_query($messaggi_visti)) esegui_query("update $tablecache set testo = '$max_inbox_id', data_modifica = '$data_modifica' where numero = '$id_utente' and tipo = 'messv_em' "); else esegui_query("insert into $tablecache (numero,tipo,testo,data_modifica,datainserimento) values ('$id_utente','messv_em','$max_inbox_id','$data_modifica','$data_modifica') "); if ($mess_nuovi) echo mex("Nuovi messaggi",$pag).": $mess_nuovi. ".mex("Scaricati",$pag).": $mess_scaricati.<br>"; else echo mex("Nessun nuovo messaggio",$pag).".<br>"; } # fine if ($mess) else echo mex("Nessun nuovo messaggio",$pag).".<br>"; imap_close($email_conn); } # fine if ($email_conn) else { echo mex("Connessione al server",$pag)." ".$server[0]." ".mex("non riuscita!",$pag)." ".mex("Controllare i dati immessi in",$pag)." \""; if ($modifica_pers != "NO") echo "<a href=\"./personalizza.php?anno=$anno&id_sessione=$id_sessione#tab_mess\">".mex("configura e personalizza",$pag)."\"</a>.<br>"; else echo "".mex("configura e personalizza\"",$pag).".<br>"; if (stristr($server[0],"gmail.com")) { #echo "<br>".mex("Per gli account su gmail potrebbe essere necessario abilitare l'opzione",$pag)." \"<a rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://myaccount.google.com/lesssecureapps\">Less secure app access: ON</a>\" ".mex("e/o per una volta usare prima la funzione",$pag)." \"<a rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://accounts.google.com/DisplayUnlockCaptcha\">Unlock Captcha</a>\".<br><br>"; echo "<br>".mex("Per gli account su gmail potrebbe essere necessario abilitare l'opzione",$pag)." \"<a rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://myaccount.google.com/apppasswords\">App Password</a>\".<br><br>"; } # fine if (stristr($server[0],"gmail.com")) } # fine else if ($email_conn) } # fine if (numlin_query($server_email_tab_messaggi)) unlock_tabelle($tabelle_lock); } # fine if (!empty($scarica_mess) and function_exists('imap_open')) if (!empty($cambia_dati_ricavati) and controlla_num_pos($cambia_dati_ricavati) == "SI") { $tabelle_lock = array($tablemessaggi); $altre_tab_lock = array($tableperiodi); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $mess_esist = esegui_query("select * from $tablemessaggi where idmessaggi = '$cambia_dati_ricavati' "); if (numlin_query($mess_esist)) { $tipo_mess = risul_query($mess_esist,0,'tipo_messaggio'); if ($tipo_mess == "rprenota") { if (@get_magic_quotes_gpc()) { $n_cognome_richiedente = stripslashes($n_cognome_richiedente); $n_email_richiedente = stripslashes($n_email_richiedente); } # fine if (@get_magic_quotes_gpc()) if ($n_cognome_richiedente or $n_email_richiedente) { $dati_richiedente = risul_query($mess_esist,0,'dati_messaggio15'); $dati_richiedente = explode("<d>",$dati_richiedente); if ($n_cognome_richiedente) { $n_cognome_richiedente = htmlspecialchars($n_cognome_richiedente); $dati_richiedente[0] = $n_cognome_richiedente; } # fine if ($n_cognome_richiedente) if ($n_email_richiedente) { $n_email_richiedente = htmlspecialchars($n_email_richiedente); $dati_richiedente[2] = $n_email_richiedente; } # fine if ($n_email_richiedente) $dati_richiedente = implode("<d>",$dati_richiedente); esegui_query("update $tablemessaggi set dati_messaggio15 = '".aggslashdb($dati_richiedente)."' where idmessaggi = '$cambia_dati_ricavati' "); } # fine if ($n_cognome_richiedente or $n_email_richiedente) if ($n_data_arrivo) { $idperiodo = esegui_query("select idperiodi from $tableperiodi where datainizio = '".aggslashdb($n_data_arrivo)."' "); if (numlin_query($idperiodo)) { esegui_query("update $tablemessaggi set dati_messaggio4 = '".aggslashdb($n_data_arrivo)."' where idmessaggi = '$cambia_dati_ricavati' "); } # fine if (numlin_query($idperiodo)) } # fine if ($n_data_arrivo) if ($n_data_partenza) { $idperiodo = esegui_query("select idperiodi from $tableperiodi where datainizio = '".aggslashdb($n_data_partenza)."' "); if (numlin_query($idperiodo)) { esegui_query("update $tablemessaggi set dati_messaggio5 = '".aggslashdb($n_data_partenza)."' where idmessaggi = '$cambia_dati_ricavati' "); } # fine if (numlin_query($idperiodo)) } # fine if ($n_data_partenza) if ($n_num_persone and controlla_num_pos($n_num_persone) == "SI") { esegui_query("update $tablemessaggi set dati_messaggio7 = '$n_num_persone' where idmessaggi = '$cambia_dati_ricavati' "); } # fine if ($n_num_persone and controlla_num_pos($n_num_persone) == "SI") } # fine if ($tipo_mess == "rprenota") } # fine if (numlin_query($mess_esist)) unlock_tabelle($tabelle_lock); } # fine if (!empty($cambia_dati_ricavati) and controlla_num_pos($cambia_dati_ricavati) == "SI") if ($mostra_form_iniziale == "NO") { echo "<br><form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <button class=\"gobk\" type=\"submit\"><div>".mex("Torna indietro",$pag)."</div></button> </div></form>"; } # fine if ($mostra_form_iniziale == "NO") } # fine if (!empty($cambia_qualcosa)) if ($mostra_form_iniziale != "NO") { if (function_exists('imap_open')) { $server_email_tab_messaggi = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'server_email_tab_messaggi' and idutente = '$id_utente' "); if (numlin_query($server_email_tab_messaggi)) { #$server = explode("#@#",risul_query($server_email_tab_messaggi,0,'valpersonalizza')); echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div style=\"line-height:160%\"> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"scarica_mess\" value=\"1\"> <button class=\"deml\" type=\"submit\"><div style=\"font-size: 70%;\">".mex("Scarica messaggi email",$pag)."</div></button> </div></form>"; } # fine if (numlin_query($server_email_tab_messaggi)) } # fine if (function_exists('imap_open')) echo "<h3 id=\"h_mess\"><span>".mex("Messaggi",$pag)."</span></h3><br><br>"; $tutti_utenti = esegui_query("select * from $tableutenti order by idutenti"); $num_tutti_utenti = numlin_query($tutti_utenti); $option_select_utenti = ""; $nome_utente = array(); for ($num1 = 0 ; $num1 < $num_tutti_utenti ; $num1++) { $idutenti = risul_query($tutti_utenti,$num1,'idutenti'); $nome_utente[$idutenti] = risul_query($tutti_utenti,$num1,'nome_utente'); if ($id_utente == $idutenti) $nome_utente_attuale = $nome_utente[$idutenti]; $option_select_utenti .= "<option value=\"$idutenti\">".$nome_utente[$idutenti]."</option>"; } # fine for $num1 $nomi_contratti = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'nomi_contratti' and idutente = '$id_utente'"); $nomi_contratti = (string) risul_query($nomi_contratti,0,'valpersonalizza'); $nomi_contratti = explode("#@&",$nomi_contratti); $num_nomi_contratti = count($nomi_contratti); for ($num1 = 0 ; $num1 < $num_nomi_contratti ; $num1++) { $dati_nome_contratto = explode("#?&",$nomi_contratti[$num1]); $nome_contratto[$dati_nome_contratto[0]] = fixset($dati_nome_contratto[1]); } # fine for $num1 $max_contr = esegui_query("select max(numero) from $tablecontratti where tipo $LIKE 'contr%'"); $max_contr = risul_query($max_contr,0,0); $option_contratti = ""; for ($num_contratto = 1 ; $num_contratto <= $max_contr ; $num_contratto++) { if ($attiva_contratti_consentiti == "n" or $contratti_consentiti_vett[$num_contratto] == "SI") { if (!empty($nome_contratto[$num_contratto])) $num_contratto_vedi = $nome_contratto[$num_contratto]; else $num_contratto_vedi = $num_contratto; $option_contratti .= "<option value=\"$num_contratto\">$num_contratto_vedi</option>"; } # fine if ($attiva_contratti_consentiti == "n" or... } # fine for $num_contratto include("./includes/funzioni_costi_agg.php"); $dati_ca = dati_costi_agg_ntariffe($tablenometariffe,"NO","SI"); $adesso = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600))); $messaggi = esegui_query("select * from $tablemessaggi where datavisione < '$adesso' and idutenti $LIKE '%,$id_utente,%' order by datavisione desc limit 3000 "); $num_messaggi = numlin_query($messaggi); if ($num_messaggi > 0 or $priv_ins_messaggi == "s") { $option_date = ""; $formato_vedi = "d-m"; if ($stile_data == "usa") $formato_vedi = "m-d"; $numgiorno = 1; do { $data_select = date("-m-d" , mktime(0,0,0,1,$numgiorno,$anno_corrente)); $data_select_vedi = date($formato_vedi,mktime(0,0,0,1,$numgiorno,$anno_corrente)); $numgiorno++; $annocreato = date("Y",mktime(0,0,0,1,$numgiorno,$anno_corrente)); $option_date .= "<option value=\"$data_select\">$data_select_vedi</option>"; } while ($annocreato == $anno_corrente); } # fine if ($num_messaggi > 0 or $priv_ins_messaggi == "s") if ($num_messaggi > 0) { $stringa_pagine = ""; $stringa_puntini_tab = ""; $num_vedi_in_tab = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'num_righe_tab_messaggi' and idutente = '$id_utente'"); $num_vedi_in_tab = risul_query($num_vedi_in_tab,0,'valpersonalizza_num'); if (empty($pagina_messaggi)) $pagina_messaggi = 1; if ($num_messaggi > $num_vedi_in_tab) { $num_pagine = ceil($num_messaggi / $num_vedi_in_tab); $stringa_pagine = "<div style=\"text-align: center; margin: 3px;\"><small>".mex("pagine",'visualizza_tabelle.php')."</small>:"; for ($num1 = 1 ; $num1 <= $num_pagine ; $num1++) { $stringa_pagine .= " "; if ($num1 != $pagina_messaggi) { $stringa_pagine .= "<a href=\"./$pag?anno=$anno&id_sessione=$id_sessione&pagina_messaggi=$num1\">"; } # fine if ($num1 != $pagina_messaggi) else $stringa_pagine .= "<b>"; $stringa_pagine .= $num1; if ($num1 != $pagina_messaggi) $stringa_pagine .= "</a>"; else $stringa_pagine .= "</b>"; } # fine for $num1 $stringa_pagine .= "</div>"; $stringa_puntini_tab = "<tr><td colspan=\"5\" style=\"text-align: center;\">...</td></tr>"; } # fine if ($num_messaggi > $num_vedi_in_tab) else $num_pagine = 1; function crea_tasto_modifica_prenota ($stato_prenota,$priv_mod_prenota_iniziate,$priv_mod_prenotazioni,$priv_mod_prenota_ore,$anno,$PHPR_TAB_PRE,$pag,$id_sessione,$id_utente) { $tableprenota = $PHPR_TAB_PRE."prenota".$anno; $tasto_prenota = str_replace(" "," ",mex("Inserito",$pag)).": "; if ($priv_mod_prenota_iniziate != "s") $id_periodo_corrente = calcola_id_periodo_corrente($anno); $prenota_inserite = explode(",",$stato_prenota); $num_prenota_inserite = count($prenota_inserite); for ($num2 = 0 ; $num2 < $num_prenota_inserite ; $num2++) { $link_modifica = "SI"; $stilebarrato = ""; $pcanc = ""; $dati_prenota = esegui_query("select utente_inserimento,iddatainizio,datainserimento from $tableprenota where idprenota = '".aggslashdb($prenota_inserite[$num2])."'"); if (!numlin_query($dati_prenota)) { $dati_prenota = esegui_query("select utente_inserimento,iddatainizio,datainserimento from $PHPR_TAB_PRE"."prenotacanc$anno where idprenota = '".aggslashdb($prenota_inserite[$num2])."'"); if (numlin_query($dati_prenota)) { $stilebarrato = " style=\"text-decoration: line-through\""; $pcanc = "&pcanc=1"; } # fine if (numlin_query($dati_prenota)) } # fine if (!numlin_query($dati_prenota)) if (numlin_query($dati_prenota) != 1) { $link_modifica = "NO"; $utente_ins_prenota = ""; } # fine if (numlin_query($dati_prenota) != 1) else { $utente_ins_prenota = risul_query($dati_prenota,0,'utente_inserimento'); $id_data_ini_prenota = risul_query($dati_prenota,0,'iddatainizio'); $data_ins_prenota = risul_query($dati_prenota,0,'datainserimento'); } # fine else if (numlin_query($dati_prenota) != 1) if ($priv_mod_prenotazioni == "n") $link_modifica = "NO"; if ($priv_mod_prenotazioni == "p" and $utente_ins_prenota != $id_utente) $link_modifica = "NO"; if ($priv_mod_prenotazioni == "g" and empty($utenti_gruppi[$utente_ins_prenota])) $link_modifica = "NO"; if ($priv_mod_prenota_iniziate != "s" and $id_periodo_corrente >= $id_data_ini_prenota) $link_modifica = "NO"; if ($priv_mod_prenota_ore != "000") { $adesso = date("YmdHis",(time() + (C_DIFF_ORE * 3600))); $limite = date("YmdHis",mktime((substr($data_ins_prenota,11,2) + (int) $priv_mod_prenota_ore),substr($data_ins_prenota,14,2),substr($data_ins_prenota,17,2),substr($data_ins_prenota,5,2),substr($data_ins_prenota,8,2),substr($data_ins_prenota,0,4))); if ($adesso > $limite) $link_modifica = "NO"; } # fine if ($priv_mod_prenota_ore != "000") if ($link_modifica == "SI") { $link_modifica_inizio = "<a$stilebarrato href=\"modifica_prenota.php?id_prenota=".$prenota_inserite[$num2]."$pcanc&anno=$anno&id_sessione=$id_sessione&origine=messaggi.php\">"; $link_modifica_fine = "</a>"; #$checkbox_modifica = "<input type=\"checkbox\" name=\"cambia$numero\" value=\"SI\">"; } # fine if ($link_modifica == "SI") else { $link_modifica_inizio = ""; $link_modifica_fine = ""; #$checkbox_modifica = " "; } # fine else if ($link_modifica == "SI") if ($num2 != 0) $tasto_prenota .= ", "; $tasto_prenota .= $link_modifica_inizio.$prenota_inserite[$num2].$link_modifica_fine; } # fine for $num2 return $tasto_prenota; } # fine function crea_tasto_modifica_prenota echo "$stringa_pagine <div class=\"tab_cont\"> <table class=\"me1 t1color\" style=\"margin-left: auto; margin-right: auto;\" border=\"$t1border\" cellspacing=\"$t1cellspacing\" cellpadding=\"$t1cellpadding\"> <tr><td class=\"t1top\" align=\"center\">".mex("N°",$pag)."</td> <td class=\"t1top\" align=\"center\">".mex("Mittente",$pag)."</td> <td class=\"t1top\" align=\"center\">".mex("Testo",$pag)."</td> <td class=\"t1top\" align=\"center\">".mex("Data",$pag)."</td> <td class=\"t1top\" align=\"center\">".mex("Azioni",$pag)."</td></tr>"; if ($stringa_pagine and $pagina_messaggi != 1) echo $stringa_puntini_tab; for ($num1 = 0 ; $num1 < $num_messaggi ; $num1++) { $numero = $num_messaggi - $num1; if ($num_pagine == 1 or (($num1 + 1) > (($pagina_messaggi - 1) * $num_vedi_in_tab) and ($num1 + 1) <= ($pagina_messaggi * $num_vedi_in_tab))) { $idmessaggi = risul_query($messaggi,$num1,'idmessaggi'); $idutenti_visto = risul_query($messaggi,$num1,'idutenti_visto'); if (str_replace(",$id_utente,","",$idutenti_visto) != $idutenti_visto) { $font_num = "<div style=\"display: inline; color: red;\"><b>"; $slash_font_num = "</b></div>"; $tabelle_lock = array($tablemessaggi); $tabelle_lock = lock_tabelle($tabelle_lock,""); $idutenti_visto = esegui_query("select idutenti_visto from $tablemessaggi where idmessaggi = '$idmessaggi'"); if (numlin_query($idutenti_visto) == 1) { $idutenti_visto = risul_query($idutenti_visto,0,'idutenti_visto'); esegui_query("update $tablemessaggi set idutenti_visto = '".str_replace(",$id_utente,",",",$idutenti_visto)."' where idmessaggi = '$idmessaggi'"); } # fine if (numlin_query($idutenti_visto) == 1) unlock_tabelle($tabelle_lock); } # fine if (str_replace(",$id_utente,","",$idutenti_visto) != $idutenti_visto) else { $font_num = ""; $slash_font_num = ""; } # fine else if (str_replace(",$id_utente,","",$idutenti_visto) != $idutenti_visto) $tipo_messaggio = risul_query($messaggi,$num1,'tipo_messaggio'); $mittente = risul_query($messaggi,$num1,'mittente'); if (($tipo_messaggio == "mess" or $tipo_messaggio == "sistema") and $nome_utente[$mittente]) $mittente = $nome_utente[$mittente]; $testo = risul_query($messaggi,$num1,'testo'); $tasto_prenota = ""; $tasto_contr = ""; $aggiunta_testo_dt = ""; if ($tipo_messaggio == "rprenota") { $mittente = "<small>$mittente</small>"; $testo_orig = $testo; $testo = "<small>".nl2br($testo)."</small>"; if (strlen($testo) > 3000) $testo = "<small>$testo</small>"; $costo_presente = array(); unset($numsettimane); unset($nummoltiplica_ca); unset($catpers_ca); $cat_numpers = array(); $num_periodi = array(); $stato_prenota = (string) risul_query($messaggi,$num1,'dati_messaggio1'); $num_tipologie = (string) risul_query($messaggi,$num1,'dati_messaggio3'); $inizioperiodo_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio4')); $fineperiodo_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio5')); $numero_tariffa_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio6')); $numpersone_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio7')); $num_app_tipo_richiesti_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio8')); $numcostiagg_dt = explode(",",(string) risul_query($messaggi,$num1,'dati_messaggio9')); $idcostoagg_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio10')); $costoagg_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio11')); $numsettimane_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio12')); $nummoltiplica_ca_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio13')); $id_periodi_costo_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio14')); $catpers_ca_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio21')); $dati_calcolati_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio16')); $anno_prenota_dt = (string) risul_query($messaggi,$num1,'dati_messaggio18'); $origine_prenota_dt = explode(">",(string) risul_query($messaggi,$num1,'dati_messaggio19')); $prenota_vicine_dt = fixset($origine_prenota_dt[1]); $origine_prenota_dt = $origine_prenota_dt[0]; $aggiunta_testo_dt = (string) risul_query($messaggi,$num1,'dati_messaggio20'); $cat_numpers_dt = explode(";",(string) risul_query($messaggi,$num1,'dati_messaggio22')); for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) { $inizioperiodo[$n_t] = aggslashdb($inizioperiodo_dt[($n_t - 1)]); $idinizioperiodo[$n_t] = esegui_query("select idperiodi from $tableperiodi where datainizio = '".$inizioperiodo[$n_t]."'"); if (numlin_query($idinizioperiodo[$n_t]) == 1) $idinizioperiodo[$n_t] = risul_query($idinizioperiodo[$n_t],0,'idperiodi'); else $idinizioperiodo[$n_t] = ""; $fineperiodo[$n_t] = aggslashdb($fineperiodo_dt[($n_t - 1)]); $idfineperiodo[$n_t] = esegui_query("select idperiodi from $tableperiodi where datafine = '".$fineperiodo[$n_t]."'"); if (numlin_query($idfineperiodo[$n_t]) == 1) $idfineperiodo[$n_t] = risul_query($idfineperiodo[$n_t],0,'idperiodi'); else $idfineperiodo[$n_t] = ""; if ($idinizioperiodo[$n_t] and $idfineperiodo[$n_t]) $num_periodi[$n_t] = $idfineperiodo[$n_t] - $idinizioperiodo[$n_t] + 1; else $num_periodi[$n_t] = ""; $numero_tariffa[$n_t] = $numero_tariffa_dt[($n_t - 1)]; $nome_tariffa[$n_t] = esegui_query("select * from $tablenometariffe where idntariffe = '1'"); $nome_tariffa[$n_t] = @risul_query($nome_tariffa[$n_t],0,"tariffa".$numero_tariffa[$n_t]); if (!$nome_tariffa[$n_t]) $nome_tariffa[$n_t] = mex("tariffa","prenota.php").$numero_tariffa[$n_t]; $numpersone[$n_t] = $numpersone_dt[($n_t - 1)]; $num_app_tipo_richiesti[$n_t] = $num_app_tipo_richiesti_dt[($n_t - 1)]; $dati_calcolati = explode(":",$dati_calcolati_dt[($n_t - 1)]); $dati_calcolati_0 = explode(",",$dati_calcolati[0]); $costo_tariffa[$n_t] = (double) $dati_calcolati_0[0]; $caparra[$n_t] = fixset($dati_calcolati_0[1]); $letti_agg[$n_t] = fixset($dati_calcolati_0[2]); $num_ca_calc[$n_t] = (count($dati_calcolati) - 1); for ($num2 = 1 ; $num2 < $num_ca_calc[$n_t] ; $num2++) { $dati_calcolati_ca = explode(",",$dati_calcolati[$num2]); $prezzo_ca_calc[$n_t][$num2] = (double) $dati_calcolati_ca[0]; $nome_ca_calc[$n_t][$num2] = $dati_calcolati_ca[1]; $ripeti_ca_calc[$n_t][$num2] = $dati_calcolati_ca[2]; $tasseperc_ca_calc[$n_t][$num2] = fixset($dati_calcolati_ca[3]); $moltmax_ca_calc[$n_t][$num2] = str_replace("|",",",fixstr($dati_calcolati_ca[4])); $valgiornmax_ca_calc[$n_t][$num2] = str_replace("|",",",fixstr($dati_calcolati_ca[5])); $giorni_ca_calc[$n_t][$num2] = str_replace("|",",",fixstr($dati_calcolati_ca[6])); $tipo_persona_ca_calc[$n_t][$num2] = fixset($dati_calcolati_ca[7]); } # fine for $num2 $numcostiagg[$n_t] = $numcostiagg_dt[($n_t - 1)]; $idcostoagg_dt2 = explode(",",$idcostoagg_dt[($n_t - 1)]); $costoagg_dt2 = explode(",",$costoagg_dt[($n_t - 1)]); $numsettimane_dt2 = explode(",",$numsettimane_dt[($n_t - 1)]); $nummoltiplica_ca_dt2 = explode(",",$nummoltiplica_ca_dt[($n_t - 1)]); $id_periodi_costo_dt2 = explode(":",$id_periodi_costo_dt[($n_t - 1)]); $catpers_ca_dt2 = explode(",",$catpers_ca_dt[($n_t - 1)]); for ($numca = 1 ; $numca <= $numcostiagg[$n_t] ; $numca++) { if ($costoagg_dt2[($numca - 1)] == "SI") { $costo_presente[$n_t][$idcostoagg_dt2[($numca - 1)]] = 1; $numsettimane[$n_t][$idcostoagg_dt2[($numca - 1)]] = $numsettimane_dt2[($numca - 1)]; $nummoltiplica_ca[$n_t][$idcostoagg_dt2[($numca - 1)]] = $nummoltiplica_ca_dt2[($numca - 1)]; $catpers_ca[$n_t][$idcostoagg_dt2[($numca - 1)]] = $catpers_ca_dt2[($numca - 1)]; } # fine if ($costoagg_dt2[($numca - 1)] == "SI") } # fine for $numca $cat_numpers[$n_t] = explode(",",$cat_numpers_dt[($n_t - 1)]); } # fine for $n_t $dati_richiedente_dt = explode("<d>",(string) risul_query($messaggi,$num1,'dati_messaggio15')); $cognome_richiedente = $dati_richiedente_dt[0]; $nome_richiedente = $dati_richiedente_dt[1]; $email_richiedente = $dati_richiedente_dt[2]; $sesso = $dati_richiedente_dt[3]; $datanascita = $dati_richiedente_dt[4]; $tipodoc = $dati_richiedente_dt[18]; $documento = $dati_richiedente_dt[5]; $nazione = $dati_richiedente_dt[6]; $regione = $dati_richiedente_dt[7]; $citta = $dati_richiedente_dt[8]; $via = $dati_richiedente_dt[9]; $numcivico = $dati_richiedente_dt[10]; $cap = $dati_richiedente_dt[11]; $lingua_cli = fixset($dati_richiedente_dt[19]); $telefono = $dati_richiedente_dt[12]; $telefono2 = $dati_richiedente_dt[13]; $telefono3 = $dati_richiedente_dt[14]; $fax = $dati_richiedente_dt[15]; $oracheckin = $dati_richiedente_dt[16]; if ($oracheckin) { $data_checkin = substr($oracheckin,0,10); $ora_stima_checkin = substr($oracheckin,11,2); $min_stima_checkin = substr($oracheckin,14,2); $oracheckin = $oracheckin.":00"; } # fine if ($oracheckin) $metodo_pagamento = $dati_richiedente_dt[17]; $commento = fixset($dati_richiedente_dt[20]); $commenti_pers = explode(">",fixstr($dati_richiedente_dt[21])); $num_commenti_pers = count($commenti_pers); if ($num_commenti_pers < 1) $num_commenti_pers = 1; $campi_pers_clienti = fixset($dati_richiedente_dt[22]); $codfiscale = fixset($dati_richiedente_dt[23]); $partitaiva = fixset($dati_richiedente_dt[24]); $valuta_pagamento = fixset($dati_richiedente_dt[25]); $cambio_pagamento = fixset($dati_richiedente_dt[26]); $arrotond_pagamento = fixset($dati_richiedente_dt[27]); if ($stato_prenota == "da_inserire") { if ($priv_ins_nuove_prenota == "s" and $inizioperiodo[1]) { $tasto_prenota = "<form accept-charset=\"utf-8\" method=\"post\" action=\"prenota.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"idmessaggi\" value=\"$idmessaggi\"> <input type=\"hidden\" name=\"cognome\" value=\"$cognome_richiedente\"> <input type=\"hidden\" name=\"nome\" value=\"$nome_richiedente\">"; $tasto_prenota .= "<input type=\"hidden\" name=\"mos_tut_dat\" value=\"SI\"> <input type=\"hidden\" name=\"num_tipologie\" value=\"$num_tipologie\"> <input type=\"hidden\" name=\"prenota_vicine\" value=\"$prenota_vicine_dt\">"; for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) { $tasto_prenota .= "<input type=\"hidden\" name=\"inizioperiodo$n_t\" value=\"".$idinizioperiodo[$n_t]."\"> <input type=\"hidden\" name=\"fineperiodo$n_t\" value=\"".$idfineperiodo[$n_t]."\"> <input type=\"hidden\" name=\"numpersone$n_t\" value=\"".$numpersone[$n_t]."\">"; for ($num2 = 0 ; $num2 < count($cat_numpers[$n_t]) ; $num2++) if ($cat_numpers[$n_t][$num2]) $tasto_prenota .= "<input type=\"hidden\" name=\"cat$num2"."_numpers$n_t\" value=\"".$cat_numpers[$n_t][$num2]."\">"; $tasto_prenota .= "<input type=\"hidden\" name=\"num_app_richiesti$n_t\" value=\"".$num_app_tipo_richiesti[$n_t]."\"> <input type=\"hidden\" name=\"nometipotariffa$n_t\" value=\"tariffa".$numero_tariffa[$n_t]."\"> <input type=\"hidden\" name=\"tipo_val_caparra$n_t\" value=\"".htmlspecialchars(">".$valuta_pagamento)."\"> <input type=\"hidden\" name=\"met_paga_caparra$n_t\" value=\"$metodo_pagamento\"> <input type=\"hidden\" name=\"origine_prenota$n_t\" value=\"$origine_prenota_dt\"> <input type=\"hidden\" name=\"commento1_$n_t\" value=\"$commento\"> <input type=\"hidden\" name=\"num_commenti$n_t\" value=\"$num_commenti_pers\">"; for ($num2 = 1 ; $num2 < count($commenti_pers) ; $num2++) { $commento_pers = explode("<",$commenti_pers[$num2]); $tasto_prenota .= "<input type=\"hidden\" name=\"tipo_commento".($num2 + 1)."_$n_t\" value=\"".$commento_pers[0]."\"> <input type=\"hidden\" name=\"commento".($num2 + 1)."_$n_t\" value=\"".$commento_pers[1]."\">"; } # fine for $num2 if ($oracheckin) { $anno_ini = substr($inizioperiodo[$n_t],0,4); $mese_ini = substr($inizioperiodo[$n_t],5,2); $giorno_ini = substr($inizioperiodo[$n_t],8,2); $giorno_stima_checkin = ""; if (controlla_num_pos($giorno_ini) == "SI") { $giorno_fine = $giorno_ini + 6; for ($num2 = $giorno_ini ; $num2 <= $giorno_fine ; $num2++) { $data_select = date("Y-m-d",mktime(0,0,0,$mese_ini,$num2,$anno_ini)); if ($data_select == $data_checkin) { $giorno_stima_checkin = $num2 - $giorno_ini + 1; break; } } # fine for $num2 } # fine if (controlla_numpos($giorno_ini) == "SI") if ($giorno_stima_checkin) { $tasto_prenota .= "<input type=\"hidden\" name=\"giorno_stima_checkin$n_t\" value=\"$giorno_stima_checkin\"> <input type=\"hidden\" name=\"ora_stima_checkin$n_t\" value=\"$ora_stima_checkin\"> <input type=\"hidden\" name=\"min_stima_checkin$n_t\" value=\"$min_stima_checkin\">"; } # fine if ($giorno_stima_checkin) } # fine if ($oracheckin) $ncostiagg = 0; $ngrcostiagg = 0; for ($num2 = 0 ; $num2 < $dati_ca['num'] ; $num2++) { if ($attiva_costi_agg_consentiti == "n" or $costi_agg_consentiti_vett[$dati_ca[$num2]['id']] == "SI") { if ($dati_ca[$num2]['combina'] != "s" and $dati_ca[$num2]['raggruppa'] != "s") { $ncostiagg++; if (isset($costo_presente[$n_t][$dati_ca[$num2]['id']])) { $tasto_prenota .= "<input type=\"hidden\" name=\"costoagg$ncostiagg"."_$n_t\" value=\"SI\"> <input type=\"hidden\" name=\"numsettimane$ncostiagg"."_$n_t\" value=\"".$numsettimane[$n_t][$dati_ca[$num2]['id']]."\"> <input type=\"hidden\" name=\"nummoltiplica_ca$ncostiagg"."_$n_t\" value=\"".$nummoltiplica_ca[$n_t][$dati_ca[$num2]['id']]."\"> <input type=\"hidden\" name=\"catpers_ca$ncostiagg"."_$n_t\" value=\"".$catpers_ca[$n_t][$dati_ca[$num2]['id']]."\">"; } # fine if (isset($costo_presente[$n_t][$dati_ca[$num2]['id']])) } # fine if ($dati_ca[$num2]['combina'] != "s" and $dati_ca[$num2]['raggruppa'] != "s") else { $ngrcostiagg++; if (isset($costo_presente[$n_t][$dati_ca[$num2]['id']])) { $tasto_prenota .= "<input type=\"hidden\" name=\"gr_idcostoagg".$dati_ca[$num2]['id']."_$n_t\" value=\"SI\"> <input type=\"hidden\" name=\"gr_numsettimane".$dati_ca[$num2]['id']."_$n_t\" value=\"".$numsettimane[$n_t][$dati_ca[$num2]['id']]."\"> <input type=\"hidden\" name=\"gr_nummoltiplica_ca".$dati_ca[$num2]['id']."_$n_t\" value=\"".$nummoltiplica_ca[$n_t][$dati_ca[$num2]['id']]."\"> <input type=\"hidden\" name=\"gr_catpers_ca".$dati_ca[$num2]['id']."_$n_t\" value=\"".$catpers_ca[$n_t][$dati_ca[$num2]['id']]."\"> <input type=\"hidden\" name=\"idca_ngr_passa$ngrcostiagg"."_$n_t\" value=\"".$dati_ca[$num2]['id']."\">"; } # fine if (isset($costo_presente[$n_t][$dati_ca[$num2]['id']])) } # fine else if ($dati_ca[$num2]['combina'] != "s" and $dati_ca[$num2]['raggruppa'] != "s") } # fine if ($attiva_costi_agg_consentiti == "n" or... } # fine for $num2 } # fine for $n_t $tasto_prenota .= "<input type=\"hidden\" name=\"numcostiagg\" value=\"$ncostiagg\"> <input type=\"hidden\" name=\"numgrca_passa\" value=\"$ngrcostiagg\"> <input type=\"hidden\" name=\"num_categorie_persone\" value=\"".count($cat_numpers[1])."\"> <button class=\"ires\" type=\"submit\"><div>".mex("Inserisci la prenotazione",$pag)."</div></button> </div></form><br>"; if ($num_tipologie == 1 and !$numero_tariffa[1] and $num_app_tipo_richiesti[1] == 1 and $fineperiodo[1]) { $tasto_prenota .= "<form accept-charset=\"utf-8\" method=\"post\" action=\"disponibilita.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cognome_1\" value=\"$cognome_richiedente\"> <input type=\"hidden\" name=\"email_1\" value=\"$email_richiedente\"> <input type=\"hidden\" name=\"testo_email_richiesta\" value=\"".str_replace("\"",""",$testo_orig)."\"> <input type=\"hidden\" name=\"inizioperiodo\" value=\"".$inizioperiodo[1]."\"> <input type=\"hidden\" name=\"fineperiodo\" value=\"".$fineperiodo[1]."\"> <input type=\"hidden\" name=\"origine\" value=\"messaggi.php?pagina_messaggi=$pagina_messaggi#mess$idmessaggi\">"; if ($numpersone[1]) $tasto_prenota .= "<input type=\"hidden\" name=\"numpersone\" value=\"".$numpersone[1]."\">"; $tasto_prenota .= "<button class=\"chav\" type=\"submit\"><div>".mex("Controlla disponibilità",$pag)."</div></button> </div></form><br>"; } # fine if ($num_tipologie == 1 and !$numero_tariffa[1] and... } # fine if ($priv_ins_nuove_prenota == "s" and $inizioperiodo[1]) if ($option_contratti) { $tasto_contr = "<form accept-charset=\"utf-8\" method=\"post\" action=\"visualizza_contratto.php\"><div class=\"linhbox\"> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"origine\" value=\"messaggi.php?pagina_messaggi=$pagina_messaggi#mess$idmessaggi\">"; $n_c = 0; for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) { for ($n_r = 1 ; $n_r <= $num_app_tipo_richiesti[$n_t] ; $n_r++) { $n_c++; $tasto_contr .= "<input type=\"hidden\" name=\"cognome_$n_c\" value=\"$cognome_richiedente\"> <input type=\"hidden\" name=\"nome_$n_c\" value=\"$nome_richiedente\"> <input type=\"hidden\" name=\"data_nascita_$n_c\" value=\"$datanascita\"> <input type=\"hidden\" name=\"documento_$n_c\" value=\"$documento\"> <input type=\"hidden\" name=\"tipo_documento_$n_c\" value=\"$tipodoc\"> <input type=\"hidden\" name=\"sesso_$n_c\" value=\"$sesso\"> <input type=\"hidden\" name=\"nazione_$n_c\" value=\"$nazione\"> <input type=\"hidden\" name=\"regione_$n_c\" value=\"$regione\"> <input type=\"hidden\" name=\"citta_$n_c\" value=\"$citta\"> <input type=\"hidden\" name=\"via_$n_c\" value=\"$via\"> <input type=\"hidden\" name=\"numcivico_$n_c\" value=\"$numcivico\"> <input type=\"hidden\" name=\"telefono_$n_c\" value=\"$telefono\"> <input type=\"hidden\" name=\"telefono2_$n_c\" value=\"$telefono2\"> <input type=\"hidden\" name=\"telefono3_$n_c\" value=\"$telefono3\"> <input type=\"hidden\" name=\"fax_$n_c\" value=\"$fax\"> <input type=\"hidden\" name=\"cap_$n_c\" value=\"$cap\"> <input type=\"hidden\" name=\"codice_fiscale_$n_c\" value=\"$codfiscale\"> <input type=\"hidden\" name=\"partita_iva_$n_c\" value=\"$partitaiva\"> <input type=\"hidden\" name=\"codice_lingua_$n_c\" value=\"$lingua_cli\"> <input type=\"hidden\" name=\"email_$n_c\" value=\"$email_richiedente\"> <input type=\"hidden\" name=\"data_inizio_$n_c\" value=\"".$inizioperiodo[$n_t]."\"> <input type=\"hidden\" name=\"data_fine_$n_c\" value=\"".$fineperiodo[$n_t]."\"> <input type=\"hidden\" name=\"num_periodi_$n_c\" value=\"".$num_periodi[$n_t]."\"> <input type=\"hidden\" name=\"orario_entrata_stimato_$n_c\" value=\"$oracheckin"."\"> <input type=\"hidden\" name=\"nome_tariffa_$n_c\" value=\"".$nome_tariffa[$n_t]."\"> <input type=\"hidden\" name=\"num_persone_$n_c\" value=\"".$numpersone[$n_t]."\"> <input type=\"hidden\" name=\"costo_tariffa_$n_c\" value=\"".$costo_tariffa[$n_t]."\"> <input type=\"hidden\" name=\"caparra_$n_c\" value=\"".$caparra[$n_t]."\"> <input type=\"hidden\" name=\"n_letti_agg_$n_c\" value=\"".$letti_agg[$n_t]."\">"; if ($n_t == $num_tipologie and $n_r == $num_app_tipo_richiesti[$n_t]) $tasto_contr .= "<input type=\"hidden\" name=\"ultima_prenotazione_per_cliente_$n_c\" value=\"1\">"; else $tasto_contr .= "<input type=\"hidden\" name=\"ultima_prenotazione_per_cliente_$n_c\" value=\"0\">"; $costo_tot = (double) $costo_tariffa[$n_t]; $num_costi_agg = 0; for ($num2 = 1 ; $num2 < $num_ca_calc[$n_t] ; $num2++) { if (!$ripeti_ca_calc[$n_t][$num2] or $ripeti_ca_calc[$n_t][$num2] >= $n_r) { $costo_tot = (double) ($costo_tot + $prezzo_ca_calc[$n_t][$num2]); $tasto_contr .= "<input type=\"hidden\" name=\"nome_costo_agg$num_costi_agg"."_$n_c\" value=\"".$nome_ca_calc[$n_t][$num2]."\"> <input type=\"hidden\" name=\"val_costo_agg$num_costi_agg"."_$n_c\" value=\"".$prezzo_ca_calc[$n_t][$num2]."\"> <input type=\"hidden\" name=\"percentuale_tasse_costo_agg$num_costi_agg"."_$n_c\" value=\"".$tasseperc_ca_calc[$n_t][$num2]."\"> <input type=\"hidden\" name=\"moltiplica_max_costo_agg$num_costi_agg"."_$n_c\" value=\"".$moltmax_ca_calc[$n_t][$num2]."\"> <input type=\"hidden\" name=\"valore_giornaliero_max_costo_agg$num_costi_agg"."_$n_c\" value=\"".$valgiornmax_ca_calc[$n_t][$num2]."\">"; if ($giorni_ca_calc[$n_t][$num2]) $tasto_contr .= "<input type=\"hidden\" name=\"giorni_costo_agg$num_costi_agg"."_$n_c\" value=\"".$giorni_ca_calc[$n_t][$num2]."\">"; if ($tipo_persona_ca_calc[$n_t][$num2]) $tasto_contr .= "<input type=\"hidden\" name=\"tipo_persona_costo_agg$num_costi_agg"."_$n_c\" value=\"".$tipo_persona_ca_calc[$n_t][$num2]."\">"; $num_costi_agg++; } # fine if (!$ripeti_ca_calc[$n_t][$num2] or $ripeti_ca_calc[$n_t][$num2] >= $n_r) } # fine for $num2 $tasto_contr .= "<input type=\"hidden\" name=\"costo_tot_$n_c\" value=\"$costo_tot\"> <input type=\"hidden\" name=\"num_costi_aggiuntivi_$n_c\" value=\"$num_costi_agg\">"; } # fine for $n_r } # fine for $n_t $tasto_contr .= "<input type=\"hidden\" name=\"num_ripeti\" value=\"$n_c\"> <input type=\"hidden\" name=\"testo_email_richiesta\" value=\"".str_replace("\"",""",$testo_orig)."\"> <select name=\"numero_contratto\"> $option_contratti </select><br> <button class=\"vdoc\" type=\"submit\"><div>".mex("Visualizza il documento",$pag)."</div></button> </div></form><br>"; } # fine if ($option_contratti) } # fine if ($stato_prenota == "da_inserire") else { if ($anno_prenota_dt == $anno) { $tasto_prenota .= crea_tasto_modifica_prenota($stato_prenota,$priv_mod_prenota_iniziate,$priv_mod_prenotazioni,$priv_mod_prenota_ore,$anno,$PHPR_TAB_PRE,$pag,$id_sessione,$id_utente); $tasto_prenota .= "<br><br><br>"; } # fine if ($anno_prenota_dt == $anno) } # fine else if ($stato_prenota == "da_inserire") } # fine if ($tipo_messaggio == "rprenota") if ($tipo_messaggio == "intercon") { $stato_prenota = risul_query($messaggi,$num1,'dati_messaggio1'); $anno_prenota = risul_query($messaggi,$num1,'dati_messaggio2'); if ($stato_prenota and $anno_prenota == $anno) { $tasto_prenota = crea_tasto_modifica_prenota($stato_prenota,$priv_mod_prenota_iniziate,$priv_mod_prenotazioni,$priv_mod_prenota_ore,$anno,$PHPR_TAB_PRE,$pag,$id_sessione,$id_utente); $tasto_prenota .= "<br><br><br>"; } # fine if ($stato_prenota and... } # fine if ($tipo_messaggio == "intercon") if ($tipo_messaggio == "sistema") $testo = str_replace("<sessione>","anno=$anno&id_sessione=$id_sessione",$testo); $data = risul_query($messaggi,$num1,'datavisione'); $data = formatta_data(substr($data,0,10),$stile_data).substr($data,10,6); echo "<tr><td align=\"center\">$font_num".$numero."$slash_font_num</td> <td align=\"center\">$mittente</td> <td align=\"left\"><a name=\"mess$idmessaggi\"></a>"; if ($aggiunta_testo_dt) { echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$pag#mess$idmessaggi\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"pagina_messaggi\" value=\"$pagina_messaggi\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"cambia_dati_ricavati\" value=\"$idmessaggi\"> -------------------------<br> <em>".mex("Dati ricavati dal messaggio email",$pag)."</em>:<br> ".mex("Nome",$pag).": $cognome_richiedente (<input name=\"n_cognome_richiedente\" size=\"28\" type=\"text\">)<br> ".mex("Email",$pag).": $email_richiedente (<input name=\"n_email_richiedente\" size=\"28\" type=\"text\">)<br> ".ucfirst(mex("arrivo",$pag)).": "; if ($inizioperiodo[1]) echo formatta_data($inizioperiodo[1],$stile_data); echo " ("; mostra_menu_date(C_DATI_PATH."/selperiodimenu$anno.$id_utente.php","n_data_arrivo","",1," selected",$id_utente,$tema,"",$inizioperiodo[1]); echo ")<br> ".ucfirst(mex("partenza",$pag)).": "; if ($fineperiodo[1]) echo formatta_data($fineperiodo[1],$stile_data); echo " ("; mostra_menu_date(C_DATI_PATH."/selperiodimenu$anno.$id_utente.php","n_data_partenza","",1," selected",$id_utente,$tema,"",$fineperiodo[1]); echo ")<br> ".ucfirst(mex("persone",$pag)).": ".$numpersone[1]." (<input name=\"n_num_persone\" size=\"3\" type=\"text\">)<br> <button class=\"edtm\" type=\"submit\"><div>".mex("Modifica",$pag)."</div></button><br> -------------------------<br></div></form>"; } # fine if ($aggiunta_testo_dt) echo "$testo</td> <td align=\"center\">$data</td> <td align=\"center\">$tasto_prenota $tasto_contr <form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"idmessaggi\" value=\"$idmessaggi\"> <input type=\"hidden\" name=\"elimina_messaggio\" value=\"1\"> <button class=\"canc\" type=\"submit\"><div>".mex("Elimina",$pag)."</div></button> </div></form></td></tr>"; } # fine if ($num_pagine == 1 or (($num1 + 1) > (($pagina_messaggi - 1) * $num_vedi_in_tab) and ($num1 + 1) <= ($pagina_messaggi * $num_vedi_in_tab))) } # fine for $num1 if ($stringa_pagine and $pagina_messaggi != $num_pagine) echo $stringa_puntini_tab; echo "</table></div>$stringa_pagine<br><div style=\"text-align: center\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div style=\"line-height:160%\"> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"elimina_tutti_mess\" value=\"SI\"> <button class=\"canc\" type=\"submit\"><div>".mex("Elimina tutti i messaggi",$pag)."</div></button><br> ".mex("arrivati",$pag)." <select name=\"prima_dopo\"> <option value=\"prima\">".mex("prima del",$pag)."</option> <option value=\"dopo\">".mex("dopo il",$pag)."</option> </select> <select name=\"data_arrivo\"> <option value=\"\" selected>---</option> $option_date</select>-<select name=\"anno_arrivo\"> <option value=\"\" selected>---</option> <option value=\"$anno_corrente\">$anno_corrente</option> <option value=\"".($anno_corrente - 1)."\">".($anno_corrente - 1)."</option> </select> </div></form></div><br><br>"; } # fine if ($num_messaggi > 0) if ($priv_ins_messaggi == "s") { echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"cambia_qualcosa\" value=\"SI\"> <input type=\"hidden\" name=\"spedisci_messaggio\" value=\"1\"> ".mex("Nuovo messaggio a",$pag)." <select name=\"destinatario\"> <option value=\"tutti\" selected>".mex("tutti",$pag)."</option> $option_select_utenti </select> ".mex("da mostrare dopo le",$pag)." <select name=\"ora_visione\">"; for ($num1 = 0 ; $num1 < 24 ; $num1++) { if (strlen($num1) == 1) $num1 = "0".$num1; if ($num1 == $ora_corrente) echo "<option value=\"$num1\" selected>$num1</option>"; else echo "<option value=\"$num1\">$num1</option>"; } # fine for $num1 echo "</select>:<select name=\"min_visione\">"; for ($num1 = 0 ; $num1 < 60 ; $num1 = $num1 + 15) { if (strlen($num1) == 1) $num1 = "0".$num1; if ($num1 <= $min_corrente and ($num1 + 15) > $min_corrente) echo "<option value=\"$num1\" selected>$num1</option>"; else echo "<option value=\"$num1\">$num1</option>"; } # fine for $num1 echo "</select> ".mex("il",$pag)." <select name=\"data_visione\"> ".str_replace("-".$data_corrente."\">","-".$data_corrente."\" selected>",$option_date)." </select>-<select name=\"anno_visione\"> <option value=\"$anno_corrente\" selected>$anno_corrente</option> <option value=\"".($anno_corrente + 1)."\">".($anno_corrente + 1)."</option> </select><br> <table><tr><td style=\"height: 3px;\"></td></tr></table>".mex("testo del messaggio",$pag).": <input class=\"widetxt\" name=\"testo\" size=\"55\" type=\"text\"> <button class=\"send\" type=\"submit\"><div>".mex("Spedisci",$pag)."</div></button> </div></form>"; } # fine if ($priv_ins_messaggi == "s") echo "<br><hr style=\"width: 95%\"><br> <form accept-charset=\"utf-8\" method=\"post\" action=\"./inizio.php\"><div style=\"text-align: center;\"> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <button class=\"bkmm\" type=\"submit\"><div>".mex("Torna al menù principale",$pag)."</div></button> </div></form><table><tr><td style=\"height: 20px;\"></td></tr></table>"; } # fine if ($mostra_form_iniziale != "NO") if ($tema[$id_utente] and $tema[$id_utente] != "base" and @is_dir("./themes/".$tema[$id_utente]."/php")) include("./themes/".$tema[$id_utente]."/php/foot.php"); else include("./includes/foot.php"); } # fine if ($anno_utente_attivato == "SI" and $priv_vedi_messaggi == "s") } # fine if ($id_utente) ?> |