<?php

##################################################################################
#    PHP-RESIDENCE
#    Copyright (C) 2001-2009 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 = "clienti.php";
$titolo = "Clienti";

include("./dati/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("./dati/lingua.php");
include("./includes/funzioni_clienti.php");
$tablemessaggi = $PHPR_TAB_PRE."messaggi";
$tablerelutenti = $PHPR_TAB_PRE."relutenti";
$tablenazioni = $PHPR_TAB_PRE."nazioni";
$tableregioni = $PHPR_TAB_PRE."regioni";
$tablecitta = $PHPR_TAB_PRE."citta";
$tabledocumentiid = $PHPR_TAB_PRE."documentiid";
$tableparentele = $PHPR_TAB_PRE."parentele";
$tablerelinventario = $PHPR_TAB_PRE."relinventario";

$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";
$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";
$priv_ins_clienti = risul_query($privilegi_globali_utente,0,'priv_ins_clienti');
if (substr($priv_ins_clienti,0,1) == "s") $inserimento_nuovi_clienti = "SI";
else $inserimento_nuovi_clienti = "NO";
$modifica_clienti = "NO";
if (substr($priv_ins_clienti,1,1) == "s") $modifica_clienti = "SI";
if (substr($priv_ins_clienti,1,1) == "p") $modifica_clienti = "PROPRI";
if (substr($priv_ins_clienti,1,1) == "g") { $modifica_clienti = "GRUPPI"; $prendi_gruppi = "SI"; }
$vedi_clienti = "NO";
if (substr($priv_ins_clienti,2,1) == "s") $vedi_clienti = "SI";
if (substr($priv_ins_clienti,2,1) == "p") $vedi_clienti = "PROPRI";
if (substr($priv_ins_clienti,2,1) == "g") { $vedi_clienti = "GRUPPI"; $prendi_gruppi = "SI"; }
$prefisso_clienti = risul_query($privilegi_globali_utente,0,'prefisso_clienti');
$attiva_prefisso_clienti = substr($prefisso_clienti,0,1);
if ($attiva_prefisso_clienti != "n") {
$prefisso_clienti = explode(",",$prefisso_clienti);
$prefisso_clienti = $prefisso_clienti[1];
} # fine if ($prefisso_clienti != "n")
$regole1_consentite = risul_query($privilegi_annuali_utente,0,'regole1_consentite');
$attiva_regole1_consentite = substr($regole1_consentite,0,1);
$applica_regole1 = substr($regole1_consentite,1,1);
if ($attiva_regole1_consentite != "n" or $applica_regole1 == "n") $regole1_consentite = explode("#@^",substr($regole1_consentite,3));
$tariffe_consentite = risul_query($privilegi_annuali_utente,0,'tariffe_consentite');
$attiva_tariffe_consentite = substr($tariffe_consentite,0,1);
if ($attiva_tariffe_consentite == "s") {
$tariffe_consentite = explode(",",substr($tariffe_consentite,2));
unset($tariffe_consentite_vett);
for ($num1 = 0 ; $num1 < count($tariffe_consentite) ; $num1++) if ($tariffe_consentite[$num1]) $tariffe_consentite_vett[$tariffe_consentite[$num1]] = "SI";
} # fine if ($attiva_tariffe_consentite == "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_ins_assegnazione_app = substr($priv_ins_prenota,1,1);
$priv_ins_costi_agg = substr($priv_ins_prenota,5,1);
$priv_ins_num_persone = substr($priv_ins_prenota,7,1);
$priv_ins_periodi_passati = substr($priv_ins_prenota,8,1);
$priv_ins_multiple = substr($priv_ins_prenota,9,1);
} # fine else if (numlin_query($privilegi_annuali_utente) == 0)
$tableutenti = $PHPR_TAB_PRE."utenti";
$nome_utente = esegui_query("select * from $tableutenti where idutenti = '$id_utente'");
$nome_utente = risul_query($nome_utente,0,'nome_utente');
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";
$inserimento_nuovi_clienti = "SI";
$modifica_clienti = "SI";
$vedi_clienti = "SI";
$attiva_prefisso_clienti = "n";
$attiva_regole1_consentite = "n";
$applica_regole1 = "s";
$attiva_tariffe_consentite = "n";
$attiva_costi_agg_consentiti = "n";
$priv_ins_nuove_prenota = "s";
$priv_ins_assegnazione_app = "s";
$priv_ins_costi_agg = "s";
$priv_ins_num_persone = "s";
$priv_ins_periodi_passati = "s";
$priv_ins_multiple = "s";
} # fine else if ($id_utente != 1)

if (defined("C_MASSIMO_NUM_CLIENTI") and C_MASSIMO_NUM_CLIENTI != 0) {
$tableclienti = $PHPR_TAB_PRE."clienti";
$num_clienti_esistenti = esegui_query("select idclienti from $tableclienti");
$num_clienti_esistenti = numlin_query($num_clienti_esistenti);
if ($num_clienti_esistenti >= C_MASSIMO_NUM_CLIENTI) $inserimento_nuovi_clienti = "NO";
} # fine if (defined("C_MASSIMO_NUM_CLIENTI") and C_MASSIMO_NUM_CLIENTI != 0)

if ($anno_utente_attivato == "SI") {


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");


if ($id_utente != 1 or controlla_num_pos($id_utente_ins) == "NO" or $id_utente_ins == "") $id_utente_ins = $id_utente;

if (@get_magic_quotes_gpc()) {
$cognome = stripslashes($cognome);
$nome = stripslashes($nome);
$soprannome = stripslashes($soprannome);
$titolo_cli = stripslashes($titolo_cli);
$documento = stripslashes($documento);
$tipodoc = stripslashes($tipodoc);
$cittadoc = stripslashes($cittadoc);
$regionedoc = stripslashes($regionedoc);
$nazionedoc = stripslashes($nazionedoc);
$cittanascita = stripslashes($cittanascita);
$regionenascita = stripslashes($regionenascita);
$nazionenascita = stripslashes($nazionenascita);
$nazionalita = stripslashes($nazionalita);
$nazione = stripslashes($nazione);
$regione = stripslashes($regione);
$citta = stripslashes($citta);
$nomevia = stripslashes($nomevia);
$numcivico = stripslashes($numcivico);
$cap = stripslashes($cap);
$telefono = stripslashes($telefono);
$telefono2 = stripslashes($telefono2);
$telefono3 = stripslashes($telefono3);
$fax = stripslashes($fax);
$email = stripslashes($email);
} # fine if (@get_magic_quotes_gpc())
$cognome = htmlspecialchars($cognome);
$nome = htmlspecialchars($nome);
$soprannome = htmlspecialchars($soprannome);
$titolo_cli = htmlspecialchars($titolo_cli);
if ($sesso and $sesso != "f") $sesso = "m";
$documento = htmlspecialchars($documento);
$tipodoc = htmlspecialchars($tipodoc);
$cittadoc = htmlspecialchars($cittadoc);
$regionedoc = htmlspecialchars($regionedoc);
$nazionedoc = htmlspecialchars($nazionedoc);
$cittanascita = htmlspecialchars($cittanascita);
$regionenascita = htmlspecialchars($regionenascita);
$nazionenascita = htmlspecialchars($nazionenascita);
$nazionalita = htmlspecialchars($nazionalita);
$nazione = htmlspecialchars($nazione);
$regione = htmlspecialchars($regione);
$citta = htmlspecialchars($citta);
$nomevia = htmlspecialchars($nomevia);
$numcivico = htmlspecialchars($numcivico);
$cap = htmlspecialchars($cap);
$telefono = htmlspecialchars($telefono);
$telefono2 = htmlspecialchars($telefono2);
$telefono3 = htmlspecialchars($telefono3);
$fax = htmlspecialchars($fax);
$email = htmlspecialchars($email);

$stile_data = stile_data();

unset($manda_cognome);
unset($lista_app_copia);
unset($assegnazioneapp_copia);
unset($spostamenti_transazione);

$dati_transazione = recupera_dati_transazione($id_transazione,$id_sessione,$anno,"SI",$tipo_transazione);



# cose da fare se si viene da prenota.php
if ($nuovaprenotazione) {

if ($priv_ins_multiple == "n") {
$num_tipologie = 1;
$num_app_richiesti1 = 1;
} # fine if ($priv_ins_multiple == "n")
if ($priv_ins_multiple != "s") $prenota_vicine = "";
if (!$num_tipologie or controlla_num_pos($num_tipologie) == "NO" or $num_tipologie == 0 or $num_tipologie > 999) $num_tipologie = 1;
include("./includes/liberasettimane.php");


include("./includes/sett_gio.php");
$tableperiodi = $PHPR_TAB_PRE."periodi".$anno;
$tableprenota = $PHPR_TAB_PRE."prenota".$anno;
$tablenometariffe = $PHPR_TAB_PRE."ntariffe".$anno;
$tableregole = $PHPR_TAB_PRE."regole".$anno;
$tableversioni = $PHPR_TAB_PRE."versioni";
$tableappartamenti = $PHPR_TAB_PRE."appartamenti";
$tableclienti = $PHPR_TAB_PRE."clienti";
$tabletransazioni = $PHPR_TAB_PRE."transazioni";
$tablepersonalizza = $PHPR_TAB_PRE."personalizza";
$tablecostiprenota = $PHPR_TAB_PRE."costiprenota".$anno;

if ($aggiungi_tipologie) {
$manda_dati_assegnazione = "SI";
$mostra_form_dati_cliente = "NO";
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
echo "<input type=\"hidden\" name=\"num_piano$n_t\" value=\"".${"num_piano".$n_t}."\">
<input type=\"hidden\" name=\"num_casa$n_t\" value=\"".${"num_casa".$n_t}."\">
<input type=\"hidden\" name=\"num_persone_casa$n_t\" value=\"".${"num_persone_casa".$n_t}."\">";
$idinizioperiodo = esegui_query("select idperiodi from $tableperiodi where datainizio = '".aggslashdb(${"inizioperiodo".$n_t})."' ");
if (numlin_query($idinizioperiodo) == 1) ${"inizioperiodo".$n_t} = risul_query($idinizioperiodo,0,'idperiodi');
$idfineperiodo = esegui_query("select idperiodi from $tableperiodi where datafine = '".aggslashdb(${"fineperiodo".$n_t})."' ");
$num_idfineperiodo = numlin_query($idfineperiodo);
if (numlin_query($idfineperiodo) == 1) ${"fineperiodo".$n_t} = risul_query($idfineperiodo,0,'idperiodi');
} # fine for $n_t
include("./includes/dati_form_prenotazione.php");
echo "<br>".mex("Nº di tipologie da aggiungere",$pag).":";
echo "<input type=\"text\" name=\"num_tipologie_da_aggiungere\" size=\"2\" maxlength=\"2\" value =\"1\">
<input class=\"sbutton\" type=\"submit\" name=\"agg_tip\" value=\"".mex("Aggiungi",$pag)."\">
</div></form><br><br>
<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
echo "<input type=\"hidden\" name=\"num_piano$n_t\" value=\"".${"num_piano".$n_t}."\">
<input type=\"hidden\" name=\"num_casa$n_t\" value=\"".${"num_casa".$n_t}."\">
<input type=\"hidden\" name=\"num_persone_casa$n_t\" value=\"".${"num_persone_casa".$n_t}."\">";
} # fine for $n_t
include("./includes/dati_form_prenotazione.php");
echo "<input class=\"sbutton\" type=\"submit\" name=\"torna\" value=\"".mex("Torna indietro",$pag)."\">
</div></form>";
} # fine if ($aggiungi_tipologie)


else {

$inseriscicliente = "SI";

function ins_prenota_temp_in_tab ($tableprenota,$tablecostiprenota,$num_tipologie,$limiti_var,&$dati_transazione13,$prenota_vicine,$id_utente,$HOSTNAME) {
$datainserimento = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600)));
if ($limiti_var["lim_prenota_temp"] < $datainserimento) {
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
if ($n_t != 1) $dati_transazione13 .= ", ,";
global ${"appartamento".$n_t},${"num_app_richiesti".$n_t},${"inizioperiodo".$n_t},${"fineperiodo".$n_t},${"lista_app".$n_t},${"assegnazioneapp".$n_t},${"numpersone".$n_t};
$appartamento_vett = explode(",",${"appartamento".$n_t});
$iniper = ${"inizioperiodo".$n_t};
if (str_replace(",","",$iniper) != $iniper) {
$iniper = explode(",",$iniper);
$iniper = $iniper[0];
} # fine if (str_replace(",","",$iniper) != $iniper)
$fineper = ${"fineperiodo".$n_t};
if (str_replace(",","",$fineper) != $fineper) {
$fineper = explode(",",$fineper);
$fineper = $fineper[0];
} # fine if (str_replace(",","",$fineper) != $fineper)
for ($num1 = 1 ; $num1 <= ${"num_app_richiesti".$n_t} ; $num1++) {
$idprenota = esegui_query("select numlimite from $tablecostiprenota where idcostiprenota = '1'");
$idprenota = risul_query($idprenota,0,'numlimite');
esegui_query("update $tablecostiprenota set numlimite = '".($idprenota + 1)."' where idcostiprenota = '1'");
esegui_query("insert into $tableprenota (idprenota,idclienti,idappartamenti,iddatainizio,iddatafine,tariffa,tariffa_tot,caparra,conferma,datainserimento,hostinserimento,utente_inserimento) values ('$idprenota','0','".$appartamento_vett[($num1 - 1)]."','".$iniper."','".$fineper."','a#@&1','1','1','N','$datainserimento','$HOSTNAME','$id_utente')");
if (${"lista_app".$n_t}) esegui_query("update $tableprenota set app_assegnabili = '".${"lista_app".$n_t}."' where idprenota = '$idprenota' ");
if (${"assegnazioneapp".$n_t}) esegui_query("update $tableprenota set assegnazioneapp = '".${"assegnazioneapp".$n_t}."' where idprenota = '$idprenota' ");
if (${"numpersone".$n_t}) esegui_query("update $tableprenota set num_persone = '".${"numpersone".$n_t}."' where idprenota = '$idprenota' ");
if ($num1 != 1) $dati_transazione13 .= ",";
$dati_transazione13 .= $idprenota;
} # fine for $num1
} # fine for $n_t
if ($prenota_vicine == "SI") {
$lista_idprenota = str_replace(", ,",",",$dati_transazione13);
$lista_idprenota_vett = explode(",",$lista_idprenota);
for ($num1 = 0 ; $num1 < count($lista_idprenota_vett) ; $num1++) {
$idprenota = $lista_idprenota_vett[$num1];
$idprenota_vicine = substr(str_replace(",".$idprenota.",",",",",".$lista_idprenota.","),1,-1);
esegui_query("update $tableprenota set idprenota_compagna = '$idprenota_vicine' where idprenota = '$idprenota' ");
} # fine for $num1
} # fine if ($prenota_vicine == "SI")
} # fine if ($limiti_var["lim_prenota_temp"] < $datainserimento)
} # fine function ins_prenota_temp_in_tab



if ($nuovaprenotazione != "Continua lo stesso") {

$file_interconnessioni = "./dati/dati_interconnessioni.php";
if (@is_file($file_interconnessioni)) {
include($file_interconnessioni);
if (@is_array($ic_present)) {
unset($interconnection_name);
$interconn_dir = opendir("./includes/interconnect/");
while ($mod_ext = readdir($interconn_dir)) {
if ($mod_ext != "." and $mod_ext != ".." and @is_dir("./includes/interconnect/$mod_ext")) {
include("./includes/interconnect/$mod_ext/name.php");
if ($ic_present[$interconnection_name] == "SI") {
include("./includes/interconnect/$mod_ext/functions_import.php");
$funz_import_reservations = "import_reservations_".$interconnection_name;
$id_utente_origi = $id_utente;
$id_utente = 1;
$funz_import_reservations("","",$file_interconnessioni,$anno,$PHPR_TAB_PRE,1,$id_utente,$HOSTNAME);
$id_utente = $id_utente_origi;
} # fine if ($ic_present[$interconnection_name] == "SI")
} # fine if ($modello_ext != "." and $modello_ext != ".." and...
} # fine while ($mod_ext = readdir($interconn_dir))
closedir($interconn_dir);
} # fine if (@is_array($ic_present))
} # fine if (@is_file($file_interconnessioni))

if ($prenota_vicine == "SI") {
$manda_dati_assegnazione = "SI";
$form_riprova_no_vicini = "";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
$form_riprova_no_vicini .=  "<input type=\"hidden\" name=\"num_piano$n_t\" value=\"".${"num_piano".$n_t}."\">
<input type=\"hidden\" name=\"num_casa$n_t\" value=\"".${"num_casa".$n_t}."\">
<input type=\"hidden\" name=\"num_persone_casa$n_t\" value=\"".${"num_persone_casa".$n_t}."\">";
} # fine for $n_t
$prenota_vicine = "";
$echo_dati_form = "NO";
include("./includes/dati_form_prenotazione.php");
$prenota_vicine = "SI";
$echo_dati_form = "";
$form_riprova_no_vicini .= $mess_dati_form;
} # fine if ($prenota_vicine == "SI")

