<?php ################################################################################## # HOTELDRUID # Copyright (C) 2001-2021 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 = "tabella2.php"; $titolo = "HotelDruid: Tabelle Mesi"; $var_pag = array(); $var_pag[0] = 'mese'; $var_pag[1] = 'anno_succ'; $var_pag[2] = 'tutti_mesi'; $n_var_pag = 3; include("./costanti.php"); include(C_DATI_PATH."/dati_connessione.php"); include("./includes/funzioni_$PHPR_DB_TYPE.php"); $numconnessione = connetti_db($PHPR_DB_NAME,$PHPR_DB_HOST,$PHPR_DB_PORT,$PHPR_DB_USER,$PHPR_DB_PASS,$PHPR_LOAD_EXT); include("./includes/funzioni.php"); include("./includes/funzioni_testo.php"); $tablenometariffe = $PHPR_TAB_PRE."ntariffe".$anno; $tableprenota = $PHPR_TAB_PRE."prenota".$anno; $tableperiodi = $PHPR_TAB_PRE."periodi".$anno; $tableappartamenti = $PHPR_TAB_PRE."appartamenti"; $tableclienti = $PHPR_TAB_PRE."clienti"; $tablepersonalizza = $PHPR_TAB_PRE."personalizza"; $tableregole = $PHPR_TAB_PRE."regole".$anno; $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_ins_clienti = risul_query($privilegi_globali_utente,0,'priv_ins_clienti'); $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"; } $priv_mod_prenota = risul_query($privilegi_annuali_utente,0,'priv_mod_prenota'); $priv_mod_prenotazioni = substr($priv_mod_prenota,0,1); if ($priv_mod_prenotazioni == "g") $prendi_gruppi = "SI"; $priv_mod_prenota_iniziate = substr($priv_mod_prenota,11,1); $priv_mod_prenota_ore = substr($priv_mod_prenota,12,3); $priv_vedi_tab = risul_query($privilegi_annuali_utente,0,'priv_vedi_tab'); $priv_vedi_tab_mesi = substr($priv_vedi_tab,0,1); $priv_prenota_gruppi = "NO"; $priv_app_gruppi = "NO"; if ($priv_vedi_tab_mesi == "q" or $priv_vedi_tab_mesi == "g") $priv_prenota_gruppi = "SI"; if ($priv_vedi_tab_mesi == "r" or $priv_vedi_tab_mesi == "g") $priv_app_gruppi = "SI"; if ($priv_vedi_tab_mesi == "q" or $priv_vedi_tab_mesi == "r" or $priv_vedi_tab_mesi == "g") { $priv_vedi_tab_mesi = "p"; $prendi_gruppi = "SI"; } if ($priv_vedi_tab_mesi == "p") { $regole1_consentite = risul_query($privilegi_annuali_utente,0,'regole1_consentite'); $attiva_regole1_consentite = substr($regole1_consentite,0,1); if ($attiva_regole1_consentite != "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") $priv_ins_prenota = risul_query($privilegi_annuali_utente,0,'priv_ins_prenota'); $priv_ins_nuove_prenota_v = substr($priv_ins_prenota,0,1); $priv_ins_assegnazione_app_v = substr($priv_ins_prenota,1,1); $priv_mod_assegnazione_app_v = substr($priv_mod_prenota,2,1); $priv_mod_prenotazioni_v = $priv_mod_prenotazioni; } # fine if ($priv_vedi_tab_mesi == "p") $priv_oscura_tab_mesi = substr($priv_vedi_tab,8,1); } # fine else if (numlin_query($privilegi_annuali_utente) == 0) if ($priv_app_gruppi == "SI") { $attiva_regole1_consentite_gr[$id_utente] = $attiva_regole1_consentite; $regole1_consentite_gr[$id_utente] = $regole1_consentite; $attiva_tariffe_consentite_gr[$id_utente] = $attiva_tariffe_consentite; $tariffe_consentite_vett_gr[$id_utente] = $tariffe_consentite_vett; $priv_ins_nuove_prenota_gr[$id_utente] = $priv_ins_nuove_prenota; $priv_ins_assegnazione_app_gr[$id_utente] = $priv_ins_assegnazione_app; $priv_mod_prenotazioni_gr[$id_utente] = $priv_mod_prenotazioni; $priv_mod_assegnazione_app_gr[$id_utente] = $priv_mod_assegnazione_app; } # fine if ($priv_app_gruppi == "SI") 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++) { $idutente_gruppo = risul_query($utenti_gruppo,$num2,"idutente"); if ($idutente_gruppo != $id_utente and !$utenti_gruppi[$idutente_gruppo]) { $utenti_gruppi[$idutente_gruppo] = 1; if ($priv_app_gruppi == "SI") { $priv_anno_ut_gr = esegui_query("select * from $tableprivilegi where idutente = '$idutente_gruppo' and anno = '$anno'"); if (numlin_query($priv_anno_ut_gr) == 1) { $regole1_consentite_gr[$idutente_gruppo] = risul_query($priv_anno_ut_gr,0,'regole1_consentite'); $attiva_regole1_consentite_gr[$idutente_gruppo] = substr($regole1_consentite_gr[$idutente_gruppo],0,1); if ($attiva_regole1_consentite_gr[$idutente_gruppo] != "n") $regole1_consentite_gr[$idutente_gruppo] = explode("#@^",substr($regole1_consentite_gr[$idutente_gruppo],3)); $tariffe_consentite_tmp = risul_query($priv_anno_ut_gr,0,'tariffe_consentite'); $attiva_tariffe_consentite_gr[$idutente_gruppo] = substr($tariffe_consentite_tmp,0,1); if ($attiva_tariffe_consentite_gr[$idutente_gruppo] == "s") { $tariffe_consentite_tmp = explode(",",substr($tariffe_consentite_tmp,2)); $tariffe_consentite_vett_gr[$idutente_gruppo] = ""; for ($num3 = 0 ; $num3 < count($tariffe_consentite_tmp) ; $num3++) if ($tariffe_consentite_tmp[$num3]) $tariffe_consentite_vett_gr[$idutente_gruppo][$tariffe_consentite_tmp[$num3]] = "SI"; } # fine if ($attiva_tariffe_consentite_gr[$idutente_gruppo] == "s") $costi_agg_consentiti_tmp = risul_query($priv_anno_ut_gr,0,"costi_agg_consentiti"); $attiva_costi_agg_consentiti_tmp = substr($costi_agg_consentiti_tmp,0,1); if ($attiva_costi_agg_consentiti_tmp == "n") $attiva_costi_agg_consentiti_gr = "n"; if ($attiva_costi_agg_consentiti_gr == "s") { $costi_agg_consentiti_tmp = explode(",",substr($costi_agg_consentiti_tmp,2)); for ($num3 = 0 ; $num3 < count($costi_agg_consentiti_tmp) ; $num3++) if ($costi_agg_consentiti_tmp[$num3]) $costi_agg_consentiti_vett_gr[$costi_agg_consentiti_tmp[$num3]] = "SI"; } # fine if ($attiva_costi_agg_consentiti_gr == "s") $priv_ins_prenota_tmp = risul_query($priv_anno_ut_gr,0,'priv_ins_prenota'); $priv_ins_nuove_prenota_gr[$idutente_gruppo] = substr($priv_ins_prenota_tmp,0,1); $priv_ins_assegnazione_app_gr[$idutente_gruppo] = substr($priv_ins_prenota_tmp,1,1); $priv_mod_prenota_tmp = risul_query($priv_anno_ut_gr,0,'priv_mod_prenota'); $priv_mod_prenotazioni_gr[$idutente_gruppo] = substr($priv_mod_prenota_tmp,0,1); $priv_mod_assegnazione_app_gr[$idutente_gruppo] = substr($priv_mod_prenota_tmp,2,1); } # fine if (numlin_query($priv_anno_ut_gr) == 1) else { $priv_ins_nuove_prenota_gr[$idutente_gruppo] = "n"; $priv_mod_prenotazioni_gr[$idutente_gruppo] = "n"; } # fine else if (numlin_query($priv_anno_ut_gr) == 1) } # fine if ($priv_app_gruppi == "SI") } # fine if ($idutente_gruppo != $id_utente) } # fine for $num2 } # fine for $num1 } # fine if ($prendi_gruppi == "SI") } # fine if ($id_utente != 1) else { $anno_utente_attivato = "SI"; $vedi_clienti = "SI"; $priv_mod_prenotazioni = "s"; $priv_mod_prenota_iniziate = "s"; $priv_mod_prenota_ore = "000"; $priv_vedi_tab_mesi = "s"; $priv_oscura_tab_mesi = ""; } # fine else if ($id_utente != 1) if ($anno_utente_attivato == "SI" and $priv_vedi_tab_mesi != "n") { if (@is_file(C_DATI_PATH."/dati_subordinazione.php")) { $installazione_subordinata = "SI"; $inserimento_nuovi_clienti = "NO"; $modifica_clienti = "NO"; $priv_ins_nuove_prenota = "n"; $priv_ins_spese = "n"; $priv_ins_entrate = "n"; $priv_ins_costi_agg = "n"; } # fine if (@is_file(C_DATI_PATH."/dati_subordinazione.php")) $titolo = "HotelDruid: ".mex("Tabelle Mesi",$pag); if ($tema[$id_utente] and $tema[$id_utente] != "base" and @is_dir("./themes/".$tema[$id_utente]."/php")) include("./themes/".$tema[$id_utente]."/php/head.php"); else include("./includes/head.php"); $tabelle_lock = array(); #$tabelle_lock = array("$tableprenota"); $altre_tab_lock = array($tableprenota,$tablenometariffe,$tableperiodi,$tableappartamenti,$tableclienti,$tableregole,$tablepersonalizza); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); if ($priv_mod_prenota_iniziate != "s" or $priv_oscura_tab_mesi == "f") $id_periodo_corrente = calcola_id_periodo_corrente($anno); $oggi = date("j/n/Y",(time() + (C_DIFF_ORE * 3600))); $ora = date("H:i",(time() + (C_DIFF_ORE * 3600))); echo "<small><small>".mex("situazione alle",$pag)." $ora ".mex("del",$pag)." $oggi</small></small><br>"; if (controlla_num_pos($mese) != "SI") $mese = 1; if (isset($anno_succ) and $anno_succ == "SI") { $mese = $mese + 12; } $data_inizio_periodi = esegui_query("select * from $tableperiodi where idperiodi = 1"); $data_inizio_periodi = risul_query($data_inizio_periodi,0,'datainizio'); $data_inizio_periodi = explode("-",$data_inizio_periodi); $mese_inizio_periodi = $data_inizio_periodi[1]; if ($mese < $mese_inizio_periodi) { $mese = $mese_inizio_periodi; } $data_fine_periodi = esegui_query("select max(idperiodi) from $tableperiodi"); $id_data_fine_periodi = risul_query($data_fine_periodi,0,0); $data_fine_periodi = esegui_query("select * from $tableperiodi where idperiodi = '$id_data_fine_periodi'"); $data_fine_periodi = risul_query($data_fine_periodi,0,'datainizio'); $data_fine_periodi = explode("-",$data_fine_periodi); $mese_fine_periodi = $data_fine_periodi[1] + (($data_fine_periodi[0] - $anno) * 12); if ($mese > $mese_fine_periodi) { $mese = $mese_fine_periodi; } $appartamenti = esegui_query("select * from $tableappartamenti order by idappartamenti"); $num_appartamenti = numlin_query($appartamenti); $aggiunta_tronca = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'aggiunta_tronca_nomi_tab1' and idutente = '$id_utente'"); $aggiunta_tronca = risul_query($aggiunta_tronca,0,'valpersonalizza_num'); if ($aggiunta_tronca < -4) $aggiunta_tronca = -4; if ($priv_vedi_tab_mesi == "p") { include("./includes/funzioni_appartamenti.php"); if ($priv_app_gruppi != "SI") $appartamenti_consentiti = trova_app_consentiti($appartamenti,$num_appartamenti,$attiva_regole1_consentite,$regole1_consentite,$priv_mod_assegnazione_app,$priv_mod_prenotazioni,$priv_ins_assegnazione_app,$priv_ins_nuove_prenota,$attiva_tariffe_consentite,$tariffe_consentite_vett,$id_utente,$tableregole,$tablenometariffe); else $appartamenti_consentiti = trova_app_consentiti($appartamenti,$num_appartamenti,$attiva_regole1_consentite_gr,$regole1_consentite_gr,$priv_mod_assegnazione_app_gr,$priv_mod_prenotazioni_gr,$priv_ins_assegnazione_app_gr,$priv_ins_nuove_prenota_gr,$attiva_tariffe_consentite_gr,$tariffe_consentite_vett_gr,$id_utente,$tableregole,$tablenometariffe); } # fine if ($priv_vedi_tab_mesi == "p") $linee_ripeti_date_tab_mesi = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'linee_ripeti_date_tab_mesi' and idutente = '$id_utente'"); $linee_ripeti_date_tab_mesi = risul_query($linee_ripeti_date_tab_mesi,0,'valpersonalizza_num'); $mostra_giorni_tab_mesi = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'mostra_giorni_tab_mesi' and idutente = '$id_utente'"); $mostra_giorni_tab_mesi = risul_query($mostra_giorni_tab_mesi,0,'valpersonalizza'); function ins_nome_giorno (&$var,$g_corr) { $var .= "<small>"; if ($g_corr == "0") $var .= mex(" Do","giorni_mesi.php"); if ($g_corr == "1") $var .= mex(" Lu","giorni_mesi.php"); if ($g_corr == "2") $var .= mex(" Ma","giorni_mesi.php"); if ($g_corr == "3") $var .= mex(" Me","giorni_mesi.php"); if ($g_corr == "4") $var .= mex(" Gi","giorni_mesi.php"); if ($g_corr == "5") $var .= mex(" Ve","giorni_mesi.php"); if ($g_corr == "6") $var .= mex(" Sa","giorni_mesi.php"); $var = str_replace(" ","<br>",$var); $var .= "</small>"; } # fine function ins_nome_giorno $num_righe_app_max = esegui_query("select valpersonalizza_num from $tablepersonalizza where idpersonalizza = 'num_linee_tab2_prenota' and idutente = '$id_utente'"); $num_righe_app_max = risul_query($num_righe_app_max,0,'valpersonalizza_num'); $num_tabelle = floor($num_righe_app_max/$num_appartamenti); $mese_ini_for = $mese; $mese_fine_for = $mese; $mese_da_aggiungere = "dopo"; for ($num1 = 2 ; $num1 <= $num_tabelle ; $num1++) { if ($mese_fine_for >= $mese_fine_periodi) $mese_da_aggiungere = "prima"; if ($mese_da_aggiungere == "prima") { if ($mese_ini_for <= $mese_inizio_periodi) $mese_da_aggiungere = "dopo"; else $mese_ini_for--; } # fine if ($mese_da_aggiungere == "prima") if ($mese_da_aggiungere == "dopo" and $mese_fine_for < $mese_fine_periodi) $mese_fine_for++; if ($mese_da_aggiungere == "prima") $mese_da_aggiungere = "dopo"; else $mese_da_aggiungere = "prima"; } # fine for $num1 if (fixset($tutti_mesi)) { $mese_ini_for = $mese_inizio_periodi; $mese_fine_for = $mese_fine_periodi; $orig_tutti_mesi = "&tutti_mesi=SI"; } # fine if (fixset($tutti_mesi)) else $orig_tutti_mesi = ""; for ($mese2 = $mese_ini_for ; $mese2 <= $mese_fine_for ; $mese2 = $mese2 + 1) { if ($mese2 > 48) { $mese_mostra = $mese2 - 48; $anno_mostra = $anno + 4; } # fine if ($mese2 > 48) else { if ($mese2 > 36) { $mese_mostra = $mese2 - 36; $anno_mostra = $anno + 3; } # fine if ($mese2 > 36) else { if ($mese2 > 24) { $mese_mostra = $mese2 - 24; $anno_mostra = $anno + 2; } # fine if ($mese2 > 24) else { if ($mese2 > 12) { $mese_mostra = $mese2 - 12; $anno_mostra = $anno + 1; } # fine if ($mese2 > 12) else { $mese_mostra = $mese2; $anno_mostra = $anno; } # fine else if ($mese2 > 12) } # fine else if ($mese2 > 24) } # fine else if ($mese2 > 36) } # fine else if ($mese2 > 48) if ($mese2 != $mese_ini_for) echo "<table><tr><td style=\"height: 6px;\"></td></tr></table>"; echo "<table style=\"margin-left: auto; margin-right: auto;\"><tr><td style=\"width: 100px;\" align=\"right\">"; if ($mese != 1) { $mese_prec = $mese - 1; echo "<a href=\"tabella2.php?anno=$anno&id_sessione=$id_sessione&mese=$mese_prec\"><--</a> "; } # fine if ($mese != 1) echo "</td><td align=\"center\"> <big><b>".mex("Tabella prenotazioni del",$pag)." $mese_mostra-$anno_mostra.</b></big> </td><td style=\"width: 100px;\" align=\"left\">"; if ($mese != 48) { $mese_succ = $mese + 1; echo " <a href=\"tabella2.php?anno=$anno&id_sessione=$id_sessione&mese=$mese_succ\">--></a>"; } # fine if ($mese != 12) echo "</td></tr></table> <div class=\"tab_cont\"> <table style=\"margin-left: auto; margin-right: auto;\" border=1 cellspacing=0 cellpadding=1>"; $mese_inizio_tab = $mese2; $data_inizio_tab = date("Y-m-d" , mktime(0,0,0,$mese_inizio_tab,1,$anno)); $data_inizio_tab = esegui_query("select * from $tableperiodi where datainizio >= '$data_inizio_tab' order by idperiodi"); $id_data_inizio_tab = risul_query($data_inizio_tab,0,'idperiodi'); if ($mese2 != $mese_inizio_periodi) { $g_inizio_tab = risul_query($data_inizio_tab,0,'datainizio'); $g_inizio_tab = explode("-",$g_inizio_tab); $g_inizio_tab = $g_inizio_tab[2]; if ($g_inizio_tab == 7 or $g_inizio_tab == 6) { $id_data_inizio_tab = $id_data_inizio_tab - 1; } } # fine else if ($mese2 != $mese_inizio_periodi) $mese_fine_tab = $mese2; $data_fine_tab = date("Y-m-d" , mktime(0,0,0,$mese_fine_tab,31,$anno)); $data_fine_tab = esegui_query("select * from $tableperiodi where datainizio <= '$data_fine_tab' order by idperiodi"); $num_date = numlin_query($data_fine_tab); $num_date = $num_date - 1; $id_data_fine_tab = risul_query($data_fine_tab,$num_date,'idperiodi'); $g_fine_tab = risul_query($data_fine_tab,$num_date,'datafine'); $g_fine_tab = explode("-",$g_fine_tab); $g_fine_tab = $g_fine_tab[2]; if ($g_fine_tab == 8 or $g_fine_tab == 9 or $g_fine_tab == 10) { $id_data_fine_tab = $id_data_fine_tab - 1; } if ($mese2 != $mese_fine_periodi) { if ($g_fine_tab == 7 or $g_fine_tab == 6) { $id_data_fine_tab = $id_data_fine_tab - 1; } } # fine else if ($mese2 != $mese_fine_periodi) $num_colonne = $id_data_fine_tab - $id_data_inizio_tab + 1; # controllo se vi sono prenotazioni in appartamenti cancellati o non mostrati $num_appartamenti_cancellati = 0; $query_prenota_app_canc = "select * from $tableprenota where iddatainizio <= '$id_data_fine_tab' and iddatafine >= '$id_data_inizio_tab'"; for ($num1 = 0 ; $num1 < $num_appartamenti ; $num1 = $num1 + 1) { $id_appartamento = risul_query($appartamenti,$num1,'idappartamenti'); if ($priv_vedi_tab_mesi != "p" or $appartamenti_consentiti[$id_appartamento] != "NO") $query_prenota_app_canc .= " and idappartamenti != '$id_appartamento'"; } # fine for $num1 if ($priv_vedi_tab_mesi == "p") { $query_prenota_app_canc .= " and ( utente_inserimento = '$id_utente'"; if ($priv_prenota_gruppi == "SI") { reset($utenti_gruppi); foreach ($utenti_gruppi as $idut_gr => $val) if ($idut_gr != $id_utente) $query_prenota_app_canc .= " or utente_inserimento = '$idut_gr'"; } # fine if ($priv_prenota_gruppi == "SI") $query_prenota_app_canc .= " )"; } # fine if ($priv_vedi_tab_mesi == "p") $prenota_app_canc = esegui_query($query_prenota_app_canc); $num_prenota_app_canc = numlin_query($prenota_app_canc); $num_app_canc = 0; unset($app_canc_trovato); for ($num1 = 0 ; $num1 < $num_prenota_app_canc; $num1 = $num1 + 1) { $idapp_prenota_app_canc = risul_query($prenota_app_canc,$num1,'idappartamenti'); if ($app_canc_trovato[$idapp_prenota_app_canc] != "SI") { $app_canc_trovato[$idapp_prenota_app_canc] = "SI"; $app_canc[$num_app_canc] = $idapp_prenota_app_canc; $num_app_canc++; } # fine if ($app_canc_trovato[$idapp_prenota_app_canc] != "SI") } # fine for $num1 $linea_date = "<tr><td> </td> "; for ($num1 = 0 ; $num1 < $num_colonne ; $num1 = $num1 + 1) { $id_settimana = $id_data_inizio_tab + $num1; $riga_setimana = esegui_query("select * from $tableperiodi where idperiodi = '$id_settimana'"); $inizio_settimana = risul_query($riga_setimana,0,'datainizio'); $inizio_settimana = explode("-",$inizio_settimana); $g_inizio_settimana = $inizio_settimana[2]; $m_inizio_settimana = $inizio_settimana[1]; $fine_settimana = risul_query($riga_setimana,0,'datafine'); $fine_settimana = explode("-",$fine_settimana); $g_fine_settimana = $fine_settimana[2]; $m_fine_settimana = $fine_settimana[1]; for ($num2 = 0 ; $num2 < 8 ; $num2 = $num2 + 1) { $num_giorno = $g_fine_settimana - 7 + $num2; if ($num_giorno < 1) { $num_giorno = $g_inizio_settimana + $num2; } if ($num2 != 7 or $num1 == ($num_colonne - 1)) { $linea_date .= "<td align=\"center\""; if ($num2 == 0 or $num2 == 7) { $linea_date .= " style=\"background-color: #cccccc;\""; if ($num1 != 0 and $num2 != 7) $linea_date .= " colspan=\"2\""; } # fine if ($num2 == 0) $lunghezza = strlen($num_giorno); if ($lunghezza == 1) { $num_giorno = "0".$num_giorno; } if ($mostra_giorni_tab_mesi == "SI") { $a_inizio_settimana = $inizio_settimana[0]; $giorno_sett_corr = date("w" , mktime(0,0,0,$m_fine_settimana,($g_fine_settimana - 7 + $num2),$a_inizio_settimana)); ins_nome_giorno($num_giorno,$giorno_sett_corr); } # fine if ($mostra_giorni_tab_mesi == "SI") $linea_date .= "><small><small>$num_giorno</small></small></td> "; } # fine if ($num2 != 7 or $num1 == ($num_colonne - 1)) } # fine for $num2 } # fine for $num1 $linea_date .= "<td> </td></tr>"; echo $linea_date; $num_ripeti = 1; for ($num1 = 0 ; $num1 < ($num_appartamenti + $num_app_canc) ; $num1 = $num1 + 1) { if ($num1 < $num_appartamenti) { $id_appartamento = risul_query($appartamenti,$num1,'idappartamenti'); $condizione_prenota_propria = ""; } # fine if ($num1 < $num_appartamenti) else { $id_appartamento = $app_canc[($num1 - $num_appartamenti)]; if ($priv_vedi_tab_mesi == "p") { $condizione_prenota_propria = " and ( utente_inserimento = '$id_utente'"; if ($priv_prenota_gruppi == "SI") { reset($utenti_gruppi); foreach ($utenti_gruppi as $idut_gr => $val) if ($idut_gr != $id_utente) $condizione_prenota_propria .= " or utente_inserimento = '$idut_gr'"; } # fine if ($priv_prenota_gruppi == "SI") $condizione_prenota_propria .= " )"; } # fine if ($priv_vedi_tab_mesi == "p") else $condizione_prenota_propria = ""; } # fine else if ($num1 < $num_appartamenti) if ($priv_vedi_tab_mesi != "p" or $appartamenti_consentiti[$id_appartamento] != "NO" or $num1 >= $num_appartamenti) { if ($num1 > $num_appartamenti) echo "<tr><td style=\"color: red;\">"; else echo "<tr><td>"; if (num_caratteri_testo($id_appartamento) > 2) echo "<small><small>"; else echo "<small>"; echo "$id_appartamento"; if (num_caratteri_testo($id_appartamento) > 2) echo "</small></small></td>"; else echo "</small></td>"; $prenotazione_presente = esegui_query("select * from $tableprenota where idappartamenti = '$id_appartamento' and iddatainizio <= '".($id_data_inizio_tab + $num_colonne - 1)."' and iddatafine >= '$id_data_inizio_tab'$condizione_prenota_propria order by iddatainizio"); $num_prenotazione_presente = numlin_query($prenotazione_presente); $prenota_succ = 0; if ($num_prenotazione_presente > 0) $ini_prenota_succ = risul_query($prenotazione_presente,0,'iddatainizio'); else $ini_prenota_succ = $id_data_inizio_tab + $num_colonne + 1; for ($num2 = 0 ; $num2 < $num_colonne ; $num2 = $num2 + 1) { $id_settimana = $id_data_inizio_tab + $num2; if ($id_settimana >= $ini_prenota_succ) { $esiste = 1; $prenota_corr = $prenota_succ; $prenota_succ++; if ($num_prenotazione_presente > $prenota_succ) $ini_prenota_succ = risul_query($prenotazione_presente,$prenota_succ,'iddatainizio'); else { $ini_prenota_succ = (risul_query($prenotazione_presente,$prenota_corr,'iddatafine') + 1); if (($id_data_inizio_tab + $num_colonne + 1) > $ini_prenota_succ) $ini_prenota_succ = $id_data_inizio_tab + $num_colonne + 1; } # fine else if ($num_prenotazione_presente > $prenota_succ) } # fine if ($id_settimana >= $ini_prenota_succ) else $esiste = 0; if ($esiste == 1) $utente_inserimento = risul_query($prenotazione_presente,$prenota_corr,'utente_inserimento'); else $utente_inserimento = $id_utente; #if ($priv_vedi_tab_mesi == "p" and (($utente_inserimento != $id_utente and ($priv_prenota_gruppi != "SI" or !$utenti_gruppi[$utente_inserimento])) or ($periodo_consentito_app[$id_appartamento][$id_settimana] == "NO" and $esiste != 1))) { if ($priv_vedi_tab_mesi == "p" and (($utente_inserimento != $id_utente and ($priv_prenota_gruppi != "SI" or !$utenti_gruppi[$utente_inserimento])))) { if ($utente_inserimento != $id_utente and ($priv_prenota_gruppi != "SI" or !$utenti_gruppi[$utente_inserimento])) { $id_inizio_prenota = risul_query($prenotazione_presente,$prenota_corr,'iddatainizio'); $id_fine_prenota = risul_query($prenotazione_presente,$prenota_corr,'iddatafine'); if ($id_inizio_prenota > $id_data_inizio_tab) $id_inizio = $id_inizio_prenota; else $id_inizio = $id_data_inizio_tab; if ($id_fine_prenota < $id_data_fine_tab) $id_fine = $id_fine_prenota; else $id_fine = $id_data_fine_tab; $colonne = $id_fine - $id_inizio + 1; } # fine if ($utente_inserimento != $id_utente and... else { $id_inizio = $id_settimana; $id_fine = $id_settimana; $colonne = 1; } # fine else if ($utente_inserimento != $id_utente) $fatto = "NO"; if ($id_fine == $id_data_fine_tab) $fatto = "SI"; while ($fatto == "NO") { $id_inizio2 = $id_fine + 1; if ($id_inizio2 >= $ini_prenota_succ) { $utente_inserimento2 = risul_query($prenotazione_presente,$prenota_succ,'utente_inserimento'); if ($utente_inserimento2 != $id_utente and ($priv_prenota_gruppi != "SI" or !$utenti_gruppi[$utente_inserimento2])) { $id_fine_prenota = risul_query($prenotazione_presente,$prenota_succ,'iddatafine'); if ($id_fine_prenota < $id_data_fine_tab) $id_fine = $id_fine_prenota; else { $id_fine = $id_data_fine_tab; $id_fine_prenota = $id_fine; $fatto = "SI"; } # fine else if ($id_fine_prenota < $id_data_fine_tab) $colonne = $id_fine - $id_inizio + 1; $prenota_corr = $prenota_succ; $prenota_succ++; if ($num_prenotazione_presente > $prenota_succ) $ini_prenota_succ = risul_query($prenotazione_presente,$prenota_succ,'iddatainizio'); else { $ini_prenota_succ = (risul_query($prenotazione_presente,$prenota_corr,'iddatafine') + 1); if (($id_data_inizio_tab + $num_colonne + 1) > $ini_prenota_succ) $ini_prenota_succ = $id_data_inizio_tab + $num_colonne + 1; } # fine else if ($num_prenotazione_presente > $prenota_succ) } # fine if ($utente_inserimento2 != $id_utente) else $fatto = "SI"; } # fine if ($id_inizio2 >= $ini_prenota_succ) else { /*if ($periodo_consentito_app[$id_appartamento][$id_inizio2] == "NO") { $id_fine++; if ($id_fine == $id_data_fine_tab) $fatto = "SI"; $colonne++; } # fine if ($periodo_consentito_app[$id_appartamento][$$id_inizio2] == "NO") else $fatto = "SI";*/ $fatto = "SI"; } # fine else if (numlin_query($prenotazione_successiva) == 1) } # fine while ($fatto == "NO") if ($priv_oscura_tab_mesi != "v" and $priv_oscura_tab_mesi != "f") { $colonne_s = $colonne * 8; echo "<td align=\"center\" colspan=\"$colonne_s\"><b>-</b></td>"; } # fine if ($priv_oscura_tab_mesi != "v" and $priv_oscura_tab_mesi != "f") if ($priv_oscura_tab_mesi == "v") { for ($num3 = 0 ; $num3 < $colonne ; $num3++) echo "<td colspan=\"8\"> </td>"; } # fine if ($priv_oscura_tab_mesi == "v") if ($priv_oscura_tab_mesi == "f") { for ($num3 = 0 ; $num3 < $colonne ; $num3++) { if ($id_periodo_corrente > ($id_settimana + $num3)) echo "<td colspan=\"8\"> </td>"; else { $colonne_s = ($colonne - $num3) * 8; echo "<td align=\"center\" colspan=\"$colonne_s\"><b>-</b></td>"; break; } # fine else if ($id_periodo_corrente > ($id_settimana + $num3)) } # fine for $num3 } # fine if ($priv_oscura_tab_mesi == "f") $num2 = $num2 + $colonne - 1; } # fine if ($priv_vedi_tab_mesi == "p" and ($utente_inserimento != $id_utente or... else { if ($esiste == 1) { $id_prenota = risul_query($prenotazione_presente,$prenota_corr,'idprenota'); $id_clienti = risul_query($prenotazione_presente,$prenota_corr,'idclienti'); if ($id_clienti) { $cognome = esegui_query("select cognome,utente_inserimento from $tableclienti where idclienti = '$id_clienti'"); $mostra_cliente = "SI"; if ($vedi_clienti == "NO") $mostra_cliente = "NO"; if ($vedi_clienti == "PROPRI" or $vedi_clienti == "GRUPPI") { $utente_inserimento_cli = risul_query($cognome,0,'utente_inserimento'); if ($vedi_clienti == "PROPRI" and $utente_inserimento_cli != $id_utente) $mostra_cliente = "NO"; if ($vedi_clienti == "GRUPPI" and !$utenti_gruppi[$utente_inserimento_cli]) $mostra_cliente = "NO"; } # fine if ($vedi_clienti == "PROPRI" or $vedi_clienti == "GRUPPI") if ($mostra_cliente == "NO") $cognome = $id_prenota; else $cognome = risul_query($cognome,0,'cognome'); } # fine if ($id_clienti) else $cognome = "?"; $colore = ""; $pagato = risul_query($prenotazione_presente,$prenota_corr,'pagato'); if (!$pagato) { $pagato = 0; } $caparra = risul_query($prenotazione_presente,$prenota_corr,'caparra'); if (!$caparra) { $caparra = 0; } $costo_tot = risul_query($prenotazione_presente,$prenota_corr,'tariffa_tot'); if ($pagato < $caparra) { $colore = "#CC0000"; } else { if ($pagato < $costo_tot) { $colore = "#FFCC00"; } } $id_inizio_prenota = risul_query($prenotazione_presente,$prenota_corr,'iddatainizio'); $id_fine_prenota = risul_query($prenotazione_presente,$prenota_corr,'iddatafine'); if ($id_inizio_prenota > $id_data_inizio_tab) { $id_inizio = $id_inizio_prenota; } else { $id_inizio = $id_data_inizio_tab; } if ($id_fine_prenota < $id_data_fine_tab) { $id_fine = $id_fine_prenota; } else { $id_fine = $id_data_fine_tab; } $colonne = $id_fine - $id_inizio + 1; $link_modifica = "SI"; if ($priv_mod_prenotazioni == "n") $link_modifica = "NO"; if ($priv_mod_prenotazioni == "p" or $priv_mod_prenotazioni == "g") { $utente_inserimento = risul_query($prenotazione_presente,$prenota_corr,'utente_inserimento'); if ($priv_mod_prenotazioni == "p" and $utente_inserimento != $id_utente) $link_modifica = "NO"; if ($priv_mod_prenotazioni == "g" and !$utenti_gruppi[$utente_inserimento]) $link_modifica = "NO"; } # fine if ($priv_mod_prenotazioni == "p" or $priv_mod_prenotazioni == "g") if ($priv_mod_prenota_iniziate != "s" and $id_periodo_corrente >= $id_inizio_prenota) $link_modifica = "NO"; if ($priv_mod_prenota_ore != "000") { $adesso = date("YmdHis",(time() + (C_DIFF_ORE * 3600))); $data_ins = risul_query($prenotazione_presente,$prenota_corr,'datainserimento'); $limite = date("YmdHis",mktime((substr($data_ins,11,2) + (int) $priv_mod_prenota_ore),substr($data_ins,14,2),substr($data_ins,17,2),substr($data_ins,5,2),substr($data_ins,8,2),substr($data_ins,0,4))); if ($adesso > $limite) $link_modifica = "NO"; } # fine if ($priv_mod_prenota_ore != "000") if ($link_modifica == "SI" and $id_clienti) { $link_modifica_inizio = "<a href=\"modifica_prenota.php?id_prenota=$id_prenota&anno=$anno&id_sessione=$id_sessione&mese=$mese&origine=tabella2.php$orig_tutti_mesi\">"; $link_modifica_fine = "</a>"; } # fine if ($link_modifica == "SI" and $id_clienti) else { unset($link_modifica_inizio); unset($link_modifica_fine); } # fine else if ($link_modifica == "SI" and $id_clienti) $riduci_font = ""; $lung_cognome = num_caratteri_testo($cognome); $lung_freccia = 0; if ($id_fine_prenota > $id_data_fine_tab or $id_inizio_prenota < $id_data_inizio_tab) $lung_freccia = 3; $lung_non_ridotta = (12+$aggiunta_tronca)*$colonne - $lung_freccia; if ($lung_cognome > $lung_non_ridotta) $riduci_font = "SI"; $lung_non_tronca = (15+$aggiunta_tronca)*$colonne; if ($lung_freccia == 3) $lung_non_tronca = $lung_non_tronca - 1; if ($lung_non_tronca < 1) $lung_non_tronca = 1; if ($lung_cognome > ($lung_non_tronca+1) and $cognome != " ") { $link_modifica_inizio = str_replace("<a href","<a title=\"".htmlspecialchars($cognome)."\" href",$link_modifica_inizio); $cognome = tronca_testo($cognome,0,$lung_non_tronca)."."; } # fine if ($lung_cognome > ($lung_non_tronca+1) and $cognome != " ") echo "<td"; #if ($colore) { echo " bgcolor =\"$colore\""; } $colonne_span = $colonne * 8; echo" align=\"center\" colspan=\"$colonne_span\">"; if ($id_inizio_prenota < $id_data_inizio_tab) { echo "<- "; } echo "<small><small> $link_modifica_inizio$cognome$link_modifica_fine </small></small>"; if ($id_fine_prenota > $id_data_fine_tab) { echo " ->"; } echo "</td> "; $num2 = $num2 + $colonne - 1; } # fine if ($esiste == 1) else { for ($num3 = 0 ; $num3 < 8 ; $num3 = $num3 + 1) { echo "<td"; if ($num3 == 0 or $num3 == 7) { echo " style=\"background-color: #cccccc;\""; } echo "> </td> "; } # fine for $num3 } # fine else if ($esiste == 1) } # fine else if ($priv_vedi_tab_mesi == "p" and ($utente_inserimento != $id_utente or... } # fine for $num2 if ($num1 > $num_appartamenti) echo "<td style=\"color: red;\">"; else echo "<td>"; if (num_caratteri_testo($id_appartamento) > 2) echo "<small><small>"; else echo "<small>"; echo "$id_appartamento"; if (num_caratteri_testo($id_appartamento) > 2) echo "</small></small></td>"; else echo "</small></td>"; echo "</tr>"; if ($num_ripeti == $linee_ripeti_date_tab_mesi) { echo $linea_date; $num_ripeti = 1; } # fine if ($num_ripeti == $linee_ripeti_date_tab_mesi) else $num_ripeti++; } # fine if ($priv_vedi_tab_mesi != "p" or $appartamenti_consentiti[$id_appartamento] != "NO") { } # fine for $num1 echo "</table></div>"; } # fine for $mese2 unlock_tabelle($tabelle_lock); echo "<table><tr><td style=\"height: 2px;\"></td></tr></table> <table style=\"margin-left: auto; margin-right: auto;\"><tr><td style=\"width: 100px;\" align=\"right\">"; if ($mese != 1) { $mese_prec = $mese - 1; echo "<a href=\"tabella2.php?anno=$anno&id_sessione=$id_sessione&mese=$mese_prec\"><--</a> "; } # fine if ($mese != 1) echo "</td><td align=\"center\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"tabella.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"mese\" value=\"$mese\"> <button class=\"vmon\" type=\"submit\"><div>".mex("Visualizza la tabella normale",$pag)."</div></button> </div></form></td><td style=\"width: 100px;\" align=\"left\">"; if ($mese != 48) { $mese_succ = $mese + 1; echo " <a href=\"tabella2.php?anno=$anno&id_sessione=$id_sessione&mese=$mese_succ\">--></a>"; } # fine if ($mese != 12) echo "</td></tr><tr><td style=\"height: 2px;\"></td></tr>"; if (!$tutti_mesi) echo "<tr><td></td><td align=\"center\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"tabella2.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"mese\" value=\"$mese\"> <input type=\"hidden\" name=\"tutti_mesi\" value=\"1\"> <button class=\"amon\" type=\"submit\"><div>".mex("Visualizza tutti i mesi",$pag)."</div></button> </div></form></td><td></td></tr>"; echo "<tr><td style=\"height: 2px;\"></td></tr><tr><td></td><td align=\"center\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"inizio.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <button class=\"bkmm\" type=\"submit\"><div>".mex("Torna al menĂ¹ principale",$pag)."</div></button> </div></form></td><td></td></tr><tr><td style=\"height: 20px;\"></td></tr></table>"; if ($tema[$id_utente] and $tema[$id_utente] != "base" and @is_dir("./themes/".$tema[$id_utente]."/php")) include("./themes/".$tema[$id_utente]."/php/foot.php"); else include("./includes/foot.php"); } # fine if ($anno_utente_attivato == "SI" and $priv_vedi_tab_mesi != "n") } # fine if ($id_utente) ?> |