# la versione da utilizzare per la transazione che rimane se si devono usare gli app_agenzia
$tabelle_lock = array("$tableversioni");
$tabelle_lock = lock_tabelle($tabelle_lock);
$versione_transazione = prendi_numero_versione($tableversioni);
unlock_tabelle($tabelle_lock);

# Controllo che non si inseriscano prenotazioni nell'anno successivo se esistente
unset($data_in_anno_succ);
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
$fineperiodo = aggslashdb(${"fineperiodo".$n_t});
if (substr($fineperiodo,0,4) != $anno) {
$anno_succ_esistente = esegui_query("select idanni from $tableanni where idanni = '".($anno + 1)."'");
if (numlin_query($anno_succ_esistente) == 1) {
$data_succ_esistente = esegui_query("select idperiodi from $PHPR_TAB_PRE"."periodi".($anno + 1)." where datafine <= '$fineperiodo'");
if (numlin_query($data_succ_esistente) >= 1) $data_in_anno_succ[$n_t] = "SI";
} # fine if (numlin_query($anno_succ_esistente) == 1)
} # fine if (substr($fineperiodo,0,4) != $anno)
} # fine for $n_t

# inizio il blocco dei controlli per l'assegnazione
$tabelle_lock = array("$tableprenota","$tablecostiprenota","$tabletransazioni");
$altre_tab_lock = array("$tablenometariffe","$tableperiodi","$tableappartamenti","$tableclienti","$tableregole","$tablepersonalizza","$tablemessaggi","$tablerelinventario");
$tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock);

if ($inserire) {
$inseriscicliente = "";
} # fine if ($inserire)
$appartamenti = esegui_query(" select * from $tableappartamenti order by idappartamenti");
$numappartamenti = numlin_query($appartamenti);
$id_app_richiesti = 0;
unset($assegnazioneapp);
unset($app_richiesti);
unset($idinizioperiodo_vett);
unset($idfineperiodo_vett);
unset($idinizioperiodo_tot);
unset($idfineperiodo_tot);
unset($id_periodo_corrente);
unset($regole2);

unset($num_costi_presenti);
unset($beniinv_presenti);
unset($app_incomp_costi);
unset($app_eliminati_costi);

include("./includes/funzioni_tariffe.php");
include("./includes/funzioni_costi_agg.php");
$dati_tariffe = dati_tariffe($tablenometariffe);
$dati_ca = dati_costi_agg_ntariffe($tablenometariffe,"");

for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
${"inizioperiodo".$n_t} = aggslashdb(${"inizioperiodo".$n_t});
${"fineperiodo".$n_t} = aggslashdb(${"fineperiodo".$n_t});
${"nometipotariffa".$n_t} = aggslashdb(${"nometipotariffa".$n_t});
${"appartamento".$n_t} = htmlspecialchars(${"appartamento".$n_t});
${"appartamento".$n_t} = aggslashdb(${"appartamento".$n_t});
${"lista_app".$n_t} = htmlspecialchars(${"lista_app".$n_t});
${"lista_app".$n_t} = aggslashdb(${"lista_app".$n_t});
${"num_piano".$n_t} = aggslashdb(${"num_piano".$n_t});
${"num_casa".$n_t} = aggslashdb(${"num_casa".$n_t});
${"num_persone_casa".$n_t} = aggslashdb(${"num_persone_casa".$n_t});
$inizioperiodo = ${"inizioperiodo".$n_t};
$fineperiodo = ${"fineperiodo".$n_t};
$nometipotariffa = ${"nometipotariffa".$n_t};
$numpersone = ${"numpersone".$n_t};
$appartamento = ${"appartamento".$n_t};
$num_app_richiesti = ${"num_app_richiesti".$n_t};
$lista_app = ${"lista_app".$n_t};
$num_piano = ${"num_piano".$n_t};
$num_casa = ${"num_casa".$n_t};
$num_persone_casa = ${"num_persone_casa".$n_t};
for ($numca = 1 ; $numca <= $numcostiagg ; $numca++) {
${"costoagg".$numca} = aggslashdb(${"costoagg".$numca."_".$n_t});
${"idcostoagg".$numca} = aggslashdb(${"idcostoagg".$numca."_".$n_t});
${"numsettimane".$numca} = aggslashdb(${"numsettimane".$numca."_".$n_t});
${"nummoltiplica_ca".$numca} = aggslashdb(${"nummoltiplica_ca".$numca."_".$n_t});
${"id_periodi_costo".$numca} = aggslashdb(${"id_periodi_costo".$numca."_".$n_t});
} # fine for $numca
unset(${"spezzetta".$n_t});


$inizioperiodo_orig[$n_t] = $inizioperiodo;
$fineperiodo_orig[$n_t] = $fineperiodo;
$idinizioperiodo = esegui_query("select idperiodi from $tableperiodi where datainizio = '$inizioperiodo' ");
$num_idinizioperiodo = numlin_query($idinizioperiodo);
if ($num_idinizioperiodo == 0) $idinizioperiodo = 100000;
else $idinizioperiodo = risul_query($idinizioperiodo,0,'idperiodi');
${"inizioperiodo".$n_t} = $idinizioperiodo;
if (!$idinizioperiodo_tot or $idinizioperiodo < $idinizioperiodo_tot) $idinizioperiodo_tot = $idinizioperiodo;
$idfineperiodo = esegui_query("select idperiodi from $tableperiodi where datafine = '$fineperiodo' ");
$num_idfineperiodo = numlin_query($idfineperiodo);
if ($num_idfineperiodo == 0) $idfineperiodo = -1;
else $idfineperiodo = risul_query($idfineperiodo,0,'idperiodi');
${"fineperiodo".$n_t} = $idfineperiodo;
if (!$idfineperiodo_tot or $idfineperiodo > $idfineperiodo_tot) $idfineperiodo_tot = $idfineperiodo;
$app_diversi_occ = 0;

if ($priv_ins_periodi_passati != "s") {
if (!$id_periodo_corrente) $id_periodo_corrente = calcola_id_periodo_corrente($anno);
if ($id_periodo_corrente >= $idinizioperiodo) $data_sbagliata = "SI";
} # fine if ($priv_ins_periodi_passati != "s")
if ($data_in_anno_succ[$n_t] == "SI") $data_sbagliata = "SI";

if ($modifica_pers == "NO") {
@include("./dati/selperiodimenu$anno.$id_utente.php");
if (!strpos($dates_options_list,$inizioperiodo)) $data_sbagliata = "SI";
if (!strpos($dates_options_list,$fineperiodo)) $data_sbagliata = "SI";
} # fine if ($modifica_pers == "NO")

if ($idfineperiodo < $idinizioperiodo or $data_sbagliata == "SI") {
$inserire = "NO";
echo mex("Le date sono sbagliate",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($idfineperiodo < $idinizioperiodo or...

else {
if ($priv_ins_num_persone != "s") {
unset($numpersone);
unset(${"numpersone".$n_t});
} # fine if ($priv_ins_num_persone != "s")

if ($nometipotariffa == "") {
$inserire = "NO";
echo mex("Si deve inserire il tipo di tariffa",$pag);
if ($num_tipologie > 1) echo "(".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($nometipotariffa == "")

else {
if ($priv_ins_nuove_prenota != "s") $inserire = "NO";
$tipotariffa = $nometipotariffa;
$tipotariffa_vedi = mex("tariffa",$pag).substr($tipotariffa,7);
if (($attiva_tariffe_consentite == "s" and $tariffe_consentite_vett[substr($tipotariffa,7)] != "SI") or substr($tipotariffa,0,7) != "tariffa") $inserire = "NO";

if ($priv_ins_assegnazione_app != "s") {
unset($appartamento);
unset($lista_app);
unset($num_casa);
unset($num_piano);
unset($num_persone_casa);
} # fine if ($priv_ins_assegnazione_app != "s")

# se vi è una regola 2 per la tariffa
unset($app_regola2_predef);
if (!$appartamento and !$lista_app and !$num_casa and !$num_piano and !$num_persone_casa) {
$lista_app = trova_app_regola2($tipotariffa,$regole2,$num_regole2,$app_regola2_predef,$id_periodo_corrente,$idinizioperiodo,$idfineperiodo,$tipo_periodi,$anno,$tableregole);
${"lista_app".$n_t} = $lista_app;
} # fine if (!$appartamento and !$lista_app and !$num_casa and !$num_piano and !$num_persone_casa)

# se vi è una regola 3 per la tariffa
if ($id_utente == 1) {
$regole3 = esegui_query("select * from $tableregole where tariffa_per_utente = '$tipotariffa'");
if (numlin_query($regole3) == 1) {
$id_utente_ins_tariffa = risul_query($regole3,0,'iddatainizio');
if ($n_t == 1) $id_utente_ins = $id_utente_ins_tariffa;
else if ($id_utente_ins != $id_utente_ins_tariffa) unset($id_utente_ins);
} # fine if numlin_query($regole3) == 1)
} # fine if ($id_utente == 1)

# se vi è una regola 4 per la tariffa
if (!$numpersone) {
$regole4 = esegui_query("select * from $tableregole where tariffa_per_persone = '$tipotariffa'");
if (numlin_query($regole4) == 1) {
$numpersone = risul_query($regole4,0,'iddatainizio');
${"numpersone".$n_t} = $numpersone;
} # fine if numlin_query($regole4) == 1)
} # fine if (!$numpersone)

if (!$numpersone) {
if ($dati_tariffe[$tipotariffa]['moltiplica'] == "p") {
$inserire = "NO";
echo mex("Si deve inserire il numero delle persone per questa tariffa",$pag);
if ($num_tipologie > 1) echo "(".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($dati_tariffe[$tipotariffa]['moltiplica'] == "p")
} # fine if (!$numpersone)

for ($num = $idinizioperiodo; $num <= $idfineperiodo; $num = $num + 1) {
$prenotazioni = esegui_query("select * from $tableprenota where iddatainizio <= $num and iddatafine >= $num");
$numprenotazioni = numlin_query($prenotazioni);
$rigasettimana = esegui_query("select * from $tableperiodi where idperiodi = '$num' ");
$esistetariffa = risul_query($rigasettimana,0,$tipotariffa);
if ($esistetariffa == "" or $esistetariffa < 0) {
$inserire = "NO";
$inizioperiodotariffa = risul_query($rigasettimana,0,'datainizio');
$inizioperiodotariffa_f = formatta_data($inizioperiodotariffa,$stile_data);
$fineperiodotariffa = risul_query($rigasettimana,0,'datafine');
$fineperiodotariffa_f = formatta_data($fineperiodotariffa,$stile_data);
echo mex("Non è stato ancora inserito il prezzo della",$pag)." $tipotariffa_vedi ".mex("per $parola_la $parola_settimana dal",$pag)." $inizioperiodotariffa_f ".mex("al",$pag)." $fineperiodotariffa_f";
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($esistetariffa == "" or...
if ($numprenotazioni >= $numappartamenti) {
$inserire = "NO";
$inizioperiodopieno = risul_query($rigasettimana,0,'datainizio');
$inizioperiodopieno_f = formatta_data($inizioperiodopieno,$stile_data);
$fineperiodopieno = risul_query($rigasettimana,0,'datafine');
$fineperiodopieno_f = formatta_data($fineperiodopieno,$stile_data);
echo mex("$parola_La $parola_settimana dal",$pag)." $inizioperiodopieno_f ".mex("al",$pag)." $fineperiodopieno_f ".mex("è pien$lettera_a",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($numprenotazioni >= $numappartamenti)
} # fine for $num

${"sconto".$n_t} = formatta_soldi(${"sconto".$n_t});
if (controlla_soldi(${"sconto".$n_t}) == "NO" or (strcmp(${"sconto".$n_t},"") and ${"tipo_sconto".$n_t} != "sconto" and ${"tipo_val_sconto".$n_t}) or (${"tipo_val_sconto".$n_t} and ${"sconto".$n_t} > 100)) {
$inserire = "NO";
echo ucfirst(mex("lo sconto è sbagliato",$pag));
if ($num_tipologie > 1) echo "(".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (controlla_soldi(${"sconto".$n_t}) == "NO" or...
${"caparra".$n_t} = formatta_soldi(${"caparra".$n_t});
if (controlla_soldi(${"caparra".$n_t}) == "NO") {
$inserire = "NO";
echo ucfirst(mex("la caparra è sbagliata",$pag));
if ($num_tipologie > 1) echo "(".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (controlla_soldi(${"caparra".$n_t}) == "NO")

} # fine else if ($tipotariffa == "")

if ($cognome == "") {
$inserire = "NO";
} # fine if ($cognome == "")


unset(${"num_letti_agg".$n_t});
${"num_letti_agg".$n_t}['max'] = 0;
unset($settimane_costo);
unset($moltiplica_costo);
$num_costi_associati = 0;
$lunghezza_periodo = $idfineperiodo - $idinizioperiodo + 1;
for ($num1 = 0 ; $num1 < $dati_ca['num'] ; $num1++) {
if ($attiva_costi_agg_consentiti == "n" or $costi_agg_consentiti_vett[$dati_ca[$num1]['id']] == "SI") {
if ($dati_ca[$num1]["tipo_associa_".$nometipotariffa] == "r") $periodo_costo_trovato = trova_periodo_permesso_costo($dati_ca,$num1,$idinizioperiodo,$idfineperiodo,1);
if ($dati_ca[$num1]["tipo_associa_".$nometipotariffa] == "s" or ($dati_ca[$num1]["tipo_associa_".$nometipotariffa] == "r" and $periodo_costo_trovato != "NO")) {
if (associa_costo_a_tariffa($dati_ca,$num1,$nometipotariffa,$lunghezza_periodo) == "SI") {
$num_costi_associati++;
${"costoagg".($numcostiagg + $num_costi_associati)} = "SI";
${"idcostoagg".($numcostiagg + $num_costi_associati)} = $dati_ca[$num1]['id'];
} # fine if (associa_costo_a_tariffa($dati_ca,$num1,$nometipotariffa,$lunghezza_periodo) == "SI")
else {
if ($dati_ca[$num1]["tipo_associa_".${"nometipotariffa".$n_t}] == "r" and $dati_ca[$num1]['tipo'] == "s") $sett_costo = calcola_settimane_costo($tableperiodi,$dati_ca,$num1,$idinizioperiodo,$idfineperiodo,"","");
else $sett_costo = 1;
if ($sett_costo) {
$inserire = "NO";
echo mex("Il costo aggiuntivo",$pag)." \"".$dati_ca[$num1]['nome']."\" ".mex("non può essere applicato",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($sett_costo)
} # fine else if (associa_costo_a_tariffa($dati_ca,$num1,$nometipotariffa,$lunghezza_periodo) == "SI")
} # fine if ($dati_ca[$num1]["tipo_associa_".$nometipotariffa] == "s" or...
} # fine if ($attiva_costi_agg_consentiti == "n" or...
} # fine for $num1
for ($numca = 1 ; $numca <= ($numcostiagg + $num_costi_associati) ; $numca++) {
$costoagg = "costoagg".$numca;
if ($$costoagg == "SI") {
$idcostoagg = "idcostoagg".$numca;
$numsettimane = "numsettimane".$numca;
$nummoltiplica_ca = "nummoltiplica_ca".$numca;
$id_periodi_costo = "id_periodi_costo".$numca;
if ($$numsettimane) {
if ($$numsettimane > $lunghezza_periodo) {
$inserire = "NO";
echo mex("Il numero di $parola_settimane del costo aggiuntivo $parola_settimanale nº",$pag)." $numca ".mex("supera il numero totale di $parola_settimane della prenotazione",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($$numsettimane > $lunghezza_periodo)
} # fine if ($$numsettimane)
if (($$numsettimane and controlla_num_pos($$numsettimane) == "NO") or ($$nummoltiplica_ca and controlla_num_pos($$nummoltiplica_ca) == "NO")) {
$inserire = "NO";
echo mex("I dati di un costo aggiuntivo sono errati",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (controlla_num_pos($$numsettimane) == "NO" or...
$num_costo = $dati_ca['id'][$$idcostoagg];
if ($dati_ca[$num_costo]["incomp_".$nometipotariffa] == "i") {
$inserire = "NO";
echo mex("Il costo aggiuntivo",$pag)." \"".$dati_ca[$num_costo]['nome']."\" ".mex("è incompatibile con la tariffa selezionata",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($dati_ca[$num_costo]["incompat_".$nometipotariffa] == "i")
$periodo_costo_trovato = trova_periodo_permesso_costo($dati_ca,$num_costo,$idinizioperiodo,$idfineperiodo,$$numsettimane);
if ($periodo_costo_trovato == "NO") {
$inserire = "NO";
echo mex("Non si puo inserire il costo aggiuntivo",$pag)." \"".$dati_ca[$num_costo]['nome']."\" ".mex("in questo periodo",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($periodo_costo_trovato == "NO")

if ($$id_periodi_costo == "inserire") {
$$id_periodi_costo = "";
for ($num1 = $idinizioperiodo; $num1 <= $idfineperiodo; $num1++) {
if (${"sett".$num1."costo".$numca."_".$n_t} == "SI") $$id_periodi_costo .= ",".$num1;
} # fine for $num1
if ($$id_periodi_costo) $$id_periodi_costo .= ",";
else $$id_periodi_costo = "nessuno";
${"id_periodi_costo".$numca."_".$n_t} = $$id_periodi_costo;
} # fine if ($$id_periodi_costo == "inserire")
if ($dati_ca[$num_costo]['numsett'] == "c" and $dati_ca[$num_costo]['associasett'] == "s" and $inserire != "NO" and !$$id_periodi_costo) {
$inserire = "NO";
echo "<hr align=\"left\" width=\"30%\">
".mex("Scegliere $parola_le $parola_settimane in cui applicare il costo aggiuntivo",$pag)." ".$dati_ca[$num_costo]['nome'];
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ":<br>
<form accept-charset=\"utf-8\" method=\"post\" action=\"clienti.php\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">
<input type=\"hidden\" name=\"origine\" value=\"$origine\">";
for ($num1 = $idinizioperiodo; $num1 <= $idfineperiodo; $num1++) ${"ck_sett".$num1} = "";
if ($idmessaggi) {
$id_periodi_mess = esegui_query("select dati_messaggio9,dati_messaggio10,dati_messaggio14 from $tablemessaggi where tipo_messaggio = 'rprenota' and idutenti $LIKE '%,$id_utente,%' and idmessaggi = '".aggslashdb($idmessaggi)."' ");
if (numlin_query($id_periodi_mess) == 1) {
$numcostiagg_mess = explode(",",risul_query($id_periodi_mess,0,'dati_messaggio9'));
$idcostoagg_mess = explode(";",risul_query($id_periodi_mess,0,'dati_messaggio10'));
$id_periodi_mess = explode(";",risul_query($id_periodi_mess,0,'dati_messaggio14'));
$numcostiagg_mess = $numcostiagg_mess[($n_t - 1)];
$idcostoagg_mess = explode(",",$idcostoagg_mess[($n_t - 1)]);
$id_periodi_mess = explode(":",$id_periodi_mess[($n_t - 1)]);
for ($numca_m = 1 ; $numca_m <= $numcostiagg_mess ; $numca_m++) {
if ($$idcostoagg == $idcostoagg_mess[($numca_m - 1)]) {
$id_periodi_mess = explode(",",$id_periodi_mess[($numca_m - 1)]);
for ($num_pm = 0 ; $num_pm < count($id_periodi_mess) ; $num_pm++) ${"ck_sett".$id_periodi_mess[$num_pm]} = " checked";
break;
} # fine ($$idcostoagg == $idcostoagg_mess[($numca_m - 1)])
} # fine for $numca_m
} # fine if (numlin_query($id_periodi_mess) == 1)
} # fine if ($idmessaggi)
for ($num1 = $idinizioperiodo; $num1 <= $idfineperiodo; $num1++) {
$periodo_costo_trovato = "NO";
if ($dati_ca[$num_costo]['periodipermessi'] == "p") {
for ($num2 = 0 ; $num2 < count($dati_ca[$num_costo]['sett_periodipermessi_ini']) ; $num2++) {
if ($dati_ca[$num_costo]['sett_periodipermessi_ini'][$num2] <= $num1 and $dati_ca[$num_costo]['sett_periodipermessi_fine'][$num2] >= $num1) $periodo_costo_trovato = "SI";
} # fine for $num2
} # fine if ($dati_ca[$num_costo][periodipermessi] == "p")
else $periodo_costo_trovato = "SI";
if ($periodo_costo_trovato == "SI") {
$date_sett_costo = esegui_query("select datainizio,datafine from $tableperiodi where idperiodi = '$num1'");
echo "<input type=\"checkbox\" name=\"sett$num1"."costo$numca"."_$n_t\" value=\"SI\"".${"ck_sett".$num1}.">".mex("dal",$pag)."
 ".formatta_data(risul_query($date_sett_costo,0,'datainizio'),$stile_data)." ".mex("al",$pag)." 
 ".formatta_data(risul_query($date_sett_costo,0,'datafine'),$stile_data)."<br>";
} # fine if ($periodo_costo_trovato == "SI")
} # fine for $num1
${"id_periodi_costo".$numca."_".$n_t} = "inserire";
for ($n_t2 = 1 ; $n_t2 <= $n_t ; $n_t2++) {
${"inizioperiodo".$n_t2} = $inizioperiodo_orig[$n_t2];
${"fineperiodo".$n_t2} = $fineperiodo_orig[$n_t2];
} # fine for $n_t2
include("./includes/dati_form_prenotazione.php");
for ($n_t2 = 1 ; $n_t2 <= $n_t ; $n_t2++) {
${"inizioperiodo".$n_t2} = $idinizioperiodo;
${"fineperiodo".$n_t2} = $idfineperiodo;
} # fine for $n_t2
echo "<input type=\"hidden\" name=\"nuovaprenotazione\" value=\"SI\">
<input class=\"sbutton\" type=\"submit\" name=\"ins_nuova_prenota\" value=\"".mex("Continua",$pag)."\">
</div></form><hr align=\"left\" width=\"30%\">";
} # fine if ($dati_ca[$num_costo][numsett] == "c" and $dati_ca[$num_costo][associasett] == "s" and...
else {
$settimane_costo[$numca] = calcola_settimane_costo($tableperiodi,$dati_ca,$num_costo,$idinizioperiodo,$idfineperiodo,$$id_periodi_costo,$$numsettimane);
aggiorna_letti_agg_in_periodi($dati_ca,$num_costo,${"num_letti_agg".$n_t},$idinizioperiodo,$idfineperiodo,$settimane_costo[$numca],"",$$nummoltiplica_ca,$numpersone);
} # fine else if ($dati_ca[$num_costo][numsett] == "c" and $dati_ca[$num_costo][associasett] == "s" and...

if (($dati_ca[$num_costo]['moltiplica'] == "p" or $dati_ca[$num_costo]['moltiplica'] == "t") and !$numpersone) {
$inserire = "NO";
echo mex("Si deve inserire il numero delle persone per il costo aggiuntivo",$pag)." ".$dati_ca[$num_costo]['nome'];
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (($dati_ca[$num1]['moltiplica'] == "p" or $dati_ca[$num1]['moltiplica'] == "t") and !$numpersone)
} # fine if ($$costoagg == "SI")
} # fine for $numca

if ($inserire != "NO") {
if ($num_app_richiesti > 1) $num_controlla_limite = $num_app_richiesti;
else $num_controlla_limite = 1;
for ($numca = 1 ; $numca <= ($numcostiagg + $num_costi_associati) ; $numca++) {
$costoagg = "costoagg".$numca;
if ($$costoagg == "SI") {
$nummoltiplica_ca = "nummoltiplica_ca".$numca;
$idcostoagg = "idcostoagg".$numca;
$num_costo = $dati_ca['id'][$$idcostoagg];
calcola_moltiplica_costo($dati_ca,$num_costo,$moltiplica_costo[$numca],$idinizioperiodo,$idfineperiodo,$settimane_costo[$numca],$$nummoltiplica_ca,$numpersone,${"num_letti_agg".$n_t});
$limite_costo_raggiunto = "NO";
for ($num1 = 0 ; $num1 < $num_controlla_limite ; $num1++) if (controlla_num_limite_costo($tablecostiprenota,$tableprenota,$dati_ca,$num_costo,$num_costi_presenti,$idinizioperiodo,$idfineperiodo,$settimane_costo[$numca],$moltiplica_costo[$numca]) == "NO") $limite_costo_raggiunto = "SI";
if ($limite_costo_raggiunto == "SI") {
$inserire = "NO";
if ($messaggio_costo_lim[$$idcostoagg] != "SI") {
$messaggio_costo_lim[$$idcostoagg] = "SI";
echo mex("Non si possono inserire altri costi",$pag)." ".$dati_ca[$num_costo]['nome']." ".mex("in questo periodo, già",$pag)." ".$dati_ca[$num_costo]['numlimite']." ".mex("presenti",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($messaggio_costo_lim[$$idcostoagg] != "SI")
} # fine if ($limite_costo_raggiunto == "SI")
if ($dati_ca[$num_costo]['tipo_beniinv'] == "mag") {
$nrc = "";
for ($num1 = 0 ; $num1 < $num_controlla_limite ; $num1++) {
$risul = controlla_beni_inventario_costo($tablerelinventario,$dati_ca,$num_costo,$beniinv_presenti,$nrc,"SI",$idinizioperiodo,$idfineperiodo,$settimane_costo[$numca],$moltiplica_costo[$numca],"");
if ($risul != "SI") break;
} # fine for $num1
if ($risul != "SI" and $inserire != "NO") {
$inserire = "NO";
echo mex("I beni richiesti dal costo",$pag)." \"".$dati_ca[$num_costo]['nome']."\" ".mex("non sono disponibili nell'inventario",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($risul != "SI" and $inserire != "NO")
} # fine if ($dati_ca[$num1]['tipo_beniinv'] == "mag")
} # fine if ($$costoagg == "SI")
} # fine for $numca
} # fine if ($inserire != "NO")


${"app_richiesti".$n_t} = "";
if ($appartamento) {
$appartamento = aggslashdb($appartamento);
${"assegnazioneapp".$n_t} = "k";
${"app_richiesti".$n_t}[$appartamento] = "SI";
#$inserire = "NO";
#echo "L'appartamento $appartamento è già occupato nel periodo richiesto.<br>";
} # fine if ($appartamento)
else {
if ($lista_app) {
${"assegnazioneapp".$n_t} = "c";
$vett_app = explode(",",$lista_app);
$num_app = count($vett_app);
for ($num1 = 0 ; $num1 < $num_app ; $num1 = $num1 + 1) {
$appo = aggslashdb($vett_app[$num1]);
${"app_richiesti".$n_t}[$appo] = "SI";
$appartamento_esistente = esegui_query("select idappartamenti from $tableappartamenti where idappartamenti = '$appo'");
if (numlin_query($appartamento_esistente) != 1) {
$inserire = "NO";
echo mex("L'appartamento",$pag)." <div style=\"display: inline; color: red;\">$appo</div> ".mex("contenuto nella lista non esiste",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (numlin_query($appartamento_esistente) != 1)
} # fine for $num1
} # fine if ($lista_app)
else {
if ($num_piano or $num_casa or $num_persone_casa) {
$where_immesso = "";
${"assegnazioneapp".$n_t} = "c";
$query = "select idappartamenti from $tableappartamenti ";
if ($num_piano) {
$num_piano = aggslashdb($num_piano);
$query = $query."where numpiano = '$num_piano' ";
$where_immesso = "SI";
} # fine if ($num_piano)
if ($num_casa) {
$num_casa = aggslashdb($num_casa);
if ($where_immesso) $query = $query."and numcasa = '$num_casa' ";
else $query = $query."where numcasa = '$num_casa' ";
$where_immesso = "SI";
} # fine if ($num_casa)
if ($num_persone_casa) {
$num_persone_casa = aggslashdb($num_persone_casa);
if ($where_immesso) $query .= "and maxoccupanti = '$num_persone_casa' ";
else $query .= "where maxoccupanti = '$num_persone_casa' ";
} # fine if ($num_persone_casa)
$list_idapp_ric = esegui_query($query);
$num_app_ric = numlin_query($list_idapp_ric);
for ($num1 = 0 ; $num1 < $num_app_ric ; $num1 = $num1 + 1) {
$idapp_ric = risul_query($list_idapp_ric,$num1,'idappartamenti');
${"app_richiesti".$n_t}[$idapp_ric] = "SI";
if (!${"lista_app".$n_t}) ${"lista_app".$n_t} = $idapp_ric;
else ${"lista_app".$n_t} = ${"lista_app".$n_t}.",".$idapp_ric;
} # fine for $num1
if ($num_app_ric == 0) {
$inserire = "NO";
echo mex("Non ci sono appartamenti con le caratteristiche richieste",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($num_app_ric == 0)
} # fine if ($num_piano or $num_casa or $num_persone_casa)
else ${"assegnazioneapp".$n_t} = "v";
} # fine else if ($lista_app)
} # fine else if ($appartamento)


# se vi sono costi con appartamenti incompatibili
for ($numca = 1 ; $numca <= $numcostiagg ; $numca++) {
$costoagg = "costoagg".$numca;
$idcostoagg = "idcostoagg".$numca;
if ($priv_ins_costi_agg != "s" or ($attiva_costi_agg_consentiti != "n" and $costi_agg_consentiti_vett[$$idcostoagg] != "SI")) $$costoagg = "";
if ($$costoagg == "SI" and $dati_ca[$dati_ca['id'][$$idcostoagg]]['appincompatibili']) $app_incomp_costi[$n_t] .= ",".$dati_ca[$dati_ca['id'][$$idcostoagg]]['appincompatibili'];
} # fine for $numca
if ($app_incomp_costi[$n_t]) {
$app_incomp_costi[$n_t] .= ",";
$lista_app = ${"lista_app".$n_t};
${"lista_app".$n_t} = "";
if ($lista_app) $lista_app = ",$lista_app,";
for ($num1 = 0 ; $num1 < $numappartamenti ; $num1++) {
$idapp = risul_query($appartamenti,$num1,'idappartamenti');
if (!$lista_app or str_replace(",$idapp,","",$lista_app) != $lista_app) {
if (str_replace(",$idapp,","",$app_incomp_costi[$n_t]) == $app_incomp_costi[$n_t]) ${"lista_app".$n_t} .= ",$idapp";
else $app_eliminati_costi[$n_t] .= ",$idapp";
} # fine if (!$lista_app or..
} # fine for $num1
if (${"lista_app".$n_t}) {
${"lista_app".$n_t} = substr(${"lista_app".$n_t},1);
$app_eliminati_costi[$n_t] = substr($app_eliminati_costi[$n_t],1);
$lista_app = ${"lista_app".$n_t};
if (str_replace(",","",$lista_app) != $lista_app) ${"assegnazioneapp".$n_t} = "c";
else ${"assegnazioneapp".$n_t} = "k";
${"app_richiesti".$n_t} = "";
$vett_app = explode(",",$lista_app);
$num_app = count($vett_app);
for ($num1 = 0 ; $num1 < $num_app ; $num1++) ${"app_richiesti".$n_t}[$vett_app[$num1]] = "SI";
} # fine if (${"lista_app".$n_t})
else {
echo mex("Non c'è nessun appartamento tra quelli richiesti che sia compatibile con i costi aggiuntivi selezionati",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
$inserire = "NO";
} # fine else if (${"lista_app".$n_t})
} # fine if ($app_incomp_costi[$n_t])

# se vi sono costi con beni inventario dall'appartamento
for ($numca = 1 ; $numca <= $numcostiagg ; $numca++) {
$costoagg = "costoagg".$numca;
$idcostoagg = "idcostoagg".$numca;
$num_costo = $dati_ca['id'][$$idcostoagg];
if ($$costoagg == "SI" and $dati_ca[$num_costo]['tipo_beniinv'] == "app") {
$app_richiesti_copia = ${"app_richiesti".$n_t};
$num_ripetizioni_costo = "";
$posto = "NO";
for ($num1 = 0 ; $num1 < $numappartamenti ; $num1++) {
$idapp = risul_query($appartamenti,$num1,'idappartamenti');
if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI") {
$risul = controlla_beni_inventario_costo($tablerelinventario,$dati_ca,$num_costo,$beniinv_presenti,$num_ripetizioni_costo,"",$idinizioperiodo,$idfineperiodo,$settimane_costo[$numca],$moltiplica_costo[$numca],$idapp);
if ($risul != "SI") {
${"app_richiesti".$n_t}[$idapp] = "NO";
$app_incomp_costi = "SI";
} # fine if ($risul != "SI")
else {
${"app_richiesti".$n_t}[$idapp] = "SI";
$posto = "SI";
} # fine else if ($risul != "SI")
} # fine if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI")
} # fine for $num1
if ($posto != "SI") {
$inserire = "NO";
echo mex("I beni richiesti dal costo",$pag)." \"".$dati_ca[$num_costo]['nome']."\" ".mex("non sono disponibili nell'inventario",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if ($posto != "SI")
} # fine if ($$costoagg == "SI" and $dati_ca[$num_costo]['tipo_beniinv'] == "app")
} # fine for $numca


if (controlla_num_pos($num_app_richiesti) == "NO" or $num_app_richiesti == 0 or strlen($num_app_richiesti) > 3) {
$inserire = "NO";
echo mex("Il numero di prenotazioni è sbagliato",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (controlla_num_pos($num_app_richiesti) == "NO" or $num_app_richiesti == 0 or strlen($num_app_richiesti) > 3))

if ($attiva_regole1_consentite == "s") {
unset($condizioni_regole1_consentite);
unset($app_richiesti_copia);
unset(${"lista_app".$n_t});
if (${"assegnazioneapp".$n_t} == "v") ${"assegnazioneapp".$n_t} = "c";
for ($num1 = 0 ; $num1 < count($regole1_consentite) ; $num1++) if ($regole1_consentite[$num1]) $condizioni_regole1_consentite .= "motivazione = '".$regole1_consentite[$num1]."' or ";
if (!$condizioni_regole1_consentite) {
echo mex("Non c'è nussun periodo delle regole 1 in cui sia consentito inserire prenotazioni per l'utente",$pag)." $nome_utente.<br>";
$inserire = "NO";
} # fine if (!$condizioni_regole1_consentite)
else {
$condizioni_regole1_consentite = "(".str_replace("motivazione = ' '","motivazione = '' or motivazione is null",substr($condizioni_regole1_consentite,0,-4)).")";
$app_richiesti_copia = ${"app_richiesti".$n_t};
$posti = 0;
for ($num1 = 0 ; $num1 < $numappartamenti ; $num1++) {
$idapp = risul_query($appartamenti,$num1,'idappartamenti');
if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI") {
$appartamento_consentito = esegui_query("select idregole,iddatainizio,iddatafine from $tableregole where app_agenzia = '$idapp' and iddatainizio <= '$idfineperiodo' and iddatafine >= '$idinizioperiodo' and $condizioni_regole1_consentite order by iddatainizio");
unset($iddatainizio_regole_tot);
unset($iddatafine_regole_tot);
for ($num2 = 0 ; $num2 < numlin_query($appartamento_consentito) ; $num2++) {
$iddatainizio_regola = risul_query($appartamento_consentito,$num2,'iddatainizio');
$iddatafine_regola = risul_query($appartamento_consentito,$num2,'iddatafine');
if ($num2 == 0) {
$iddatainizio_regole_tot = $iddatainizio_regola;
$iddatafine_regole_tot = $iddatafine_regola;
} # fine if ($num2 == 0)
else {
if ($iddatainizio_regola == ($iddatafine_regole_tot + 1)) $iddatafine_regole_tot = $iddatafine_regola;
else break;
} # fine else if ($num2 == 0)
} # fine for $num2
if (numlin_query($appartamento_consentito) > 0 and $iddatainizio_regole_tot <= $idinizioperiodo and $iddatafine_regole_tot >= $idfineperiodo) {
${"app_richiesti".$n_t}[$idapp] = "SI";
$posti++;
${"lista_app".$n_t} .= $idapp.",";
} # fine if (numlin_query($appartamento_consentito) > 0 and...)
else ${"app_richiesti".$n_t}[$idapp] = "NO";
} # fine if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI")
} # fine for $num1
${"lista_app".$n_t} = substr(${"lista_app".$n_t},0,-1);
if ($posti == 0) {
echo mex("Non c'è nessun appartamento tra quelli richiesti in cui sia consentito inserire prenotazioni per l'utente",$pag)." $nome_utente";
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
$inserire = "NO";
} # fine if ($posti == 0)
else {
if ($posti < $num_app_richiesti) {
echo mex("Non ci sono",$pag)." $num_app_richiesti ".mex("appartamenti tra quelli richiesti in cui sia consentito inserire prenotazioni per l'utente",$pag)." $nome_utente";
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
$inserire = "NO";
} # fine if ($posti < $num_app_richiesti)
} # fine else if ($posti == 0)
} # fine else if (!$condizioni_regole1_consentite)
if ($inserire == "NO" and $app_richiesti_copia) ${"app_richiesti".$n_t} = $app_richiesti_copia;
} # fine if ($attiva_regole1_consentite == "s")

if ($numpersone) {
if (controlla_num_pos($numpersone) == "NO") {
$inserire = "NO";
echo mex("Il numero di persone è sbagliato",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
} # fine if (controlla_num_pos($numpersone) == "NO")
$app_richiesti_copia = ${"app_richiesti".$n_t};
$posti = 0;
if ($app_regola2_predef) {
$app_regola2_predef = ",$app_regola2_predef,";
$posto_reg2_orig = 0;
} # fine if ($app_regola2_predef)
for ($num1 = 0 ; $num1 < $numappartamenti ; $num1 = $num1 + 1) {
$idapp = risul_query($appartamenti,$num1,'idappartamenti');
$maxoccupanti = risul_query($appartamenti,$num1,'maxoccupanti');
if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI") {
if ($maxoccupanti and $maxoccupanti < $numpersone) {
${"app_richiesti".$n_t}[$idapp] = "NO";
} # fine if ($maxoccupanti and $maxoccupanti < $numpersone)
else {
${"app_richiesti".$n_t}[$idapp] = "SI";
$posti++;
} # fine else if ($maxoccupanti and $maxoccupanti < $numpersone)
} # fine if (!$app_richiesti or $app_richiesti[$idapp] == "SI")
if ($app_regola2_predef) {
if (str_replace(",$idapp,","",$app_regola2_predef) != $app_regola2_predef) {
if (!$maxoccupanti or $maxoccupanti >= $numpersone) $posto_reg2_orig = 1;
} # fine if (str_replace(",$idapp,","",$app_regola2_predef) != $app_regola2_predef)
} # fine if ($app_regola2_predef)
} # fine for $num1
if ($posti == 0 or ($app_regola2_predef and !$posto_reg2_orig)) {
echo mex("Non c'è nessun appartamento tra quelli richiesti che possa ospitare",$pag)." $numpersone ".mex("persone",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
$inserire = "NO";
} # fine if ($posti == 0 or...
else {
if ($posti < $num_app_richiesti) {
echo mex("Non ci sono",$pag)." $num_app_richiesti ".mex("appartamenti tra quelli richiesti che possano ospitare",$pag)." $numpersone ".mex("persone",$pag);
if ($num_tipologie > 1) echo " (".mex("tipologia",$pag)." $n_t)";
echo ".<br>";
$inserire = "NO";
} # fine if ($posti < $num_app_richiesti)
} # fine else if ($posti == 0)
} # fine if ($numpersone)

if ($num_app_richiesti != 1 or $num_tipologie > 1) {
unset($lista_app_richiesti);
if (!${"app_richiesti".$n_t}) $lista_app_richiesti = ",tutti,,";
else while (list($key, $val) = each(${"app_richiesti".$n_t})) if ($val == "SI") $lista_app_richiesti .= $key.",";
$lista_app_richiesti = substr($lista_app_richiesti,0,-1);
$id_app_richiesti2 = $id_app_richiesti;
for ($num1 = $id_app_richiesti2 ; $num1 < ($id_app_richiesti2 + $num_app_richiesti) ; $num1++) {
$id_app_richiesti++;
$app_richiesti[$id_app_richiesti] = $lista_app_richiesti;
$idinizioperiodo_vett[$id_app_richiesti] = $idinizioperiodo;
$idfineperiodo_vett[$id_app_richiesti] = $idfineperiodo;
} # fine for $num1
$app_richiesti[",numero,"] = $id_app_richiesti;
if ($prenota_vicine == "SI") $app_richiesti[",vicini,"] = "SI";
} # fine if ($num_app_richiesti != 1 or $num_tipologie > 1)
else {
$id_app_richiesti = 1;
$app_richiesti = $app_richiesti1;
$idinizioperiodo_vett = $idinizioperiodo;
$idfineperiodo_vett = $idfineperiodo;
} # fine else if ($num_app_richiesti != 1 or $num_tipologie > 1)

} # fine else if ($idfineperiodo < $idinizioperiodo)

} # fine for $n_t


if ($inserire != "NO") {

unset($condizioni_regole1_non_sel);
if ($applica_regole1 == "n" or ($applica_regole1 == "f" and $attiva_regole1_consentite != "n")) {
for ($num1 = 0 ; $num1 < count($regole1_consentite) ; $num1++) if ($regole1_consentite[$num1]) $condizioni_regole1_non_sel .= "motivazione != '".$regole1_consentite[$num1]."' and ";
if ($condizioni_regole1_non_sel) $condizioni_regole1_non_sel = " and (".str_replace("motivazione != ' '","motivazione != '' and motivazione is not null",substr($condizioni_regole1_non_sel,0,-5)).")";
} # fine if ($applica_regole1 == "n" or ($applica_regole1 == "f" and...
$app_agenzia = esegui_query("select * from $tableregole where app_agenzia != ''$condizioni_regole1_non_sel");
if ($applica_regole1 != "m" and $applica_regole1 != "f") $num_app_agenzia = numlin_query($app_agenzia);
else $num_app_agenzia = 0;

$minuti_durata_insprenota = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'minuti_durata_insprenota' and idutente = '1'");
$minuti_durata_insprenota = risul_query($minuti_durata_insprenota,0,'valpersonalizza_num');
$lim_prenota_temp = aggslashdb(date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600) - ($minuti_durata_insprenota * 60))));
esegui_query("delete from $tableprenota where idclienti = '0' and ( datainserimento < '".$lim_prenota_temp."' or utente_inserimento = '$id_utente' ) ");

#Se ci sono regole per $app_agenzia inserisco false prenotazioni fisse in $app_prenota_id2
if ($num_app_agenzia != 0) {
unset($limiti_var);
unset($app_prenota_id);
unset($app_orig_prenota_id);
unset($inizio_prenota_id);
unset($fine_prenota_id);
unset($app_assegnabili_id);
unset($prenota_in_app_sett);
unset($dati_app);
unset($profondita);
$limiti_var['n_ini'] = $idinizioperiodo_tot;
$limiti_var['n_fine'] = $idfineperiodo_tot;
$limiti_var['lim_prenota_temp'] = $lim_prenota_temp;
$profondita['iniziale'] = "";
$profondita['attuale'] = 1;
$max_prenota = esegui_query("select max(idprenota) from $tableprenota");
if (numlin_query($max_prenota) != 0) $tot_prenota = risul_query($max_prenota,0,0);
else $tot_prenota = 0;
$profondita['tot_prenota_ini'] = $tot_prenota;
$profondita['tot_prenota_attuale'] = $tot_prenota;
tab_a_var($limiti_var,$app_prenota_id,$app_orig_prenota_id,$inizio_prenota_id,$fine_prenota_id,$app_assegnabili_id,$prenota_in_app_sett,$anno,$dati_app,$profondita,$PHPR_TAB_PRE."prenota");
$limiti_var2 = $limiti_var;
$profondita2 = $profondita;
$prenota_in_app_sett2 = $prenota_in_app_sett;
$inizio_prenota_id2 = $inizio_prenota_id;
$fine_prenota_id2 = $fine_prenota_id;
$app_prenota_id2 = $app_prenota_id;
$app_assegnabili_id2 = $app_assegnabili_id;
$info_periodi_ag['numero'] = $num_app_agenzia;
for ($num1 = 0 ; $num1 < $num_app_agenzia ; $num1 = $num1 + 1) {
$info_periodi_ag['app'][$num1] = risul_query($app_agenzia,$num1,'app_agenzia');
$info_periodi_ag['ini'][$num1] = risul_query($app_agenzia,$num1,'iddatainizio');
$info_periodi_ag['fine'][$num1] = risul_query($app_agenzia,$num1,'iddatafine');
} # fine for $num1
inserisci_prenota_fittizie($info_periodi_ag,$profondita2,$app_prenota_id2,$inizio_prenota_id2,$fine_prenota_id2,$prenota_in_app_sett2,$app_assegnabili_id2);
$occupare_app_agenzia_sempre = "NO";
for ($num1 = $idinizioperiodo_tot ; $num1 <= $idfineperiodo_tot ; $num1++) {
$numprenotazioni = 0;
for ($num2 = 0 ; $num2 < $dati_app['totapp'] ; $num2++) if ($prenota_in_app_sett2[$dati_app['posizione'][$num2]][$num1]) $numprenotazioni++;
if ($numprenotazioni >= $numappartamenti) $occupare_app_agenzia_sempre = "SI";
} # fine for $num1
if ($occupare_app_agenzia_sempre != "SI") {
$app_orig_prenota_id = $app_prenota_id2;
liberasettimane($idinizioperiodo_vett,$idfineperiodo_vett,$limiti_var2,$anno,$fatto_libera,$app_liberato,$profondita2,$app_richiesti,$app_prenota_id2,$app_orig_prenota_id,$inizio_prenota_id2,$fine_prenota_id2,$app_assegnabili_id2,$prenota_in_app_sett2,$dati_app,$PHPR_TAB_PRE."prenota");
} # fine if ($occupare_app_agenzia_sempre != "SI")
else $fatto_libera = "NO";
if ($fatto_libera == "SI") {
$risul_agg = aggiorna_tableprenota($app_prenota_id2,$app_orig_prenota_id,$tableprenota);
if (!$risul_agg) $fatto_libera = "NO";
else {
$occupare_app_agenzia = "NO";
$appartamento = $app_liberato;
} # fine else if (!$risul_agg)
} # fine if ($fatto_libera == "SI")

# se ci sono app_agenzia e non si può non occuparli
else {
$occupare_app_agenzia = "SI";
$limiti_var['t_limite'] = (time() + $sec_limite_libsett);
$app_liberato = "";
$inserire = "SI_NO";
$app_orig_prenota_id = $app_prenota_id;
liberasettimane ($idinizioperiodo_vett,$idfineperiodo_vett,$limiti_var,$anno,$fatto_libera2,$app_liberato,$profondita,$app_richiesti,$app_prenota_id,$app_orig_prenota_id,$inizio_prenota_id,$fine_prenota_id,$app_assegnabili_id,$prenota_in_app_sett,$dati_app,$PHPR_TAB_PRE."prenota");
if ($applica_regole1 == "f" and $attiva_regole1_consentite != "n") $fatto_libera2 = "NO";
if ($fatto_libera2 == "NO") {
echo mex("Nel periodo selezionato non è possibile ospitare il cliente negli appartamenti richiesti",$pag);
if ($app_incomp_costi) echo " ".mex("con i costi aggiuntivi selezionati",$pag);
echo ".<br>";
if ($occupare_app_agenzia_sempre == "SI" and !$app_richiesti[',numero,']) {
echo mex("Si dovrà occupare almeno un periodo della regola di assegnazione 1",$pag).".<br>";
} # fine if ($occupare_app_agenzia_sempre == "SI" and !$app_richiesti[",numero,"])
} # fine if ($fatto_libera2 == "NO")
else {
$appartamento = $app_liberato;
echo mex("Si devono fare i seguenti spostamenti nei periodi della <div style=\"display: inline; color: blue;\">regola di assegnazione 1</div>",$pag).":<br>";
for ($num1 = 0 ; $num1 < $num_app_agenzia ; $num1++) {
$id_app_agenzia = risul_query($app_agenzia,$num1,'app_agenzia');
$idinizio_app_agenzia = risul_query($app_agenzia,$num1,'iddatainizio');
$idfine_app_agenzia = risul_query($app_agenzia,$num1,'iddatafine');
$motivazione_app_agenzia = risul_query($app_agenzia,$num1,'motivazione');
$idprenota_cambiate_da_ag = esegui_query("select idprenota from $tableprenota where idappartamenti = '$id_app_agenzia' and iddatainizio <= '$idfine_app_agenzia' and iddatafine >= '$idinizio_app_agenzia'");
$num_idprenota_cambiate_da_ag = numlin_query($idprenota_cambiate_da_ag);
for ($num2 = 0 ; $num2 < $num_idprenota_cambiate_da_ag ; $num2 = $num2 + 1) {
$idprenota_cambiata = risul_query($idprenota_cambiate_da_ag,$num2,'idprenota');
if ($app_prenota_id[$idprenota_cambiata] and $app_prenota_id[$idprenota_cambiata] != $id_app_agenzia) {
$idapp_camb = $app_prenota_id[$idprenota_cambiata];
$dati_cambiati = esegui_query("select * from $tableprenota where idprenota = '$idprenota_cambiata'");
$idclienti_camb = risul_query($dati_cambiati,0,'idclienti');
$cliente_camb = esegui_query("select cognome from $tableclienti where idclienti = '$idclienti_camb'");
if ($idclienti_camb) $cliente_camb = risul_query($cliente_camb,0,'cognome');
else $cliente_camb = "?";
$iddatainizio_camb = $inizio_prenota_id[$idprenota_cambiata];
$datainizio_camb = esegui_query("select datainizio from $tableperiodi where idperiodi = '$iddatainizio_camb'");
$datainizio_camb = risul_query($datainizio_camb,0,'datainizio');
$datainizio_camb_f = formatta_data($datainizio_camb,$stile_data);
$iddatafine_camb = $fine_prenota_id[$idprenota_cambiata];
$datafine_camb = esegui_query("select datafine from $tableperiodi where idperiodi = '$iddatafine_camb'");
$datafine_camb = risul_query($datafine_camb,0,'datafine');
$datafine_camb_f = formatta_data($datafine_camb,$stile_data);
echo mex("La prenotazione dal",$pag)." $datainizio_camb_f ".mex("al",$pag)." $datafine_camb_f ".mex("a nome di",$pag)." $cliente_camb ".mex("verrà spostata dall'appartamento",$pag)." <b style=\"color: blue;\">$id_app_agenzia</b> (<b>$motivazione_app_agenzia</b>) ".mex("al",$pag)." $idapp_camb.<br>";
} # fine if ($app_prenota_id[$idprenota_cambiata] and $app_prenota_id[$idprenota_cambiata] != $id_app_agenzia)
} # fine for $num2
$idprenota_cambiate_a_ag = prenota_in_app_e_periodo($id_app_agenzia,$idinizio_app_agenzia,$idfine_app_agenzia,$prenota_in_app_sett,$fine_prenota_id,$num_pca);
for ($num2 = 1 ; $num2 <= $num_pca ; $num2++) {
$idprenota_cambiata = $idprenota_cambiate_a_ag[$num2];
if ($app_orig_prenota_id[$idprenota_cambiata] and $app_prenota_id[$idprenota_cambiata] != $app_orig_prenota_id[$idprenota_cambiata]) {
$dati_cambiati = esegui_query("select * from $tableprenota where idprenota = $idprenota_cambiata");
$idapp_camb = $app_orig_prenota_id[$idprenota_cambiata];
$idclienti_camb = risul_query($dati_cambiati,0,'idclienti');
$cliente_camb = esegui_query("select cognome from $tableclienti where idclienti = $idclienti_camb");
if ($idclienti_camb) $cliente_camb = risul_query($cliente_camb,0,'cognome');
else $cliente_camb = "?";
$iddatainizio_camb = $inizio_prenota_id[$idprenota_cambiata];
$datainizio_camb = esegui_query("select datainizio from $tableperiodi where idperiodi = $iddatainizio_camb");
$datainizio_camb = risul_query($datainizio_camb,0,'datainizio');
$datainizio_camb_f = formatta_data($datainizio_camb,$stile_data);
$iddatafine_camb = $fine_prenota_id[$idprenota_cambiata];
$datafine_camb = esegui_query("select datafine from $tableperiodi where idperiodi = $iddatafine_camb");
$datafine_camb = risul_query($datafine_camb,0,'datafine');
$datafine_camb_f = formatta_data($datafine_camb,$stile_data);
echo mex("La prenotazione dal",$pag)." $datainizio_camb_f ".mex("al",$pag)." $datafine_camb_f ".mex("a nome di",$pag)." $cliente_camb ".mex("verrà spostata dall'appartamento",$pag)." $idapp_camb ".mex("al",$pag)." <b style=\"color: blue;\">$id_app_agenzia</b> (<b>$motivazione_app_agenzia</b>).<br>";
} # fine if ($app_orig_prenota_id[$idprenota_cambiata] and...
} # fine for $num2
for ($num2 = 1 ; $num2 <= $id_app_richiesti ; $num2++) {
if ($id_app_richiesti > 1) $appartamento_controlla = $appartamento[$num2];
else $appartamento_controlla = $appartamento;
if ($id_app_agenzia == $appartamento_controlla and $idinizio_app_agenzia <= $idfineperiodo and $idfine_app_agenzia >= $idinizioperiodo) {
echo mex("La nuova prenotazione verrà inserita nell'appartamento",$pag)." <b style=\"color: blue;\">$id_app_agenzia</b> (<b>$motivazione_app_agenzia</b>).<br>";
} # fine if ($id_app_agenzia == $appartamento_controlla and ...
} # fine for $num2
} # fine for $num1
if (@is_array($app_orig_prenota_id)) {
reset($app_orig_prenota_id);
while (list($idprenota, $app_prenota) = each($app_orig_prenota_id)) {
if ($app_prenota_id[$idprenota] != $app_prenota) {
$app_cambiato = $app_prenota_id[$idprenota];
$spostamenti_transazione .= "$idprenota,$app_cambiato,";
} # fine if ($app_prenota_id[$idprenota] != $app_prenota)
} # fine while (list($key, $val) = each($app_orig_prenota_id))
$spostamenti_transazione = substr($spostamenti_transazione,0,-1);
} # fine if (@is_array($app_orig_prenota_id))
} # fine else if ($fatto_libera2 == "NO")
} # fine else if ($fatto_libera == "SI")
} # fine if ($num_app_agenzia != 0)

else {
# se non ci sono app_agenzia della regola di assegnazione 1
unset($limiti_var);
unset($profondita_);
unset($app_prenota_id_);
unset($app_orig_prenota_id_);
unset($inizio_prenota_id_);
unset($fine_prenota_id_);
unset($app_assegnabili_id_);
unset($prenota_in_app_sett_);
unset($dati_app_);
unset($app_liberato);
$limiti_var['lim_prenota_temp'] = $lim_prenota_temp;
liberasettimane ($idinizioperiodo_vett,$idfineperiodo_vett,$limiti_var,$anno,$fatto_libera,$app_liberato,$profondita_,$app_richiesti,$app_prenota_id_,$app_orig_prenota_id_,$inizio_prenota_id_,$fine_prenota_id_,$app_assegnabili_id_,$prenota_in_app_sett_,$dati_app_,$PHPR_TAB_PRE."prenota");
if ($fatto_libera == "NO") {
$inserire = "SI_NO";
echo mex("Nel periodo selezionato non è possibile ospitare il cliente in un appartamento tra quelli richiesti",$pag);
if ($app_incomp_costi) echo " ".mex("con i costi aggiuntivi selezionati",$pag);
echo ".<br>";
} # fine if ($fatto_libera == "NO")
else $appartamento = $app_liberato;
} # fine else if ($num_app_agenzia != 0)

if ($app_richiesti[",numero,"]) {
$id_app_richiesti = 0;
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
unset($appartamento_u);
unset($inizioperiodo_u);
unset($fineperiodo_u);
$id_app_richiesti2 = $id_app_richiesti;
for ($num1 = $id_app_richiesti2 ; $num1 < ($id_app_richiesti2 + ${"num_app_richiesti".$n_t}) ; $num1++) {
$id_app_richiesti++;
$appartamento_u .= $appartamento[$id_app_richiesti].",";
$inizioperiodo_u .= $idinizioperiodo_vett[$id_app_richiesti].",";
$fineperiodo_u .= $idfineperiodo_vett[$id_app_richiesti].",";
} # fine for $num1
${"appartamento".$n_t} = substr($appartamento_u,0,-1);
${"inizioperiodo".$n_t} = substr($inizioperiodo_u,0,-1);
${"fineperiodo".$n_t} = substr($fineperiodo_u,0,-1);
if (${"num_app_richiesti".$n_t} > 1) ${"spezzetta".$n_t} = "SI";
} # fine for $n_t
} # fine if ($app_richiesti[",numero,"])
else $appartamento1 = $appartamento;

} # fine if ($inserire != "NO")


if ($inserire == "NO") {
$inseriscicliente = "";
} # fine if ($inserire == "NO")

else {
unset($dati_transazione1);
unset($dati_transazione2);
unset($dati_transazione3);
unset($dati_transazione4);
unset($dati_transazione5);
unset($dati_transazione6);
unset($dati_transazione7);
unset($dati_transazione8);
unset($dati_transazione9);
unset($dati_transazione10);
unset($dati_transazione13);
unset($dati_transazione14);
$dati_transazione1 = $num_tipologie;
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
$dati_transazione2 .= ";".${"inizioperiodo".$n_t};
$dati_transazione3 .= ";".${"fineperiodo".$n_t};
$dati_transazione4 .= ", ,".${"appartamento".$n_t};
$dati_transazione5 .= ",".${"nometipotariffa".$n_t};
$dati_transazione6 .= ",".${"numpersone".$n_t};
$dati_transazione7 .= ",".${"assegnazioneapp".$n_t};
$dati_transazione8 .= ",".${"num_app_richiesti".$n_t};
$dati_transazione9 .= ", ,".${"lista_app".$n_t};
$dati_transazione10 .= ",".${"spezzetta".$n_t};
$dati_transazione14 .= ",".${"num_letti_agg".$n_t}["max"];
} # fine for $n_t
$dati_transazione2 = substr($dati_transazione2,1);
$dati_transazione3 = substr($dati_transazione3,1);
$dati_transazione4 = substr($dati_transazione4,3);
$dati_transazione5 = substr($dati_transazione5,1);
$dati_transazione6 = substr($dati_transazione6,1);
$dati_transazione7 = substr($dati_transazione7,1);
$dati_transazione8 = substr($dati_transazione8,1);
$dati_transazione9 = substr($dati_transazione9,3);
$dati_transazione10 = substr($dati_transazione10,1);
$dati_transazione14 = substr($dati_transazione14,1);
$dati_transazione11 = $fatto_libera2;
$dati_transazione12 = $prenota_vicine;
$dati_transazione18 = aggslashdb(serialize($app_eliminati_costi));

if ($inserire != "SI_NO") ins_prenota_temp_in_tab($tableprenota,$tablecostiprenota,$num_tipologie,$limiti_var,$dati_transazione13,$prenota_vicine,$id_utente,$HOSTNAME);

$adesso = date("YmdHis",(time() + (C_DIFF_ORE * 3600)));
list($usec, $sec) = explode(' ', microtime());
mt_srand((float) $sec + ((float) $usec * 100000));
$val_casuale = mt_rand(100000,999999);
$ultimo_accesso = date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600)));
$id_transazione = $adesso.$val_casuale.$versione_transazione;
esegui_query("insert into $tabletransazioni (idtransazioni,idsessione,tipo_transazione,anno,spostamenti,dati_transazione1,dati_transazione2,dati_transazione3,dati_transazione4,dati_transazione5,dati_transazione6,dati_transazione7,dati_transazione8,dati_transazione9,dati_transazione10,dati_transazione11,dati_transazione12,dati_transazione13,dati_transazione14,dati_transazione18,ultimo_accesso) values ('$id_transazione','$id_sessione','ins_p','$anno','$spostamenti_transazione','$dati_transazione1','$dati_transazione2','$dati_transazione3','$dati_transazione4','$dati_transazione5','$dati_transazione6','$dati_transazione7','$dati_transazione8','$dati_transazione9','$dati_transazione10','$dati_transazione11','$dati_transazione12','$dati_transazione13','$dati_transazione14','$dati_transazione18','$ultimo_accesso')");
} # fine else if ($inserire == "NO")

unlock_tabelle($tabelle_lock);

} # fine if ($nuovaprenotazione != "Continua lo stesso")


else {

$tabelle_lock = array("$tableprenota","$tablecostiprenota","$tabletransazioni");
$altre_tab_lock = array("$tableappartamenti","$tableperiodi","$tablepersonalizza");
$tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock);

if ($tipo_transazione != "ins_p") $inserire = "NO";

else {
$fatto_libera2 = risul_query($dati_transazione,0,'dati_transazione11');
$num_tipologie = risul_query($dati_transazione,0,'dati_transazione1');
$numpersone = explode(",",risul_query($dati_transazione,0,'dati_transazione6'));
$num_app_richiesti = explode(",",risul_query($dati_transazione,0,'dati_transazione8'));
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
${"num_app_richiesti".$n_t} = $num_app_richiesti[($n_t - 1)];
${"numpersone".$n_t} = $numpersone[($n_t - 1)];
} # fine for $n_t

if ($fatto_libera2 == "SI") {
unset($limiti_var);
unset($app_prenota_id);
unset($app_orig_prenota_id);
unset($inizio_prenota_id);
unset($fine_prenota_id);
unset($app_assegnabili_id);
unset($prenota_in_app_sett);
unset($dati_app);
unset($profondita);
$limiti_var['n_ini'] = 0;
$max_periodo = esegui_query("select max(idperiodi) from $tableperiodi");
$max_periodo = risul_query($max_periodo,0,0);
$limiti_var['n_fine'] = $max_periodo;
$minuti_durata_insprenota = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'minuti_durata_insprenota' and idutente = '1'");
$minuti_durata_insprenota = risul_query($minuti_durata_insprenota,0,'valpersonalizza_num');
$limiti_var['lim_prenota_temp'] = aggslashdb(date("Y-m-d H:i:s",(time() + (C_DIFF_ORE * 3600) - ($minuti_durata_insprenota * 60))));
esegui_query("delete from $tableprenota where idclienti = '0' and ( datainserimento < '".$limiti_var['lim_prenota_temp']."' or utente_inserimento = '$id_utente' ) ");
$profondita['iniziale'] = "";
$profondita['attuale'] = 1;
$max_prenota = esegui_query("select max(idprenota) from $tableprenota");
if (numlin_query($max_prenota) != 0) $tot_prenota = risul_query($max_prenota,0,0);
else $tot_prenota = 0;
$profondita['tot_prenota_ini'] = $tot_prenota;
$profondita['tot_prenota_attuale'] = $tot_prenota;
tab_a_var($limiti_var,$app_prenota_id,$app_orig_prenota_id,$inizio_prenota_id,$fine_prenota_id,$app_assegnabili_id,$prenota_in_app_sett,$anno,$dati_app,$profondita,$PHPR_TAB_PRE."prenota");
$nuovo_app = "";
$spostamenti = risul_query($dati_transazione,0,'spostamenti');
$spostamenti = explode(",",$spostamenti);

# Effettuo gli spostamenti e faccio i controlli (appartamento di destinazione assegnabile, esistente e vuoto)
$num_spostamenti = count($spostamenti);
for ($num1 = 0 ; $num1 < $num_spostamenti ; $num1++) {
$idprenota_cambiata = $spostamenti[$num1];
for ($num2 = $inizio_prenota_id[$idprenota_cambiata] ; $num2 <= $fine_prenota_id[$idprenota_cambiata] ; $num2++) {
$prenota_in_app_sett[$app_prenota_id[$idprenota_cambiata]][$num2] = "";
} # fine for $num2
$num1++;
} # fine for $num1
for ($num1 = 0 ; $num1 < $num_spostamenti ; $num1++) {
$idprenota_cambiata = $spostamenti[$num1];
$app_cambiato = $spostamenti[($num1 + 1)];
if ($inizio_prenota_id[$idprenota_cambiata]) {
if (!$app_assegnabili_id[$idprenota_cambiata]) $inserire = "NO";
if ($app_assegnabili_id[$idprenota_cambiata] and $app_assegnabili_id[$idprenota_cambiata] != "v") {
$lista_app_assegnabili = ",".$app_assegnabili_id[$idprenota_cambiata].",";
if (str_replace(",".$app_cambiato.",","",$lista_app_assegnabili) == $lista_app_assegnabili) $inserire = "NO";
} # fine if ($app_assegnabili_id[$idprenota_cambiata] and...
if (str_replace(",".$app_cambiato.",","",$dati_app['lista']) == $dati_app['lista']) $inserire = "NO";
$app_prenota_id[$idprenota_cambiata] = $app_cambiato;
for ($num2 = $inizio_prenota_id[$idprenota_cambiata] ; $num2 <= $fine_prenota_id[$idprenota_cambiata] ; $num2++) {
if ($prenota_in_app_sett[$app_cambiato][$num2]) $inserire = "NO";
else $prenota_in_app_sett[$app_cambiato][$num2] = $idprenota_cambiata;
} # fine for $num2
} # fine if ($inizio_prenota_id[$idprenota_cambiata])
if ($inserire == "NO") break;
$num1++;
} # fine for $num1
$prenota_vicine = risul_query($dati_transazione,0,'dati_transazione12');
$inizioperiodo = explode(";",risul_query($dati_transazione,0,'dati_transazione2'));
$fineperiodo = explode(";",risul_query($dati_transazione,0,'dati_transazione3'));
$appartamento = explode(", ,",risul_query($dati_transazione,0,'dati_transazione4'));
$assegnazioneapp = explode(",",risul_query($dati_transazione,0,'dati_transazione7'));
$lista_app = explode(", ,",risul_query($dati_transazione,0,'dati_transazione9'));
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
${"inizioperiodo".$n_t} = $inizioperiodo[($n_t - 1)];
${"fineperiodo".$n_t} = $fineperiodo[($n_t - 1)];
${"appartamento".$n_t} = $appartamento[($n_t - 1)];
${"assegnazioneapp".$n_t} = $assegnazioneapp[($n_t - 1)];
${"lista_app".$n_t} = $lista_app[($n_t - 1)];
$inizioperiodo = explode(",",${"inizioperiodo".$n_t});
$fineperiodo = explode(",",${"fineperiodo".$n_t});
$appartamento = explode(",",${"appartamento".$n_t});
for ($num1 = 0 ; $num1 < ${"num_app_richiesti".$n_t} ; $num1++) {
for ($num2 = $inizioperiodo[$num1] ; $num2 <= $fineperiodo[$num1] ; $num2++) {
if ($prenota_in_app_sett[$appartamento[$num1]][$num2]) $inserire = "NO";
} # fine for $num2
} # fine for $num1
} # fine for $n_t
} # fine if ($fatto_libera2 == "SI")

else {
esegui_query("update $tabletransazioni set dati_transazione10 = 'SI' where idtransazioni = '$id_transazione' and idsessione = '$id_sessione'");
if ($num_tipologie = 1 and $num_app_richiesti1 = 1 and $id_utente == 1) esegui_query("update $tabletransazioni set dati_transazione7 = 'v', dati_transazione9 = '' where idtransazioni = '$id_transazione' and idsessione = '$id_sessione'");
} # fine else if ($fatto_libera2 == "SI")

} # fine else if ($tipo_transazione != "ins_p")

if ($inserire != "NO" and $fatto_libera2 == "SI") {
$risul_agg = aggiorna_tableprenota($app_prenota_id,$app_orig_prenota_id,$tableprenota);
if (!$risul_agg) $inserire = "NO";
else {
unset($dati_transazione13);
ins_prenota_temp_in_tab($tableprenota,$tablecostiprenota,$num_tipologie,$limiti_var,$dati_transazione13,$prenota_vicine,$id_utente,$HOSTNAME);
esegui_query("update $tabletransazioni set dati_transazione13 = '$dati_transazione13' where idtransazioni = '$id_transazione' and idsessione = '$id_sessione'");
} # fine else if (!$risul_agg)
} # fine if ($inserire != "NO" and $fatto_libera2 == "SI")

if ($inserire == "NO") {
echo mex("Non si può procedere perchè la tabella prenotazioni è cambiata nel frattempo",$pag).".<br>";
$inseriscicliente = "";
} # fine if ($inserire == "NO")

unlock_tabelle($tabelle_lock);
} # fine else if ($nuovaprenotazione != "Continua lo stesso")


} # fine else if ($aggiungi_tipologie)

} # fine if ($nuovaprenotazione)




if ($inserire == "SI_NO") {
$mostra_form_dati_cliente = "NO";
if ($prenota_vicine == "SI" and $app_richiesti[",numero,"] and $fatto_libera2 != "SI") {
echo "<br><form accept-charset=\"utf-8\" method=\"post\" action=\"clienti.php\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">
$form_riprova_no_vicini
<input type=\"hidden\" name=\"origine\" value=\"$origine\">
<input type=\"hidden\" name=\"nuovaprenotazione\" value=\"SI\">
<input class=\"sbutton\" type=\"submit\" name=\"nuovaprenota_vedi\" value=\"".mex("Riprova senza cercare appartamenti vicini",$pag)."\">
</div></form><br>";
} # fine if ($prenota_vicine == "SI" and...
if ((!$app_richiesti[",numero,"] and $id_utente == 1) or $fatto_libera2 == "SI") {
if ($fatto_libera2 != "SI") {
echo "<b>".mex("Se si continua l'assegnazione dell'appartamento <div style=\"display: inline; color: red;\">non terrà conto degli appartamenti richiesti</div>",$pag)."</b>";
if ($lista_app1) echo " (<b>$lista_app1</b>)";
echo ".<br>";
} # fine if ($fatto_libera2 != "SI")
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"clienti.php\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
$manda_dati_assegnazione = "NO";
include("./includes/dati_form_prenotazione.php");
echo "
<input type=\"hidden\" name=\"origine\" value=\"$origine\">
<input type=\"hidden\" name=\"nuovaprenotazione\" value=\"Continua lo stesso\">
<input class=\"sbutton\" type=\"submit\" name=\"nuovaprenota_vedi\" value=\"".mex("Continua lo stesso",$pag)."\">
</div></form><br>";
} # fine if ((!$app_richiesti[",numero,"] and $id_utente == 1) or $fatto_libera2 == "SI")
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
$manda_dati_assegnazione = "SI";
include("./includes/dati_form_prenotazione.php");
echo "<input class=\"sbutton\" type=\"submit\" name=\"torna\" value=\"".mex("Torna indietro",$pag)."\">
</div></form>";
$inseriscicliente = "";
$inserire = "NO";
} # fine if ($inserire == "SI_NO")

else {



if ($inseriscicliente or $inserire) {

$mostra_form_dati_cliente = "NO";
$Modifica_i_dati_del_cliente = "Modifica i dati del cliente";

if ($nuovaprenotazione == "") {

$tableclienti = $PHPR_TAB_PRE."clienti";

} # fine if ($nuovaprenotazione == "")

if ($inseriscicliente) {
if ($cognome) {
$condizione_utente = "";
if ($vedi_clienti == "PROPRI" or $vedi_clienti == "GRUPPI" or (!$nuovaprenotazione and ($modifica_clienti == "PROPRI" or $modifica_clienti == "GRUPPI"))) {
$condizione_utente = "and ( utente_inserimento = '$id_utente'";
if ($vedi_clienti == "GRUPPI" or (!$nuovaprenotazione and $modifica_clienti == "GRUPPI")) {
while (list($idut_gr,$val) = each($utenti_gruppi)) if ($idut_gr != $id_utente) $condizione_utente .= " or utente_inserimento = '$idut_gr'";
} # fine if ($vedi_clienti == "GRUPPI" or...
$condizione_utente .= " )";
} # fine if ($vedi_clienti == "PROPRI" or $vedi_clienti == "GRUPPI" or...
if ($vedi_clienti == "NO" or (!$nuovaprenotazione and $modifica_clienti == "NO")) $condizione_utente = "and utente_inserimento = '-1'";
if (!$nome) $esistecognome = esegui_query("select * from $tableclienti where ( cognome $ILIKE '%".aggslashdb($cognome)."%' ) $condizione_utente order by max_num_ordine");
else $esistecognome = esegui_query("select * from $tableclienti where ( cognome $ILIKE '%".aggslashdb($cognome)."%' and nome $ILIKE '%".aggslashdb($nome)."%' ) $condizione_utente order by max_num_ordine");
$numrighe = numlin_query($esistecognome);
$cognome = stripslashes($cognome);

# I cognomi inseriti non esistono nel database
if ($numrighe == 0) {
$inserire = "SI";
if ($nuovaprenotazione) {
if ($inserimento_nuovi_clienti == "SI") {
$mostra_form_dati_cliente = "SI";
$datiprenota = mex("Inserisci i dati di un nuovo cliente",$pag);
$titolo_form_dati_cliente = $datiprenota;
$inserire = "";
} # fine if ($inserimento_nuovi_clienti == "SI")
else {
echo mex("Non si è trovato nessun cliente chiamato",$pag)." $cognome";
if ($nome) echo " $nome";
echo ".<br>";
$inserire = "NO";
} # fine else if ($inserimento_nuovi_clienti == "SI")
} # fine if ($nuovaprenotazione)
} # fine if ($numrighe == 0)

# Esiste almeno uno dei cognomi inseriti
else {
if (!$nome) echo mex("Esistono i seguenti clienti con un cognome uguale o simile",$pag);
else echo mex("Esistono i seguenti clienti con un cognome e nome uguale o simile",$pag);
echo ":<br><br>
<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"origine\" value=\"$origine\">
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
$select_prenotazioni = "";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
for ($num1 = 1 ; $num1 <= ${"num_app_richiesti".$n_t} ; $num1++) {
$select_prenotazioni .= "<option value=\"p$num1"."_$n_t\">$num1";
if ($num_tipologie > 1) $select_prenotazioni .= " ".mex("tipologia",$pag)." $n_t";
$select_prenotazioni .= "</option>";
} # fine for $num1
} # fine for $n_t
for ($num = 0; $num < $numrighe ; $num = $num + 1) {
$idcognome[$num] = risul_query($esistecognome,$num,'idclienti');
$dati = esegui_query("select * from $tableclienti where idclienti = '".$idcognome[$num]."' ");

mostra_dati_cliente($dati,$dcognome,$dnome,$dsoprannome,$dtitolo_cli,$dsesso,$ddatanascita,$ddatanascita_f,$dnazionenascita,$dcittanascita,$dregionenascita,$ddocumento,$dscadenzadoc,$dscadenzadoc_f,$dtipodoc,$dnazionedoc,$dregionedoc,$dcittadoc,$dnazionalita,$dnazione,$dregione,$dcitta,$dvia,$dnumcivico,$dtelefono,$dtelefono2,$dtelefono3,$dfax,$dcap,$demail,$dcod_fiscale,$dpartita_iva,"SI");
echo "<br>";

if ($nuovaprenotazione) {
echo "<input name=\"cliente_ospite_".$idcognome[$num]."\" value=\"SI\" type=\"checkbox\" checked>
".mex("Ospite della prenotazione",$pag);
if ($num_tipologie > 1 or $num_app_richiesti1 > 1) {
echo " <select name=\"prenota_cli_osp_".$idcognome[$num]."\">
$select_prenotazioni
</select>";
} # fine if ($num_tipologie > 1 or $num_app_richiesti1 > 1)
else echo "<input type=\"hidden\" name=\"prenota_cli_osp_".$idcognome[$num]."\" value=\"p1_1\">";
$clienti_compagni = esegui_query("select * from $tableclienti where idclienti_compagni $LIKE '%,".$idcognome[$num].",%' $condizione_utente order by max_num_ordine");
$num_clienti_compagni = numlin_query($clienti_compagni);
if (!$num_clienti_compagni) echo "<br>";
else {
$dati_osp = "";
for ($num1 = 0 ; $num1 < $num_clienti_compagni ; $num1++) {
$id_clienti_comp = risul_query($clienti_compagni,$num1,'idclienti');
$dati_osp .= "<input name=\"ospite_".$idcognome[$num]."_".$id_clienti_comp."\" value=\"SI\" type=\"checkbox\">\
 <em>".addslashes(risul_query($clienti_compagni,$num1,'cognome'))."</em> ";
$ccnome = addslashes(risul_query($clienti_compagni,$num1,'nome'));
$ccsesso = risul_query($clienti_compagni,$num1,'sesso');
$ccdatanascita = risul_query($clienti_compagni,$num1,'datanascita');
$O = "o";
if ($ccsesso == "f") $O = "a";
if ($ccnome) $dati_osp .=  "$ccnome ";
if ($ccdatanascita) $dati_osp .= mex("nat$O il",$pag)." ".formatta_data($ccdatanascita,$stile_data)." ";
if ($num_tipologie > 1 or $num_app_richiesti1 > 1) {
$dati_osp .= "".addslashes(mex("nella prenotazione",$pag))."\
 <select name=\"pren_osp_".$idcognome[$num]."_".$id_clienti_comp."\">\
$select_prenotazioni\
</select><br>";
} # fine if ($num_tipologie > 1 or $num_app_richiesti1 > 1)
else $dati_osp .= "<input type=\"hidden\" name=\"pren_osp_".$idcognome[$num]."_".$id_clienti_comp."\" value=\"p1_1\"><br>";
} # fine for $num1
echo ".
<script type=\"text/javascript\">
<!--
function apri_osp".$idcognome[$num]." () {
var bott = document.getElementById('bott".$idcognome[$num]."');
bott.style.visibility = 'hidden';
var elem_cli = document.getElementById('osp_cli".$idcognome[$num]."');
elem_cli.style.visibility = 'visible';
var testo = '$dati_osp';
elem_cli.innerHTML = testo;
} // fine function apri_osp".$idcognome[$num]."
-->
</script>
 ".mex("Altri ospiti",$pag).": 
<button type=\"button\" id=\"bott".$idcognome[$num]."\" onclick=\"apri_osp".$idcognome[$num]."()\">
<img style=\"display: block;\" src=\"./img/freccia_destra_marg.png\" alt=\"&gt;\"></button><br>
<div id=\"osp_cli".$idcognome[$num]."\" style=\"visibility: hidden;\"></div>";
} # fine else if (!$num_clienti_compagni)
echo "<br><div style=\"text-align: center;\">
<input class=\"sbutton\" type=\"submit\" name=\"idclienti\" value=\"".mex("Utilizza il cliente",$pag)." ".$idcognome[$num]." ".mex("per la prenotazione",$pag)."\">";
} # fine if ($nuovaprenotazione)
else {

echo "<br><div style=\"text-align: center;\">
<input class=\"sbutton\" type=\"submit\" name=\"inserire\" value=\"".mex($Modifica_i_dati_del_cliente,$pag)." ".$idcognome[$num]."\">";
if (@eregi_replace($cognome,"",$dcognome) != $dcognome) {
echo "<input type=\"hidden\" name=\"inserire_dato_cognome".$idcognome[$num]."\" value=\"NO\">";
} # fine if (eregi_replace($cognome,"",$dcognome) != $dcognome)
if (@eregi_replace($nome,"",$dnome) != $dnome) {
echo "<input type=\"hidden\" name=\"inserire_dato_nome".$idcognome[$num]."\" value=\"NO\">";
} # fine if (@eregi_replace($nome,"",$dnome) != $dnome)

} # fine else if ($nuovaprenotazione)

echo "</div><hr style=\"width: 95%\">";
} # fine for $num
echo "<div style=\"text-align: center;\">";

if ($nuovaprenotazione) {
$manda_dati_assegnazione = "NO";
include("./includes/dati_form_prenotazione.php");
} # fine if ($nuovaprenotazione)
else {

echo "<input type=\"hidden\" name=\"cognome\" value=\"$cognome\">
<input type=\"hidden\" name=\"nome\" value=\"$nome\">
<input type=\"hidden\" name=\"soprannome\" value=\"$soprannome\">
<input type=\"hidden\" name=\"titolo_cli\" value=\"$titolo_cli\">
<input type=\"hidden\" name=\"sesso\" value=\"$sesso\">
<input type=\"hidden\" name=\"giornonascita\" value=\"$giornonascita\">
<input type=\"hidden\" name=\"mesenascita\" value=\"$mesenascita\">
<input type=\"hidden\" name=\"annonascita\" value=\"$annonascita\">
<input type=\"hidden\" name=\"documento\" value=\"$documento\">
<input type=\"hidden\" name=\"giornoscaddoc\" value=\"$giornoscaddoc\">
<input type=\"hidden\" name=\"mesescaddoc\" value=\"$mesescaddoc\">
<input type=\"hidden\" name=\"annoscaddoc\" value=\"$annoscaddoc\">
<input type=\"hidden\" name=\"tipodoc\" value=\"$tipodoc\">
<input type=\"hidden\" name=\"cittadoc\" value=\"$cittadoc\">
<input type=\"hidden\" name=\"regionedoc\" value=\"$regionedoc\">
<input type=\"hidden\" name=\"nazionedoc\" value=\"$nazionedoc\">
<input type=\"hidden\" name=\"cittanascita\" value=\"$cittanascita\">
<input type=\"hidden\" name=\"regionenascita\" value=\"$regionenascita\">
<input type=\"hidden\" name=\"nazionenascita\" value=\"$nazionenascita\">
<input type=\"hidden\" name=\"nazionalita\" value=\"$nazionalita\">
<input type=\"hidden\" name=\"nazione\" value=\"$nazione\">
<input type=\"hidden\" name=\"citta\" value=\"$citta\">
<input type=\"hidden\" name=\"regione\" value=\"$regione\">
<input type=\"hidden\" name=\"via\" value=\"$via\">
<input type=\"hidden\" name=\"nomevia\" value=\"$nomevia\">
<input type=\"hidden\" name=\"numcivico\" value=\"$numcivico\">
<input type=\"hidden\" name=\"cap\" value=\"$cap\">
<input type=\"hidden\" name=\"telefono\" value=\"$telefono\">
<input type=\"hidden\" name=\"telefono2\" value=\"$telefono2\">
<input type=\"hidden\" name=\"telefono3\" value=\"$telefono3\">
<input type=\"hidden\" name=\"fax\" value=\"$fax\">
<input type=\"hidden\" name=\"email\" value=\"$email\">";
if ($inserimento_nuovi_clienti == "SI") {
echo "<input class=\"sbutton\" type=\"submit\" name=\"inserire\" value=\"".mex("Inserisci un nuovo cliente",$pag)."\">
<br><hr style=\"width: 95%\">";
} # fine if ($inserimento_nuovi_clienti == "SI")

} # fine else if ($nuovaprenotazione)

echo "
<input class=\"sbutton\" type=\"submit\" name=\"torna\" value=\"".mex("Torna indietro",$pag)."\">
</div></div></form>";

if ($nuovaprenotazione and $inserimento_nuovi_clienti == "SI") {
echo "<hr style=\"width: 95%\">
<form accept-charset=\"utf-8\" method=\"post\" action=\"clienti.php\"><div>
<input type=\"hidden\" name=\"origine\" value=\"$origine\">
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
$manda_dati_assegnazione = "NO";
include("./includes/dati_form_prenotazione.php");
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
echo "<input type=\"hidden\" name=\"numpersone$n_t\" value=\"".${"numpersone".$n_t}."\">
<input type=\"hidden\" name=\"num_letti_agg_max$n_t\" value=\"".${"num_letti_agg".$n_t}["max"]."\">
<input type=\"hidden\" name=\"num_app_richiesti$n_t\" value=\"".${"num_app_richiesti".$n_t}."\">";
} # fine for $n_t
echo "<div style=\"text-align: center;\">
<input class=\"sbutton\" type=\"submit\" name=\"datiprenota\" value=\"".mex("Inserisci i dati di un nuovo cliente",$pag)."\">
</div></div></form><br>";
} # fine if ($nuovaprenotazione and $inserimento_nuovi_clienti == "SI")

} # fine else if ($numrighe == 0)
} # fine if ($cognome)

} # fine if ($inseriscicliente)

if ($cognome == "") {
echo mex("É necessario inserire il cognome del cliente",$pag).".<br>";
$inserire = "NO";
} # fine if ($cognome == "")



if ($inserire == "NO") {
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">";
if ($nuovaprenotazione) {
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
if (${"appartamento".$n_t} and !${"assegnazioneapp".$n_t}) ${"assegnazioneapp".$n_t} = "k";
if (!${"lista_app".$n_t} and ${"assegnazioneapp".$n_t} != "k") {
echo "<input type=\"hidden\" name=\"num_piano$n_t\" value=\"".${"num_piano".$n_t}."\">
<input type=\"hidden\" name=\"num_casa$n_t\" value=\"".${"num_casa".$n_t}."\">
<input type=\"hidden\" name=\"num_persone_casa$n_t\" value=\"".${"num_persone_casa".$n_t}."\">";
} # fine if (!${"lista_app".$n_t} and ${"assegnazioneapp".$n_t} != "k")
} # fine for $n_t
$manda_dati_assegnazione = "SI";
include("./includes/dati_form_prenotazione.php");
} # fine if ($nuovaprenotazione)
echo "<br>
<input class=\"sbutton\" type=\"submit\" name=\"torna\" value=\"".mex("Torna indietro",$pag)."\">
</div></form>";
} # fine if ($inserire == "NO")
else {
if ($inserire) {

$tabelle_lock = array("$tableclienti");
$altre_tab_lock = array("$tablepersonalizza");
$tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock);

$inserire = htmlentities($inserire);
if (str_replace(mex($Modifica_i_dati_del_cliente,$pag),"",$inserire) != $inserire or str_replace(htmlentities(mex($Modifica_i_dati_del_cliente,$pag)),"",$inserire) != $inserire) {
if (str_replace(mex($Modifica_i_dati_del_cliente,$pag),"",$inserire) != $inserire) $idclienti = str_replace(mex($Modifica_i_dati_del_cliente,$pag),"",$inserire);
else $idclienti = str_replace(htmlentities(mex($Modifica_i_dati_del_cliente,$pag)),"",$inserire);
$idclienti = str_replace(" ","",$idclienti);
$idclienti = aggslashdb($idclienti);
$dati_cliente = esegui_query("select cognome,utente_inserimento from $tableclienti where idclienti = '$idclienti'");
$cognome = risul_query($dati_cliente,0,'cognome');
$cliente_modificato = "SI";
$inserire_dato_cognome = "inserire_dato_cognome".$idclienti;
$inserire_dato_nome = "inserire_dato_nome".$idclienti;
$utente_inserimento = risul_query($dati_cliente,0,'utente_inserimento');
if ($vedi_clienti == "NO" or ($vedi_clienti == "PROPRI" and $utente_inserimento != $id_utente) or ($vedi_clienti == "GRUPPI" and !$utenti_gruppi[$utente_inserimento])) $inserire = "NO";
if ($modifica_clienti == "NO" or ($modifica_clienti == "PROPRI" and $utente_inserimento != $id_utente) or ($modifica_clienti == "GRUPPI" and !$utenti_gruppi[$utente_inserimento])) $inserire = "NO";
} # fine if (str_replace(mex($Modifica_i_dati_del_cliente,$pag),"",$inserire) != $inserire or...

if ($idclienti == "") {
if ($inserimento_nuovi_clienti == "NO") $inserire = "NO";
$cognome_agg = $cognome;
$max_num_ordine = 1;
} # fine if ($idclienti == "")
else {
$cognome_agg = "";
$max_num_ordine = "";
} # fine else if ($idclienti == "")

if ($inserire != "NO") {
if ($$inserire_dato_nome == "NO") $nome = "";

$idclienti = inserisci_dati_cliente($cognome_agg,$nome,$soprannome,$titolo_cli,$sesso,$mesenascita,$giornonascita,$annonascita,$nazionenascita,$cittanascita,$regionenascita,$documento,$tipodoc,$mesescaddoc,$giornoscaddoc,$annoscaddoc,$cittadoc,$regionedoc,$nazionedoc,$nazionalita,$nazione,$citta,$regione,$via,$nomevia,$numcivico,$cap,$telefono,$telefono2,$telefono3,$fax,$email,"","",$max_num_ordine,$id_utente_ins,$attiva_prefisso_clienti,$prefisso_clienti,$idclienti,"NO");

echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"modifica_cliente.php\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">
<input type=\"hidden\" name=\"idclienti\" value=\"$idclienti\">
<input type=\"hidden\" name=\"origine\" value=\"inizio.php\">";
if ($cliente_modificato == "SI") echo mex("I dati del cliente",$pag)." $cognome ".mex("sono stati modificati",$pag).". ";
else echo mex("I dati del cliente",$pag)." $cognome ".mex("sono stati inseriti",$pag).". ";
echo "<input class=\"sbutton\" type=\"submit\" value=\"".mex("Modifica i dati del cliente",$pag)." $idclienti\">
</div></form>";
} # fine if ($inserire != "NO")
else echo mex("Non si è trovato nessun cliente chiamato",$pag)." $cognome.<br>";
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">
<input type=\"hidden\" name=\"idclienti\" value=\"$idclienti\">
<input class=\"sbutton\" type=\"submit\" name=\"torna\" value=\"".mex("Torna all'inserimento clienti",$pag)."\">
</div></form>";

unlock_tabelle($tabelle_lock);

} # fine if ($inserire)


} # fine else if ($inserire == "NO")

} # fine if ($inseriscicliente or $inserire)


} # fine else if ($inserire == "SI_NO")




if ($mostra_form_dati_cliente != "NO") {


if (!$titolo_form_dati_cliente) $titolo_form_dati_cliente = mex("Inserisci o modifica i dati di un cliente",$pag);
echo "<h4>$titolo_form_dati_cliente.</h4>";

# Questa è la form di inserimento

if ($origine == "") {
$origine = "clienti.php";
} # fine if ($origine == "")

$annonascita = 19;

if ($idmessaggi) {
$dati_mess = esegui_query("select dati_messaggio15 from $tablemessaggi where idmessaggi = '".aggslashdb($idmessaggi)."' and idutenti $LIKE '%,$id_utente,%' ");
if (numlin_query($dati_mess) == 1) {
$dati_mess = explode("<d>",risul_query($dati_mess,0,'dati_messaggio15'));
$cognome_richiedente = $dati_mess[0];
#$nome = $dati_mess[1];
$email = $dati_mess[2];
$sesso = $dati_mess[3];
if ($sesso == "F") $sel_f = " selected";
if ($sesso == "M") $sel_m = " selected";
$datanascita = $dati_mess[4];
$annonascita = substr($datanascita,0,4);
$mesenascita = substr($datanascita,5,2);
$giornonascita = substr($datanascita,8,2);
$documento = $dati_mess[5];
$nazione = $dati_mess[6];
$regione = $dati_mess[7];
$citta = $dati_mess[8];
$via = $dati_mess[9];
$numcivico = $dati_mess[10];
$cap = $dati_mess[11];
$telefono = $dati_mess[12];
$telefono2 = $dati_mess[13];
$telefono3 = $dati_mess[14];
$fax = $dati_mess[15];
} # fine if (numlin_query($dati_mess) == 1)
} # fine if ($idmessaggi)

if ($datiprenota) echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"98%\"><tr><td style=\"font-size: 80%;\" align=\"right\">
<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><div>
<input type=\"hidden\" name=\"anno\" value=\"$anno\">
<input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\">
<input type=\"hidden\" name=\"id_transazione\" value=\"$id_transazione\">
<input type=\"hidden\" name=\"annulla\" value=\"SI\">
<input class=\"sbutton\" type=\"submit\" style=\"font-size: 80%;\" value=\"".mex("Annulla",$pag)."\">
</div></form></td></tr></table>";
else echo "<br>";
mostra_funzjs_cpval();
echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"$origine\"><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=\"$origine\">
<hr style=\"width: 95%\">";
$titoli_cliente = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'titoli_cliente' and idutente = '$id_utente'");
if (numlin_query($titoli_cliente) == 1) $titoli_cliente = risul_query($titoli_cliente,0,"valpersonalizza");
else $titoli_cliente = "";
if ($titoli_cliente) {
echo "<select name=\"titolo_cli\">
<option value=\"\">--</option>";
$titoli_cliente = explode(">",$titoli_cliente);
for ($num1 = 0 ; $num1 < count($titoli_cliente) ; $num1++) {
$opt = explode("<",$titoli_cliente[$num1]);
echo "<option value=\"".$opt[0]."\">".$opt[0]."</option>";
} # fine for $num1
echo "</select> ";
} # fine if ($titoli_cliente)
echo "".mex("Cognome",$pag).": ";
if ($id_utente == 1 and $id_utente_ins != 1) {
$tableprivilegi = $PHPR_TAB_PRE."privilegi";
$privilegi_globali_utente = esegui_query("select * from $tableprivilegi where idutente = '$id_utente_ins' and anno = '1'");
$prefisso_clienti = risul_query($privilegi_globali_utente,0,'prefisso_clienti');
$attiva_prefisso_clienti = substr($prefisso_clienti,0,1);
if ($attiva_prefisso_clienti != "n") {
$prefisso_clienti = explode(",",$prefisso_clienti);
$prefisso_clienti = $prefisso_clienti[1];
} # fine if ($prefisso_clienti != "n")
} # fine if ($id_utente == 1 and $id_utente_ins != 1)
if ($attiva_prefisso_clienti == "p") echo $prefisso_clienti;
echo "<input type=\"text\" id=\"cognome\" name=\"cognome\" value=\"$cognome\">";
if ($attiva_prefisso_clienti == "s") echo $prefisso_clienti;
echo ",".mex("nome",$pag).": <input type=\"text\" name=\"nome\" value=\"$nome\">;
 ".mex("soprannome",$pag).": <input type=\"text\" name=\"soprannome\" value=\"$soprannome\">;<br>
".mex("sesso",$pag).": <select name=\"sesso\">
<option value=\"\" selected>-</option>
<option value=\"m\"$sel_m>m</option>
<option value=\"f\"$sel_f>f</option>
</select>;
 ".mex("cittadinanza",$pag).": ".mostra_lista_relutenti("nazionalita",$nazionalita,$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti)."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('nazionalita','nazione','')\" value=\"#\">";
if ($datiprenota) {
echo ".&nbsp;&nbsp;&nbsp;<input name=\"cliente_ospite\" value=\"SI\" type=\"checkbox\" checked>
".mex("Ospite della prenotazione",$pag);
if ($num_tipologie > 1 or $num_app_richiesti1 > 1) {
$selected = " selected";
echo " <select name=\"prenota_cli_osp\"$selected>";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
for ($num1 = 1 ; $num1 <= ${"num_app_richiesti".$n_t} ; $num1++) {
echo "<option value=\"p$num1"."_$n_t\">$num1";
if ($num_tipologie > 1) echo " ".mex("tipologia",$pag)." $n_t";
echo "</option>";
$selected = "";
} # fine for $num1
} # fine for $n_t
echo "</select>";
} # fine if ($num_tipologie > 1 or $num_app_richiesti1 > 1)
else echo "<input type=\"hidden\" name=\"prenota_cli_osp\" value=\"p1_1\">";
} # fine if ($datiprenota)
mostra_funzjs_dati_rel("","",$id_sessione,$anno);
echo "<hr style=\"width: 95%\">
".mex("Data di nascita",$pag)." ";
$sel_gnascita = "<select name=\"giornonascita\">
<option value=\"\" selected>--</option>";
for ( $num = 1; $num <= 31; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
if ($giornonascita == $num) $sel = " selected";
else $sel = "";
$sel_gnascita .= "<option value=\"$num\"$sel>$num</option>";
} # fine for $num
$sel_gnascita .= "</select>";
$sel_mnascita = "<select name=\"mesenascita\">
<option value=\"\" selected>--</option>";
for ( $num = 1; $num <= 12; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
if ($mesenascita == $num) $sel = " selected";
else $sel = "";
$sel_mnascita .= "<option value=\"$num\"$sel>$num</option>";
} # fine for $num
$sel_mnascita .= "</select>";
if ($stile_data == "usa") echo "$sel_mnascita/$sel_gnascita";
else echo "$sel_gnascita/$sel_mnascita";
echo "/<input type=\"text\" name=\"annonascita\" size=\"5\" maxlength=\"4\" value=\"$annonascita\"> (".mex("anno con 4 cifre",$pag)."),
".mex("nazione di nascita",$pag).": ".mostra_lista_relutenti("nazionenascita",$nazionenascita,$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","","","regione","regionenascita")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('nazionenascita','nazionalita','')\" value=\"#\">,<br>
".mex("reg./prov. di nascita",$pag).": ".mostra_lista_relutenti("regionenascita",$regionenascita,$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","","","citta","cittanascita","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('regionenascita','regione','')\" value=\"#\">,
".mex("città di nascita",$pag).": ".mostra_lista_relutenti("cittanascita",$cittanascita,$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('cittanascita','citta','')\" value=\"#\">";
echo "<hr style=\"width: 95%\">
".mex("Residenza",$pag).": <select name=\"via\">
<option value=\"".mex("Via",$pag)."\">".mex("Via",$pag)."</option>
<option value=\"".mex("Piazza",$pag)."\">".mex("Piazza",$pag)."</option>
<option value=\"".mex("Viale",$pag)."\">".mex("Viale",$pag)."</option>
<option value=\"".mex("Piazzale",$pag)."\">".mex("Piazzale",$pag)."</option>
<option value=\"".mex("Vicolo",$pag)."\">".mex("Vicolo",$pag)."</option>";
if ($via) $sel = " selected";
else $sel = "";
echo "<option value=\"\"$sel>-----</option>
</select>
<input type=\"text\" name=\"nomevia\" value=\"$via\">
Nº<input type=\"text\" name=\"numcivico\" size=\"4\" value=\"$numcivico\">,
  ".mex("CAP",$pag)."<input type=\"text\" name=\"cap\" size=\"6\" value=\"$cap\">,<br>
".mex("nazione",$pag).": ".mostra_lista_relutenti("nazione",$nazione,$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","","","regione","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('nazione','nazionalita','')\" value=\"#\">,
".mex("reg./prov.",$pag).": ".mostra_lista_relutenti("regione",$regione,$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","","","citta","citta","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('regione','regionenascita','')\" value=\"#\">,
".mex("città",$pag).": ".mostra_lista_relutenti("citta",$citta,$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('citta','cittanascita','')\" value=\"#\">";
echo "<hr style=\"width: 95%\">
".mex("Documento",$pag).": ".mostra_lista_relutenti("tipodoc",$tipodoc,$id_utente,"nome_documentoid","iddocumentiid","iddocumentoid",$tabledocumentiid,$tablerelutenti,"","","SI");
echo "<input type=\"text\" name=\"documento\" value=\"$documento\">
".mex("scadenza",$pag).": ";
$sel_gscaddoc = "<select name=\"giornoscaddoc\">
<option value=\"\" selected>--</option>";
for ( $num = 1; $num <= 31; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_gscaddoc .= "<option value=\"$num\">$num</option>";
} # fine for $num
$sel_gscaddoc .= "</select>";
$sel_mscaddoc = "<select name=\"mesescaddoc\">
<option value=\"\" selected>--</option>";
for ( $num = 1; $num <= 12; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_mscaddoc .= "<option value=\"$num\">$num</option>";
} # fine for $num
$sel_mscaddoc .= "</select>";
if ($stile_data == "usa") echo "$sel_mscaddoc/$sel_gscaddoc";
else echo "$sel_gscaddoc/$sel_mscaddoc";
echo "/<select name=\"annoscaddoc\">";
$anno_corr = date("Y",(time() + (C_DIFF_ORE * 3600)));
for ($num1 = 0; $num1 < 12; $num1++) {
$num = $anno_corr - 12 + $num1;
echo "<option value=\"$num\">$num</option>";
} # fine for $num1
echo "<option value=\"\" selected>--</option>";
for ($num1 = 0; $num1 < 12; $num1++) {
$num = $anno_corr + $num1;
echo "<option value=\"$num\">$num</option>";
} # fine for $num1
echo "</select>;<br>
".mex("nazione di rilascio",$pag).": ".mostra_lista_relutenti("nazionedoc",$nazionedoc,$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","","","regione","regionedoc")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('nazionedoc','nazionalita','')\" value=\"#\">,
".mex("reg./prov.",$pag).": ".mostra_lista_relutenti("regionedoc",$regionedoc,$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","","","citta","cittadoc","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('regionedoc','regione','')\" value=\"#\">,
".mex("città",$pag).": ".mostra_lista_relutenti("cittadoc",$cittadoc,$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val('cittadoc','citta','')\" value=\"#\">
<hr style=\"width: 95%\">
".mex("Numero di telefono",$pag).": <input type=\"text\" name=\"telefono\" value=\"$telefono\"> 
".mex("Secondo telefono",$pag).": <input type=\"text\" name=\"telefono2\" value=\"$telefono2\"><br>
".mex("Terzo telefono",$pag).": <input type=\"text\" name=\"telefono3\" value=\"$telefono3\">
".mex("Numero di fax",$pag).": <input type=\"text\" name=\"fax\" value=\"$fax\"><br>
E-mail: <input type=\"text\" name=\"email\" size=\"30\" value=\"$email\">";

if ($datiprenota) {
echo "<script type=\"text/javascript\">
<!--
function apri_cli (n_t,num_ar,num_pers) {
var bott_cli = document.getElementById('bott_cli'+num_ar+'_'+n_t);
bott_cli.style.visibility = 'hidden';
var elem_cli = document.getElementById('dati_cli'+num_ar+'_'+n_t);
elem_cli.style.visibility = 'visible';
var testo = '';
var suff = '';
var suffcp = '';
for (n1 = 1 ; n1 <= num_pers ; n1++) {
suff = '_'+n1+'_'+num_ar+'_'+n_t;
if (n1 == 1) suffcp = '';
else suffcp = '_1_'+num_ar+'_'+n_t;
testo += '<hr width=\"35%\">\
'+n1+'. ".addslashes(mex("Cognome",$pag)).": <input type=\"text\" id=\"cognome'+suff+'\" name=\"cognome'+suff+'\"><input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'cognome'+suff+'\',\'cognome'+suffcp+'\',\'\')\" value=\"#\">,\
 ".addslashes(mex("nome",$pag)).": <input type=\"text\" name=\"nome'+suff+'\">;\
 ".addslashes(mex("sesso",$pag)).": <select name=\"sesso'+suff+'\">\
<option value=\"\" selected>-<\/option>\
<option value=\"m\">m<\/option>\
<option value=\"f\">f<\/option>\
<\/select>;<br>\
".addslashes(mex("cittadinanza",$pag)).": ".mostra_lista_relutenti("nazionalita'+suff+'","",$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","JS")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'nazionalita'+suff+'\',\'nazionalita'+suffcp+'\',\'\')\" value=\"#\">;\
 ".addslashes(mex("parentela",$pag)).": ".mostra_lista_relutenti("parentela'+suff+'","",$id_utente,"nome_parentela","idparentele","idparentela",$tableparentele,$tablerelutenti,"","JS")."<br>\
<div style=\"height: 4px\"><\/div>\
".addslashes(mex("Data di nascita",$pag)).": ";
$sel_gnascita = "<select name=\"giornonascita'+suff+'\">\
<option value=\"\" selected>--<\/option>";
for ( $num = 1; $num <= 31; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_gnascita .= "<option value=\"$num\">$num<\/option>";
} # fine for $num
$sel_gnascita .= "<\/select>";
$sel_mnascita = "<select name=\"mesenascita'+suff+'\">\
<option value=\"\" selected>--<\/option>";
for ( $num = 1; $num <= 12; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_mnascita .= "<option value=\"$num\">$num<\/option>";
} # fine for $num
$sel_mnascita .= "<\/select>";
if ($stile_data == "usa") echo "$sel_mnascita/$sel_gnascita";
else echo "$sel_gnascita/$sel_mnascita";
echo "/<input type=\"text\" name=\"annonascita'+suff+'\" size=\"5\" maxlength=\"4\" value=\"19\"> (".addslashes(mex("anno con 4 cifre",$pag))."),\
 ".mex("nazione di nascita",$pag).": ".mostra_lista_relutenti("nazionenascita'+suff+'","",$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","JS","","regione","regionenascita'+suff+'")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'nazionenascita'+suff+'\',\'nazionalita'+suff+'\',\'\')\" value=\"#\">,<br>\
".mex("reg./prov. di nascita",$pag).": ".mostra_lista_relutenti("regionenascita'+suff+'","",$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","JS","","citta","cittanascita'+suff+'","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'regionenascita'+suff+'\',\'regionenascita'+suffcp+'\',\'\')\" value=\"#\">,\
 ".mex("città di nascita",$pag).": ".mostra_lista_relutenti("cittanascita'+suff+'","",$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","JS","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'cittanascita'+suff+'\',\'cittanascita'+suffcp+'\',\'\')\" value=\"#\"><br>\
<div style=\"height: 4px\"><\/div>'
if (n1 == 1) {
testo += '".mex("nazione",$pag).": ".mostra_lista_relutenti("nazione'+suff+'","",$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","JS","","regione","regione'+suff+'")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'nazione'+suff+'\',\'nazionalita'+suff+'\',\'\')\" value=\"#\">,\
 ".mex("reg./prov.",$pag).": ".mostra_lista_relutenti("regione'+suff+'","",$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","JS","","citta","citta'+suff+'","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'regione'+suff+'\',\'regione\',\'\')\" value=\"#\">,\
 ".mex("città",$pag).": ".mostra_lista_relutenti("citta'+suff+'","",$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","JS","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'citta'+suff+'\',\'citta\',\'\')\" value=\"#\"><br>\
<div style=\"height: 4px\"><\/div>\
".addslashes(mex("Documento",$pag)).": ".mostra_lista_relutenti("tipodoc'+suff+'","",$id_utente,"nome_documentoid","iddocumentiid","iddocumentoid",$tabledocumentiid,$tablerelutenti,"","JS","SI");
echo "<input type=\"text\" name=\"documento'+suff+'\">\
 ".addslashes(mex("scadenza",$pag)).": ";
$sel_gscaddoc = "<select name=\"giornoscaddoc'+suff+'\">\
<option value=\"\" selected>--<\/option>";
for ( $num = 1; $num <= 31; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_gscaddoc .= "<option value=\"$num\">$num<\/option>";
} # fine for $num
$sel_gscaddoc .= "<\/select>";
$sel_mscaddoc = "<select name=\"mesescaddoc'+suff+'\">\
<option value=\"\" selected>--<\/option>";
for ( $num = 1; $num <= 12; $num = $num + 1) {
if (strlen($num) == 1) $num = "0".$num;
$sel_mscaddoc .= "<option value=\"$num\">$num<\/option>";
} # fine for $num
$sel_mscaddoc .= "<\/select>";
if ($stile_data == "usa") echo "$sel_mscaddoc/$sel_gscaddoc";
else echo "$sel_gscaddoc/$sel_mscaddoc";
echo "/<select name=\"annoscaddoc'+suff+'\">";
$anno_corr = date("Y",(time() + (C_DIFF_ORE * 3600)));
for ($num3 = 0 ; $num3 < 12 ; $num3++) {
$num = $anno_corr - 12 + $num3;
echo "<option value=\"$num\">$num<\/option>";
} # fine for $num3
echo "<option value=\"\" selected>--<\/option>";
for ($num3 = 0 ; $num3 < 12 ; $num3++) {
$num = $anno_corr + $num3;
echo "<option value=\"$num\">$num<\/option>";
} # fine for $num3
echo "<\/select>;<br>\
".mex("nazione di rilascio",$pag).": ".mostra_lista_relutenti("nazionedoc'+suff+'","",$id_utente,"nome_nazione","idnazioni","idnazione",$tablenazioni,$tablerelutenti,"","JS","","regione","regionedoc'+suff+'")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'nazionedoc'+suff+'\',\'nazionalita'+suff+'\',\'\')\" value=\"#\">,\
 ".mex("reg./prov.",$pag).": ".mostra_lista_relutenti("regionedoc'+suff+'","",$id_utente,"nome_regione","idregioni","idregione",$tableregioni,$tablerelutenti,"","JS","","citta","cittadoc'+suff+'","nazione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'regionedoc'+suff+'\',\'regione'+suff+'\',\'\')\" value=\"#\">,\
 ".mex("città",$pag).": ".mostra_lista_relutenti("cittadoc'+suff+'","",$id_utente,"nome_citta","idcitta","idcitta",$tablecitta,$tablerelutenti,"","JS","","","","regione")."<input type=\"button\" class=\"cpbutton\" onclick=\"cp_val(\'cittadoc'+suff+'\',\'citta'+suff+'\',\'\')\" value=\"#\"><br>\
<div style=\"height: 4px\"><\/div>';
} // fine if (n1 == 1)
} // fine for n1
elem_cli.innerHTML = testo;
} // fine function apri_cli
-->
</script>
";
for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) {
if (${"numpersone".$n_t}) {
$num_persone_tot = ${"numpersone".$n_t};
if (${"num_letti_agg".$n_t}["max"]) $num_persone_tot = $num_persone_tot + ${"num_letti_agg".$n_t}["max"];
elseif (${"num_letti_agg_max".$n_t}) $num_persone_tot = $num_persone_tot + ${"num_letti_agg_max".$n_t};
for ($num1 = 1 ; $num1 <= ${"num_app_richiesti".$n_t} ; $num1++) {
echo "<hr style=\"width: 95%\">
".mex("Ospiti della prenotazione",$pag);
if (${"num_app_richiesti".$n_t} > 1) echo " $num1";
if ($num_tipologie > 1) echo " ".mex("tipologia",$pag)." $n_t";
echo " <button type=\"button\" id=\"bott_cli$num1"."_$n_t\" onclick=\"apri_cli($n_t,$num1,$num_persone_tot)\">
<img style=\"display: block;\" src=\"./img/freccia_destra_marg.png\" alt=\"&gt;\"></button>
<div id=\"dati_cli$num1"."_$n_t\" style=\"visibility: hidden;\"></div>";
} # fine for $num1
} # fine if (${"numpersone".$n_t})
} # fine for $n_t
} # fine if ($datiprenota)

echo "<hr style=\"width: 95%\">
<div style=\"text-align: center;\">";

if ($datiprenota) {
echo "<input class=\"sbutton\" id=\"inse\" type=\"submit\" name=\"inserire\" value=\"".mex("Inserisci i dati",$pag)."\"><br><br>
<input type=\"hidden\" name=\"inserire_dati_cliente\" value=\"SI\">";
$manda_cognome = "NO";
$manda_dati_assegnazione = "NO";
include("./includes/dati_form_prenotazione.php");
$manda_cognome = "";
} # fine if ($datiprenota)
else {

echo "
<input class=\"sbutton\" id=\"inse\" type=\"submit\" name=\"inseriscicliente\" value=\"".mex("Inserisci i dati",$pag)."\">
";

} # fine else if ($datiprenota)

echo "</div></div></form>";

if (!$datiprenota) {
echo "<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\">
<input class=\"sbutton\" id=\"indi\" type=\"submit\" name=\"torna\" value=\"".mex("Torna al menù principale",$pag)."\">
</div></form><br>";
} # fine if (!$datiprenota)


} # fine if ($mostra_form_dati_cliente != "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")
} # fine if ($id_utente)



?>
