function mostra_frame_rel($id, $rel, $rel_sup, $id_ut_sel, $cmp, $mostra_cod, $pieno, $titolo, $size = "20", $maxlength = "50") { global $tablerelutenti, $tablenazioni, $tableregioni, $tablecitta, $tabledocumentiid, $tableparentele; trova_rel($rel, $rel_sing, $rel_plur, $tablerel); trova_rel($rel_sup, $rel_sup_sing, $rel_sup_plur, $tablerel_sup); if (get_magic_quotes_gpc()) { $id = stripslashes($id); } $id = htmlspecialchars($id); $id_sup = esegui_query("select distinct {$tablerel_sup}.id{$rel_sup_plur} from {$tablerelutenti} inner join {$tablerel_sup} on {$tablerelutenti}.id{$rel_sup_sing} = {$tablerel_sup}.id{$rel_sup_plur} where {$tablerelutenti}.idutente = '{$id_ut_sel}' and {$tablerel_sup}.nome_{$rel_sup_sing} = '" . aggslashdb($id) . "' "); if (numlin_query($id_sup)) { $is_id = "= '" . risul_query($id_sup, 0, "id{$rel_sup_plur}", $tablerel_sup) . "'"; } else { $is_id = "is NULL"; } echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n \"http://www.w3.org/TR/html4/strict.dtd\">\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" >\n<title> {$titolo} </title>\n</head>\n<body>\n<div id=\"dati_rel\">"; $rel_utente = esegui_query("select distinct {$tablerel}.nome_{$rel_sing},{$tablerel}.codice_{$rel_sing},{$tablerel}.codice2_{$rel_sing},{$tablerel}.codice3_{$rel_sing} from {$tablerelutenti} inner join {$tablerel} on {$tablerelutenti}.id{$rel_sing} = {$tablerel}.id{$rel_plur} where {$tablerelutenti}.idutente = '{$id_ut_sel}' and {$tablerelutenti}.idsup {$is_id} order by {$tablerel}.nome_{$rel_sing}"); $num_rel_utente = numlin_query($rel_utente); if ($num_rel_utente) { echo "<select name=\"{$cmp}\" id=\"{$cmp}\">"; if ($pieno != "SI") { echo "<option value=\"\">------</option>"; } for ($num1 = 0; $num1 < $num_rel_utente; $num1++) { $rel = htmlspecialchars(risul_query($rel_utente, $num1, "nome_{$rel_sing}", $tablerel)); echo "<option value=\"{$rel}\">{$rel}"; if ($mostra_cod) { $codice = htmlspecialchars(risul_query($rel_utente, $num1, "codice_{$rel_sing}", $tablerel)); $codice2 = htmlspecialchars(risul_query($rel_utente, $num1, "codice2_{$rel_sing}", $tablerel)); $codice3 = htmlspecialchars(risul_query($rel_utente, $num1, "codice3_{$rel_sing}", $tablerel)); if (strcmp($codice, "")) { echo " ({$codice})"; } if (strcmp($codice2, "")) { echo " (" . mex("2°", 'personalizza.php') . " {$codice2})"; } if (strcmp($codice3, "")) { echo " (" . mex("3°", 'personalizza.php') . " {$codice3})"; } } # fine if ($mostra_cod) echo "</option>"; } # fine for $num1 echo "</select>"; } else { echo "<input type=\"text\" name=\"{$cmp}\" id=\"{$cmp}\" size=\"{$size}\" maxlength=\"{$maxlength}\">"; } echo "</div>\n</body>\n</html>\n"; }
# 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/>. ################################################################################## $tableanni = $PHPR_TAB_PRE."anni"; $tipo_periodi = esegui_query("select * from $tableanni where idanni = $anno"); $tipo_periodi = risul_query($tipo_periodi,0,'tipo_periodi'); if ($tipo_periodi == "g") { $parola_settimanale = "giornaliero"; $parola_settimanali = "giornalieri"; $parola_settimane = "giorni"; $parola_Settimane = "Giorni"; $parola_settimana = "giorno"; $parola_settiman = "giorn"; $parola_sett = "gio"; $parola_le = "i"; $parola_Le = "I"; $parola_la = "il"; $parola_La = "Il"; $parola_alla = "al"; $lettera_e = "i";
function scarica_backup_subordinazione ($file_backup,$url_subordinazione,$utente_subordinazione,$password_subordinazione,$anno,$compresso_subordinazione) { global $tableversioni,$pag; $errore = "NO"; if ($output = @file($url_subordinazione."crea_backup.php?nome_utente_phpr=$utente_subordinazione&password_phpr=$password_subordinazione&anno=$anno&azione=SI&crea_backup=SI")) { $backup = @fopen($url_subordinazione."crea_backup.php?nome_utente_phpr=$utente_subordinazione&password_phpr=$password_subordinazione&anno=$anno&azione=SI&mostra_header=NO&salva_backup=SI&compresso=$compresso_subordinazione","r"); if ($backup) { if ($fileaperto = fopen($file_backup,"w")) { flock($fileaperto,2); while (!feof($backup)) { $linee = fread($backup,524288); fwrite($fileaperto,$linee); } # fine while (!feof($fbackup)) flock($fileaperto,3); fclose($fileaperto); } # fine if ($fileaperto = fopen($file_backup,"w")) else { $errore = "SI"; echo mex("Non ho i permassi di scrittura sulla cartella data",$pag).".<br>"; } # fine else if ($fileaperto = fopen($file_backup,"w")) fclose ($backup); if ($errore != "SI") { if ($compresso_subordinazione == "SI") { if (rename($file_backup,$file_backup.".gz")) { if ($fileaperto = fopen($file_backup,"w")) { flock($fileaperto,2); $gzbackup = gzopen($file_backup.".gz","r"); if ($gzbackup) { while (!feof($gzbackup)) { $linee = gzread($gzbackup,524288); fwrite($fileaperto,$linee); } # fine while (!feof($gzbackup)) } # fine if ($gzbackup) flock($fileaperto,3); fclose($fileaperto); } # fine if ($fileaperto = fopen($file_backup,"w")) unlink($file_backup.".gz"); } # fine if (rename($file_backup,$file_backup.".gz")) } # fine if ($compresso_subordinazione == "SI") $linee = ""; if ($fbackup = fopen($file_backup,"r")) { $linee = fread($fbackup,524288); fclose($fbackup); } # fine if ($fbackup = fopen($file,"r")) $versione_corrente = esegui_query("select * from $tableversioni where idversioni = 1"); $versione_corrente = risul_query($versione_corrente,0,'num_versione'); if (str_replace("<versione>$versione_corrente</versione>","",$linee) == $linee) { $errore = "SI"; if (str_replace("<versione>","",$linee) == $linee) echo mex("Non si è potuto scaricare il backup remoto",$pag).".<br>"; else echo mex("Versione locale diversa da quella remota",$pag).".<br>"; include("./includes/funzioni_aggiorna.php"); global $agg_cod_sorg; unset($linee); $agg_cod_sorg = aggiorna_codice_sorgente_phpr($url_subordinazione); if ($agg_cod_sorg) echo "<br>".mex("Aggiornamento codice sorgente eseguito con successo",$pag)."!<br><br>"; } # fine if (str_replace("<versione>$versione_corrente</versione>","",$linee) == $linee) unset($linee); } # fine if ($errore != "SI") } # fine if ($backup) else { $errore = "SI"; echo mex("Non si è potuto stabilire la connessione",$pag).".<br>"; } # fine else if ($backup) } # fine if ($output = @file($url_subordinazione."crea_backup.php?nome_utente_phpr=$utente_subordinazione&password_phpr=$password_subordinazione")) else { $errore = "SI"; echo mex("Non si è potuto stabilire la connessione",$pag).".<br>"; } # fine else if ($output = @file($url_subordinazione."crea_backup.php?nome_utente_phpr=$utente_subordinazione&password_phpr=$password_subordinazione")) if ($errore != "SI") $output = @file($url_subordinazione."crea_backup.php?nome_utente_phpr=$utente_subordinazione&password_phpr=$password_subordinazione&anno=$anno&azione=SI&cancella_backup=SI"); return $errore; } # fine function scarica_backup_subordinazione
function seleziona_data_vicina ($menu_periodi,$data_sel,$pos) { $lista_date = explode("<option value=\"",$menu_periodi); $n_lista_date = count($lista_date); for ($num1 = 1 ; $num1 < $n_lista_date ; $num1++) { $data_corr = substr($lista_date[$num1],0,10); if ((int) str_replace("-","",$data_corr) >= (int) str_replace("-","",$data_sel)) { if ($pos == "prec") $data_sel = $data_corr; else $data_sel = substr($lista_date[($num1 + 1)],0,10); break; } # fine if ((int) str_replace("-","",$data_corr) > (int) str_replace("-","",$inizio_select)) } # fine for $num1 if (strlen($data_sel) != 10) $data_sel = ""; return $data_sel; } # fine function seleziona_data_vicina $date_select = esegui_query("select idperiodi from $tableperiodi where datainizio <= '$oggi' and datafine > '$oggi' "); if (numlin_query($date_select) == 1) $date_select = esegui_query("select datainizio,datafine from $tableperiodi where idperiodi = '".(risul_query($date_select,0,idperiodi) + $sett_no_prenota)."'"); if (numlin_query($date_select) == 1) { $inizio_select = risul_query($date_select,0,'datainizio'); $fine_select = risul_query($date_select,0,'datafine'); if (!strpos($menu_periodi,$inizio_select)) $inizio_select = seleziona_data_vicina($menu_periodi,$inizio_select,"prec"); $menu_periodi_vett = explode("<option value=\"$inizio_select\">",$menu_periodi); if ($menu_periodi_vett[1]) { $menu_periodi = "<option value=\"$inizio_select\">".$menu_periodi_vett[1]; $fine_select = seleziona_data_vicina($menu_periodi,$inizio_select,"succ"); } # fine if ($menu_periodi_vett[1]) } # fine if (numlin_query($date_select) == 1) else { $inizio_select = explode("<option value=\"",$menu_periodi); $inizio_select = substr($inizio_select[1],0,10); $fine_select = seleziona_data_vicina($menu_periodi,$inizio_select,"succ"); } # fine else if (numlin_query($date_select) == 1)
$nome_mese["09"] = mex("Settembre", "giorni_mesi.php"); $nome_mese["10"] = mex("Ottobre", "giorni_mesi.php"); $nome_mese["11"] = mex("Novembre", "giorni_mesi.php"); $nome_mese["12"] = mex("Dicembre", "giorni_mesi.php"); if ($priv_ins_multiple != "n") { $mostra_num_liberi = "SI"; } else { $mostra_num_liberi = "NO"; } unset($app_consentito); unset($app_consentito_sett); # Calcolo gli appartamenti consentiti dalla regola 1 if ($attiva_regole1_consentite == "s") { $app_consentito_sett[",attivo,"] = "SI"; $quadro_non_preciso = "SI"; $regole1_consentite = esegui_query("select idregole,app_agenzia,iddatainizio,iddatafine from {$tableregole} where app_agenzia != '' and {$condizioni_regole1_consentite}"); $num_regole1_consentite = numlin_query($regole1_consentite); for ($num1 = 0; $num1 < $num_regole1_consentite; $num1++) { $idapp = risul_query($regole1_consentite, $num1, 'app_agenzia'); $app_consentito[$idapp] = "SI"; $iddatainizio_reg1 = risul_query($regole1_consentite, $num1, 'iddatainizio'); $iddatafine_reg1 = risul_query($regole1_consentite, $num1, 'iddatafine'); for ($num2 = $iddatainizio_reg1; $num2 <= $iddatafine_reg1; $num2++) { $app_consentito_sett[$idapp][$num2] = "SI"; } # fine for $num2 } # fine for $num1 } else { for ($num1 = 0; $num1 < $dati_app['totapp']; $num1++) { $app_consentito[$dati_app['posizione'][$num1]] = "SI";
function cancella_relazioni_utente($tablerelutenti, $idrelutenti, $tablerel, $idrel) { $relazioni = esegui_query("select {$idrel} from {$tablerel}"); $num_rel = numlin_query($relazioni); for ($num1 = 0; $num1 < $num_rel; $num1++) { $relazione = aggslashdb(risul_query($relazioni, $num1, $idrel)); $rel_esist = esegui_query("select {$idrelutenti} from {$tablerelutenti} where {$idrelutenti} = '{$relazione}' "); if (numlin_query($rel_esist) == 0) { esegui_query("delete from {$tablerel} where {$idrel} = '{$relazione}' "); } } # fine for $num1 }
function aggiorna_var_anno_modello_rat ($id_data_ini_periodi_prec,$tableperiodi_prec,$tableperiodi,$tabletransazioniweb,$tablemessaggi,$tipo_periodi) { global $num_periodi_date,$LIKE,$anno,$estendi_ultima_data; $n_num_periodi_date = 0; if ($id_data_ini_periodi_prec) { for ($num1 = 0 ; $num1 < $num_periodi_date ; $num1++) { global ${"inizioperiodo".$num1},${"fineperiodo".$num1},${"intervalloperiodo".$num1}; $inizioperiodo = aggslashdb(${"inizioperiodo".$num1}); $fineperiodo = aggslashdb(${"fineperiodo".$num1}); $idinizioperiodo = esegui_query("select idperiodi from $tableperiodi_prec where datainizio = '$inizioperiodo' "); $num_idinizioperiodo = numlin_query($idinizioperiodo); if ($num_idinizioperiodo == 0) { $idinizioperiodo = 10000; } else { $idinizioperiodo = risul_query($idinizioperiodo,0,idperiodi); } $inizioperiodo = $idinizioperiodo; $idfineperiodo = esegui_query("select idperiodi from $tableperiodi_prec where datafine = '$fineperiodo' "); $num_idfineperiodo = numlin_query($idfineperiodo); if ($num_idfineperiodo == 0) { $idfineperiodo = -1; } else { $idfineperiodo = risul_query($idfineperiodo,0,idperiodi); } $fineperiodo = $idfineperiodo; $intervalloperiodo = aggslashdb(${"intervalloperiodo".$num1}); if ($estendi_ultima_data == "SI" and $num1 == ($num_periodi_date - 1)) $fineperiodo = $id_data_ini_periodi_prec + $intervalloperiodo; if (($fineperiodo - $intervalloperiodo) >= $id_data_ini_periodi_prec) { if ($inizioperiodo < $id_data_ini_periodi_prec) { for ($num2 = $inizioperiodo ; $num2 <= $fineperiodo ; $num2 = $num2 + $intervalloperiodo) { if ($num2 >= $id_data_ini_periodi_prec) { $inizioperiodo = $num2; break; } # fine if ($num2 >= $id_data_ini_periodi_prec) } # fine for $num2 } # fine if ($inizioperiodo < $id_data_ini_periodi_prec) $n_inizioperiodo[$n_num_periodi_date] = $inizioperiodo - $id_data_ini_periodi_prec + 1; $n_fineperiodo[$n_num_periodi_date] = $fineperiodo - $id_data_ini_periodi_prec + 1; $n_intervalloperiodo[$n_num_periodi_date] = $intervalloperiodo; $n_num_periodi_date++; } # fine if (($fineperiodo - $intervalloperiodo) >= $id_data_ini_periodi_prec or... } # fine for $num1 } # fine if ($id_data_ini_periodi_prec) if ($estendi_ultima_data == "SI" and !$id_data_ini_periodi_prec) { $n_num_periodi_date = 1; global $inizioperiodo0,$fineperiodo0,$intervalloperiodo0; if (($num_periodi_date - 1) != 0) global ${"fineperiodo".($num_periodi_date - 1)},${"intervalloperiodo".($num_periodi_date - 1)}; $n_intervalloperiodo[0] = ${"intervalloperiodo".($num_periodi_date - 1)}; $inizioperiodo = ${"fineperiodo".($num_periodi_date - 1)}; if ($tipo_periodi == "g") $aggiungi_giorni = 1; else $aggiungi_giorni = 7; $anno_inizio = substr($inizioperiodo,0,4); $mese_inizio = substr($inizioperiodo,5,2); $giorno_inizio = substr($inizioperiodo,8,2); for ($num1 = 0 ; $num1 < 2000 ; $num1++) { $datainizio = date("Y-m-d",mktime(0,0,0,$mese_inizio,$giorno_inizio,$anno_inizio)); $datainizio = esegui_query("select * from $tableperiodi where datainizio = '$datainizio'"); if (numlin_query($datainizio) == 1) { $n_inizioperiodo[0] = risul_query($datainizio,0,idperiodi); break; } # fine if (numlin_query($datainizio) == 1) $giorno_inizio = $giorno_inizio + ($n_intervalloperiodo[0] * $aggiungi_giorni); } # fine for $num1 $n_fineperiodo[0] = $n_inizioperiodo[0]; } # fine if ($estendi_ultima_data == "SI" and !$id_data_ini_periodi_prec) for ($num1 = 0 ; $num1 < $n_num_periodi_date ; $num1++) { $inizioperiodo = $n_inizioperiodo[$num1]; $fineperiodo = $n_fineperiodo[$num1]; $inizioperiodo = esegui_query("select datainizio from $tableperiodi where idperiodi = '$inizioperiodo' "); $inizioperiodo = @risul_query($inizioperiodo,0,datainizio); $fineperiodo = esegui_query("select datafine from $tableperiodi where idperiodi = '$fineperiodo' "); $fineperiodo = @risul_query($fineperiodo,0,datafine); if (!$inizioperiodo or !$fineperiodo) $n_num_periodi_date = 0; ${"inizioperiodo".$num1} = $inizioperiodo; ${"fineperiodo".$num1} = $fineperiodo; ${"intervalloperiodo".$num1} = $n_intervalloperiodo[$num1]; } # fine for $num1 $num_periodi_date = $n_num_periodi_date; if (!$num_periodi_date) $inizioperiodo0 = ""; } # fine funtcion aggiorna_var_anno_modello_rat
} # fine if (numlin_query($campi_pers_cliente)) else $num_campi_pers_cliente = 0; $campo_personalizzato_ = mex2("campo_personalizzato")."_"; include("./includes/variabili_contratto.php"); $num_var_predef--; $num_int_contr = $num_contratto; while ((string) substr($num_int_contr,0,1) == (string) "0") $num_int_contr = substr($num_int_contr,1); $variabili_pers = esegui_query("select * from $tablecontratti where tipo = 'var' or tipo = 'var$num_int_contr' order by tipo, numero"); $num_variabili_pers = numlin_query($variabili_pers); for ($num1 = 0 ; $num1 < $num_variabili_pers ; $num1++) { $var_pers = risul_query($variabili_pers,$num1,'testo'); $num_var_pers = risul_query($variabili_pers,$num1,'numero'); $var_predef[$num_var_predef] = $var_pers; $num_var_predef++; } # fine for $num1 $array_pers = esegui_query("select * from $tablecontratti where tipo = 'vett' or tipo = 'vett$num_int_contr' order by tipo, numero"); $num_array_pers = numlin_query($array_pers); for ($num1 = 0 ; $num1 < $num_array_pers ; $num1++) { $arr_pers_vett = explode(";",risul_query($array_pers,$num1,'testo')); $arr_pers = $arr_pers_vett[0]; $var_arr_pers = $arr_pers_vett[1]; $num_arr_pers = risul_query($array_pers,$num1,'numero'); $var_predef[$num_var_predef] = "$arr_pers(".mex2($var_arr_pers).")"; $num_var_predef++; $option_array .= "<option value=\"a$arr_pers\">".mex("ripetizione array",$pag)." $arr_pers</option>"; } # fine for $num1 for ($num1 = 0 ; $num1 < $num_var_predef ; $num1++) { $linea_mod .= "<option value=\"".mex2($var_predef[$num1])."\">".mex2($var_predef[$num1])."</option>"; } # fine for $num1 $linea_mod .= "</select>
function crea_messaggio_contr_salva($nome_file_contr, $num_file_salva, $num_contr_esist, $nome_file_contr_esist, $numero_contratto, $nomi_contratti, $dir_salva, $tipo_contratto, $num_ripeti, $origine, $origine_vecchia, $lista_var_form, $mostra_headers, $anno, $id_sessione, $id_utente, $tema, $tableversioni, $tabletransazioni, $pag) { global $PHPR_TAB_PRE, $priv_cancella_contratti; $nome_file_contr_orig = $nome_file_contr; $num_file_salva_orig = $num_file_salva; if ($num_contr_esist) { $nome_file_contr = $nome_file_contr_esist; $num_file_salva = count($nome_file_contr); } # fine if ($num_contr_esist) $tabelle_lock = array($tableversioni, $tabletransazioni); $adesso = date("YmdHis", time() + C_DIFF_ORE * 3600); list($usec, $sec) = explode(' ', microtime()); mt_srand((double) $sec + (double) $usec * 100000); $val_casuale = mt_rand(100000, 999999); $versione_transazione = prendi_numero_versione($tableversioni); $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,dati_transazione1,dati_transazione2,dati_transazione3,dati_transazione4,dati_transazione5,ultimo_accesso) values ('{$id_transazione}','{$id_sessione}','con_s','{$anno}','" . aggslashdb($dir_salva) . "','" . aggslashdb(serialize($nome_file_contr)) . "','{$tipo_contratto}','" . aggslashdb($origine) . "','" . aggslashdb($origine_vecchia) . "','{$ultimo_accesso}')"); unlock_tabelle($tabelle_lock); if ($tipo_contratto == "contrrtf") { $sec_aspetta = 2; } else { $sec_aspetta = 6; } $url_reload = "./{$pag}?id_sessione={$id_sessione}&anno={$anno}&id_transazione={$id_transazione}&numero_contratto={$numero_contratto}"; if ($num_file_salva == 1) { $target = ""; } else { $target = " target=\"_blank\""; } if ($mostra_headers == "NO") { if ($num_file_salva == 1) { $extra_head = "<meta http-equiv=\"refresh\" content=\"{$sec_aspetta}; url={$url_reload}&n_file=1\">\n"; } 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"; } } # fine if ($mostra_headers == "NO") if ($num_contr_esist and $num_file_salva_orig == 1) { echo "<div style=\"line-height: 180%\"><br>"; } else { echo "<div style=\"line-height: 130%\"><br>"; } if ($num_contr_esist) { if ($num_ripeti > 1) { echo mex("Documenti già esistenti riguardanti queste prenotazioni", $pag) . ":<br>"; } else { echo mex("Documenti già esistenti riguardanti questa prenotazione", $pag) . ":<br>"; } } # fine if ($num_contr_esist) for ($num1 = 1; $num1 <= $num_file_salva; $num1++) { if ($num_contr_esist and $num_file_salva_orig == 1) { echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"{$pag}\"><div>\n{$lista_var_form}\n<input type=\"hidden\" name=\"sovrascrivi\" value=\"" . htmlspecialchars($nome_file_contr[$num1]) . "\">"; } # fine if ($num_contr_esist and $num_file_salva_orig == 1) if (!$num_contr_esist) { echo ucfirst(mex("documento", $pag)) . " "; if ($nomi_contratti['salv'][$numero_contratto] != $nomi_contratti[$numero_contratto]) { echo "\"" . $nomi_contratti[$numero_contratto] . "\" "; } echo mex("<span class=\"colblu\">salvato</span> come", $pag); } # fine if (!$num_contr_esist) echo " <b><a style=\"color: #000000;\" href=\"{$url_reload}&n_file={$num1}\"{$target}>" . $nome_file_contr[$num1] . "</a></b>"; if ($num_contr_esist and $num_file_salva_orig == 1 and $priv_cancella_contratti != "n") { echo " " . bottone_submit_contr(mex("Sovrascrivi", $pag)) . "\n.</div></form>"; } else { echo ".<br>"; } } # fine for $num1 echo "<br></div>"; if (!$num_contr_esist) { if ($priv_cancella_contratti != "n") { echo "<form accept-charset=\"utf-8\" method=\"post\" action=\"{$pag}\"><div>\n<input type=\"hidden\" name=\"anno\" value=\"{$anno}\">\n<input type=\"hidden\" name=\"id_sessione\" value=\"{$id_sessione}\">\n<input type=\"hidden\" name=\"numero_contratto\" value=\"{$numero_contratto}\">\n<input type=\"hidden\" name=\"id_transazione\" value=\"{$id_transazione}\">\n<input type=\"hidden\" name=\"cancella\" value=\"SI\">"; if ($num_file_salva == 1) { echo " " . bottone_submit_contr(mex("Cancella il documento", $pag)); } else { echo bottone_submit_contr(mex("Cancella i documenti", $pag)); } echo "</div></form><br>"; } # fine if ($priv_cancella_contratti != "n") } else { echo "<br>\n<form accept-charset=\"utf-8\" method=\"post\" action=\"{$pag}\"><div>\n{$lista_var_form}\n<input type=\"hidden\" name=\"cont_salva\" value=\"SI\">"; if ($num_file_salva_orig == 1) { echo " " . bottone_submit_contr(mex("Salva un nuovo documento", $pag)); } else { echo bottone_submit_contr(mex("Salva dei nuovi documenti", $pag)); } echo "</div></form><br>"; } # fine else if (!$num_contr_esist) }
} # fine for $num1 } # fine else if ($num_id_prenota > 1) echo "".ucfirst(mex("documento di tipo",$pag))." <select id=\"lcon\" name=\"numero_contratto\">"; unset($nomi_contratti); unset($nome_contratto); $nomi_contratti = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'nomi_contratti' and idutente = '$id_utente'"); $nomi_contratti = risul_query($nomi_contratti,0,'valpersonalizza'); $nomi_contratti = explode("#@&",$nomi_contratti); $num_nomi_contratti = count($nomi_contratti); for ($num1 = 0 ; $num1 < $num_nomi_contratti ; $num1++) { $dati_nome_contratto = explode("#?&",$nomi_contratti[$num1]); $nome_contratto[$dati_nome_contratto[0]] = $dati_nome_contratto[1]; } # fine for $num1 $max_contr = esegui_query("select max(numero) from $tablecontratti where tipo $LIKE 'contr%'"); $max_contr = risul_query($max_contr,0,0); for ($num_contratto = 1 ; $num_contratto <= $max_contr ; $num_contratto++) { if ($attiva_contratti_consentiti == "n" or $contratti_consentiti_vett[$num_contratto] == "SI") { if ($nome_contratto[$num_contratto]) $num_contratto_vedi = $nome_contratto[$num_contratto]; else $num_contratto_vedi = $num_contratto; echo "<option value=\"$num_contratto\">$num_contratto_vedi</option>"; } # fine if ($attiva_contratti_consentiti == "n" or... } # fine for $num_contratto echo "</select> <input class=\"sbutton\" id=\"tcon\" type=\"submit\" value=\"".ucfirst(mex("visualizza",$pag))."\"> <input type=\"hidden\" id=\"hcon\" value=\"".ucfirst(mex("visualizza il documento",$pag))."\">"; if ($dati_cap['num'] > 0 and $num_id_prenota == 1) { echo "<br>(".mex("con costo agg.",$pag)." <select name=\"num_costo_agg_sel\"> <option value=\"\" selected>----</option>
else { $colonne_s = ($colonne - $num3) * 2; 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; }
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'", "", 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}')", "", 1); if (${"lista_app" . $n_t}) { esegui_query("update {$tableprenota} set app_assegnabili = '" . ${"lista_app" . $n_t} . "' where idprenota = '{$idprenota}' ", "", 1); } if (${"assegnazioneapp" . $n_t}) { esegui_query("update {$tableprenota} set assegnazioneapp = '" . ${"assegnazioneapp" . $n_t} . "' where idprenota = '{$idprenota}' ", "", 1); } if (${"numpersone" . $n_t}) { esegui_query("update {$tableprenota} set num_persone = '" . ${"numpersone" . $n_t} . "' where idprenota = '{$idprenota}' ", "", 1); } 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}' ", "", 1); } # fine for $num1 } # fine if ($prenota_vicine == "SI") } # fine if ($limiti_var["lim_prenota_temp"] < $datainserimento) }
function aggiorna_relutenti($aggiungi_rel, $rel_predefinite, $elimina_tutte_rel, $importa_rel, $id_utente, $id_utente_mod, $nuova_rel, $sup_n_rel, $cod_n_rel, $cod2_n_rel, $cod3_n_rel, $utente_importa_rel, $pag, $rel_sing, $rel_plur, $tablerel, $tablerelutenti, $rel_sup_sing = "", $rel_sup_plur = "", $tablerel_sup = "", $rel_inf_sing = "", $rel_inf_plur = "", $tablerel_inf = "") { if ($id_utente != 1 or $id_utente_mod == $utente_importa_rel) { $importa_rel = ""; } if ($aggiungi_rel or $rel_predefinite or $elimina_tutte_rel or $importa_rel) { if (get_magic_quotes_gpc()) { $nuova_rel = stripslashes($nuova_rel); $cod_n_rel = stripslashes($cod_n_rel); $cod2_n_rel = stripslashes($cod2_n_rel); $cod3_n_rel = stripslashes($cod3_n_rel); $sup_n_rel = stripslashes($sup_n_rel); } # fine if (get_magic_quotes_gpc()) $nuova_rel = htmlspecialchars($nuova_rel); $cod_n_rel = htmlspecialchars($cod_n_rel); $cod2_n_rel = htmlspecialchars($cod2_n_rel); $cod3_n_rel = htmlspecialchars($cod3_n_rel); $sup_n_rel = htmlspecialchars($sup_n_rel); if (!$aggiungi_rel or str_replace(" ", "", $nuova_rel)) { echo "<div id=\"avanz_{$rel_plur}\"><br>"; if ($tablerel_inf) { $tabelle_lock = array($tablerel, $tablerel_inf, $tablerelutenti); } else { $tabelle_lock = array($tablerel, $tablerelutenti); } if ($tablerel_sup) { $altre_tab_lock = array($tablerel_sup); } else { $altre_tab_lock = ""; } $tabelle_lock = lock_tabelle($tabelle_lock, $altre_tab_lock); unset($lista_rel); unset($cod_rel); unset($cod2_rel); unset($cod3_rel); unset($cod_rel_sup); if ($aggiungi_rel) { $lista_rel[0] = $nuova_rel; $cod_rel[0] = $cod_n_rel; $cod2_rel[0] = $cod2_n_rel; $cod3_rel[0] = $cod3_n_rel; if ($rel_sup_sing and $sup_n_rel) { $sup_n_rel_esist = esegui_query("select distinct {$tablerel_sup}.id{$rel_sup_plur} from {$tablerelutenti} inner join {$tablerel_sup} on {$tablerelutenti}.id{$rel_sup_sing} = {$tablerel_sup}.id{$rel_sup_plur} where {$tablerelutenti}.idutente = '{$id_utente_mod}' and {$tablerel_sup}.nome_{$rel_sup_sing} = '" . aggslashdb($sup_n_rel) . "' "); if (numlin_query($sup_n_rel_esist) > 0) { $id_rel_sup_vett[0] = risul_query($sup_n_rel_esist, 0, "id{$rel_sup_plur}", $tablerel_sup); } } # fine if ($rel_sup_sing and $sup_n_rel) } else { $rel_canc = esegui_query("select id{$rel_sing} from {$tablerelutenti} where idutente = '{$id_utente_mod}' and id{$rel_sing} is not NULL "); $num_rel_canc = numlin_query($rel_canc); esegui_query("delete from {$tablerelutenti} where idutente = '{$id_utente_mod}' and id{$rel_sing} is not NULL "); $rel_usate = esegui_query("select distinct id{$rel_sing} from {$tablerelutenti} where id{$rel_sing} is not NULL"); $num_rel_usate = numlin_query($rel_usate); for ($num1 = 0; $num1 < $num_rel_usate; $num1++) { $relutente_usate[(int) risul_query($rel_usate, $num1, "id{$rel_sing}")] = 1; } # fine for $num1 for ($num1 = 0; $num1 < $num_rel_canc; $num1++) { if (substr($num1, -3) == "000") { http_keep_alive(". "); } if ($num1 > 20) { $nolog = 1; } else { $nolog = 0; } cancella_relutente(risul_query($rel_canc, $num1, "id{$rel_sing}"), $id_utente_mod, $rel_sing, $rel_plur, $tablerel, $tablerelutenti, $rel_inf_sing, $rel_inf_plur, $tablerel_inf, "SI", $relutente_usate, $nolog); } # fine for $num1 unset($rel_canc); unset($rel_usate); unset($relutente_usate); if ($rel_predefinite) { include C_DATA_PATH . "/lingua.php"; global ${"lista_" . $rel_plur}, ${"cod_" . $rel_plur}, ${"cod2_" . $rel_plur}, ${"cod3_" . $rel_plur}, ${"cod_" . $rel_sup_sing . "_" . $rel_plur}; if ($lingua[$id_utente_mod] == "ita") { include_once "./includes/lista_{$rel_plur}.php"; } else { if (@is_file("./includes/lang/" . $lingua[$id_utente_mod] . "/lista_{$rel_plur}.php")) { include_once "./includes/lang/" . $lingua[$id_utente_mod] . "/lista_{$rel_plur}.php"; } } $lista_rel = ${"lista_" . $rel_plur}; $cod_rel = ${"cod_" . $rel_plur}; $cod2_rel = ${"cod2_" . $rel_plur}; $cod3_rel = ${"cod3_" . $rel_plur}; if ($rel_sup_sing) { $cod_rel_sup = ${"cod_" . $rel_sup_sing . "_" . $rel_plur}; } if (@is_array($lista_rel)) { $num_rel = count($lista_rel); } else { $num_rel = 0; } for ($num1 = 0; $num1 < $num_rel; $num1++) { $lista_rel[$num1] = htmlspecialchars($lista_rel[$num1]); $cod_rel[$num1] = htmlspecialchars($cod_rel[$num1]); $cod2_rel[$num1] = htmlspecialchars($cod2_rel[$num1]); $cod3_rel[$num1] = htmlspecialchars($cod3_rel[$num1]); $cod_rel_sup[$num1] = htmlspecialchars($cod_rel_sup[$num1]); } # fine for $num1 } else { if ($importa_rel) { $utente_importa_rel = aggslashdb($utente_importa_rel); $rel_ut_imp = esegui_query("select distinct {$tablerel}.nome_{$rel_sing},{$tablerelutenti}.idsup from {$tablerelutenti} inner join {$tablerel} on {$tablerelutenti}.id{$rel_sing} = {$tablerel}.id{$rel_plur} where {$tablerelutenti}.idutente = '{$utente_importa_rel}' order by {$tablerel}.nome_{$rel_sing}"); $num_rel_ut_imp = numlin_query($rel_ut_imp); for ($num1 = 0; $num1 < $num_rel_ut_imp; $num1++) { $rel = risul_query($rel_ut_imp, $num1, "nome_{$rel_sing}", $tablerel); $lista_rel[$num1] = $rel; if ($rel_sup_sing) { $id_rel_sup_vett[$num1] = risul_query($rel_ut_imp, $num1, 'idsup', $tablerelutenti); } } # fine for $num1 unset($rel_ut_imp); } } # fine if ($importa_rel) } # fine else if ($aggiungi_rel) $num_passa_a_var = 2; if (@is_array($lista_rel)) { $num_rel_agg = count($lista_rel); } else { $num_rel_agg = 0; } if ($num_rel_agg >= $num_passa_a_var) { $rel_esistenti = esegui_query("select id{$rel_plur},nome_{$rel_sing},codice_{$rel_sing} from {$tablerel} where nome_{$rel_sing} is not NULL "); $num_rel_esistenti = numlin_query($rel_esistenti); for ($num1 = 0; $num1 < $num_rel_esistenti; $num1++) { $nome_rel = risul_query($rel_esistenti, $num1, "nome_{$rel_sing}"); $rel_esistente[$nome_rel] = 1; $id_esistente[$nome_rel] = risul_query($rel_esistenti, $num1, "id{$rel_plur}"); $cod_esistente[$nome_rel] = risul_query($rel_esistenti, $num1, "codice_{$rel_sing}"); } # fine for $num1 unset($rel_esistenti); $rel_esistenti2 = esegui_query("select id{$rel_sing},idsup from {$tablerelutenti} where idutente = '{$id_utente_mod}' and id{$rel_sing} is not NULL "); $num_rel_esistenti2 = numlin_query($rel_esistenti2); for ($num1 = 0; $num1 < $num_rel_esistenti2; $num1++) { $id_rel = risul_query($rel_esistenti2, $num1, "id{$rel_sing}"); $rel_esistente2[$id_rel] = 1; $idsup_esistente2[$id_rel] = risul_query($rel_esistenti2, $num1, 'idsup'); } # fine for $num1 unset($rel_esistenti2); } # fine if ($num_rel_agg > $num_passa_a_var) unset($num_max); for ($num1 = 0; $num1 < $num_rel_agg; $num1++) { if (substr($num1, -3) == "000") { http_keep_alive(". "); } if ($num1 > 20) { $nolog = 1; } else { $nolog = 0; } $id_rel_sup = ""; if ($rel_sup_sing and $cod_rel_sup[$num1]) { if ($cod_sup_esist[$cod_rel_sup[$num1]]) { $id_rel_sup = $cod_sup_esist[$cod_rel_sup[$num1]]; } else { $rel_sup = esegui_query("select id{$rel_sup_plur} from {$tablerel_sup} where codice_{$rel_sup_sing} = '" . aggslashdb($cod_rel_sup[$num1]) . "' "); if (numlin_query($rel_sup) > 0) { $id_rel_sup = risul_query($rel_sup, 0, "id{$rel_sup_plur}"); $cod_sup_esist[$cod_rel_sup[$num1]] = $id_rel_sup; } # fine if (numlin_query($rel_sup) > 0) } # fine else if ($cod_sup_esistente[$cod_rel_sup[$num1]]) } # fine if ($rel_sup_sing and $cod_rel_sup[$num1]) if ($rel_sup_sing and $id_rel_sup_vett[$num1]) { if ($id_sup_esist[$id_rel_sup_vett[$num1]]) { $id_rel_sup = $id_sup_esist[$id_rel_sup_vett[$num1]]; } else { $rel_sup = esegui_query("select id{$rel_sup_plur} from {$tablerel_sup} where id{$rel_sup_plur} = '" . aggslashdb($id_rel_sup_vett[$num1]) . "' "); if (numlin_query($rel_sup) > 0) { $id_rel_sup = $id_rel_sup_vett[$num1]; $id_sup_esist[$id_rel_sup_vett[$num1]] = $id_rel_sup; } # fine if (numlin_query($rel_sup) > 0) } # fine else if ($cod_sup_esistente[$cod_rel_sup[$num1]]) } # fine if ($rel_sup_sing and $id_rel_sup_vett[$num1]) if ($num_rel_agg < $num_passa_a_var) { $rel_esistenti = esegui_query("select id{$rel_plur},nome_{$rel_sing},codice_{$rel_sing} from {$tablerel} where nome_{$rel_sing} = '" . aggslashdb($lista_rel[$num1]) . "' "); if (numlin_query($rel_esistenti)) { $nome_rel = risul_query($rel_esistenti, 0, "nome_{$rel_sing}"); $rel_esistente[$nome_rel] = 1; $id_esistente[$nome_rel] = risul_query($rel_esistenti, 0, "id{$rel_plur}"); $cod_esistente[$nome_rel] = risul_query($rel_esistenti, 0, "codice_{$rel_sing}"); } # fine if (numlin_query($rel_esistenti)) } # fine if ($num_rel_agg <= $num_passa_a_var) if (!$rel_esistente[$lista_rel[$num1]]) { if (!$num_max) { $num_max = esegui_query("select max(id{$rel_plur}) from {$tablerel} "); $num_max = risul_query($num_max, 0, 0) + 1; } else { $num_max++; } $num_n_rel = $num_max; esegui_query("insert into {$tablerel} (id{$rel_plur},nome_{$rel_sing},codice_{$rel_sing},codice2_{$rel_sing},codice3_{$rel_sing}) values ('{$num_n_rel}','" . aggslashdb($lista_rel[$num1]) . "','" . aggslashdb($cod_rel[$num1]) . "','" . aggslashdb($cod2_rel[$num1]) . "','" . aggslashdb($cod3_rel[$num1]) . "') ", "", $nolog); $rel_esistente[$lista_rel[$num1]] = 1; $id_esistente[$lista_rel[$num1]] = $num_n_rel; $cod_esistente[$lista_rel[$num1]] = $cod_rel[$num1]; } else { $num_n_rel = $id_esistente[$lista_rel[$num1]]; $r_cod = $cod_esistente[$lista_rel[$num1]]; if (!$r_cod and $cod_rel[$num1]) { esegui_query("update {$tablerel} set codice_{$rel_sing} = '" . aggslashdb($cod_rel[$num1]) . "' where id{$rel_plur} = '{$num_n_rel}' "); } if ($cod2_rel[$num1]) { esegui_query("update {$tablerel} set codice2_{$rel_sing} = '" . aggslashdb($cod2_rel[$num1]) . "' where id{$rel_plur} = '{$num_n_rel}' "); } if ($cod3_rel[$num1]) { esegui_query("update {$tablerel} set codice3_{$rel_sing} = '" . aggslashdb($cod3_rel[$num1]) . "' where id{$rel_plur} = '{$num_n_rel}' "); } if ($num_rel_agg < $num_passa_a_var) { $rel_esistenti2 = esegui_query("select idsup from {$tablerelutenti} where idutente = '{$id_utente_mod}' and id{$rel_sing} = '{$num_n_rel}' "); if (numlin_query($rel_esistenti2)) { $rel_esistente2[$num_n_rel] = 1; $idsup_esistente2[$num_n_rel] = risul_query($rel_esistenti2, 0, 'idsup'); } # fine if (numlin_query($rel_esistenti2)) } # fine if ($num_rel_agg < $num_passa_a_var) } # fine else if (!$rel_esistente[$lista_rel[$num1]]) if (!$rel_esistente2[$num_n_rel]) { if ($id_rel_sup) { esegui_query("insert into {$tablerelutenti} (idutente,id{$rel_sing},idsup) values ('{$id_utente_mod}','{$num_n_rel}','{$id_rel_sup}') ", "", $nolog); } else { esegui_query("insert into {$tablerelutenti} (idutente,id{$rel_sing}) values ('{$id_utente_mod}','{$num_n_rel}') ", "", $nolog); } $rel_esistente2[$num_n_rel] = 1; $idsup_esistente2[$num_n_rel] = $id_rel_sup; } elseif ($id_rel_sup) { $idsup = $idsup_esistente2[$num_n_rel]; if (!$idsup) { esegui_query("update {$tablerelutenti} set idsup = '{$id_rel_sup}' where idutente = '{$id_utente_mod}' and id{$rel_sing} = '{$num_n_rel}' "); } } # fine elseif ($id_rel_sup) } # fine for $num1 unlock_tabelle($tabelle_lock); echo "<br></div>\n<script type=\"text/javascript\">\n<!--\nvar avanz = document.getElementById('avanz_{$rel_plur}');\navanz.style.display = 'none';\n-->\n</script>\n"; switch ($rel_sing) { case "regione": if ($aggiungi_rel and $pag) { echo mex("Nuova regione/provincia aggiunta", $pag) . ".<br>"; } if ($rel_predefinite and $pag) { echo mex("Regioni/provincie predefinite ripristinate", $pag) . ".<br>"; } if ($elimina_tutte_rel and $pag) { echo mex("Regioni/provincie cancellate", $pag) . ".<br>"; } if ($importa_rel and $pag) { echo mex("Regioni/provincie importate", $pag) . ".<br>"; } break; case "documentoid": if ($aggiungi_rel and $pag) { echo mex("Nuovo tipo di documento di identità aggiunto", $pag) . ".<br>"; } if ($rel_predefinite and $pag) { echo mex("Tipi di documento di identità predefiniti ripristinati", $pag) . ".<br>"; } if ($elimina_tutte_rel and $pag) { echo mex("Tipi di documento di identità cancellati", $pag) . ".<br>"; } if ($importa_rel and $pag) { echo mex("Tipi di documento di identità importati", $pag) . ".<br>"; } break; case "citta": $rel_sing = "città"; $rel_plur = "città"; default: if ($aggiungi_rel and $pag) { echo mex("Nuova {$rel_sing} aggiunta", $pag) . ".<br>"; } if ($rel_predefinite and $pag) { echo mex(ucfirst($rel_plur) . " predefinite ripristinate", $pag) . ".<br>"; } if ($elimina_tutte_rel and $pag) { echo mex(ucfirst($rel_plur) . " cancellate", $pag) . ".<br>"; } if ($importa_rel and $pag) { echo mex(ucfirst($rel_plur) . " importate", $pag) . ".<br>"; } } # fine switch ($rel_sing) unset($lista_rel); unset($cod_rel); unset($cod2_rel); unset($cod3_rel); unset($cod_rel_sup); unset($rel_esistente); unset($id_esistente); unset($cod_esistente); unset($rel_esistente2); unset($idsup_esistente2); } # fine if (!$aggiungi_rel or str_replace(" ","",$nuova_rel)) } # fine if ($aggiungi_rel or $rel_predefinite or... }
<option value=\"meno\">".mex("Sottrai",$pag)."</option> </select></td>"; } # fine if ($priv_mod_beni != "n") if ($priv_ins_beni != "n" or $priv_mod_beni != "n") { if ($tipoid == "idappartamento" or $priv_mod_checkin != "s") { $attiva_checkin = esegui_query("select valpersonalizza from $tablepersonalizza where idpersonalizza = 'attiva_checkin' and idutente = '$id_utente'"); $attiva_checkin = risul_query($attiva_checkin,0,'valpersonalizza'); if ($attiva_checkin == "SI") echo "<td style=\"line-height: 70%\"><small><small>".str_replace("_"," ",mex("richiesto_per registrare entrata",$pag))."</small></small></td>"; } # fine if ($tipoid == "idappartamento" or $priv_mod_checkin != "s") echo "<td>".mex("Modifica",$pag)."</td>"; } # fine if ($priv_ins_beni != "n" or $priv_mod_beni != "n") echo "</tr>"; $beni_in_mag = esegui_query("select * from $tablerelinventario where $tipoid = '$idmag' order by idbeneinventario "); $num_beni_in_mag = numlin_query($beni_in_mag); $beni_inv = esegui_query("select * from $tablebeniinventario $condizione_beni_propri order by idbeniinventario"); $num_beni_inv = numlin_query($beni_inv); if ($priv_vedi_beni_inv == "n") $num_beni_inv = 0; unset($nomi_beni); unset($codici_beni); unset($bene_permesso); for ($num1 = 0 ; $num1 < $num_beni_inv ; $num1++) { $idinv = risul_query($beni_inv,$num1,'idbeniinventario'); $bene_permesso[$idinv] = 1; $nomi_beni[$idinv] = risul_query($beni_inv,$num1,'nome_bene'); $codici_beni[$idinv] = risul_query($beni_inv,$num1,'codice_bene'); } # fine for $num1 unset($id_in_mag); for ($num1 = 0 ; $num1 < $num_beni_in_mag ; $num1++) {
header("Cache-Control: pre-check=0, post-check=0, max-age=0"); header("Content-Transfer-Encoding: none"); header("Content-Type: application/rtf; name=\"$nome_file\""); #header("Content-Type: application/octetstream; name=\"$nome_file\""); #header("Content-Type: application/octet-stream; name=\"$nome_file\""); header("Content-Disposition: inline; filename=\"$nome_file\""); #header("Content-length: $lunghezza_file"); } # fine if ($tipo_contratto == "contrrtf" and !$dir_salva) if ($tipo_contratto == "contrtxt" and !$dir_salva) { $mostra_headers = "NO"; if ($nome_file_contr) { $nome_file = $nome_file_contr[$n_file]; if (substr($nome_file,-3) == ".gz") $nome_file = substr($nome_file,0,-3); } # fine if ($nome_file_contr) else $nome_file = str_replace("\\","_",str_replace("/","_",str_replace(" ","_",$nome_contratto))).".txt"; $est_txt = esegui_query("select * from $tablecontratti where numero = '$numero_contratto' and tipo = 'est_txt'"); if (numlin_query($est_txt)) { $est_txt = risul_query($est_txt,0,'testo'); $nome_file = substr($nome_file,0,-4).".$est_txt"; } # fine if (numlin_query($est_txt)) header("Pragma: public"); header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: pre-check=0, post-check=0, max-age=0"); header("Content-Transfer-Encoding: none"); header("Content-Type: application/text; name=\"$nome_file\""); #header("Content-Type: application/octetstream; name=\"$nome_file\""); #header("Content-Type: application/octet-stream; name=\"$nome_file\""); header("Content-Disposition: inline; filename=\"$nome_file\""); #header("Content-length: $lunghezza_file"); } # fine if ($tipo_contratto == "contrtxt" and !$dir_salva)
function inserisci_prenotazione($inizioperiodo, $fineperiodo, $lista_app, $tipotariffa, $numpersone, $prenota_vicine, $idclienti, $conferma, $pagato, $caparra, $met_paga_caparra, $commissioni, $origine_prenota, $sconto, $giorno_stima_checkin, $ora_stima_checkin, $min_stima_checkin, $commento, &$stato, $anno, $PHPR_TAB_PRE, $ins_passato = "", $id_utente_imp = "", $id_prenota_imp = "", $tariffe_sett_imp = "", $ins_costi_agg = "") { global $id_utente, $HOSTNAME; $PHPR_TAB_PRE = aggslashdb($PHPR_TAB_PRE); $anno = aggslashdb($anno); $tableprenota = $PHPR_TAB_PRE . "prenota" . $anno; $tablecostiprenota = $PHPR_TAB_PRE . "costiprenota" . $anno; $tableperiodi = $PHPR_TAB_PRE . "periodi" . $anno; $tableregole = $PHPR_TAB_PRE . "regole" . $anno; $tableappartamenti = $PHPR_TAB_PRE . "appartamenti"; $tablepersonalizza = $PHPR_TAB_PRE . "personalizza"; $tableclienti = $PHPR_TAB_PRE . "clienti"; $tablenometariffe = $PHPR_TAB_PRE . "ntariffe" . $anno; if (!function_exists('tab_a_var')) { include "./includes/liberasettimane.php"; } if (!function_exists('dati_tariffe')) { include "./includes/funzioni_tariffe.php"; } include "./includes/sett_gio.php"; $Euro = nome_valuta(); $stile_soldi = stile_soldi(); $stile_data = stile_data(); $num_tipologie = count($inizioperiodo); $appartamenti = esegui_query("select * from {$tableappartamenti} "); $numappartamenti = numlin_query($appartamenti); $id_app_richiesti = 0; $dati_tariffe = dati_tariffe($tablenometariffe, "", "", $tableregole); if ($ins_costi_agg) { if (!function_exists('dati_costi_agg_ntariffe')) { include "./includes/funzioni_costi_agg.php"; } $dati_ca = dati_costi_agg_ntariffe($tablenometariffe, $dati_tariffe['num'], "NO", "", $tableappartamenti); } # fine if ($ins_costi_agg) for ($n_t = 1; $n_t <= $num_tipologie; $n_t++) { $inizioperiodo_orig[$n_t] = $inizioperiodo[$n_t]; $fineperiodo_orig[$n_t] = $fineperiodo[$n_t]; $idinizioperiodo = esegui_query("select idperiodi from {$tableperiodi} where datainizio = '" . aggslashdb($inizioperiodo[$n_t]) . "' "); $num_idinizioperiodo = numlin_query($idinizioperiodo); if ($num_idinizioperiodo == 0) { $idinizioperiodo = 10000; } 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 = '" . aggslashdb($fineperiodo[$n_t]) . "' "); $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; } $id_periodo_corrente = calcola_id_periodo_corrente($anno); if ($id_periodo_corrente > $idinizioperiodo and !$ins_passato) { $data_sbagliata = "SI"; } if ($idfineperiodo < $idinizioperiodo or $data_sbagliata == "SI") { $inserire = "NO"; $mess_errore .= mex("Le date sono sbagliate", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= " (" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; } # fine if ($idfineperiodo < $idinizioperiodo or... if (substr($tipotariffa[$n_t], 0, 7) != "tariffa" or controlla_num_pos(substr($tipotariffa[$n_t], 7)) == "NO") { $tariffa_sbagliata = "SI"; } else { $tar_sett_imp = $tariffe_sett_imp[$n_t]; for ($num1 = $inizioperiodo[$n_t]; $num1 <= $fineperiodo[$n_t]; $num1++) { $rigasettimana = esegui_query("select * from {$tableperiodi} where idperiodi = '{$num1}' "); $esistetariffa = risul_query($rigasettimana, 0, $tipotariffa[$n_t]); $esistetariffap = risul_query($rigasettimana, 0, $tipotariffa[$n_t] . "p"); if ((!strcmp($esistetariffa, "") or $esistetariffa < 0) and (!strcmp($esistetariffap, "") or $esistetariffap < 0) and !strcmp($tar_sett_imp[$num1], "")) { $tariffa_sbagliata = "SI"; } if ($dati_tariffe[$tipotariffa[$n_t]]['chiusa'][$num1] and !strcmp($tar_sett_imp[$num1], "")) { $tariffa_sbagliata = "SI"; } } # fine for $num1 } # fine else if (substr($tipotariffa[$n_t],0,7) != "tariffa" or... if ($tariffa_sbagliata == "SI") { $inserire = "NO"; $mess_errore .= mex("Si deve inserire il tipo di tariffa", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= "(" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; } else { # se vi è una regola 2 per la tariffa unset($app_regola2_predef); if (!$lista_app[$n_t]) { $lista_app[$n_t] = trova_app_regola2($tipotariffa[$n_t], $regole2, $num_regole2, $app_regola2_predef, $id_periodo_corrente, $idinizioperiodo, $idfineperiodo, $tipo_periodi, $anno, $tableregole); } # fine if (!$lista_app[$n_t]) $id_utente_ins = ""; # se vi è una regola 3 per la tariffa if ($id_utente == 1) { $regole3 = esegui_query("select * from {$tableregole} where tariffa_per_utente = '" . aggslashdb($tipotariffa[$n_t]) . "'"); if (numlin_query($regole3) == 1) { $id_utente_ins = risul_query($regole3, 0, 'iddatainizio'); } } # fine if ($id_utente == 1) if (!$id_utente_ins and $id_utente_imp) { $id_utente_ins = $id_utente_imp; } if (!$id_utente_ins and $id_utente) { $id_utente_ins = $id_utente; } if (!$id_utente_ins) { $id_utente_ins = 1; } # se vi è una regola 4 per la tariffa if (!$numpersone[$n_t]) { $regole4 = esegui_query("select * from {$tableregole} where tariffa_per_persone = '" . aggslashdb($tipotariffa[$n_t]) . "'"); if (numlin_query($regole4) == 1) { $numpersone[$n_t] = risul_query($regole4, 0, 'iddatainizio'); } } # fine if (!$numpersone[$n_t]) if (!$numpersone) { if ($dati_tariffe[$tipotariffa[$n_t]]['moltiplica'] == "p") { $inserire = "NO"; $mess_errore .= mex("Si deve inserire il numero delle persone per questa tariffa", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= "(" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; } # fine if ($dati_tariffe[$tipotariffa[$n_t]]['moltiplica'] == "p") } # fine if (!$numpersone) } # fine else if ($tariffa_sbagliata == "SI") if (controlla_num_pos($idclienti[$n_t]) == "NO") { $inserire = "NO"; } else { $cliente_esistente = esegui_query("select cognome from {$tableclienti} where idclienti = '" . $idclienti[$n_t] . "' "); if (numlin_query($cliente_esistente) != 1) { $inserire = "NO"; } else { $cognome = risul_query($cliente_esistente, 0, "cognome"); } } # fine else if (controlla_num_pos($idclienti[$n_t]) == "NO") $app_richiesti_id[$n_t] = ""; $assegnazioneapp[$n_t] = "v"; if ($lista_app[$n_t]) { $assegnazioneapp[$n_t] = "c"; $vett_app = explode(",", $lista_app[$n_t]); $num_app = count($vett_app); if ($num_app == 1) { $assegnazioneapp[$n_t] = "k"; } for ($num1 = 0; $num1 < $num_app; $num1++) { $appo = aggslashdb($vett_app[$num1]); $app_richiesti_id[$n_t][$appo] = "SI"; $appartamento_esistente = esegui_query("select idappartamenti from {$tableappartamenti} where idappartamenti = '{$appo}' "); if (numlin_query($appartamento_esistente) != 1) { $inserire = "NO"; $mess_errore .= mex("L'appartamento", 'unit.php') . " <div style=\"display: inline; color: red;\">{$appo}</div> " . mex("contenuto nella lista non esiste", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= " (" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; } # fine if (numlin_query($appartamento_esistente) != 1) } # fine for $num1 } # fine if ($lista_app[$n_t]) if ($numpersone[$n_t]) { if (controlla_num_pos($numpersone[$n_t]) == "NO") { $inserire = "NO"; $mess_errore .= mex("Il numero di persone è sbagliato", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= " (" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; } # fine if (controlla_num_pos($numpersone[$n_t]) == "NO") $app_richiesti_copia = $app_richiesti_id[$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++) { $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[$n_t]) { $app_richiesti_id[$n_t][$idapp] = "NO"; } else { $app_richiesti_id[$n_t][$idapp] = "SI"; $posti++; } # fine else if ($maxoccupanti and $maxoccupanti < $numpersone[$n_t]) } # fine if (!$app_richiesti_copia or $app_richiesti_copia[$idapp] == "SI") if ($app_regola2_predef) { if (str_replace(",{$idapp},", "", $app_regola2_predef) != $app_regola2_predef) { if (!$maxoccupanti or $maxoccupanti >= $numpersone[$n_t]) { $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) { $mess_errore .= mex("Non c'è nessun appartamento tra quelli richiesti che possa ospitare", 'unit.php') . " " . $numpersone[$n_t] . " " . mex("persone", "clienti.php"); if ($num_tipologie > 1) { $mess_errore .= " (" . mex("tipologia", "clienti.php") . " {$n_t})"; } $mess_errore .= ".<br>"; $inserire = "NO"; } # fine if ($posti == 0 or... } # fine if ($numpersone[$n_t]) unset($lista_app_richiesti); if (!$app_richiesti_id[$n_t]) { $lista_app_richiesti = ",tutti,,"; } else { while (list($key, $val) = each($app_richiesti_id[$n_t])) { if ($val == "SI") { $lista_app_richiesti .= $key . ","; } } } $lista_app_richiesti = substr($lista_app_richiesti, 0, -1); $id_app_richiesti++; $app_richiesti[$id_app_richiesti] = $lista_app_richiesti; $idinizioperiodo_vett[$id_app_richiesti] = $idinizioperiodo; $idfineperiodo_vett[$id_app_richiesti] = $idfineperiodo; $app_richiesti[",numero,"] = $id_app_richiesti; if ($num_tipologie > 1 and $prenota_vicine == "SI") { $app_richiesti[",vicini,"] = "SI"; } if ($id_prenota_imp) { if (controlla_num_pos($id_prenota_imp[$n_t]) == "SI") { $id_esistente = esegui_query("select idprenota from {$tableprenota} where idprenota = '" . $id_prenota_imp[$n_t] . "' "); if (numlin_query($id_esistente)) { unset($id_prenota_imp); } } else { unset($id_prenota_imp); } } # fine if ($id_prenota_imp) } # fine for $n_t if ($inserire != "NO") { $app_agenzia = esegui_query("select * from {$tableregole} where app_agenzia != ''{$condizioni_regole1_non_sel}"); $num_app_agenzia = numlin_query($app_agenzia); $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 . "' "); #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"); unset($info_periodi_ag); $info_periodi_ag['numero'] = 0; for ($num1 = 0; $num1 < $num_app_agenzia; $num1++) { $mot2 = risul_query($app_agenzia, $num1, 'motivazione2'); if ($mot2 == "x") { $info_periodi_ag['app'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'app_agenzia'); $info_periodi_ag['ini'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'iddatainizio'); $info_periodi_ag['fine'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'iddatafine'); $info_periodi_ag['numero']++; } # fine if ($mot2 == "x") } # fine for $num1 if ($info_periodi_ag['numero']) { inserisci_prenota_fittizie($info_periodi_ag, $profondita, $app_prenota_id, $inizio_prenota_id, $fine_prenota_id, $prenota_in_app_sett, $app_assegnabili_id); } $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; unset($info_periodi_ag); $info_periodi_ag['numero'] = 0; for ($num1 = 0; $num1 < $num_app_agenzia; $num1++) { $mot2 = risul_query($app_agenzia, $num1, 'motivazione2'); if ($mot2 != "x") { $info_periodi_ag['app'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'app_agenzia'); $info_periodi_ag['ini'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'iddatainizio'); $info_periodi_ag['fine'][$info_periodi_ag['numero']] = risul_query($app_agenzia, $num1, 'iddatafine'); $info_periodi_ag['numero']++; } # fine if ($mot2 != "x") } # fine for $num1 if ($info_periodi_ag['numero']) { 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"); } 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) } else { $occupare_app_agenzia = "SI"; $limiti_var['t_limite'] = time() + $sec_limite_libsett; $app_liberato = ""; $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 ($fatto_libera2 != "NO") { $risul_agg = aggiorna_tableprenota($app_prenota_id, $app_orig_prenota_id, $tableprenota); if (!$risul_agg) { $fatto_libera2 = "NO"; } } # fine if ($fatto_libera2 != "NO") if ($fatto_libera2 == "NO") { $inserire = "NO"; $mess_errore .= mex("Nel periodo selezionato non è possibile ospitare il cliente negli appartamenti richiesti", 'unit.php') . ".<br>"; for ($n_t = 1; $n_t <= $num_tipologie; $n_t++) { $mess_prenota .= mex("Prenotazione", "prenota.php") . mex("dal", "prenota.php") . " <b>" . formatta_data($inizioperiodo_orig[$n_t], $stile_data) . "</b> " . mex("al", "prenota.php") . " <b>" . formatta_data($fineperiodo_orig[$n_t], $stile_data) . "</b>"; $mess_prenota .= " " . mex("a nome di", "prenota.php") . " <b>{$cognome}</b> "; if ($numpersone[$n_t]) { $mess_prenota .= " " . mex("per", "prenota.php") . " <b>" . $numpersone[$n_t] . "</b> " . mex("persone", "prenota.php") . ""; } if ($dati_tariffe[$tipotariffa[$n_t]]['nome']) { $nometariffa_vedi = $dati_tariffe[$tipotariffa[$n_t]]['nome']; } else { $nometariffa_vedi = mex("tariffa", "prenota.php") . substr($tipotariffa[$n_t], 7); } $mess_prenota .= ", " . mex("tariffa", "prenota.php") . " \"{$nometariffa_vedi}\".<br><br>"; } # fine for $n_t } else { $appartamento = $app_liberato; $mess_regola1 .= mex("Sono stati fatti i seguenti spostamenti nei periodi della <div style=\"display: inline; color: blue;\">regola di assegnazione 1</div>", "clienti.php") . ":<br>"; for ($num1 = 0; $num1 < $num_app_agenzia; $num1++) { $mot2 = risul_query($app_agenzia, $num1, 'motivazione2'); if ($mot2 != "x") { $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); $mess_regola1 .= mex("La prenotazione dal", "clienti.php") . " {$datainizio_camb_f} " . mex("al", "clienti.php") . " {$datafine_camb_f} " . mex("a nome di", "clienti.php") . " {$cliente_camb} " . mex("verrà spostata dall'appartamento", 'unit.php') . " <div style=\"display: inline; color: blue;\"><b>{$id_app_agenzia}</b></div> (<b>{$motivazione_app_agenzia}</b>) " . mex("al", "clienti.php") . " {$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); $mess_regola1 .= mex("La prenotazione dal", "clienti.php") . " {$datainizio_camb_f} " . mex("al", "clienti.php") . " {$datafine_camb_f} " . mex("a nome di", "clienti.php") . " {$cliente_camb} " . mex("verrà spostata dall'appartamento", 'unit.php') . " {$idapp_camb} " . mex("al", "clienti.php") . " <div style=\"display: inline; color: blue;\"><b>{$id_app_agenzia}</b></div> (<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) { $mess_regola1 .= mex("La nuova prenotazione verrà inserita nell'appartamento", 'unit.php') . " <div style=\"display: inline; color: blue;\"><b>{$id_app_agenzia}</b></div> (<b>{$motivazione_app_agenzia}</b>).<br>"; } # fine if ($id_app_agenzia == $appartamento_controlla and ... } # fine for $num2 } # fine if ($mot2 != "x") } # fine for $num1 } # fine else if ($fatto_libera2 == "NO") } # fine else if ($fatto_libera == "SI") } 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 = "NO"; $mess_errore .= mex("Nel periodo selezionato non è possibile ospitare il cliente in un appartamento tra quelli richiesti", 'unit.php') . ".<br>"; for ($n_t = 1; $n_t <= $num_tipologie; $n_t++) { $mess_prenota .= mex("Prenotazione", "prenota.php") . mex("dal", "prenota.php") . " <b>" . formatta_data($inizioperiodo_orig[$n_t], $stile_data) . "</b> " . mex("al", "prenota.php") . " <b>" . formatta_data($fineperiodo_orig[$n_t], $stile_data) . "</b>"; $mess_prenota .= " " . mex("a nome di", "prenota.php") . " <b>{$cognome}</b> "; if ($numpersone[$n_t]) { $mess_prenota .= " " . mex("per", "prenota.php") . " <b>" . $numpersone[$n_t] . "</b> " . mex("persone", "prenota.php") . ""; } if ($dati_tariffe[$tipotariffa[$n_t]]['nome']) { $nometariffa_vedi = $dati_tariffe[$tipotariffa[$n_t]]['nome']; } else { $nometariffa_vedi = mex("tariffa", "prenota.php") . substr($tipotariffa[$n_t], 7); } $mess_prenota .= ", " . mex("tariffa", "prenota.php") . " \"{$nometariffa_vedi}\".<br><br>"; } # fine for $n_t } else { $appartamento = $app_liberato; } } # fine else if ($num_app_agenzia != 0) } # fine if ($inserire != "NO") if ($inserire != "NO") { $metodi_pagamento = esegui_query("select valpersonalizza from {$tablepersonalizza} where idpersonalizza = 'metodi_pagamento' and idutente = '{$id_utente}'"); $metodi_pagamento = risul_query($metodi_pagamento, 0, 'valpersonalizza'); if ($metodi_pagamento) { $metodi_pagamento = explode(",", $metodi_pagamento); } $origini_prenota = esegui_query("select valpersonalizza from {$tablepersonalizza} where idpersonalizza = 'origini_prenota' and idutente = '{$id_utente}'"); $origini_prenota = risul_query($origini_prenota, 0, 'valpersonalizza'); if ($origini_prenota) { $origini_prenota = explode(",", $origini_prenota); } for ($n_t = 1; $n_t <= $num_tipologie; $n_t++) { $lunghezza_periodo = $fineperiodo[$n_t] - $inizioperiodo[$n_t] + 1; $max_idprenota = esegui_query("select numlimite from {$tablecostiprenota} where idcostiprenota = '1'"); $max_idprenota = risul_query($max_idprenota, 0, 'numlimite'); if ($id_prenota_imp[$n_t]) { $idprenota = $id_prenota_imp[$n_t]; } else { $idprenota = $max_idprenota; } if ($idprenota >= $max_idprenota) { esegui_query("update {$tablecostiprenota} set numlimite = '" . ($idprenota + 1) . "' where idcostiprenota = '1'"); } $mess_prenota .= mex("Prenotazione", "prenota.php") . " {$idprenota} " . mex("dal", "prenota.php") . " <b>" . formatta_data($inizioperiodo_orig[$n_t], $stile_data) . "</b> " . mex("al", "prenota.php") . " <b>" . formatta_data($fineperiodo_orig[$n_t], $stile_data) . "</b> ({$lunghezza_periodo} " . mex("{$parola_settiman}", "prenota.php"); if ($lunghezza_periodo == 1) { $mess_prenota .= mex("{$lettera_a}", "prenota.php"); } else { $mess_prenota .= mex("{$lettera_e}", "prenota.php"); } $mess_prenota .= ") " . mex("a nome di", "prenota.php") . " <b>{$cognome}</b> "; if ($numpersone[$n_t]) { $mess_prenota .= mex("per", 'prenota.php') . " <b>" . $numpersone[$n_t] . "</b> " . mex("persone", 'prenota.php') . " "; } $mess_prenota .= mex("nell'appartamento", 'unit.php') . " <b>" . $appartamento[$n_t] . "</b>"; if ($assegnazioneapp[$n_t] == "k") { $mess_prenota .= " (" . mex("fisso", "unit.php") . ")"; } else { $mess_prenota .= " (" . mex("mobile", "prenota.php"); if ($lista_app[$n_t]) { $mess_prenota .= " " . mex("in", "prenota.php") . " " . str_replace(",", ", ", $lista_app[$n_t]); } $mess_prenota .= ")"; } # fine else if ($assegnazioneapp[$n_t] == "k") $mess_prenota .= ":<br><br>"; $costo_tariffa_tot = (double) 0; unset($lista_tariffe_sett); unset($lista_tariffep_sett); $tar_sett_imp = $tariffe_sett_imp[$n_t]; for ($num2 = $inizioperiodo[$n_t]; $num2 <= $fineperiodo[$n_t]; $num2++) { $riga_tariffa = esegui_query("select * from {$tableperiodi} where idperiodi = {$num2}"); if (strcmp($tar_sett_imp[$num2], "")) { $costo_tariffa = $tar_sett_imp[$num2]; } else { $costo_tariffa = risul_query($riga_tariffa, 0, $tipotariffa[$n_t]); } if ($dati_tariffe[$tipotariffa[$n_t]]['moltiplica'] == "p") { if (!strcmp($costo_tariffa, "")) { $costo_tariffa = 0; } if (strcmp($tar_sett_imp[$num2], "")) { $costo_tariffap = 0; } else { $costo_tariffap = risul_query($riga_tariffa, 0, $tipotariffa[$n_t] . "p"); } if (!strcmp($costo_tariffap, "")) { $costo_tariffap = 0; } $costo_tariffap = (double) $costo_tariffap * (double) $numpersone[$n_t]; $lista_tariffep_sett .= "," . $costo_tariffap; $costo_tariffa = (double) $costo_tariffa + $costo_tariffap; } # fine if ($dati_tariffe[$tipotariffa[$n_t]]['moltiplica'] == "p") $costo_tariffa_tot = (double) $costo_tariffa_tot + (double) $costo_tariffa; $lista_tariffe_sett .= "," . $costo_tariffa; } # fine for $num2 $lista_tariffe_sett = substr($lista_tariffe_sett, 1); if ($lista_tariffep_sett) { $lista_tariffep_sett = substr($lista_tariffep_sett, 1); $lista_tariffe_sett .= ";{$lista_tariffep_sett}"; } # fine if ($lista_tariffep_sett) $costo_tariffa = $costo_tariffa_tot; $nometariffa = $dati_tariffe[$tipotariffa[$n_t]]['nome']; if ($nometariffa == "") { $nometariffa = $tipotariffa[$n_t]; $nometariffa_vedi = mex("tariffa", "prenota.php") . substr($tipotariffa[$n_t], 7); } else { $nometariffa_vedi = $nometariffa; } $nometariffa = aggslashdb($nometariffa); $tariffa = $nometariffa . "#@&" . $costo_tariffa_tot; if ($dati_tariffe[$tipotariffa[$n_t]]['moltiplica'] == "p") { $tariffa .= "#@&p"; } $costo_tariffa_tot_p = punti_in_num($costo_tariffa_tot, $stile_soldi); $mess_prenota .= "{$costo_tariffa_tot_p} {$Euro} " . mex("tariffa", "prenota.php") . " \"{$nometariffa_vedi}\"<br>"; $valori = "abcdefghijkmnpqrstuvwxz"; srand((double) microtime() * 1000000); unset($cod_prenota); for ($num2 = 0; $num2 < 4; $num2++) { $cod_prenota .= substr($valori, rand(0, 22), 1); } if ($conferma[$n_t] == "SI") { $conf = "S"; } else { $conf = "N"; } if ($pagato[$n_t] > 0) { $conf = "S"; } $datainserimento = date("Y-m-d H:i:s", time() + C_DIFF_ORE * 3600); esegui_query("insert into {$tableprenota} (idprenota,idclienti,idappartamenti,iddatainizio,iddatafine,tariffa,tariffesettimanali,codice,conferma,datainserimento,hostinserimento,utente_inserimento) values ('{$idprenota}','" . $idclienti[$n_t] . "','" . aggslashdb($appartamento[$n_t]) . "','" . $inizioperiodo[$n_t] . "','" . $fineperiodo[$n_t] . "','{$tariffa}','{$lista_tariffe_sett}','{$cod_prenota}','{$conf}','{$datainserimento}','{$HOSTNAME}','{$id_utente_ins}')"); if ($numpersone[$n_t]) { esegui_query("update {$tableprenota} set num_persone = '" . $numpersone[$n_t] . "' where idprenota = '{$idprenota}' "); } # fine if ($numpersone[$n_t]) if ($dati_tariffe[$tipotariffa[$n_t]]['tasse_percent']) { esegui_query("update {$tableprenota} set tasseperc = '" . $dati_tariffe[$tipotariffa[$n_t]]['tasse_percent'] . "' where idprenota = '{$idprenota}' "); } # fine if ($dati_tariffe[$tipotariffa[$n_t]]['tasse_percent']) $caparra[$n_t] = formatta_soldi($caparra[$n_t]); if (controlla_soldi($caparra[$n_t], "pos") == "NO") { $caparra[$n_t] = ""; } if (!$caparra[$n_t]) { $caparra[$n_t] = calcola_caparra($dati_tariffe, $tipotariffa[$n_t], $inizioperiodo[$n_t], $fineperiodo[$n_t], $costo_tariffa_tot, $lista_tariffe_sett); } $sconto[$n_t] = (double) formatta_soldi($sconto[$n_t]); if ($sconto[$n_t] and controlla_soldi($sconto[$n_t]) == "SI") { if ($sconto[$n_t] > $costo_tariffa_tot) { $sconto[$n_t] = $costo_tariffa_tot; } esegui_query("update {$tableprenota} set sconto = '" . $sconto[$n_t] . "' where idprenota = '{$idprenota}' "); $sconto_p = punti_in_num($sconto[$n_t], $stile_soldi); if (substr($sconto_p, 0, 1) == "-") { $sconto_p = substr($sconto_p, 1); } else { $mess_prenota .= "-"; } $mess_prenota .= "{$sconto_p} {$Euro} " . mex("Sconto", "prenota.php") . "<br>"; $costo_tariffa_tot = (double) $costo_tariffa_tot - (double) $sconto[$n_t]; } # fine if ($sconto[$n_t] and... $commissioni[$n_t] = formatta_soldi($commissioni[$n_t]); if (controlla_soldi($commissioni[$n_t], "pos") == "NO") { $commissioni[$n_t] = ""; } if (!$commissioni[$n_t]) { $commissioni[$n_t] = calcola_commissioni($dati_tariffe, $tipotariffa[$n_t], $inizioperiodo[$n_t], $fineperiodo[$n_t], $lista_tariffe_sett, $sconto[$n_t], 0); } esegui_query("update {$tableprenota} set tariffa_tot = '{$costo_tariffa_tot}' where idprenota = '{$idprenota}' "); $costo_tariffa_tot_p = punti_in_num($costo_tariffa_tot, $stile_soldi); $mess_prenota .= "<b>{$costo_tariffa_tot_p} {$Euro} " . mex("TOTALE", "prenota.php") . "</b><br>"; if ($lista_app[$n_t]) { esegui_query("update {$tableprenota} set app_assegnabili = '" . $lista_app[$n_t] . "' where idprenota = '{$idprenota}' "); } # fine if ($lista_app[$n_t]) if ($assegnazioneapp[$n_t]) { esegui_query("update {$tableprenota} set assegnazioneapp = '" . $assegnazioneapp[$n_t] . "' where idprenota = '{$idprenota}' "); } # fine if ($assegnazioneapp[$n_t]) if ($caparra[$n_t]) { if ($caparra[$n_t] > $costo_tariffa_tot) { $caparra[$n_t] = $costo_tariffa_tot; } esegui_query("update {$tableprenota} set caparra = '" . $caparra[$n_t] . "' where idprenota = '{$idprenota}' "); $da_pagare = $costo_tariffa_tot - $caparra[$n_t]; $caparra_p = punti_in_num($caparra[$n_t], $stile_soldi); $da_pagare_p = punti_in_num($da_pagare, $stile_soldi); $mess_prenota .= "<br>" . mex("Caparra", "prenota.php") . ": <b>{$caparra_p}</b> {$Euro} (" . mex("resto da pagare", "prenota.php") . ": {$da_pagare_p} {$Euro}).<br>"; } # fine if ($caparra[$n_t]) $met_trovato = "NO"; if ($met_paga_caparra[$n_t] and $metodi_pagamento) { for ($num2 = 0; $num2 < count($metodi_pagamento); $num2++) { if ($met_paga_caparra[$n_t] == $metodi_pagamento[$num2]) { $met_trovato = "SI"; } } # fine for $num2 if ($met_trovato == "SI") { esegui_query("update {$tableprenota} set metodo_pagamento = '" . aggslashdb($met_paga_caparra[$n_t]) . "' where idprenota = '{$idprenota}' "); if (!$caparra) { $mess_prenota .= "<br>"; } $mess_prenota .= mex("Metodo pagamento caparra", "prenota.php") . ": <b>" . $met_paga_caparra[$n_t] . "</b>.<br>"; } # fine if ($met_trovato == "SI") } # fine if ($met_paga_caparra[$n_t] and $metodi_pagamento) if ($commissioni[$n_t]) { esegui_query("update {$tableprenota} set commissioni = '" . $commissioni[$n_t] . "' where idprenota = '{$idprenota}' "); $resto_comm = $costo_tariffa_tot - $commissioni[$n_t]; $commissioni_p = punti_in_num($commissioni[$n_t], $stile_soldi); $resto_comm_p = punti_in_num($resto_comm, $stile_soldi); if (!$caparra[$n_t] and $met_trovato == "NO") { $mess_prenota .= "<br>"; } $mess_prenota .= mex("Commissioni", "prenota.php") . ": <b>{$commissioni_p}</b> {$Euro} (" . mex("resto commissioni", "prenota.php") . ": {$resto_comm_p} {$Euro}).<br>"; } # fine if ($commissioni[$n_t]) # calcolo costi nulli, non letto e senza inventario da associare alla tariffa, tutti come se fossero "se possibile" if ($ins_costi_agg == "costi_nulli") { unset($num_letti_agg); unset($num_costi_presenti); $oggi_costo = date("Ymd", time() + C_DIFF_ORE * 3600); for ($num_costo = 0; $num_costo < $dati_ca['num']; $num_costo++) { if (!$dati_ca[$num_costo]['valore'] and !$dati_ca[$num_costo]['valore_perc'] and $dati_ca[$num_costo]['letto'] != "s" and !$dati_ca[$num_costo]['tipo_beniinv']) { $associa_costo = "NO"; $associa_costo_tariffa = associa_costo_a_tariffa($dati_ca, $num_costo, $tipotariffa[$n_t], $fineperiodo[$n_t] - $inizioperiodo[$n_t] + 1); if ($associa_costo_tariffa == "SI") { $associa_costo = "SI"; } if ($associa_costo_tariffa != "SI" and !$dati_ca[$num_costo]["incomp_" . $tipotariffa[$n_t]]) { if ($dati_ca[$num_costo]['assegna_con_num_prenota'] and count($inizioperiodo) >= $dati_ca[$num_costo]['assegna_con_num_prenota']) { $associa_costo = "SI"; } if ($dati_ca[$num_costo]['assegna_da_ini_prenota']) { $giorni_lim = substr($dati_ca[$num_costo]['assegna_da_ini_prenota'], 1); $limite = date("Ymd", mktime(0, 0, 0, substr($inizioperiodo_orig[$n_t], 5, 2), substr($inizioperiodo_orig[$n_t], 8, 2) - $giorni_lim, substr($inizioperiodo_orig[$n_t], 0, 4))); if (substr($dati_ca[$num_costo]['assegna_da_ini_prenota'], 0, 1) == ">" and $oggi_costo < $limite) { $associa_costo = "SI"; } if (substr($dati_ca[$num_costo]['assegna_da_ini_prenota'], 0, 1) == "<" and $oggi_costo > $limite) { $associa_costo = "SI"; } } # fine if ($dati_ca[$num_costo][assegna_da_ini_prenota]) } # fine if ($associa_costo_tariffa != "SI" and... if ($associa_costo == "SI") { #if ($dati_ca[$num_costo][tipo_val] == "q" and $costo_totale_presente = "SI") $associa_costo = "NO"; $settimane_costo = calcola_settimane_costo($tableperiodi, $dati_ca, $num_costo, $inizioperiodo[$n_t], $fineperiodo[$n_t], "", ""); calcola_moltiplica_costo($dati_ca, $num_costo, $moltiplica, $inizioperiodo[$n_t], $fineperiodo[$n_t], $settimane_costo, "", $numpersone[$n_t], $num_letti_agg); $num_costi_presenti_copia = $num_costi_presenti; $periodo_costo_trovato = trova_periodo_permesso_costo($dati_ca, $num_costo, $inizioperiodo[$n_t], $fineperiodo[$n_t], $settimane_costo); if ($periodo_costo_trovato == "NO") { $associa_costo = "NO"; } else { if (controlla_num_limite_costo($tablecostiprenota, $tableprenota, $dati_ca, $num_costo, $num_costi_presenti_copia, $inizioperiodo[$n_t], $fineperiodo[$n_t], $settimane_costo, $moltiplica) == "NO") { $associa_costo = "NO"; } } if ($associa_costo == "SI") { $num_costi_presenti = $num_costi_presenti_copia; $idcostiprenota = esegui_query("select max(idcostiprenota) from {$tablecostiprenota}"); $idcostiprenota = risul_query($idcostiprenota, 0, 0) + 1; $tipo_ca = $dati_ca[$num_costo]['tipo'] . $dati_ca[$num_costo]['tipo_val']; $valore_ca = $dati_ca[$num_costo]['valore']; $valore_perc_ca = $dati_ca[$num_costo]['valore_perc']; $associasett_ca = $dati_ca[$num_costo]['associasett']; if ($dati_ca[$num_costo]['var_percentuale'] != "s" and $dati_ca[$num_costo]['tipo_val'] != "f") { $tipo_ca = $dati_ca[$num_costo]['tipo'] . "f"; $moltiplica = 1; if ($dati_ca[$num_costo]['tipo'] == "s") { $settimane_costo = 1; $associasett_ca = "n"; } # fine if ($dati_ca[$num_costo][tipo] == "s") } # fine if ($dati_ca[$num_costo][var_percentuale] != "s" and... if ($dati_ca[$num_costo]['var_moltiplica'] == "s") { $varmoltiplica_ca = $dati_ca[$num_costo]['moltiplica'] . $dati_ca[$num_costo]['molt_max'] . $dati_ca[$num_costo]['molt_agg'] . "," . $dati_ca[$num_costo]['molt_max_num']; } else { $varmoltiplica_ca = "cx0,"; } if ($dati_ca[$num_costo]['var_numsett'] == "s") { $varnumsett_ca = $dati_ca[$num_costo]['numsett_orig']; } else { $varnumsett_ca = "c"; } if ($dati_ca[$num_costo]['var_periodip'] == "s") { $varperiodipermessi_ca = $dati_ca[$num_costo]['periodipermessi_orig']; } else { $varperiodipermessi_ca = ""; } $varbeniinv_ca = ""; $varappincompatibili_ca = ""; if ($dati_ca[$num_costo]['var_tariffea'] == "s") { $vartariffeassociate_ca = "p" . $dati_ca[$num_costo][$tipotariffa[$n_t]]; } else { $vartariffeassociate_ca = ""; } $vartariffeincomp_ca = ""; if ($dati_ca[$num_costo]['var_tariffei'] == "s") { for ($numtariffa = 1; $numtariffa <= $dati_tariffe['num']; $numtariffa++) { if ($dati_ca[$num_costo]["incomp_tariffa" . $numtariffa] == "i") { $vartariffeincomp_ca .= "," . $numtariffa; } } # fine for $numtariffa if ($vartariffeincomp_ca) { $vartariffeincomp_ca = substr($vartariffeincomp_ca, 1); } } # fine if ($dati_ca[$num_costo][var_tariffei] == "s") if ($dati_ca[$num_costo]['var_comb'] == "s") { $variazione_ca = $dati_ca[$num_costo]['combina']; } else { $variazione_ca = "n"; } $variazione_ca .= $dati_ca[$num_costo]['escludi_tot_perc']; esegui_query("insert into {$tablecostiprenota} (idcostiprenota,idprenota,tipo,nome,valore,associasett,settimane,moltiplica,letto,idntariffe,variazione,varmoltiplica,varnumsett,varperiodipermessi,varbeniinv,varappincompatibili,vartariffeassociate,vartariffeincomp,datainserimento,hostinserimento,utente_inserimento) values ('{$idcostiprenota}','{$idprenota}','{$tipo_ca}','" . aggslashdb($dati_ca[$num_costo]['nome']) . "','{$valore_ca}','{$associasett_ca}','{$settimane_costo}','{$moltiplica}','" . $dati_ca[$num_costo]['letto'] . "','" . $dati_ca[$num_costo]['id'] . "','{$variazione_ca}','{$varmoltiplica_ca}','{$varnumsett_ca}','{$varperiodipermessi_ca}','{$varbeniinv_ca}','{$varappincompatibili_ca}','{$vartariffeassociate_ca}','{$vartariffeincomp_ca}','{$datainserimento}','{$HOSTNAME}','{$id_utente_ins}')"); if (substr($tipo_ca, 1, 1) != "f") { esegui_query("update {$tablecostiprenota} set valore_perc = '{$valore_perc_ca}', arrotonda = '" . $dati_ca[$num_costo]['arrotonda'] . "' where idcostiprenota = '{$idcostiprenota}'"); } if ($dati_ca[$num_costo]['tasseperc']) { esegui_query("update {$tablecostiprenota} set tasseperc = '" . $dati_ca[$num_costo]['tasseperc'] . "' where idcostiprenota = '{$idcostiprenota}'"); } if (strcmp($dati_ca[$num_costo]['categoria'], "")) { esegui_query("update {$tablecostiprenota} set categoria = '" . $dati_ca[$num_costo]['categoria'] . "' where idcostiprenota = '{$idcostiprenota}'"); } } # fine if ($associa_costo == "SI") } # fine if ($associa_costo == "SI") } # fine if (!$dati_ca[$num_costo]['valore'] and !$dati_ca[$num_costo]['valore_perc'] and... } # fine for $num_costo } # fine if ($ins_costi_agg == "costi_nulli") if ($origine_prenota[$n_t] and $origini_prenota) { $orig_trovata = "NO"; for ($num2 = 0; $num2 < count($origini_prenota); $num2++) { if ($origine_prenota[$n_t] == $origini_prenota[$num2]) { $orig_trovata = "SI"; } } # fine for $num2 if ($orig_trovata == "SI") { $origine_prenota[$n_t] = aggslashdb($origine_prenota[$n_t]); esegui_query("update {$tableprenota} set origine = '" . $origine_prenota[$n_t] . "' where idprenota = '{$idprenota}' "); if (!$caparra[$n_t] and $met_trovato == "NO" and !$commissioni[$n_t]) { $mess_prenota .= "<br>"; } $mess_prenota .= mex("Origine", "prenota.php") . ": <b>" . stripslashes($origine_prenota[$n_t]) . "</b>.<br>"; } # fine if ($orig_trovata == "SI") } # fine if ($origine_prenota[$n_t] and $origini_prenota) if ($giorno_stima_checkin[$n_t] and $ora_stima_checkin[$n_t] and $min_stima_checkin[$n_t]) { if ($tipo_periodi == "g") { $giorni_periodo = $lunghezza_periodo; } else { $giorni_periodo = $lunghezza_periodo * 7; } if (controlla_num_pos($giorno_stima_checkin[$n_t]) == "SI" and $giorno_stima_checkin[$n_t] >= 1 and $giorno_stima_checkin[$n_t] <= 7 and $giorno_stima_checkin[$n_t] <= $giorni_periodo + 1) { $data_stima_checkin = esegui_query("select datainizio from {$tableperiodi} where idperiodi = '" . $inizioperiodo[$n_t] . "'"); $data_stima_checkin = risul_query($data_stima_checkin, 0, 'datainizio'); $data_ini_prenota_f = formatta_data($data_stima_checkin, $stile_data); $anno_dts = substr($data_stima_checkin, 0, 4); $mese_dts = substr($data_stima_checkin, 5, 2); $giorno_dts = substr($data_stima_checkin, 8, 2); $data_stima_checkin = date("Y-m-d", mktime(0, 0, 0, $mese_dts, $giorno_dts + $giorno_stima_checkin[$n_t] - 1, $anno_dts)); $stima_checkin = $data_stima_checkin . " " . $ora_stima_checkin[$n_t] . ":" . $min_stima_checkin[$n_t] . ":00"; if (preg_match("/[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:00/", $stima_checkin)) { esegui_query("update {$tableprenota} set checkout = '{$stima_checkin}' where idprenota = '{$idprenota}' "); $mess_prenota .= "<br>" . mex("Orario stimato di entrata", "prenota.php") . ": <b>" . substr(str_replace($data_ini_prenota_f, "", formatta_data($stima_checkin, $stile_data)), 0, -3) . "</b>.<br>"; } # fine if (preg_match("/[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:00/",$stima_checkin)) } # fine if (controlla_num_pos($giorno_stima_checkin) == "SI" and... } # fine if ($giorno_stima_checkin[$n_t] and $ora_stima_checkin[$n_t] and $min_stima_checkin[$n_t]) if ($commento[$n_t]) { $commento[$n_t] = htmlspecialchars($commento[$n_t]); $mess_prenota .= "<br>" . mex("Commento", "prenota.php") . ": " . $commento[$n_t] . "<br>"; $commento[$n_t] = aggslashdb($commento[$n_t]); esegui_query("update {$tableprenota} set commento = '" . $commento[$n_t] . "' where idprenota = '{$idprenota}' "); } # fine if ($commento[$n_t]) $mess_prenota .= "<br>" . mex("Prenotazione", "prenota.php") . " {$idprenota} " . mex("inserita", "prenota.php") . "!<br>"; if ($n_t != $num_tipologie) { $mess_prenota .= "<hr style=\"width: 95%\">"; } $lista_idprenota .= ",{$idprenota}"; $lista_idini .= "," . $inizioperiodo[$n_t]; $lista_idfine .= "," . $fineperiodo[$n_t]; #$costo_tot_mess = (double) $costo_tot_mess + (double) $costo_tariffa_tot; #$caparra_mess = (double) $caparra_mess + (double) $caparra; } # fine for $n_t $lista_idprenota = substr($lista_idprenota, 1); $lista_idini = substr($lista_idini, 1); $lista_idfine = substr($lista_idfine, 1); if ($prenota_vicine == "SI") { $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") $stato['inserita'] = "SI"; } # fine if ($inserire != "NO") if (!@is_array($stato) or $stato['inserita'] != "SI") { $stato['inserita'] = "NO"; } $stato['mess_errore'] = $mess_errore; $stato['mess_regola1'] = $mess_regola1; $stato['mess_prenota'] = $mess_prenota; $stato['lista_idprenota'] = $lista_idprenota; $stato['idinizioperiodo'] = $lista_idini; $stato['idfineperiodo'] = $lista_idfine; return $lista_idprenota; }
$nome_cassa = mex("cassa principale", $pag); } else { $nome_cassa = risul_query($casse, $num1, 'nome_cassa'); } $opt_casse .= "<option value=\"{$id_cassa}\">{$nome_cassa}</option>"; $hidden_cassa = "<input type=\"hidden\" name=\"id_cassa\" value=\"{$id_cassa}\">"; $num_casse_attive++; } # fine if ($attiva_casse_consentite == "n" or $casse_consentite_vett[$id_cassa] == "SI") } # fine for $num1 if (!$num_casse_attive) { echo "<div class=\"txtcenter\">" . mex("Nessuna cassa disponibile", $pag) . "</div>"; } else { $metodo_pagamento_txt = ""; $metodi_pagamento = esegui_query("select valpersonalizza from {$tablepersonalizza} where idpersonalizza = 'metodi_pagamento' and idutente = '{$id_utente}'"); $metodi_pagamento = risul_query($metodi_pagamento, 0, 'valpersonalizza'); if ($metodi_pagamento) { $metodo_pagamento_txt = "<tr><td>" . mex("Metodo di pagamento", $pag) . ":\n <select name=\"metodo_pagamento\">\n<option value=\"\">----</option>"; $metodi_pagamento = explode(",", $metodi_pagamento); for ($num1 = 0; $num1 < count($metodi_pagamento); $num1++) { $metodo_pagamento_txt .= "<option value=\"" . $metodi_pagamento[$num1] . "\"{$sel}>" . $metodi_pagamento[$num1] . "</option>"; } $metodo_pagamento_txt .= "</select> (" . mex("opzionale", $pag) . ").</td></tr>"; } # fine if ($metodi_pagamento) if ($priv_ins_entrate == "s") { echo "<h3>" . mex("Inserisci le entrate in cassa per l'anno", $pag) . " {$anno}.</h3>\n<form accept-charset=\"utf-8\" method=\"post\" action=\"costi.php\"><div>\n<input type=\"hidden\" name=\"anno\" value=\"{$anno}\">\n<input type=\"hidden\" name=\"id_sessione\" value=\"{$id_sessione}\"><br>\n<table style=\"margin-left: auto; margin-right: auto;\" cellspacing=2 cellpadding=5>\n<tr><td>"; if ($num_casse_attive == 1) { echo $hidden_cassa; } else {
$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"; $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"; $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") {
function aggiorna_tariffe_esporta($dati_tariffe, $tariffa_da, $idperiodo, $prezzoperiodo, $prezzoperiodop, $tableperiodi, &$agg_vett, &$num_agg) { if ($dati_tariffe[$tariffa_da]['esporta_prezzi']) { if (str_replace("-", "", $idperiodo) != $idperiodo) { $fine_per = explode("-", $idperiodo); $ini_per = $fine_per[0]; $fine_per = $fine_per[1]; } else { $ini_per = $idperiodo; $fine_per = $idperiodo; } # fine else if (str_replace("-","",$idperiodo) != $idperiodo) $tar_esporta = explode(",", $dati_tariffe[$tariffa_da]['esporta_prezzi']); for ($num_tar = 0; $num_tar < count($tar_esporta) - 1; $num_tar++) { $tariffa = "tariffa" . $tar_esporta[$num_tar]; if ($idperiodo == "opztariffa") { $tablenometariffe = $prezzoperiodop; $opztariffa = esegui_query("select * from {$tableperiodi} where {$tariffa}" . "p is not NULL and {$tariffa}" . "p != '' and {$tariffa}" . "p != '0' "); if (numlin_query($opztariffa)) { $opztariffa = "p"; } else { $opztariffa = "s"; } esegui_query("update {$tablenometariffe} set {$tariffa} = '{$opztariffa}' where idntariffe = '4' "); } else { $importa_percent = (double) $dati_tariffe[$tariffa]['val_importa']; $importa_arrotond = (double) $dati_tariffe[$tariffa]['arrotond_importa']; $tipo_percent = $dati_tariffe[$tariffa]['tipo_importa']; if ($tipo_percent == "s" and !$agg_vett[$tariffa]) { $agg_int = floor($importa_percent); $resto_int = $importa_percent - (double) $agg_int; $agg_gio = floor($agg_int / 7); for ($num1 = 1; $num1 <= 7; $num1++) { $agg_vett[$tariffa][$num1] = $agg_gio; } $resto = $agg_int - $agg_gio * 7; if ($resto >= 1) { $agg_vett[$tariffa][1]++; $resto--; } # fine if ($resto >= 1) for ($num1 = 7; $num1 > 7 - $resto; $num1--) { $agg_vett[$tariffa][$num1]++; } $agg_vett[$tariffa][1] += $resto_int; $num_agg[$tariffa]['s'] = 0; $num_agg[$tariffa]['p'] = 0; } # fine if ($tipo_percent == "s" and !$agg_vett[$tariffa]) if ($tipo_percent == "g") { $perc = $importa_percent; } for ($num1 = $ini_per; $num1 <= $fine_per; $num1++) { if ((string) $prezzoperiodo != "NO") { if ($tipo_percent == "s") { $num_agg[$tariffa]['s']++; $perc = $agg_vett[$tariffa][$num_agg[$tariffa]['s']]; if ($num_agg[$tariffa]['s'] == 7) { $num_agg[$tariffa]['s'] = 0; } } # fine if ($tipo_percent == "s") $prezzo_a = (double) $prezzoperiodo; if ($dati_tariffe[$tariffa]['parte_prezzo'] != "p") { if ($tipo_percent == "p") { $perc = (double) ($prezzo_a / 100.0 * $importa_percent); } if ($perc) { if ($tipo_percent == "p") { $perc = round($perc / $importa_arrotond, 0) * $importa_arrotond; } $prezzo_a = $prezzo_a + $perc; } # fine if ($perc) } # fine if ($dati_tariffe[$tariffa]['parte_prezzo'] != "p") if ($prezzo_a) { esegui_query("update {$tableperiodi} set {$tariffa} = '{$prezzo_a}' where idperiodi = '{$num1}'"); } else { esegui_query("update {$tableperiodi} set {$tariffa} = NULL where idperiodi = '{$num1}'"); } } # fine if ((string) $prezzoperiodo != "NO") if ((string) $prezzoperiodop != "NO") { if ($tipo_percent == "s") { $num_agg[$tariffa]['p']++; $perc = $agg_vett[$tariffa][$num_agg[$tariffa]['p']]; if ($num_agg[$tariffa]['p'] == 7) { $num_agg[$tariffa]['p'] = 0; } } # fine if ($tipo_percent == "s") $prezzo_a_p = (double) $prezzoperiodop; if ($dati_tariffe[$tariffa]['parte_prezzo'] != "f") { if ($tipo_percent == "p") { $perc = (double) ($prezzo_a_p / 100.0 * $importa_percent); } if ($perc) { if ($tipo_percent == "p") { $perc = round($perc / $importa_arrotond, 0) * $importa_arrotond; } $prezzo_a_p = $prezzo_a_p + $perc; } # fine if ($perc) } # fine if ($dati_tariffe[$tariffa]['parte_prezzo'] != "f") if ($prezzo_a_p) { esegui_query("update {$tableperiodi} set {$tariffa}" . "p = '{$prezzo_a_p}' where idperiodi = '{$num1}'"); } else { esegui_query("update {$tableperiodi} set {$tariffa}" . "p = NULL where idperiodi = '{$num1}'"); } } # fine if ((string) $prezzoperiodop != "NO") } # fine for $num1 } # fine else if ($idperiodo == "opztariffa") } # fine for $num_tar } # fine if ($dati_tariffe[$tipotariffa]['esporta_prezzi']) }
# 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/>. ################################################################################## $percorso_cartella_modello = esegui_query("select valpersonalizza from $PHPR_TAB_PRE"."personalizza where idpersonalizza = 'percorso_cartella_modello' and idutente = '1'"); $percorso_cartella_modello = risul_query($percorso_cartella_modello,0,'valpersonalizza'); if (defined('C_CARTELLA_CREA_MODELLI') and C_CARTELLA_CREA_MODELLI != "") { $c_cartella_crea_mod = C_CARTELLA_CREA_MODELLI; if (substr($c_cartella_crea_mod,-1) == "/") $c_cartella_crea_mod = substr($c_cartella_crea_mod,0,-1); if (substr($percorso_cartella_modello,0,strlen($c_cartella_crea_mod)) != $c_cartella_crea_mod) $percorso_cartella_modello = $c_cartella_crea_mod; } # fine if (defined("C_CARTELLA_CREA_MODELLI") and C_CARTELLA_CREA_MODELLI != "") else $c_cartella_crea_mod = ""; $perc_cart_mod_int = $percorso_cartella_modello; $perc_cart_mod_vett = explode(",",$percorso_cartella_modello); $num_perc_cart_mod_vett = count($perc_cart_mod_vett); $vett_tmp = ""; $num_vett_tmp = 0; for ($num_cart = 0 ; $num_cart < $num_perc_cart_mod_vett ; $num_cart++) { if (!$c_cartella_crea_mod or substr($perc_cart_mod_vett[$num_cart]."/",0,strlen($c_cartella_crea_mod."/")) == $c_cartella_crea_mod."/") { if (@is_dir($perc_cart_mod_vett[$num_cart])) {
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"); unset($info_periodi_ag); $app_agenzia_c = esegui_query("select * from $tableregole where app_agenzia != '' and motivazione2 = 'x' "); $info_periodi_ag['numero'] = numlin_query($app_agenzia_c); if ($info_periodi_ag['numero']) { for ($num1 = 0 ; $num1 < $info_periodi_ag['numero'] ; $num1++) { $info_periodi_ag['app'][$num1] = risul_query($app_agenzia_c,$num1,'app_agenzia'); $info_periodi_ag['ini'][$num1] = risul_query($app_agenzia_c,$num1,'iddatainizio'); $info_periodi_ag['fine'][$num1] = risul_query($app_agenzia_c,$num1,'iddatafine'); } # fine for $num1 inserisci_prenota_fittizie($info_periodi_ag,$profondita,$app_prenota_id,$inizio_prenota_id,$fine_prenota_id,$prenota_in_app_sett,$app_assegnabili_id); $app_orig_prenota_id = $app_prenota_id; } # fine if ($info_periodi_ag['numero']) $app_agenzia = esegui_query("select * from $tableregole where app_agenzia != '' and (motivazione2 != 'x' or motivazione2 is NULL) "); $regole2 = esegui_query("select * from $tableregole where tariffa_per_app != ''"); $dati_tariffe = dati_tariffe($tablenometariffe,"","",$tableregole); unlock_tabelle($tabelle_lock); $num_regole2 = numlin_query($regole2); unset($app_regola2_orig); for ($num1 = 0 ; $num1 < $num_regole2 ; $num1++) { $numtariffa_regola2 = str_replace("tariffa","",risul_query($regole2,$num1,'tariffa_per_app')); if ($tariffe_mostra[$numtariffa_regola2] == "SI") $app_regola2_orig[$numtariffa_regola2] = risul_query($regole2,$num1,'motivazione'); } # fine for $num1 $colonna_destra_tab_disp = "NO"; $nome_mese["01"] = $fr_Gennaio; $nome_mese["02"] = $fr_Febbraio;
function crea_quadro_disp($id_data_inizio_tab_disp, $num_colonne_tab_disp, $mostra_quadro_disp, $mostra_num_liberi, $app_consentito, $app_consentito_sett, $app_regola2_orig, $tipo_periodi, $numero_tariffe, $nome_tariffa, $dati_app, $prenota_in_app_sett, $app_orig_prenota_id, $tableperiodi, $allinea_disp = "", $dati_tariffe = "") { global $c_sfondo_tab_disp, $c_inisett_tab_disp, $c_libero_tab_disp, $c_occupato_tab_disp, $aper_font_tab_disp, $chiu_font_tab_disp, $fr_persone, $fr_persona, $nome_mese, $colonna_destra_tab_disp, $tablepersonalizza, $id_utente, $anno; if ($tipo_periodi == "s") { $colspan = 14; } else { $colspan = 2; } $num_raggr = 0; unset($nome_raggr); unset($app_ric_raggr); unset($tipotariffa); unset($num_app_ric_raggr); if ($mostra_quadro_disp == "app") { $mostra_num_liberi = "NO"; ksort($dati_app['maxocc']); reset($dati_app['maxocc']); while (list($key, $val) = each($dati_app['maxocc'])) { if ($app_consentito[$key] == "SI") { $app_ric_raggr[$num_raggr] = $key; $nome_raggr[$num_raggr] = $key; $num_raggr++; } # fine if ($app_consentito[$numapp] == "SI") } # fine while (list($key, $val) = each($dati_app['maxocc'])) } # fine if ($mostra_quadro_disp == "app") if ($mostra_quadro_disp == "reg2") { for ($numtariffa = 1; $numtariffa <= $numero_tariffe; $numtariffa++) { if ($app_regola2_orig[$numtariffa]) { $app_regola2 = explode(",", $app_regola2_orig[$numtariffa]); for ($num1 = 0; $num1 < count($app_regola2); $num1++) { if ($app_consentito[$app_regola2[$num1]] == "SI") { $app_ric_raggr[$num_raggr] .= "{$app_regola2[$num1]},"; } } if ($app_ric_raggr[$num_raggr]) { $app_ric_raggr[$num_raggr] = substr($app_ric_raggr[$num_raggr], 0, -1); $nome_raggr[$num_raggr] = str_replace(" ", " ", $nome_tariffa[$numtariffa]); $tipotariffa[$num_raggr] = "tariffa{$numtariffa}"; $num_raggr++; } # fine if ($app_ric_raggr[$num_raggr]) } # fine if ($app_regola2_orig[$numtariffa]) } # fine for $numtariffa } # fine if ($mostra_quadro_disp == "reg2") if ($mostra_quadro_disp == "pers") { asort($dati_app['maxocc']); reset($dati_app['maxocc']); $ultime_persone_casa = "vuoto"; while (list($key, $val) = each($dati_app['maxocc'])) { $persone_casa = $val; if ($persone_casa != $ultime_persone_casa) { if ($app_ric_raggr[$num_raggr]) { $app_ric_raggr[$num_raggr] = substr($app_ric_raggr[$num_raggr], 0, -1); if ($ultime_persone_casa) { if ($ultime_persone_casa == 1) { $nome_raggr[$num_raggr] = $ultime_persone_casa . " " . $fr_persona; } else { $nome_raggr[$num_raggr] = $ultime_persone_casa . " " . $fr_persone; } } else { $nome_raggr[$num_raggr] = "? {$fr_persone}"; } $num_raggr++; } # fine if ($app_ric_raggr[$num_raggr]) $ultime_persone_casa = $persone_casa; } # fine if ($persone_casa != $ultimepersone_casa) if ($app_consentito[$key] == "SI") { $app_ric_raggr[$num_raggr] .= "{$key},"; } } # fine while (list($key, $val) = each($dati_app[maxocc])) if ($app_ric_raggr[$num_raggr]) { $app_ric_raggr[$num_raggr] = substr($app_ric_raggr[$num_raggr], 0, -1); if ($ultime_persone_casa) { if ($ultime_persone_casa == 1) { $nome_raggr[$num_raggr] = $ultime_persone_casa . " " . $fr_persona; } else { $nome_raggr[$num_raggr] = $ultime_persone_casa . " " . $fr_persone; } } else { $nome_raggr[$num_raggr] = "? {$fr_persone}"; } $num_raggr++; } # fine if ($app_ric_raggr[$num_raggr]) } # fine if ($mostra_quadro_disp == "pers") $righe_tab_disp = ""; for ($num1 = 0; $num1 < $num_raggr; $num1++) { if ($app_ric_raggr[$num1]) { $righe_tab_disp .= "<tr><td style=\"text-align: right;\">{$aper_font_tab_disp}" . $nome_raggr[$num1] . "{$chiu_font_tab_disp}</td>"; $max_app_liberi = explode(",", $app_ric_raggr[$num1]); $max_app_liberi = count($max_app_liberi); $app_ric_colonna = "," . $app_ric_raggr[$num1] . ","; for ($num2 = 0; $num2 < $num_colonne_tab_disp; $num2++) { $id_periodo = $id_data_inizio_tab_disp + $num2; $num_app_liberi = $max_app_liberi; if ($app_consentito_sett[",attivo,"] == "SI") { if ($num2 == 0) { $app_ric_col_vett = explode(",", $app_ric_raggr[$num1]); $num_app_ric_col = count($app_ric_col_vett); } # fine if ($num2 == 0) $app_ric_colonna = "," . $app_ric_raggr[$num1] . ","; for ($num3 = 0; $num3 < $num_app_ric_col; $num3++) { if ($app_consentito_sett[$app_ric_col_vett[$num3]][$id_periodo] != "SI") { $app_ric_colonna = str_replace("," . $app_ric_col_vett[$num3] . ",", ",", $app_ric_colonna); $num_app_liberi--; } # fine if ($app_consentito_sett[$app_ric_col_vett[$num3]][$id_periodo] != "SI") } # fine for $num3 } # fine if ($app_consentito_sett[",attivo,"] == "SI") $pren_pres_in_lista = ""; $lista_prenota_periodo = ""; $num_lista_pren_per = 0; lista_prenota_periodo($id_periodo, $id_periodo, $dati_app, $prenota_in_app_sett, $pren_pres_in_lista, $lista_prenota_periodo, $num_lista_pren_per); for ($num3 = 0; $num3 < $num_lista_pren_per; $num3++) { if (str_replace("," . $app_orig_prenota_id[$lista_prenota_periodo[$num3]] . ",", "", $app_ric_colonna) != $app_ric_colonna) { $num_app_liberi--; } } # fine for $num3 if ($mostra_quadro_disp == "reg2" and $dati_tariffe and $dati_tariffe[$tipotariffa[$num1]]['chiusa'][$id_periodo]) { $num_app_liberi = 0; } if ($num_app_liberi > 0) { $color = $c_libero_tab_disp; } else { $color = $c_occupato_tab_disp; } if ($num_app_liberi > 0 and $mostra_num_liberi == "SI") { $val_liberi = $num_app_liberi; } else { $val_liberi = " "; } if ($num2 == 0 and $allinea_disp == "SI") { $colspan_v = $colspan / 2; } else { $colspan_v = $colspan; } $righe_tab_disp .= "<td style=\"background-color: {$color};\" colspan=\"{$colspan_v}\">{$aper_font_tab_disp}{$val_liberi}{$chiu_font_tab_disp}</td>"; } # fine for $num2 if ($colonna_destra_tab_disp != "NO") { $righe_tab_disp .= "<td>{$aper_font_tab_disp}" . $nome_raggr[$num1] . "{$chiu_font_tab_disp}</td></tr>"; } else { $righe_tab_disp .= "</tr>"; } } # fine if ($app_ric_raggr[$num1]) } # fine for $num1 if ($righe_tab_disp) { if ($tipo_periodi == "s") { $ripeti_giorni = 7; } else { $ripeti_giorni = 1; if (!$id_utente) { $id_utente_gio = 1; } else { $id_utente_gio = $id_utente; } $giorno_vedi_ini_sett = esegui_query("select valpersonalizza_num from {$tablepersonalizza} where idpersonalizza = 'giorno_vedi_ini_sett{$anno}' and idutente = '{$id_utente_gio}'"); if (numlin_query($giorno_vedi_ini_sett) == 1) { $giorno_vedi_ini_sett = risul_query($giorno_vedi_ini_sett, 0, 'valpersonalizza_num'); } else { $giorno_vedi_ini_sett = 0; } } # fine else if ($tipo_periodi == "s") $ultimo_mese = ""; $num_col_mese = 0; $riga_mese = "<tr><td rowspan=\"2\">{$aper_font_tab_disp} {$chiu_font_tab_disp}</td>"; $riga_giorni = "<tr>"; for ($num1 = 0; $num1 < $num_colonne_tab_disp + 1; $num1++) { if ($allinea_disp != "SI" or $num1 != $num_colonne_tab_disp) { if ($num1 != $num_colonne_tab_disp) { $id_periodo = $id_data_inizio_tab_disp + $num1; } else { $id_periodo = $id_data_inizio_tab_disp + $num1 - 1; } $riga_periodo = esegui_query("select * from {$tableperiodi} where idperiodi = '{$id_periodo}'"); if ($num1 != $num_colonne_tab_disp) { $inizio_periodo = risul_query($riga_periodo, 0, 'datainizio'); } else { $inizio_periodo = risul_query($riga_periodo, 0, 'datafine'); } $inizio_periodo = explode("-", $inizio_periodo); $g_inizio_periodo = $inizio_periodo[2]; $m_inizio_periodo = $inizio_periodo[1]; $a_inizio_periodo = $inizio_periodo[0]; if ($num1 == $num_colonne_tab_disp) { $ripeti_giorni = 1; } for ($num2 = 0; $num2 < $ripeti_giorni; $num2++) { $timestamp_periodo = mktime(0, 0, 0, $m_inizio_periodo, $g_inizio_periodo + $num2, $a_inizio_periodo); $g_mostra = date("d", $timestamp_periodo); $m_mostra = date("m", $timestamp_periodo); if ($ultimo_mese != $m_mostra) { if ($ultimo_mese) { $a_mostra = date("Y", mktime(0, 0, 0, $m_inizio_periodo, $g_inizio_periodo + $num2 - 1, $a_inizio_periodo)); $riga_mese .= "<td colspan=\"{$num_col_mese}\">{$aper_font_tab_disp}"; if ($num_col_mese > 7) { $riga_mese .= $nome_mese[$ultimo_mese] . " {$a_mostra}"; } else { $riga_mese .= " "; } $riga_mese .= "{$chiu_font_tab_disp}</td>"; $num_col_mese = 0; } # fine if ($ultimo_mese) $ultimo_mese = $m_mostra; } # fine if ($ultimo_mese != $m_mostra) if (($num1 != 0 or $num2 != 0) and $num1 != $num_colonne_tab_disp) { $num_col_mese = $num_col_mese + 2; } else { $num_col_mese++; } $bgcolor = ""; if ($tipo_periodi != "s") { $giorno_sett_corr = date("w", $timestamp_periodo); if ($giorno_sett_corr == $giorno_vedi_ini_sett) { $bgcolor = "{$c_inisett_tab_disp}"; } } else { if ($num2 == 0) { $bgcolor = "{$c_inisett_tab_disp}"; } } $riga_giorni .= "<td"; if ($bgcolor) { $riga_giorni .= " style=\"background-color: {$bgcolor};\""; } if (($num1 != 0 or $num2 != 0) and $num1 != $num_colonne_tab_disp) { $riga_giorni .= " colspan=2"; } $riga_giorni .= ">{$aper_font_tab_disp}{$g_mostra}{$chiu_font_tab_disp}</td>"; } # fine for $num2 } # fine if ($allinea_disp != "SI" or $num1 != $num_colonne_tab_disp) } # fine for $num1 $a_mostra = date("Y", mktime(0, 0, 0, $m_inizio_periodo, $g_inizio_periodo + $num2 - 1, $a_inizio_periodo)); $riga_mese .= "<td colspan=\"{$num_col_mese}\">{$aper_font_tab_disp}"; if ($num_col_mese > 6) { $riga_mese .= $nome_mese[$ultimo_mese] . " {$a_mostra}"; } else { $riga_mese .= " "; } if ($colonna_destra_tab_disp != "NO") { $riga_mese .= "{$chiu_font_tab_disp}</td><td rowspan=\"2\">{$aper_font_tab_disp} {$chiu_font_tab_disp}</td></tr>"; } else { $riga_mese .= "{$chiu_font_tab_disp}</td></tr>"; } $riga_giorni .= "</tr>"; $righe_tab_disp = "{$riga_mese}\n{$riga_giorni}\n{$righe_tab_disp}"; } # fine if ($righe_tab_disp) return $righe_tab_disp; }
function crea_nuovo_anno($anno, $PHPR_TAB_PRE, $DATETIME, $tipo_periodi, $giorno_ini_fine, $mese_ini, $mese_fine, $importa_anno_prec, $silenzio, $pag) { allunga_tempo_limite(); global $lingua_mex, $LIKE, $ILIKE, $PHPR_DB_TYPE; $lingua_mex_orig = $lingua_mex; include_once "./includes/funzioni_menu.php"; include C_DATA_PATH . "/lingua.php"; $lingua_mex = $lingua[1]; $tableanni = $PHPR_TAB_PRE . "anni"; $tableprivilegi = $PHPR_TAB_PRE . "privilegi"; $tabletransazioni = $PHPR_TAB_PRE . "transazioni"; $tabletransazioniweb = $PHPR_TAB_PRE . "transazioniweb"; $tablepersonalizza = $PHPR_TAB_PRE . "personalizza"; $tablemessaggi = $PHPR_TAB_PRE . "messaggi"; $tableinterconnessioni = $PHPR_TAB_PRE . "interconnessioni"; $tablecontratti = $PHPR_TAB_PRE . "contratti"; $tableutenti = $PHPR_TAB_PRE . "utenti"; $tablerelclienti = $PHPR_TAB_PRE . "relclienti"; if ($PHPR_DB_TYPE == "mysql" or $PHPR_DB_TYPE == "mysqli") { @esegui_query("SET default_storage_engine=MYISAM", 1); } $filelock = fopen(C_DATA_PATH . "/anni.lock", "w+"); if ($filelock) { flock($filelock, 2); $anno_esistente = esegui_query("select * from {$tableanni} where idanni = {$anno}"); if (numlin_query($anno_esistente) == 0) { if (C_CAMBIA_TIPO_PERIODI == "NO") { $tipo_periodi_esistenti = esegui_query("select * from {$tableanni} order by idanni desc"); if (numlin_query($tipo_periodi_esistenti) != 0) { $tipo_periodi = risul_query($tipo_periodi_esistenti, 0, 'tipo_periodi'); } } # fine if (C_CAMBIA_TIPO_PERIODI == "NO") if ($tipo_periodi != "g") { $tipo_periodi = "s"; } // creo la tabella con periodi settimanali e prezzi e la tabella con i nomi delle tariffe $tableperiodi = $PHPR_TAB_PRE . "periodi" . $anno; $tablenometariffe = $PHPR_TAB_PRE . "ntariffe" . $anno; if ($importa_anno_prec == "SI") { $anno_prec = $anno - 1; $tablenometariffe_prec = $PHPR_TAB_PRE . "ntariffe" . $anno_prec; $num_tariffe_tab = esegui_query("select nomecostoagg from {$tablenometariffe_prec} where idntariffe = 1"); $num_tariffe_tab = risul_query($num_tariffe_tab, 0, 'nomecostoagg'); } else { $num_tariffe_tab = 8; } $query = "create table {$tableperiodi} (idperiodi integer primary key, datainizio date not null, datafine date"; $query2 = "create table {$tablenometariffe} (idntariffe integer, nomecostoagg varchar(40), tipo_ca varchar(2), valore_ca float8, valore_perc_ca float8, arrotonda_ca float4, tasseperc_ca float4, associasett_ca varchar(1), numsett_ca varchar(20), moltiplica_ca text, periodipermessi_ca text, beniinv_ca text, appincompatibili_ca text, variazione_ca varchar(20), mostra_ca varchar(10), categoria_ca text, letto_ca varchar(1), numlimite_ca integer, regoleassegna_ca varchar(30), utente_inserimento integer"; $num_col_tariffe_db = $num_tariffe_tab; if ($num_col_tariffe_db < 12) { $num_col_tariffe_db = 12; } for ($num1 = 1; $num1 <= $num_col_tariffe_db; $num1++) { $nome_nuova_tariffa = "tariffa" . $num1; $query .= ", {$nome_nuova_tariffa} float8, {$nome_nuova_tariffa}" . "p float8"; $query2 .= ", {$nome_nuova_tariffa} varchar(40)"; } # fine for $num1 $crea_tab = esegui_query($query . ")"); if ($crea_tab) { esegui_query($query2 . ")"); function estrai_col_tabella($col_table) { $col_table = explode(",", $col_table); for ($num1 = 0; $num1 < count($col_table); $num1++) { $col = explode(" ", trim($col_table[$num1])); $tutte_col .= $col[0] . ","; } # fine for $num1 return substr($tutte_col, 0, -1); } # fine function estrai_col_tabella # Creo la tabella delle prernotazioni $tableprenotazioni = $PHPR_TAB_PRE . "prenota" . $anno; $col_tableprenota = "idprenota integer primary key, idclienti integer, idappartamenti varchar(100), iddatainizio integer, iddatafine integer, assegnazioneapp varchar(4), app_assegnabili text, num_persone integer, idprenota_compagna text, tariffa text, tariffesettimanali text, incompatibilita text, sconto float8, tariffa_tot float8, caparra float8, commissioni float8, tasseperc float4, pagato float8, metodo_pagamento text, codice varchar(10), origine varchar(70), commento text, conferma varchar(4), checkin {$DATETIME}, checkout {$DATETIME}, id_anni_prec text, datainserimento {$DATETIME}, hostinserimento varchar(50), data_modifica {$DATETIME}, utente_inserimento integer "; esegui_query("create table {$tableprenotazioni} ({$col_tableprenota})"); $col_tableprenota = estrai_col_tabella($col_tableprenota); # Creo la tabella con i costi aggiuntivi delle prenotazioni $tablecostiprenota = $PHPR_TAB_PRE . "costiprenota" . $anno; $col_tablecostiprenota = "idcostiprenota integer primary key, idprenota integer, tipo varchar(2), nome varchar(40), valore float8, valore_perc float8, arrotonda float4, tasseperc float4, associasett varchar(1), settimane text, moltiplica text, categoria text, letto varchar(1), numlimite integer, idntariffe integer, variazione varchar(10), varmoltiplica text, varnumsett varchar(20), varperiodipermessi text, varbeniinv text, varappincompatibili text, vartariffeassociate varchar(10), vartariffeincomp text, datainserimento {$DATETIME}, hostinserimento varchar(50), utente_inserimento integer"; esegui_query("create table {$tablecostiprenota} ({$col_tablecostiprenota})"); $col_tablecostiprenota = estrai_col_tabella($col_tablecostiprenota); crea_indice($tablecostiprenota, "idprenota", $PHPR_TAB_PRE . "iidpcostiprenota" . $anno); esegui_query("insert into {$tablecostiprenota} (idcostiprenota,numlimite) values ('1','1')"); # Creo la tabella le relazioni tra prenotazioni e clienti non titolari $tablerclientiprenota = $PHPR_TAB_PRE . "rclientiprenota" . $anno; $col_tablerclientiprenota = "idprenota integer, idclienti integer, num_ordine integer, parentela varchar(70), datainserimento {$DATETIME}, hostinserimento varchar(50), utente_inserimento integer"; esegui_query("create table {$tablerclientiprenota} ({$col_tablerclientiprenota})"); $col_tablerclientiprenota = estrai_col_tabella($col_tablerclientiprenota); crea_indice($tablerclientiprenota, "idprenota", $PHPR_TAB_PRE . "iidprclientiprenota" . $anno); # Creo la tabella per le regole di assegnazione $tableregole = $PHPR_TAB_PRE . "regole" . $anno; $col_tableregole = "idregole integer, app_agenzia varchar(100), tariffa_chiusa text, tariffa_per_app text, tariffa_per_utente text, tariffa_per_persone text, tariffa_commissioni integer, iddatainizio integer, iddatafine integer, motivazione text, motivazione2 text"; esegui_query("create table {$tableregole} ({$col_tableregole})"); $col_tableregole = estrai_col_tabella($col_tableregole); # Creo la tabella con i costi di gestione $tablecosti = $PHPR_TAB_PRE . "costi" . $anno; $col_tablecosti = "idcosti integer unique,nome_costo text, val_costo float8, tipo_costo text, nome_cassa varchar(70), persona_costo text, provenienza_costo text, metodo_pagamento text, datainserimento {$DATETIME}, hostinserimento varchar(50), utente_inserimento integer"; esegui_query("create table {$tablecosti} ({$col_tablecosti})"); $col_tablecosti = estrai_col_tabella($col_tablecosti); # Creo la tabella per la storia entrate-uscite $tablesoldi = $PHPR_TAB_PRE . "soldi" . $anno; $col_tablesoldi = "idsoldi integer unique, motivazione text, id_pagamento text, metodo_pagamento text, saldo_prenota float8, saldo_cassa float8, soldi_prima float8, data_inserimento {$DATETIME}, utente_inserimento integer"; esegui_query("create table {$tablesoldi} ({$col_tablesoldi})"); $col_tablesoldi = estrai_col_tabella($col_tablesoldi); $tabelle_lock = array($tableanni, $tableprenotazioni, $tablecostiprenota, $tablerclientiprenota, $tablenometariffe, $tableperiodi, $tablerelclienti, $tablecosti, $tableregole, $tablesoldi, $tablepersonalizza, $tableprivilegi, $tabletransazioni); if ($importa_anno_prec == "SI") { $anno_prec = $anno - 1; $tablenometariffe_prec = $PHPR_TAB_PRE . "ntariffe" . $anno_prec; $tableprenota_prec = $PHPR_TAB_PRE . "prenota" . $anno_prec; $tablecostiprenota_prec = $PHPR_TAB_PRE . "costiprenota" . $anno_prec; $tablerclientiprenota_prec = $PHPR_TAB_PRE . "rclientiprenota" . $anno_prec; $tableperiodi_prec = $PHPR_TAB_PRE . "periodi" . $anno_prec; $tableregole_prec = $PHPR_TAB_PRE . "regole" . $anno_prec; $tablesoldi_prec = $PHPR_TAB_PRE . "soldi" . $anno_prec; $tablecosti_prec = $PHPR_TAB_PRE . "costi" . $anno_prec; $tabelle_lock = array($tableanni, $tableprenota_prec, $tableprenotazioni, $tablecostiprenota_prec, $tablecostiprenota, $tablerclientiprenota_prec, $tablerclientiprenota, $tablenometariffe, $tableperiodi, $tablerelclienti, $tablecosti_prec, $tablecosti, $tableregole, $tablesoldi_prec, $tablesoldi, $tableinterconnessioni, $tablemessaggi, $tablepersonalizza, $tableprivilegi, $tabletransazioni); $altre_tab_lock = array($tablenometariffe_prec, $tableperiodi_prec, $tableregole_prec, $tablecontratti, $tableutenti); $max_data_ini_prec = esegui_query("select max(datainizio) from {$tableperiodi_prec}"); if (numlin_query($max_data_ini_prec) != 0) { $max_data_ini_prec = risul_query($max_data_ini_prec, 0, 0); $max_mese_prec = 0; if (substr($max_data_ini_prec, 0, 4) >= $anno) { $max_mese_prec = substr($max_data_ini_prec, 5, 2); } if (substr($max_data_ini_prec, 0, 4) == $anno + 1) { $max_mese_prec = $max_mese_prec + 12; } if (substr($max_data_ini_prec, 0, 4) == $anno + 2) { $max_mese_prec = $max_mese_prec + 24; } if (substr($max_data_ini_prec, 0, 4) == $anno + 3) { $max_mese_prec = $max_mese_prec + 36; } if (substr($max_data_ini_prec, 0, 4) == $anno + 4) { $max_mese_prec = $max_mese_prec + 48; } if ($max_mese_prec > $mese_fine) { $mese_fine = $max_mese_prec; } $data_ini_agg = date("Y-m-d", mktime(0, 0, 0, substr($max_data_ini_prec, 5, 2) + 1, 1, substr($max_data_ini_prec, 0, 4))); } else { $max_data_ini_prec = ""; $max_mese_prec = ""; $data_ini_agg = ""; } # fine else if (numlin_query($max_data_ini_prec) != 0) } else { unset($altre_tab_lock); } $tabelle_lock = lock_tabelle($tabelle_lock, $altre_tab_lock); # Elimino tutte le transazioni, potrebbero contenere date dell'anno creato esegui_query("delete from {$tabletransazioni}"); # Inserisco l'anno nella tabella anni esegui_query("insert into {$tableanni} (idanni,tipo_periodi) values ('{$anno}','{$tipo_periodi}')"); esegui_query("insert into {$tablecosti} (idcosti) values ('0')"); esegui_query("insert into {$tablesoldi} (idsoldi,motivazione,soldi_prima) values ('1','soldi_prenotazioni_cancellate','0')"); // trovo il primo giorno di inizio/fine dell'anno (nel caso di periodi settimanali) $numgiorno = 1; $giorno_ini_fine = (string) $giorno_ini_fine; if ($giorno_ini_fine != "0" and $giorno_ini_fine != "1" and $giorno_ini_fine != "2" and $giorno_ini_fine != "3" and $giorno_ini_fine != "4" and $giorno_ini_fine != "5" and $giorno_ini_fine != "6") { $giorno_ini_fine = 6; } do { $nomegiorno = date("w", mktime(0, 0, 0, 1, $numgiorno, $anno)); $numgiorno = $numgiorno + 1; } while ($nomegiorno != $giorno_ini_fine); $numgiorno = $numgiorno - 1; if ($tipo_periodi == "g") { $numgiorno = 1; $aggiungi_giorni = 1; } else { $aggiungi_giorni = 7; } if ($mese_ini > $mese_fine) { if ($silenzio != "SI") { echo mex("I mesi erano indicati erroneamente, sono stati inseriti i mesi da Gennaio a Dicembre", $pag) . ".<br>"; } $mese_ini = 1; if ($mese_fine < 12) { $mese_fine = 12; } } # fine if ($mese_ini > $mese_fine) $anno_fine = $anno + 3; $idperiodi = 1; $fileaperto = fopen(C_DATA_PATH . "/selectperiodi{$anno}.1.php", "a+"); flock($fileaperto, 2); $date_option = ""; $n_date_menu = 0; do { $datainizio = date("Y-m-d", mktime(0, 0, 0, 1, $numgiorno, $anno)); $annocreato = date("Y", mktime(0, 0, 0, 1, $numgiorno, $anno)); $mesecreato = date("n", mktime(0, 0, 0, 1, $numgiorno, $anno)); $nome_giorno = date("D", mktime(0, 0, 0, 1, $numgiorno, $anno)); $nome_mese = date("M", mktime(0, 0, 0, 1, $numgiorno, $anno)); $numero_giorno = date("d", mktime(0, 0, 0, 1, $numgiorno, $anno)); $numero_anno = $annocreato; $numgiorno = $numgiorno + $aggiungi_giorni; $datafine = date("Y-m-d", mktime(0, 0, 0, 1, $numgiorno, $anno)); $annocreato2 = date("Y", mktime(0, 0, 0, 1, $numgiorno, $anno)); $mesecreato2 = date("n", mktime(0, 0, 0, 1, $numgiorno, $anno)); if ($annocreato > $anno) { $diff = $annocreato - $anno; $mesecreato = $diff * 12 + $mesecreato; } # fine if ($annocreato > $anno) if ($annocreato2 > $anno) { $diff = $annocreato2 - $anno; $mesecreato2 = $diff * 12 + $mesecreato2; } # fine if ($annocreato2 > $anno) if ($mesecreato >= $mese_ini and $mesecreato <= $mese_fine) { esegui_query("insert into {$tableperiodi} ( idperiodi, datainizio, datafine) values ( {$idperiodi}, '{$datainizio}', '{$datafine}')"); if ($tipo_periodi == "g") { if ($nome_giorno == "Sun") { $nome_giorno = mex(" Do", $pag); } if ($nome_giorno == "Mon") { $nome_giorno = mex(" Lu", $pag); } if ($nome_giorno == "Tue") { $nome_giorno = mex(" Ma", $pag); } if ($nome_giorno == "Wed") { $nome_giorno = mex(" Me", $pag); } if ($nome_giorno == "Thu") { $nome_giorno = mex(" Gi", $pag); } if ($nome_giorno == "Fri") { $nome_giorno = mex(" Ve", $pag); } if ($nome_giorno == "Sat") { $nome_giorno = mex(" Sa", $pag); } } else { $nome_giorno = ""; } if ($nome_mese == "Jan") { $nome_mese = mex("Gen", $pag); } if ($nome_mese == "Feb") { $nome_mese = mex("Feb", $pag); } if ($nome_mese == "Mar") { $nome_mese = mex("Mar", $pag); } if ($nome_mese == "Apr") { $nome_mese = mex("Apr", $pag); } if ($nome_mese == "May") { $nome_mese = mex("Mag", $pag); } if ($nome_mese == "Jun") { $nome_mese = mex("Giu", $pag); } if ($nome_mese == "Jul") { $nome_mese = mex("Lug", $pag); } if ($nome_mese == "Aug") { $nome_mese = mex("Ago", $pag); } if ($nome_mese == "Sep") { $nome_mese = mex("Set", $pag); } if ($nome_mese == "Oct") { $nome_mese = mex("Ott", $pag); } if ($nome_mese == "Nov") { $nome_mese = mex("Nov", $pag); } if ($nome_mese == "Dec") { $nome_mese = mex("Dic", $pag); } if (!$date_option) { $a_ini_menu = substr($datainizio, 0, 4); $m_ini_menu = substr($datainizio, 5, 2) - 1; $g_ini_menu = substr($datainizio, 8, 2); } # fine if (!$date_option) $n_date_menu++; $date_option .= "<option value=\\\"{$datainizio}\\\">{$nome_mese} {$numero_giorno}{$nome_giorno}, {$numero_anno}</option>\n"; $idperiodi = $idperiodi + 1; $datafine2 = $datafine; } # fine if ($mesecreato >= $mese_ini and $mesecreato <= $mese_fine) } while ($annocreato2 <= $anno_fine or $mesecreato2 == 48); $numero_mese = substr($datafine2, 5, 2); if ($numero_mese == "01") { $nome_mese = mex("Gen", $pag); } if ($numero_mese == "02") { $nome_mese = mex("Feb", $pag); } if ($numero_mese == "03") { $nome_mese = mex("Mar", $pag); } if ($numero_mese == "04") { $nome_mese = mex("Apr", $pag); } if ($numero_mese == "05") { $nome_mese = mex("Mag", $pag); } if ($numero_mese == "06") { $nome_mese = mex("Giu", $pag); } if ($numero_mese == "07") { $nome_mese = mex("Lug", $pag); } if ($numero_mese == "08") { $nome_mese = mex("Ago", $pag); } if ($numero_mese == "09") { $nome_mese = mex("Set", $pag); } if ($numero_mese == "10") { $nome_mese = mex("Ott", $pag); } if ($numero_mese == "11") { $nome_mese = mex("Nov", $pag); } if ($numero_mese == "12") { $nome_mese = mex("Dic", $pag); } $numero_giorno = substr($datafine2, 8, 2); $numero_anno = substr($datafine2, 0, 4); $n_date_menu++; $date_option .= "<option value=\\\"{$datafine2}\\\">{$nome_mese} {$numero_giorno}, {$numero_anno}</option>\n"; fwrite($fileaperto, "<?php \n\n\$y_ini_menu[0] = \"{$a_ini_menu}\";\n\$m_ini_menu[0] = \"{$m_ini_menu}\";\n\$d_ini_menu[0] = \"{$g_ini_menu}\";\n\$n_dates_menu[0] = \"{$n_date_menu}\";\n\$d_increment[0] = \"{$aggiungi_giorni}\";\n\$d_names = \"\\\"" . mex(" Do", $pag) . "\\\",\\\"" . mex(" Lu", $pag) . "\\\",\\\"" . mex(" Ma", $pag) . "\\\",\\\"" . mex(" Me", $pag) . "\\\",\\\"" . mex(" Gi", $pag) . "\\\",\\\"" . mex(" Ve", $pag) . "\\\",\\\"" . mex(" Sa", $pag) . "\\\"\";\n\$m_names = \"\\\"" . mex("Gen", $pag) . "\\\",\\\"" . mex("Feb", $pag) . "\\\",\\\"" . mex("Mar", $pag) . "\\\",\\\"" . mex("Apr", $pag) . "\\\",\\\"" . mex("Mag", $pag) . "\\\",\\\"" . mex("Giu", $pag) . "\\\",\\\"" . mex("Lug", $pag) . "\\\",\\\"" . mex("Ago", $pag) . "\\\",\\\"" . mex("Set", $pag) . "\\\",\\\"" . mex("Ott", $pag) . "\\\",\\\"" . mex("Nov", $pag) . "\\\",\\\"" . mex("Dic", $pag) . "\\\"\";\n\n\$dates_options_list = \"\n\n{$date_option}\n\";\n\n?>"); flock($fileaperto, 3); fclose($fileaperto); if ($importa_anno_prec == "SI" and @is_file(C_DATA_PATH . "/selperiodimenu" . ($anno - 1) . ".1.php")) { estendi_menu_date(C_DATA_PATH . "/selperiodimenu" . ($anno - 1) . ".1.php", C_DATA_PATH . "/selperiodimenu{$anno}.1.php", $tipo_periodi, date("Y-m-d", mktime(0, 0, 0, $mese_ini, 1, $anno)), $data_ini_agg, date("Y-m-d", mktime(0, 0, 0, $mese_fine + 1, 1, $anno)), $anno, $pag); } else { copy(C_DATA_PATH . "/selectperiodi{$anno}.1.php", C_DATA_PATH . "/selperiodimenu{$anno}.1.php"); } $lista_clienti_importati = ""; # Importo eventuali prenotazioni, tariffe e regole dell'anno precedente if ($importa_anno_prec == "SI") { $tableprenota = $tableprenotazioni; $data_inizio_periodi = esegui_query("select * from {$tableperiodi} where idperiodi = 1"); $data_inizio_periodi = risul_query($data_inizio_periodi, 0, 'datainizio'); $ini_periodo_interferenza = esegui_query("select * from {$tableperiodi_prec} where datainizio = '{$data_inizio_periodi}'"); $num_periodo_interferenza = numlin_query($ini_periodo_interferenza); $tipo_periodi_prec = esegui_query("select * from {$tableanni} where idanni = {$anno_prec}"); $tipo_periodi_prec = risul_query($tipo_periodi_prec, 0, 'tipo_periodi'); if ($tipo_periodi_prec != $tipo_periodi) { $num_periodo_interferenza = 0; } if ($num_periodo_interferenza == 0) { if ($silenzio != "SI") { echo mex("Non ci sono periodi che riguardano il ", $pag) . $anno . mex(" nel ", $pag) . $anno_prec . mex(", o il giorno di inizio/fine locazione era differente, sono stati importati solo i data riguardanti costi aggiuntivi, caparra, nome delle tariffe, privilegi degli utenti e regole di assegnazione 2 e 3", $pag) . ".<br>"; } } else { $id_data_fine_periodi = esegui_query("select max(idperiodi) from {$tableperiodi}"); $id_data_fine_periodi = risul_query($id_data_fine_periodi, 0, 0); $id_data_ini_periodi_prec = risul_query($ini_periodo_interferenza, 0, 'idperiodi'); $id_data_fine_periodi_prec = esegui_query("select max(idperiodi) from {$tableperiodi_prec}"); $id_data_fine_periodi_prec = risul_query($id_data_fine_periodi_prec, 0, 0); $num_periodi_prec = $id_data_fine_periodi_prec - $id_data_ini_periodi_prec + 1; if ($num_periodi_prec > $id_data_fine_periodi) { $id_data_fine_periodi_prec = $id_data_ini_periodi_prec + $id_data_fine_periodi - 1; $prenota_non_importabili = esegui_query("select * from {$tableprenota_prec} where iddatafine > {$id_data_fine_periodi_prec} "); $num_prenota_non_importabili = numlin_query($prenota_non_importabili); if ($num_prenota_non_importabili != 0) { echo "<br>ERROR<br>"; } } # fine if ($num_periodi_prec > $id_data_fine_periodi) $idprenota_corr = 0; $max_idprenota_prec = esegui_query("select max(idprenota) from {$tableprenota_prec}"); $max_idprenota_prec = risul_query($max_idprenota_prec, 0, 0) + 1; $max_idcostiprenota_prec = esegui_query("select max(idcostiprenota) from {$tablecostiprenota_prec}"); $max_idcostiprenota_prec = risul_query($max_idcostiprenota_prec, 0, 0) + 1; $prenota_gia_iniziate = esegui_query("select * from {$tableprenota_prec} where iddatainizio < {$id_data_ini_periodi_prec} and iddatafine >= {$id_data_ini_periodi_prec} and iddatafine <= {$id_data_fine_periodi_prec} "); $num_prenota_gia_iniziate = numlin_query($prenota_gia_iniziate); for ($num1 = 0; $num1 < $num_prenota_gia_iniziate; $num1 = $num1 + 1) { $idprenota = risul_query($prenota_gia_iniziate, $num1, 'idprenota'); $idclienti = risul_query($prenota_gia_iniziate, $num1, 'idclienti'); $lista_clienti_importati .= "and idclienti != '{$idclienti}' "; $idappartamenti = risul_query($prenota_gia_iniziate, $num1, 'idappartamenti'); $iddatafine = risul_query($prenota_gia_iniziate, $num1, 'iddatafine'); $iddatafine = $iddatafine - $id_data_ini_periodi_prec + 1; $datainserimento = risul_query($prenota_gia_iniziate, $num1, 'datainserimento'); $hostinserimento = risul_query($prenota_gia_iniziate, $num1, 'hostinserimento'); $data_modifica = risul_query($prenota_gia_iniziate, $num1, 'data_modifica'); $utente_inserimento = risul_query($prenota_gia_iniziate, $num1, 'utente_inserimento'); $checkin = risul_query($prenota_gia_iniziate, $num1, 'checkin'); $checkout = risul_query($prenota_gia_iniziate, $num1, 'checkout'); $codice = risul_query($prenota_gia_iniziate, $num1, 'codice'); $idprenota_corr++; esegui_query("insert into {$tableprenota} (idprenota,idclienti,idappartamenti,iddatainizio,iddatafine,assegnazioneapp,commento,codice,datainserimento,hostinserimento,utente_inserimento) values ('{$idprenota_corr}','{$idclienti}','{$idappartamenti}','0',{$iddatafine},'k','{$idprenota}','{$codice}','{$datainserimento}','{$hostinserimento}','{$utente_inserimento}') "); if ($checkin) { esegui_query("update {$tableprenota} set checkin = '" . aggslashdb($checkin) . "' where idprenota = '{$idprenota_corr}'"); } if ($checkout) { esegui_query("update {$tableprenota} set checkout = '" . aggslashdb($checkout) . "' where idprenota = '{$idprenota_corr}'"); } esegui_query("update {$tablecostiprenota_prec} set idprenota = '{$max_idprenota_prec}' where idprenota = '{$idprenota}'"); esegui_query("insert into {$tablecostiprenota} select {$col_tablecostiprenota} from {$tablecostiprenota_prec} where idprenota = '{$max_idprenota_prec}' "); esegui_query("update {$tablecostiprenota} set idprenota = '{$idprenota_corr}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tablecostiprenota_prec} set idprenota = '{$idprenota}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tablerclientiprenota_prec} set idprenota = '{$max_idprenota_prec}' where idprenota = '{$idprenota}'"); esegui_query("insert into {$tablerclientiprenota} select {$col_tablerclientiprenota} from {$tablerclientiprenota_prec} where idprenota = '{$max_idprenota_prec}' "); esegui_query("update {$tablerclientiprenota} set idprenota = '{$idprenota_corr}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tablerclientiprenota_prec} set idprenota = '{$idprenota}' where idprenota = '{$max_idprenota_prec}'"); } # fine for $num1 $nuovo_idprenota = ""; $nuovo_iddatainizio = ""; $nuovo_iddatafine = ""; $prenota_importate = esegui_query("select * from {$tableprenota_prec} where iddatainizio >= '{$id_data_ini_periodi_prec}' and iddatafine <= '{$id_data_fine_periodi_prec}' order by idprenota "); $num_prenota_importate = numlin_query($prenota_importate); for ($num1 = 0; $num1 < $num_prenota_importate; $num1 = $num1 + 1) { $idprenota = risul_query($prenota_importate, $num1, 'idprenota'); $iddatainizio = risul_query($prenota_importate, $num1, 'iddatainizio'); $iddatainizio = $iddatainizio - $id_data_ini_periodi_prec + 1; $iddatafine = risul_query($prenota_importate, $num1, 'iddatafine'); $iddatafine = $iddatafine - $id_data_ini_periodi_prec + 1; $idclienti = risul_query($prenota_importate, $num1, 'idclienti'); $lista_clienti_importati .= "and idclienti != '{$idclienti}' "; $id_anni_prec = risul_query($prenota_importate, $num1, 'id_anni_prec'); if (!$id_anni_prec) { $id_anni_prec = ";"; } $id_anni_prec .= "{$anno_prec},{$idprenota};"; $idprenota_corr++; esegui_query("update {$tableprenota_prec} set idprenota = '{$max_idprenota_prec}' where idprenota = '{$idprenota}'"); esegui_query("insert into {$tableprenota} select {$col_tableprenota} from {$tableprenota_prec} where idprenota = '{$max_idprenota_prec}' "); esegui_query("update {$tableprenota} set iddatainizio = '{$iddatainizio}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tableprenota} set iddatafine = '{$iddatafine}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tableprenota} set id_anni_prec = '{$id_anni_prec}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tableprenota} set idprenota = '{$idprenota_corr}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("delete from {$tableprenota_prec} where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tablecostiprenota_prec} set idprenota = '{$max_idprenota_prec}' where idprenota = '{$idprenota}'"); esegui_query("insert into {$tablecostiprenota} select {$col_tablecostiprenota} from {$tablecostiprenota_prec} where idprenota = '{$max_idprenota_prec}' "); esegui_query("update {$tablecostiprenota} set idprenota = '{$idprenota_corr}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("delete from {$tablecostiprenota_prec} where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tablerclientiprenota_prec} set idprenota = '{$max_idprenota_prec}' where idprenota = '{$idprenota}'"); esegui_query("insert into {$tablerclientiprenota} select {$col_tablerclientiprenota} from {$tablerclientiprenota_prec} where idprenota = '{$max_idprenota_prec}' "); esegui_query("update {$tablerclientiprenota} set idprenota = '{$idprenota_corr}' where idprenota = '{$max_idprenota_prec}'"); esegui_query("delete from {$tablerclientiprenota_prec} where idprenota = '{$max_idprenota_prec}'"); esegui_query("update {$tableinterconnessioni} set idlocale = '{$idprenota_corr}', anno = '{$anno}' where idlocale = '{$idprenota}' and ( tipoid = 'prenota' or tipoid = 'mess' ) and anno = '{$anno_prec}' "); $nuovo_idprenota[$idprenota] = $idprenota_corr; $nuovo_iddatainizio[$idprenota] = $iddatainizio; $nuovo_iddatafine[$idprenota] = $iddatafine; } # fine for $num1 esegui_query("update {$tablecostiprenota} set numlimite = '" . ($idprenota_corr + 1) . "' where idcostiprenota = '1'"); $prenota_compagne = esegui_query("select idprenota,idprenota_compagna from {$tableprenota} where idprenota_compagna != '' "); $num_prenota_compagne = numlin_query($prenota_compagne); for ($num1 = 0; $num1 < $num_prenota_compagne; $num1++) { $idprenota = risul_query($prenota_compagne, $num1, 'idprenota'); $idprenota_compagna = risul_query($prenota_compagne, $num1, 'idprenota_compagna'); $idprenota_compagna = explode(",", $idprenota_compagna); $n_idprenota_compagna = $nuovo_idprenota[$idprenota_compagna[0]]; for ($num2 = 1; $num2 < count($idprenota_compagna); $num2++) { $n_idprenota_compagna .= "," . $nuovo_idprenota[$idprenota_compagna[$num2]]; } esegui_query("update {$tableprenota} set idprenota_compagna = '{$n_idprenota_compagna}' where idprenota = '{$idprenota}'"); } # fine for $num1 $id_costi_agg_importati = esegui_query("select idcostiprenota from {$tablecostiprenota} where idcostiprenota != '1' order by idcostiprenota"); $num_id_costi_agg_importati = numlin_query($id_costi_agg_importati); for ($num1 = 0; $num1 < $num_costi_agg_importati; $num1++) { $idcostiprenota = risul_query($id_costi_agg_importati, $num1, 'idcostiprenota'); $max_idcostiprenota_prec++; esegui_query("update {$tablecostiprenota} set idcostiprenota = '{$max_idcostiprenota_prec}' where idcostiprenota = '{$idcostiprenota}'"); } # fine for $num1 $costi_agg_importati = esegui_query("select * from {$tablecostiprenota} where idcostiprenota != '1' order by idcostiprenota"); $num_costi_agg_importati = numlin_query($costi_agg_importati); for ($num1 = 0; $num1 < $num_costi_agg_importati; $num1++) { $idcostiprenota = risul_query($costi_agg_importati, $num1, 'idcostiprenota'); $settimane = risul_query($costi_agg_importati, $num1, 'settimane'); if (str_replace(",", "", $settimane) != $settimane) { $settimane = explode(",", $settimane); $settimane_nuove = ","; for ($num2 = 1; $num2 < count($settimane) - 1; $num2++) { $settimane_nuove .= $settimane[$num2] - $id_data_ini_periodi_prec + 1 . ","; } esegui_query("update {$tablecostiprenota} set settimane = '{$settimane_nuove}' where idcostiprenota = '{$idcostiprenota}'"); } # fine if (str_replace(",","",$settimane) != $settimane) $varperiodipermessi = risul_query($costi_agg_importati, $num1, 'varperiodipermessi'); if ($varperiodipermessi) { $vpp_nuovi = substr($varperiodipermessi, 0, 1); $varperiodipermessi = explode(",", substr($varperiodipermessi, 1)); for ($num2 = 0; $num2 < count($varperiodipermessi); $num2++) { $id_data_fine_vpp = explode("-", $varperiodipermessi[$num2]); $id_data_inizio_vpp = $id_data_fine_vpp[0]; $id_data_fine_vpp = $id_data_fine_vpp[1]; if ($id_data_fine_vpp >= $id_data_ini_periodi_prec and $id_data_inizio_vpp <= $id_data_fine_periodi_prec) { if ($id_data_inizio_vpp < $id_data_ini_periodi_prec) { $id_data_inizio_vpp = $id_data_ini_periodi_prec; } if ($id_data_fine_vpp > $id_data_fine_periodi_prec) { $id_data_fine_vpp = $id_data_fine_periodi_prec; } $id_data_inizio_vpp = $id_data_inizio_vpp - $id_data_ini_periodi_prec + 1; $id_data_fine_vpp = $id_data_fine_vpp - $id_data_ini_periodi_prec + 1; $vpp_nuovi .= $id_data_inizio_vpp . "-" . $id_data_fine_vpp . ","; } # fine if ($id_data_fine_vpp >= $id_data_ini_periodi_prec and... } # fine for $num2 if (strlen($vpp_nuovi) > 1) { $vpp_nuovi = substr($vpp_nuovi, 0, -1); } esegui_query("update {$tablecostiprenota} set varperiodipermessi = '{$vpp_nuovi}' where idcostiprenota = '{$idcostiprenota}'"); } # fine if ($varperiodipermessi) esegui_query("update {$tablecostiprenota} set idcostiprenota = '" . ($num1 + 2) . "' where idcostiprenota = '{$idcostiprenota}'"); } # fine for $num1 $tariffe_importate = esegui_query("select * from {$tableperiodi_prec} where idperiodi >= '{$id_data_ini_periodi_prec}' and idperiodi <= '{$id_data_fine_periodi_prec}' "); $num_tariffe_iportate = numlin_query($tariffe_importate); for ($num1 = 0; $num1 < $num_tariffe_iportate; $num1 = $num1 + 1) { $idperiodi = risul_query($tariffe_importate, $num1, 'idperiodi'); $idperiodi = $idperiodi - $id_data_ini_periodi_prec + 1; for ($num2 = 1; $num2 <= $num_tariffe_tab; $num2++) { $tariffa = (string) risul_query($tariffe_importate, $num1, "tariffa" . $num2); if (strcmp($tariffa, "")) { esegui_query("update {$tableperiodi} set tariffa{$num2} = '{$tariffa}' where idperiodi = {$idperiodi} "); } $tariffap = (string) risul_query($tariffe_importate, $num1, "tariffa" . $num2 . "p"); if (strcmp($tariffap, "")) { esegui_query("update {$tableperiodi} set tariffa{$num2}" . "p = '{$tariffap}' where idperiodi = {$idperiodi} "); } } # fine for $num2 } # fine for $num1 $regole_prec = esegui_query("select * from {$tableregole_prec} where iddatafine >= '{$id_data_ini_periodi_prec}' "); $num_regole_prec = numlin_query($regole_prec); for ($num1 = 0; $num1 < $num_regole_prec; $num1 = $num1 + 1) { $idregole = risul_query($regole_prec, $num1, 'idregole'); $app_agenzia = risul_query($regole_prec, $num1, 'app_agenzia'); $tariffa_chiusa = risul_query($regole_prec, $num1, 'tariffa_chiusa'); $tariffa_commissioni = risul_query($regole_prec, $num1, 'tariffa_commissioni'); $iddatainizio = risul_query($regole_prec, $num1, 'iddatainizio'); $motivazione = risul_query($regole_prec, $num1, 'motivazione'); $motivazione2 = risul_query($regole_prec, $num1, 'motivazione2'); if ($iddatainizio < $id_data_ini_periodi_prec) { $iddatainizio = $id_data_ini_periodi_prec; } $iddatainizio = $iddatainizio - $id_data_ini_periodi_prec + 1; $iddatafine = risul_query($regole_prec, $num1, 'iddatafine'); if ($iddatafine > $id_data_fine_periodi_prec) { $iddatafine = $id_data_fine_periodi_prec; } $iddatafine = $iddatafine - $id_data_ini_periodi_prec + 1; if ($tariffa_commissioni) { esegui_query("insert into {$tableregole} (idregole,tariffa_commissioni,iddatainizio,iddatafine) values ('{$idregole}','{$tariffa_commissioni}','{$iddatainizio}','{$iddatafine}') "); } else { if ($tariffa_chiusa) { esegui_query("insert into {$tableregole} (idregole,tariffa_chiusa,iddatainizio,iddatafine) values ('{$idregole}','{$tariffa_chiusa}','{$iddatainizio}','{$iddatafine}') "); } else { esegui_query("insert into {$tableregole} (idregole,app_agenzia,iddatainizio,iddatafine) values ('{$idregole}','{$app_agenzia}','{$iddatainizio}','{$iddatafine}') "); } } # fine else $tariffa_commissioni) if (strcmp($motivazione, "")) { esegui_query("update {$tableregole} set motivazione = '" . aggslashdb($motivazione) . "' where idregole = '{$idregole}' "); } if (strcmp($motivazione2, "")) { esegui_query("update {$tableregole} set motivazione2 = '" . aggslashdb($motivazione2) . "' where idregole = '{$idregole}' "); } } # fine for $num1 $soldi_importati = esegui_query("select * from {$tablesoldi_prec} where data_inserimento >= '{$data_inizio_periodi}' and saldo_prenota is not NULL order by idsoldi"); $num_soldi_importati = numlin_query($soldi_importati); $idsoldi_corr = 1; for ($num1 = 0; $num1 < $num_soldi_importati; $num1++) { $motiv = explode(";", risul_query($soldi_importati, $num1, 'motivazione')); if ($nuovo_idprenota[$motiv[3]]) { $idsoldi_corr++; $idsoldi_prec = risul_query($soldi_importati, $num1, 'idsoldi'); $n_motiv = $motiv[0] . ";" . $nuovo_iddatainizio[$motiv[3]] . ";" . $nuovo_iddatafine[$motiv[3]] . ";" . $nuovo_idprenota[$motiv[3]]; esegui_query("insert into {$tablesoldi} select {$col_tablesoldi} from {$tablesoldi_prec} where idsoldi = '{$idsoldi_prec}' "); esegui_query("delete from {$tablesoldi_prec} where idsoldi = '{$idsoldi_prec}' "); esegui_query("update {$tablesoldi} set motivazione = '{$n_motiv}' where idsoldi = '{$idsoldi_prec}' "); esegui_query("update {$tablesoldi} set idsoldi = '{$idsoldi_corr}' where idsoldi = '{$idsoldi_prec}' "); } # fine if ($nuovo_idprenota[$motiv[3]]) } # fine for $num1 $costi_importati = esegui_query("select * from {$tablecosti_prec} where datainserimento >= '{$data_inizio_periodi}' and tipo_costo is not NULL order by idcosti"); $num_costi_importati = numlin_query($costi_importati); $idcosti_corr = 0; for ($num1 = 0; $num1 < $num_costi_importati; $num1++) { $idcosti_corr++; $idcosti_prec = risul_query($costi_importati, $num1, 'idcosti'); esegui_query("insert into {$tablecosti} select {$col_tablecosti} from {$tablecosti_prec} where idcosti = '{$idcosti_prec}' "); esegui_query("delete from {$tablecosti_prec} where idcosti = '{$idcosti_prec}' "); esegui_query("update {$tablecosti} set idcosti = '{$idcosti_corr}' where idcosti = '{$idcosti_prec}' "); } # fine for $num1 $costo_cassa = 0; $data_lim = $anno + 1 . "-01-01 00:00:00"; $costi_cassa = esegui_query("select * from {$tablecosti} where tipo_costo = 'e' and provenienza_costo = 'p' and datainserimento < '{$data_lim}' "); $num_costi_cassa = numlin_query($costi_cassa); for ($num2 = 0; $num2 < $num_costi_cassa; $num2++) { $costo_cassa = $costo_cassa + risul_query($costi_cassa, $num2, 'val_costo'); } if ($costo_cassa) { esegui_query("update {$tablecosti} set val_costo = '{$costo_cassa}' where idcosti = '0' "); } unset($cassa_prec); $costi_non_importati = esegui_query("select * from {$tablecosti_prec} where tipo_costo is not NULL order by idcosti"); $num_costi_non_importati = numlin_query($costi_non_importati); for ($num1 = 0; $num1 < $num_costi_non_importati; $num1++) { $tipo_costo = risul_query($costi_non_importati, $num1, 'tipo_costo'); $val_costo = risul_query($costi_non_importati, $num1, 'val_costo'); $utente_costo = risul_query($costi_non_importati, $num1, 'utente_inserimento'); if ($tipo_costo == "e") { $cassa_prec[$utente_costo] = $cassa_prec[$utente_costo] + (double) $val_costo; } else { $cassa_prec[$utente_costo] = $cassa_prec[$utente_costo] - (double) $val_costo; } } # fine for $num1 if (@is_array($cassa_prec)) { $datainserimento = date("Y-m-d H:i:s", time() + C_DIFF_ORE * 3600); reset($cassa_prec); while (list($utente_costo, $val_costo) = each($cassa_prec)) { $idcosti_corr++; esegui_query("insert into {$tablecosti} (idcosti,nome_costo,val_costo,persona_costo,tipo_costo,datainserimento,hostinserimento,utente_inserimento) values ('{$idcosti_corr}','{$anno_prec}','{$val_costo}','','e','{$datainserimento}','{$HOSTNAME}','{$utente_costo}') "); } # fine (list($utente_costo,$val_costo) = each($cassa_prec)) } # fine if (@is_array($cassa_prec)) # aggiorno i messaggi con prenotazioni del nuovo anno già inserite, quelli da inserire sono aggiornati con i modelli internet $messaggi_importati = esegui_query("select * from {$tablemessaggi} where stato = 'ins' and dati_messaggio18 = '{$anno_prec}' "); $num_messaggi_importati = numlin_query($messaggi_importati); for ($num1 = 0; $num1 < $num_messaggi_importati; $num1++) { $agg_mess = 1; $n_lista_pren = ""; $lista_pren = explode(",", risul_query($messaggi_importati, $num1, 'dati_messaggio1')); for ($num2 = 0; $num2 < count($lista_pren); $num2++) { if ($nuovo_idprenota[$lista_pren[$num2]]) { $n_lista_pren .= $nuovo_idprenota[$lista_pren[$num2]] . ","; } else { $agg_mess = 0; } } # fine for $num2 if ($agg_mess) { $idmess = risul_query($messaggi_importati, $num1, 'idmessaggi'); $n_lista_pren = substr($n_lista_pren, 0, -1); esegui_query("update {$tablemessaggi} set dati_messaggio1 = '{$n_lista_pren}', dati_messaggio18 = '{$anno}' where idmessaggi = '{$idmess}' "); } # fine if ($agg_mess) } # fine for $num1 # aggiorno i numeri delle prenotazioni importate nei nomi dei documenti già creati nel nuovo anno $dirs_salva = esegui_query("select * from {$tablecontratti} where tipo = 'dir'"); $num_dirs_salva = numlin_query($dirs_salva); if ($num_dirs_salva) { unset($contr_salva_in); $max_contr = esegui_query("select max(numero) from {$tablecontratti} where tipo {$LIKE} 'contr%'"); $max_contr = risul_query($max_contr, 0, 0); if (defined("C_CARTELLA_CREA_MODELLI") and C_CARTELLA_CREA_MODELLI != "") { if (C_CARTELLA_DOC != "" and @is_dir(C_CARTELLA_CREA_MODELLI . "/" . C_CARTELLA_DOC)) { $dir_salva_home = C_CARTELLA_DOC; } else { $dir_salva_home = ""; } } else { $dir_salva_home = C_DATA_PATH; } $utenti = esegui_query("select * from " . $PHPR_TAB_PRE . "utenti order by idutenti"); $num_utenti = numlin_query($utenti); unset($nomi_contr_ut); $parola_documento = mex("documento", 'visualizza_contratto.php'); for ($num1 = 0; $num1 < $num_utenti; $num1++) { $idutente_contr = risul_query($utenti, $num1, 'idutenti'); for ($num2 = 1; $num2 <= $max_contr; $num2++) { $nomi_contr_ut[$idutente_contr][$num2] = $parola_documento . $num2; } $nomi_contratti = esegui_query("select valpersonalizza from {$tablepersonalizza} where idpersonalizza = 'nomi_contratti' and idutente = '{$idutente_contr}'"); $nomi_contratti = risul_query($nomi_contratti, 0, 'valpersonalizza'); $nomi_contratti = explode("#@&", $nomi_contratti); $num_nomi_contratti = count($nomi_contratti); for ($num2 = 0; $num2 < $num_nomi_contratti; $num2++) { $dati_nome_contratto = explode("#?&", $nomi_contratti[$num2]); $nomi_contr_ut[$idutente_contr][$dati_nome_contratto[0]] = $dati_nome_contratto[1]; } # fine for $num2 } # fine for $num1 unset($prefissi_contr); for ($num1 = 0; $num1 < $num_dirs_salva; $num1++) { $dir_salva = risul_query($dirs_salva, 0, 'testo'); if ($dir_salva == "~") { $dir_salva = $dir_salva_home; } if (defined('C_CARTELLA_CREA_MODELLI') and C_CARTELLA_CREA_MODELLI != "") { $dir_salva = C_CARTELLA_CREA_MODELLI . "/" . str_replace("..", "", $dir_salva); } if (!@is_dir($dir_salva)) { $dir_salva = ""; } $num_contr = risul_query($dirs_salva, 0, 'numero'); $tipo_contratto = esegui_query("select tipo from " . $PHPR_TAB_PRE . "contratti where numero = '{$num_contr}' and tipo {$LIKE} 'contr%' "); $tipo_contratto = risul_query($tipo_contratto, 0, 'tipo'); $suff_file = "html"; if ($tipo_contratto == "contrrtf") { $suff_file = "rtf"; } if ($tipo_contratto == "contrtxt") { $suff_file = "txt"; } $filelock_contr = fopen($dir_salva . "/crea_contr.lock", "w+"); flock($filelock_contr, 2); for ($num2 = 0; $num2 < $num_utenti; $num2++) { $idutente_contr = risul_query($utenti, $num1, 'idutenti'); if (!$prefissi_contr[$dir_salva . "/" . $nomi_contr_ut[$idutente_contr][$num_contr]]) { $nome_contratto = $nomi_contr_ut[$idutente_contr][$num_contr]; $prefissi_contr[$dir_salva . "/" . $nome_contratto] = 1; $contr_dir = opendir($dir_salva . "/"); while ($contr_corr = readdir($contr_dir)) { if ($contr_corr != "." and $contr_corr != ".." and is_file($dir_salva . "/" . $contr_corr)) { if (substr($contr_corr, 0, strlen($nome_contratto)) == $nome_contratto) { $resto_nome_contr = substr($contr_corr, strlen($nome_contratto)); if (substr($resto_nome_contr, 0, 6) == "_{$anno}" . "_") { if (preg_replace("/_[0-9]{4,4}_[0-9]{5,5}(_[0-9]+(-[0-9]+)?)*\\.{$suff_file}/", "", $resto_nome_contr) == "") { $num_pren_esist = substr($resto_nome_contr, 12); $num_pren_esist = substr($num_pren_esist, 0, -1 * (strlen($suff_file) + 1)); if ($num_pren_esist) { $agg_contr = 1; $n_lista_pren = ""; $num_pren_esist = explode("_", $num_pren_esist); for ($num3 = 0; $num3 < count($num_pren_esist); $num3++) { $num_pren_esist2 = explode("-", $num_pren_esist[$num3]); $fine_for = $num_pren_esist2[count($num_pren_esist2) - 1]; for ($num4 = $num_pren_esist2[0]; $num4 <= $fine_for; $num4++) { if (!$nuovo_idprenota[$num4]) { $agg_contr = 0; break; } # fine if (!$nuovo_idprenota[$num4]) if ($num4 == $num_pren_esist2[0]) { $n_lista_pren .= "_" . $nuovo_idprenota[$num4]; } elseif ($num4 == $fine_for) { $n_lista_pren .= "-" . $nuovo_idprenota[$num4]; } } # fine for $num4 } # fine for $num3 if ($agg_contr) { $n_nome_contr = $nome_contratto . substr($resto_nome_contr, 0, 11) . $n_lista_pren . ".{$suff_file}"; rename($dir_salva . "/" . $contr_corr, $dir_salva . "/" . $n_nome_contr); } # fine if ($agg_contr) } # fine if ($num_pren_esist) } # fine if (preg_replace("/_[0-9]{4,4}_[0-9]{5,5}\.$suff_file/","",$resto_nome_contr) == "") } # fine if (substr($resto_nome_contr,0,6) == "_$anno"."_") } # fine if (substr($contr_corr,0,strlen($nome_contratto)) == $nome_contratto) } # fine if ($contr_corr != "." and $contr_corr != ".." and... } # fine while ($fattura_corr = readdir($fatture_dir)) closedir($contr_dir); } # fine if (!$prefissi_contr[$dir_salva."/".$nomi_contr_ut[$idutente_contr][$num_contr]]) } # fine for $num2 flock($filelock_contr, 3); fclose($filelock_contr); unlink($dir_salva . "/crea_contr.lock"); } # fine for $num1 } # fine if ($num_dirs_salva) } # fine else if ($num_periodo_interferenza == 0) $colonne = "idntariffe,nomecostoagg,tipo_ca,valore_ca,valore_perc_ca,arrotonda_ca,tasseperc_ca,associasett_ca,numsett_ca,moltiplica_ca,periodipermessi_ca,beniinv_ca,appincompatibili_ca,variazione_ca,mostra_ca,categoria_ca,letto_ca,numlimite_ca,regoleassegna_ca,utente_inserimento"; for ($num1 = 1; $num1 <= $num_tariffe_tab; $num1++) { $nome_nuova_tariffa = "tariffa" . $num1; $colonne .= ",{$nome_nuova_tariffa}"; } # fine for $num1 esegui_query("insert into {$tablenometariffe} ({$colonne}) select {$colonne} from {$tablenometariffe_prec}"); $costi_agg_importati = esegui_query("select * from {$tablenometariffe} where idntariffe > 10 "); $num_costi_agg_importati = numlin_query($costi_agg_importati); for ($num1 = 0; $num1 < $num_costi_agg_importati; $num1++) { $idntariffe = risul_query($costi_agg_importati, $num1, 'idntariffe'); $periodipermessi = risul_query($costi_agg_importati, $num1, 'periodipermessi_ca'); if ($periodipermessi) { $pp_nuovi = substr($periodipermessi, 0, 1); $periodipermessi = explode(",", substr($periodipermessi, 1)); for ($num2 = 0; $num2 < count($periodipermessi); $num2++) { $id_data_fine_pp = explode("-", $periodipermessi[$num2]); $id_data_inizio_pp = $id_data_fine_pp[0]; $id_data_fine_pp = $id_data_fine_pp[1]; if ($id_data_fine_pp >= $id_data_ini_periodi_prec and $id_data_inizio_pp <= $id_data_fine_periodi_prec) { if ($id_data_inizio_pp < $id_data_ini_periodi_prec) { $id_data_inizio_pp = $id_data_ini_periodi_prec; } if ($id_data_fine_pp > $id_data_fine_periodi_prec) { $id_data_fine_pp = $id_data_fine_periodi_prec; } $id_data_inizio_pp = $id_data_inizio_pp - $id_data_ini_periodi_prec + 1; $id_data_fine_pp = $id_data_fine_pp - $id_data_ini_periodi_prec + 1; $pp_nuovi .= $id_data_inizio_pp . "-" . $id_data_fine_pp . ","; } # fine if ($id_data_fine_pp >= $id_data_ini_periodi_prec and... } # fine for $num2 if (strlen($pp_nuovi) > 1) { $pp_nuovi = substr($pp_nuovi, 0, -1); } esegui_query("update {$tablenometariffe} set periodipermessi_ca = '{$pp_nuovi}' where idntariffe = '{$idntariffe}'"); } # fine if ($periodipermessi) } # fine for $num1 esegui_query("insert into {$tableregole} select {$col_tableregole} from {$tableregole_prec} where tariffa_per_app != ''"); esegui_query("insert into {$tableregole} select {$col_tableregole} from {$tableregole_prec} where tariffa_per_utente != ''"); esegui_query("insert into {$tableregole} select {$col_tableregole} from {$tableregole_prec} where tariffa_per_persone != ''"); esegui_query("insert into {$tableregole} select {$col_tableregole} from {$tableregole_prec} where tariffa_commissioni is not NULL and iddatainizio is NULL "); $privilegi_prec = esegui_query("select * from {$tableprivilegi} where anno = '{$anno_prec}'"); for ($num1 = 0; $num1 < numlin_query($privilegi_prec); $num1++) { $idutente_p = risul_query($privilegi_prec, $num1, 'idutente'); $regole1_consentite_p = risul_query($privilegi_prec, $num1, 'regole1_consentite'); $tariffe_consentite_p = risul_query($privilegi_prec, $num1, 'tariffe_consentite'); $costi_agg_consentiti_p = risul_query($privilegi_prec, $num1, 'costi_agg_consentiti'); $contratti_consentiti_p = risul_query($privilegi_prec, $num1, 'contratti_consentiti'); $cassa_pagamenti_p = aggslashdb(risul_query($privilegi_prec, $num1, 'cassa_pagamenti')); $priv_ins_prenota_p = risul_query($privilegi_prec, $num1, 'priv_ins_prenota'); $priv_mod_prenota_p = risul_query($privilegi_prec, $num1, 'priv_mod_prenota'); $priv_mod_pers_p = risul_query($privilegi_prec, $num1, 'priv_mod_pers'); $priv_ins_clienti_p = risul_query($privilegi_prec, $num1, 'priv_ins_clienti'); $prefisso_clienti_p = risul_query($privilegi_prec, $num1, 'prefisso_clienti'); $priv_ins_costi_p = risul_query($privilegi_prec, $num1, 'priv_ins_costi'); $priv_vedi_tab_p = risul_query($privilegi_prec, $num1, 'priv_vedi_tab'); $priv_ins_tariffe_p = risul_query($privilegi_prec, $num1, 'priv_ins_tariffe'); $priv_ins_regole_p = risul_query($privilegi_prec, $num1, 'priv_ins_regole'); esegui_query("insert into {$tableprivilegi} (idutente,anno,regole1_consentite,tariffe_consentite,costi_agg_consentiti,contratti_consentiti,cassa_pagamenti,priv_ins_prenota,priv_mod_prenota,priv_mod_pers,priv_ins_clienti,prefisso_clienti,priv_ins_costi,priv_vedi_tab,priv_ins_tariffe,priv_ins_regole) values ('{$idutente_p}','{$anno}','{$regole1_consentite_p}','{$tariffe_consentite_p}','{$costi_agg_consentiti_p}','{$contratti_consentiti_p}','{$cassa_pagamenti_p}','{$priv_ins_prenota_p}','{$priv_mod_prenota_p}','{$priv_mod_pers_p}','{$priv_ins_clienti_p}','{$prefisso_clienti_p}','{$priv_ins_costi_p}','{$priv_vedi_tab_p}','{$priv_ins_tariffe_p}','{$priv_ins_regole_p}')"); $lingua_mex = $lingua[$idutente_p]; crea_menu_date(C_DATA_PATH . "/selectperiodi{$anno}.1.php", C_DATA_PATH . "/selectperiodi{$anno}.{$idutente_p}.php", $tipo_periodi); if (@is_file(C_DATA_PATH . "/selperiodimenu" . ($anno - 1) . ".{$idutente_p}.php")) { estendi_menu_date(C_DATA_PATH . "/selperiodimenu" . ($anno - 1) . ".{$idutente_p}.php", C_DATA_PATH . "/selperiodimenu{$anno}.{$idutente_p}.php", $tipo_periodi, date("Y-m-d", mktime(0, 0, 0, $mese_ini, 1, $anno)), $data_ini_agg, date("Y-m-d", mktime(0, 0, 0, $mese_fine + 1, 1, $anno)), $anno, $pag); } else { copy(C_DATA_PATH . "/selectperiodi{$anno}.{$idutente_p}.php", C_DATA_PATH . "/selperiodimenu{$anno}.{$idutente_p}.php"); } $lingua_mex = $lingua[1]; $giorno_vedi_ini_sett = esegui_query("select valpersonalizza_num from {$tablepersonalizza} where idpersonalizza = 'giorno_vedi_ini_sett{$anno_prec}' and idutente = '{$idutente_p}'"); if (numlin_query($giorno_vedi_ini_sett) == 1 and $tipo_periodi == "g") { esegui_query("insert into {$tablepersonalizza} (idpersonalizza,valpersonalizza_num,idutente) values ('giorno_vedi_ini_sett{$anno}','" . risul_query($giorno_vedi_ini_sett, 0, "valpersonalizza_num") . "','{$idutente_p}')"); } } # fine for $num1 $giorno_vedi_ini_sett = esegui_query("select valpersonalizza_num from {$tablepersonalizza} where idpersonalizza = 'giorno_vedi_ini_sett{$anno_prec}' and idutente = '1'"); if (numlin_query($giorno_vedi_ini_sett) == 1 and $tipo_periodi == "g") { esegui_query("insert into {$tablepersonalizza} (idpersonalizza,valpersonalizza_num,idutente) values ('giorno_vedi_ini_sett{$anno}','" . risul_query($giorno_vedi_ini_sett, 0, "valpersonalizza_num") . "','1')"); } $inserisci_in_ntariffe = "NO"; } # fine if ($importa_anno_prec == "SI") if ($inserisci_in_ntariffe != "NO") { # rigo 1: nomi tariffe; 2-3: caparra (% e arrotondo). for ($numtariffe = 1; $numtariffe <= 6; $numtariffe = $numtariffe + 1) { esegui_query("insert into {$tablenometariffe} (idntariffe) values ('{$numtariffe}')"); } # fine for $numtariffe esegui_query("update {$tablenometariffe} set nomecostoagg = '8' where idntariffe = '1'"); esegui_query("update {$tablenometariffe} set numlimite_ca = '11' where idntariffe = '1'"); } # fine if ($inserisci_in_ntariffe != "NO") esegui_query("delete from {$tablerelclienti} where tipo = 'cc' {$lista_clienti_importati}"); unlock_tabelle($tabelle_lock); if ($silenzio != "SI") { echo "<br> " . mex("Anno ", $pag) . $anno . mex(" creato", $pag) . "! <br><br>"; } if ($importa_anno_prec == "SI" and C_RESTRIZIONI_DEMO_ADMIN != "SI") { if ($silenzio != "SI") { $silenzio_mod = "SI"; } else { $silenzio_mod = "totale"; } global $anno_modello_presente, $num_periodi_date, $modello_esistente, $cambia_frasi, $lingua_modello, $percorso_cartella_modello, $nome_file; $pag_orig = $pag; $pag = "crea_modelli.php"; include "./includes/templates/funzioni_modelli.php"; $modello_esistente = "SI"; $cambia_frasi = "NO"; $anno_modello = $anno; include "./includes/templates/frasi_mod_disp.php"; include "./includes/templates/funzioni_mod_disp.php"; for ($num_cart = 0; $num_cart < $num_perc_cart_mod_vett; $num_cart++) { $percorso_cartella_modello = $perc_cart_mod_vett[$num_cart]; if (@is_file("{$percorso_cartella_modello}/mdl_disponibilita.php")) { $lingua_modello = "ita"; $nome_file = mex2("mdl_disponibilita", $pag, $lingua_modello) . ".php"; $num_periodi_date = ""; recupera_var_modello_disponibilita($nome_file, $percorso_cartella_modello, $pag, $fr_frase, $num_frasi, $var_mod, $num_var_mod, $tipo_periodi, "SI", $anno_modello, $PHPR_TAB_PRE); if ($anno_modello_presente == $anno_prec) { aggiorna_var_anno_modello_disponibilita($id_data_ini_periodi_prec, $tableperiodi_prec, $tableperiodi, $tabletransazioniweb, $tablemessaggi, $tipo_periodi); crea_modello_disponibilita($percorso_cartella_modello, $anno_modello, $PHPR_TAB_PRE, $pag, $lingua_modello, $silenzio_mod, $fr_frase, $frase, $num_frasi, $tipo_periodi); } # fine if ($anno_modello_presente == $anno_prec) } # fine if (@is_file("$percorso_cartella_modello/modello_disponibilita.php")) } # fine for $num_cart $lang_dir = opendir("./includes/lang/"); include C_DATA_PATH . "/lingua.php"; while ($ini_lingua = readdir($lang_dir)) { if ($ini_lingua != "." && $ini_lingua != "..") { $nome_file = mex2("mdl_disponibilita", $pag, $ini_lingua) . ".php"; for ($num_cart = 0; $num_cart < $num_perc_cart_mod_vett; $num_cart++) { $percorso_cartella_modello = $perc_cart_mod_vett[$num_cart]; if (@is_file("{$percorso_cartella_modello}/{$nome_file}")) { $lingua_modello = $ini_lingua; $num_periodi_date = ""; recupera_var_modello_disponibilita($nome_file, $percorso_cartella_modello, $pag, $fr_frase, $num_frasi, $var_mod, $num_var_mod, $tipo_periodi, "SI", $anno_modello, $PHPR_TAB_PRE); if ($anno_modello_presente == $anno_prec) { aggiorna_var_anno_modello_disponibilita($id_data_ini_periodi_prec, $tableperiodi_prec, $tableperiodi, $tabletransazioniweb, $tablemessaggi, $tipo_periodi); crea_modello_disponibilita($percorso_cartella_modello, $anno_modello, $PHPR_TAB_PRE, $pag, $lingua_modello, $silenzio_mod, $fr_frase, $frase, $num_frasi, $tipo_periodi); } # fine if ($anno_modello_presente == $anno_prec) } # fine if (@is_file("$percorso_cartella_modello/$nome_file")) } # fine for $num_cart } # fine if ($file != "." && $file != "..") } # fine while ($file = readdir($lang_dig)) closedir($lang_dir); $templates_dir = opendir("./includes/templates/"); while ($modello_ext = readdir($templates_dir)) { if ($modello_ext != "." and $modello_ext != ".." and @is_dir("./includes/templates/{$modello_ext}")) { include "./includes/templates/{$modello_ext}/name.php"; include "./includes/templates/{$modello_ext}/phrases.php"; include "./includes/templates/{$modello_ext}/functions.php"; $funz_recupera_var_modello = "recupera_var_modello_" . $modello_ext; $funz_crea_modello = "crea_modello_" . $modello_ext; $funz_aggiorna_var_anno_modello = "aggiorna_var_anno_modello_" . $modello_ext; if ($template_file_name["ita"]) { $nome_file = $template_file_name["ita"]; } else { $nome_file = "ita_" . $template_file_name["en"]; } for ($num_cart = 0; $num_cart < $num_perc_cart_mod_vett; $num_cart++) { $percorso_cartella_modello = $perc_cart_mod_vett[$num_cart]; if (@is_file("{$percorso_cartella_modello}/{$nome_file}")) { $lingua_modello = "ita"; $num_periodi_date = ""; $funz_recupera_var_modello($nome_file, $percorso_cartella_modello, $pag, $fr_frase, $num_frasi, $var_mod, $num_var_mod, $tipo_periodi, "SI", $anno_modello, $PHPR_TAB_PRE); if ($anno_modello_presente == $anno_prec) { $funz_aggiorna_var_anno_modello($id_data_ini_periodi_prec, $tableperiodi_prec, $tableperiodi, $tabletransazioniweb, $tablemessaggi, $tipo_periodi); $funz_crea_modello($percorso_cartella_modello, $anno_modello, $PHPR_TAB_PRE, $pag, $lingua_modello, $silenzio_mod, $fr_frase, $frase, $num_frasi, $tipo_periodi); } # fine if ($anno_modello_presente == $anno_prec) } # fine if (@is_file("$percorso_cartella_modello/$nome_file")) } # fine for $num_cart $lang_dir = opendir("./includes/lang/"); while ($ini_lingua = readdir($lang_dir)) { if ($ini_lingua != "." && $ini_lingua != "..") { if ($template_file_name[$ini_lingua]) { $nome_file = $template_file_name[$ini_lingua]; } else { $nome_file = $ini_lingua . "_" . $template_file_name["en"]; } for ($num_cart = 0; $num_cart < $num_perc_cart_mod_vett; $num_cart++) { $percorso_cartella_modello = $perc_cart_mod_vett[$num_cart]; if (@is_file("{$percorso_cartella_modello}/{$nome_file}")) { $lingua_modello = $ini_lingua; $num_periodi_date = ""; $funz_recupera_var_modello($nome_file, $percorso_cartella_modello, $pag, $fr_frase, $num_frasi, $var_mod, $num_var_mod, $tipo_periodi, "SI", $anno_modello, $PHPR_TAB_PRE); if ($anno_modello_presente == $anno_prec) { $funz_aggiorna_var_anno_modello($id_data_ini_periodi_prec, $tableperiodi_prec, $tableperiodi, $tabletransazioniweb, $tablemessaggi, $tipo_periodi); $funz_crea_modello($percorso_cartella_modello, $anno_modello, $PHPR_TAB_PRE, $pag, $lingua_modello, $silenzio_mod, $fr_frase, $frase, $num_frasi, $tipo_periodi); } # fine if ($anno_modello_presente == $anno_prec) } # fine if (@is_file("$percorso_cartella_modello/$nome_file")) } # fine for $num_cart } # fine if ($file != "." && $file != "..") } # fine while ($file = readdir($lang_dir)) closedir($lang_dir); } # fine if ($modello_ext != "." and $modello_ext != ".." and... } # fine while ($file = readdir($lang_dig)) closedir($templates_dir); $pag = $pag_orig; if ($silenzio != "SI") { echo "<br>"; } } # fine if ($importa_anno_prec == "SI" and C_RESTRIZIONI_DEMO_ADMIN != "SI") } else { if ($silenzio != "SI") { echo mex("Non ho i permessi per creare nuove tabelle nel database", $pag) . ".<br>"; } } } else { if ($silenzio != "SI") { echo mex("Anno già creato", $pag) . ".<br>"; } } flock($filelock, 3); fclose($filelock); unlink(C_DATA_PATH . "/anni.lock"); } else { if ($silenzio != "SI") { echo mex("Non ho i permessi di scrittura sulla cartella data", $pag) . ".<br>"; } } $lingua_mex = $lingua_mex_orig; }
function aggiorna_var_anno_modello_disponibilita ($id_data_ini_periodi_prec,$tableperiodi_prec,$tableperiodi,$tabletransazioniweb,$tablemessaggi,$tipo_periodi) { global $num_periodi_date,$LIKE,$anno,$estendi_ultima_data; $n_num_periodi_date = 0; if ($id_data_ini_periodi_prec) { for ($num1 = 0 ; $num1 < $num_periodi_date ; $num1++) { global ${"inizioperiodo".$num1},${"fineperiodo".$num1},${"intervalloperiodo".$num1}; $inizioperiodo = aggslashdb(${"inizioperiodo".$num1}); $fineperiodo = aggslashdb(${"fineperiodo".$num1}); $idinizioperiodo = esegui_query("select idperiodi from $tableperiodi_prec where datainizio = '$inizioperiodo' "); $num_idinizioperiodo = numlin_query($idinizioperiodo); if ($num_idinizioperiodo == 0) { $idinizioperiodo = 10000; } else { $idinizioperiodo = risul_query($idinizioperiodo,0,'idperiodi'); } $inizioperiodo = $idinizioperiodo; $idfineperiodo = esegui_query("select idperiodi from $tableperiodi_prec where datafine = '$fineperiodo' "); $num_idfineperiodo = numlin_query($idfineperiodo); if ($num_idfineperiodo == 0) { $idfineperiodo = -1; } else { $idfineperiodo = risul_query($idfineperiodo,0,'idperiodi'); } $fineperiodo = $idfineperiodo; $intervalloperiodo = aggslashdb(${"intervalloperiodo".$num1}); if ($estendi_ultima_data == "SI" and $num1 == ($num_periodi_date - 1)) $fineperiodo = $id_data_ini_periodi_prec + $intervalloperiodo; if (($fineperiodo - $intervalloperiodo) >= $id_data_ini_periodi_prec) { if ($inizioperiodo < $id_data_ini_periodi_prec) { for ($num2 = $inizioperiodo ; $num2 <= $fineperiodo ; $num2 = $num2 + $intervalloperiodo) { if ($num2 >= $id_data_ini_periodi_prec) { $inizioperiodo = $num2; break; } # fine if ($num2 >= $id_data_ini_periodi_prec) } # fine for $num2 } # fine if ($inizioperiodo < $id_data_ini_periodi_prec) $n_inizioperiodo[$n_num_periodi_date] = $inizioperiodo - $id_data_ini_periodi_prec + 1; $n_fineperiodo[$n_num_periodi_date] = $fineperiodo - $id_data_ini_periodi_prec + 1; $n_intervalloperiodo[$n_num_periodi_date] = $intervalloperiodo; $n_num_periodi_date++; } # fine if (($fineperiodo - $intervalloperiodo) >= $id_data_ini_periodi_prec or... } # fine for $num1 } # fine if ($id_data_ini_periodi_prec) if ($estendi_ultima_data == "SI" and !$id_data_ini_periodi_prec) { $n_num_periodi_date = 1; global $inizioperiodo0,$fineperiodo0,$intervalloperiodo0; if (($num_periodi_date - 1) != 0) global ${"fineperiodo".($num_periodi_date - 1)},${"intervalloperiodo".($num_periodi_date - 1)}; $n_intervalloperiodo[0] = ${"intervalloperiodo".($num_periodi_date - 1)}; $inizioperiodo = ${"fineperiodo".($num_periodi_date - 1)}; if ($tipo_periodi == "g") $aggiungi_giorni = 1; else $aggiungi_giorni = 7; $anno_inizio = substr($inizioperiodo,0,4); $mese_inizio = substr($inizioperiodo,5,2); $giorno_inizio = substr($inizioperiodo,8,2); for ($num1 = 0 ; $num1 < 2000 ; $num1++) { $datainizio = date("Y-m-d",mktime(0,0,0,$mese_inizio,$giorno_inizio,$anno_inizio)); $datainizio = esegui_query("select * from $tableperiodi where datainizio = '$datainizio'"); if (numlin_query($datainizio) == 1) { $n_inizioperiodo[0] = risul_query($datainizio,0,'idperiodi'); break; } # fine if (numlin_query($datainizio) == 1) $giorno_inizio = $giorno_inizio + ($n_intervalloperiodo[0] * $aggiungi_giorni); } # fine for $num1 $n_fineperiodo[0] = $n_inizioperiodo[0]; } # fine if ($estendi_ultima_data == "SI" and !$id_data_ini_periodi_prec) for ($num1 = 0 ; $num1 < $n_num_periodi_date ; $num1++) { $inizioperiodo = $n_inizioperiodo[$num1]; $fineperiodo = $n_fineperiodo[$num1]; $inizioperiodo = esegui_query("select datainizio from $tableperiodi where idperiodi = '$inizioperiodo' "); $inizioperiodo = @risul_query($inizioperiodo,0,'datainizio'); $fineperiodo = esegui_query("select datafine from $tableperiodi where idperiodi = '$fineperiodo' "); $fineperiodo = @risul_query($fineperiodo,0,'datafine'); if (!$inizioperiodo or !$fineperiodo) $n_num_periodi_date = 0; ${"inizioperiodo".$num1} = $inizioperiodo; ${"fineperiodo".$num1} = $fineperiodo; ${"intervalloperiodo".$num1} = $n_intervalloperiodo[$num1]; } # fine for $num1 $num_periodi_date = $n_num_periodi_date; if (!$num_periodi_date) $inizioperiodo0 = ""; if ($num_periodi_date != 0) { if ($id_data_ini_periodi_prec) { $tabelle_lock = array("$tabletransazioniweb","$tablemessaggi"); $altre_tab_lock = array("$tableperiodi_prec","$tableperiodi"); $tabelle_lock = lock_tabelle($tabelle_lock,$altre_tab_lock); $data_ini_periodi_prec = esegui_query("select datainizio from $tableperiodi_prec where idperiodi = '$id_data_ini_periodi_prec' "); $data_ini_periodi_prec = risul_query($data_ini_periodi_prec,0,'datainizio'); $da_aggiornare = esegui_query("select idmessaggi,dati_messaggio3,dati_messaggio4,dati_messaggio9,dati_messaggio14 from $tablemessaggi where tipo_messaggio = 'rprenota' and dati_messaggio1 = 'da_inserire' and dati_messaggio18 = '".($anno - 1)."' "); $num_da_aggiornare = numlin_query($da_aggiornare); for ($num1 = 0 ; $num1 < $num_da_aggiornare ; $num1++) { $num_tipologie = risul_query($da_aggiornare,$num1,'dati_messaggio3'); $id_messaggio = risul_query($da_aggiornare,$num1,'idmessaggi'); $date_inizio = explode(",",risul_query($da_aggiornare,$num1,'dati_messaggio4')); $aggiornare = "SI"; for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) { if ($date_inizio[($n_t - 1)] < $data_ini_periodi_prec) $aggiornare = "NO"; } # fine for $n_t if ($aggiornare == "SI") { $numcostiagg_dt = explode(",",risul_query($da_aggiornare,$num1,'dati_messaggio9')); $id_periodi_costo_dt = explode(";",risul_query($da_aggiornare,$num1,'dati_messaggio14')); $n_id_periodi_costo = ""; for ($n_t = 1 ; $n_t <= $num_tipologie ; $n_t++) { if ($n_t != 1) $n_id_periodi_costo .= ";"; $numcostiagg = $numcostiagg_dt[($n_t - 1)]; $id_periodi_costo_dt2 = explode(":",$id_periodi_costo_dt[($n_t - 1)]); for ($numca = 1 ; $numca <= $numcostiagg ; $numca++) { if ($numca != 1) $n_id_periodi_costo .= ":"; $id_periodi_costo = explode(",",$id_periodi_costo_dt2[($numca - 1)]); $num_id_periodi_costo = count($id_periodi_costo); for ($numpc = 0 ; $numpc < $num_id_periodi_costo ; $numpc++) { if ($numpc != 0) $n_id_periodi_costo .= ","; if ($id_periodi_costo[$numpc]) $n_id_periodi_costo .= $id_periodi_costo[$numpc] - $id_data_ini_periodi_prec + 1; } # fine for $numpc } # fine for $numca } # fine for $n_t esegui_query("update $tablemessaggi set dati_messaggio14 = '$n_id_periodi_costo', dati_messaggio18 = '$anno' where idmessaggi = '".aggslashdb($id_messaggio)."' "); } # fine if ($aggiornare == "SI") } # fine for $num1 unlock_tabelle($tabelle_lock); } # fine if ($id_data_ini_periodi_prec) } # fine if ($num_periodi_date != 0) } # fine funtcion aggiorna_var_anno_modello_disponibilita
# fine if (strcmp($admin,"")) @unlink(C_DATA_PATH . "/ini.php"); } # fine if (C_UTILIZZA_SEMPRE_DEFAULTS == "AUTO" and @is_file(C_DATI_PATH."/ini.php")) $tablemessaggi = $PHPR_TAB_PRE . "messaggi"; $testo = "<div style=\"max-width: 600px; line-height: 1.1;\">"; if (C_NASCONDI_MARCA != "SI") { $testo .= "<h4>" . mex("Benvenuto a HotelDruid!", $pag) . "</h4><br>"; } $testo .= "" . mex("Questi sono alcuni semplici passi che puoi seguire per configurare le funzionalità di base di HotelDruid", $pag) . ":<br>\n<ul style=\"line-height: 1.2;\">\n<li>" . mex("Inserisci le informazioni sugli appartamenti dalla", 'unit.php') . "\n <em><b><a href=\"./visualizza_tabelle.php?tipo_tabella=appartamenti&<sessione>\">" . mex("tabella appartamenti", 'unit.php') . "</a></b></em>, \n " . mex("utilizzando l'apposito tasto al di sotto di essa", $pag) . ". " . mex("Gli appartamenti possono essere creati, cancellati e rinominati", 'unit.php') . ". \n " . mex("Si consiglia di inserire almeno la capienza massima per ogni appartamento", 'unit.php') . ".<br><br></li>\n<li>" . mex("Inserisci il numero di tariffe, un nome per ciascuna di esse ed i prezzi corrispondenti dalla", $pag) . " \n <em><b><a href=\"./creaprezzi.php?<sessione>\">" . mex("pagina inserimento prezzi", $pag) . "</a></b></em>.\n " . mex("Considera che le tariffe di HotelDruid fungono anche da tipologie di appartamenti", 'unit.php') . " (" . mex("vedi passo successivo", $pag) . ").<br><br></li>\n<li>" . mex("Associa una lista di appartamenti ad ogni tariffa, inserendo una regola di assegnazione 2 per ognuna di esse, dalla", 'unit.php') . " \n <em><b><a href=\"./crearegole.php?<sessione>#regola2\">" . mex("pagina inserimento regole", $pag) . "</a></b></em>.\n " . mex("Ogni appatamento può essere associato a più tariffe", 'unit.php') . ".<br><br></li>\n<li>" . mex("Se questo server web è pubblico si può abilitare il login e creare nuovi utenti dalla", $pag) . "\n <em><b><a href=\"./gestione_utenti.php?<sessione>\">" . mex("pagina gestione utenti", $pag) . "</a></b></em>.<br><br></li>\n<li>" . mex("Vai alla pagina", $pag) . "\n \"<em><b><a href=\"./personalizza.php?<sessione>\">" . mex("configura e personalizza", $pag) . "</a></b></em>\"\n " . mex("per cambiare il nome della valuta, abilitare la registrazione delle entrate, inserire i metodi di pagamento, ed impostare molte altre opzioni", $pag) . ".<br><br></li>\n</ul></div>"; if (C_NASCONDI_MARCA == "SI") { $testo = str_replace("HotelDruid", mex("questo programma", $pag), $testo); } $testo = aggslashdb($testo); $datainserimento = date("Y-m-d H:i:s", time() + C_DIFF_ORE * 3600); esegui_query("insert into {$tablemessaggi} (idmessaggi,tipo_messaggio,idutenti,idutenti_visto,datavisione,mittente,testo,datainserimento) values ('1','sistema',',1,',',1,','{$datainserimento}','1','{$testo}','{$datainserimento}')"); echo mex("Dati inseriti", $pag) . "!<br>" . mex("Tutti i data permanenti sono stati inseriti", $pag) . ".<br>"; echo "><br>\n</div></form>\""; if (C_CREA_ULTIMO_ACCESSO == "SI") { $fileaperto = @fopen(C_DATA_PATH . "/ultimo_accesso", "w+"); @fwrite($fileaperto, date("d-m-Y H:i:s")); @fclose($fileaperto); @chmod(C_DATA_PATH . "/ultimo_accesso", 0644); } # fine if (C_CREA_ULTIMO_ACCESSO == "SI") } # fine if ($insappartamenti and !@is_file(C_DATI_PATH."/selectappartamenti.php")) if ($mostra_form_iniziale != "NO") { // prima form di inserimento echo "<h4>" . mex2("Inserimento dei data permanenti", $pag, $lingua) . "</h4><br>\n" . mex2("Inserisci questi data per poi creare il database", $pag, $lingua) . ".<br>\n<br>\n<form accept-charset=\"utf-8\" method=\"post\" action=\"createdb.php\"><div>\n" . mex2("Tipo di database", $pag, $lingua) . ": \n<select name=\"tipo_db\">"; if (C_CREADB_TIPODB == "postgresql") {
function ripristina_backup_contr($linee_backup, $silenzio, $pag, $PHPR_TAB_PRE, $modalita, $contr_agg = "") { global $LIKE, $MEDIUMTEXT; include "./includes/variabili_contratto.php"; unset($var_predef); $versione_corrente = esegui_query("select * from " . $PHPR_TAB_PRE . "versioni where idversioni = 1"); $versione_corrente = risul_query($versione_corrente, 0, 'num_versione'); for ($num1 = 0; $num1 < count($linee_backup); $num1++) { $linea = togli_acapo($linee_backup[$num1]); if (substr($linea, 0, 10) == "<versione>") { $versione_file = substr($linea, 10); $versione_file = substr($versione_file, 0, -11); break; } # fine if (substr($linea,0,10) == "<versione>") } # fine for $num1 if ($versione_file and ($versione_file <= $versione_corrente and $versione_file >= "2.00")) { if ($modalita != "aggiungi") { $contr_agg = ""; } $contr_agg_var = $contr_agg; $contr_agg_all = ""; $contr_agg_trovato = 0; # Prima lettura di controllo del file contratti $file_coerente = "SI"; $num_err = ""; $leggendo_righe = "NO"; unset($tab_presente); $info_contr['max_contr'] = 0; $num_linee_backup = count($linee_backup); for ($num1 = 0; $num1 < $num_linee_backup; $num1++) { $linea = togli_acapo($linee_backup[$num1]); if ($linea == "</backup>" and $leggendo_righe != "SI") { $leggendo_backup = "NO"; } if ($leggendo_backup == "SI") { if ($linea == "</database>" and $leggendo_righe != "SI") { $leggendo_database = "NO"; } if ($leggendo_database == "SI") { if ($linea == "</tabella>" and $leggendo_righe != "SI") { $leggendo_tabella = "NO"; } if ($leggendo_tabella == "SI") { if (substr($linea, 0, 13) == "<nometabella>") { $nome_tabella = substr($linea, 13); $nome_tabella = substr($nome_tabella, 0, -14); } # fine if (substr($linea,0,13) == "<nometabella>") if ($linea == "</colonnetabella>") { $leggendo_colonne == "NO"; if ($nome_tabella == "contratti") { $tab_presente["contratti"] = "SI"; } if ($nome_tabella != "contratti") { $file_coerente = "NO"; $num_err .= "#1"; } } # fine if ($linea == "</colonnetabella>") if ($leggendo_colonne == "SI") { if (substr($linea, 0, 13) == "<nomecolonna>") { $num_colonne++; $nome_colonna[$num_colonne] = substr($linea, 13); $nome_colonna[$num_colonne] = substr($nome_colonna[$num_colonne], 0, -14); $num_colonna[$nome_colonna[$num_colonne]] = $num_colonne - 1; } # fine if (substr($linea,0,13) == "<nomecolonna>") if (substr($linea, 0, 13) == "<tipocolonna>") { $tipo_colonna[$num_colonne] = substr($linea, 13); $tipo_colonna[$num_colonne] = substr($tipo_colonna[$num_colonne], 0, -14); } # fine if (substr($linea,0,13) == "<tipocolonna>") } # fine if ($leggendo_colonne == "SI") if ($linea == "<colonnetabella>" and $leggendo_righe != "SI") { $leggendo_colonne = "SI"; $num_colonne = 0; } # fine if ($linea == "<colonnetabella>" and $leggendo_righe != "SI") if ($linea == "</righetabella>") { $leggendo_righe = "NO"; } if ($leggendo_righe == "SI") { if (substr($linea, 0, 6) == "<riga>") { $riga = substr($linea, 11); } else { $riga .= "\n" . $linea; } # fine else if (substr($linea,0,6) == "<riga>") if (substr($linea, -7) == "</riga>") { $riga = substr($riga, 0, -13); $riga = explode("</cmp><cmp>", $riga); if ($nome_tabella == "contratti") { $tipo_contr = $riga[$num_colonna['tipo']]; if (substr($tipo_contr, 0, 3) == "var") { $nome = $riga[$num_colonna['testo']]; if ($var_riserv[$nome]) { $file_coerente = "NO"; $num_err .= "#2"; } } # fine if (substr($tipo_contr,0,3) == "var") if (substr($tipo_contr, 0, 4) == "vett") { $nome = explode(";", $riga[$num_colonna['testo']]); if ($var_riserv[$nome[0]]) { $file_coerente = "NO"; $num_err .= "#3"; } if ($var_riserv[$nome[1]]) { $file_coerente = "NO"; $num_err .= "#4"; } } # fine if (substr($tipo_contr,0,4) == "vett") if ($modalita == "info") { if ($riga[$num_colonna['tipo']] == "nomi_con" and $riga[$num_colonna['numero']] == "1") { $info_contr['nomi_con'] = $riga[$num_colonna['testo']]; } if (substr($riga[$num_colonna['tipo']], 0, 5) == "contr" and $riga[$num_colonna['numero']] > $info_contr['max_contr']) { $info_contr['max_contr'] = $riga[$num_colonna['numero']]; } } # fine if ($modalita == "info") if ($contr_agg and $riga[$num_colonna['numero']] == $contr_agg) { if (substr($riga[$num_colonna['tipo']], 0, 5) == "contr") { $contr_agg_trovato = 1; } if ($riga[$num_colonna['tipo']] == "impor_vc") { $contr_agg_var = $riga[$num_colonna['testo']]; } if ($riga[$num_colonna['tipo']] == "allegato") { $contr_agg_all .= "," . $riga[$num_colonna['testo']] . ","; } } # fine if ($contr_agg and $riga[$num_colonna['numero']] == $contr_agg) } # fine if ($nome_tabella == "contratti") $lista_valori = ""; $lista_colonne = ""; unset($valore_colonna); for ($num2 = 0; $num2 < count($riga); $num2++) { $valore = aggslashdb($riga[$num2]); if ($valore != "") { $valore = str_replace("</righetabella@%&@>", "</righetabella>", $valore); $valore = str_replace("</riga@%&@>", "</riga>", $valore); $valore = str_replace("<riga@%&@>", "<riga>", $valore); $valore = str_replace("</cmp@%&@>", "</cmp>", $valore); $valore = str_replace("@%&@@%&@", "@%&@", $valore); $valore_colonna[$nome_colonna[$num2 + 1]] = $valore; } # fine if ($valore != "") } # fine for $num2 if (defined("C_MASSIMO_NUM_CONTRATTI") and C_MASSIMO_NUM_CONTRATTI != 0 and $nome_tabella == "contratti" and $linee_inserite_in_tabella[$nome_tabella] >= C_MASSIMO_NUM_CONTRATTI * 200 + 100) { $file_coerente = "NO"; $num_err .= "#5"; } $linee_inserite_in_tabella[$nome_tabella]++; } # fine if (substr($linea,-7) == "</riga>") } # fine if ($leggendo_righe == "SI") if ($linea == "<righetabella>") { $leggendo_righe = "SI"; $linee_inserite_in_tabella[$nome_tabella] = 0; } # fine if ($linea == "<righetabella>") } # fine if ($leggendo_tabella == "SI") if ($linea == "<tabella>") { $leggendo_tabella = "SI"; } } # fine if ($leggendo_database == "SI") if ($linea == "<database>") { $leggendo_database = "SI"; } } # fine if ($leggendo_backup == "SI") if ($linea == "<backup>") { $leggendo_backup = "SI"; } } # fine for $num1 if ($tab_presente["contratti"] != "SI") { $file_coerente = "NO"; $num_err .= "#6"; } if ($contr_agg and !$contr_agg_trovato) { $file_coerente = "NO"; $num_err .= "#7"; } if ($file_coerente == "NO") { if ($silenzio != "SI") { echo mex("Il formato del file è errato", $pag) . ".<br>"; } # debug backup DOCUMENTI #if ($num_err) echo $num_err.".<br>"; } else { unset($var_riserv); if ($modalita == "info") { return $info_contr; } if ($modalita == "rimpiazza") { esegui_query("delete from " . $PHPR_TAB_PRE . "contratti"); } $max_contr = esegui_query("select max(numero) from " . $PHPR_TAB_PRE . "contratti where tipo {$LIKE} 'contr%'"); if (numlin_query($max_contr) != 0) { $max_contr = risul_query($max_contr, 0, 0); } else { $max_contr = 0; } if (!$max_contr) { $max_contr = 0; } $max_var = esegui_query("select max(numero) from " . $PHPR_TAB_PRE . "contratti where tipo {$LIKE} 'var%'"); if (numlin_query($max_var) != 0) { $max_var = risul_query($max_var, 0, 0); } else { $max_var = 0; } if (!$max_var) { $max_var = 0; } $max_arr = esegui_query("select max(numero) from " . $PHPR_TAB_PRE . "contratti where tipo {$LIKE} 'vett%'"); if (numlin_query($max_arr) != 0) { $max_arr = risul_query($max_arr, 0, 0); } else { $max_arr = 0; } if (!$max_arr) { $max_arr = 0; } $max_cond = esegui_query("select max(numero) from " . $PHPR_TAB_PRE . "contratti where tipo = 'cond'"); if (numlin_query($max_cond) != 0) { $max_cond = risul_query($max_cond, 0, 0); } else { $max_cond = 0; } if (!$max_cond) { $max_cond = 0; } $max_all = esegui_query("select max(numero) from " . $PHPR_TAB_PRE . "contratti where tipo = 'file_all'"); if (numlin_query($max_all) != 0) { $max_all = risul_query($max_all, 0, 0); } else { $max_all = 0; } if (!$max_all) { $max_all = 0; } unset($nuovo_num_contr); unset($nuovo_num_var); $nuovo_num_var['-1'] = '-1'; $nuovo_num_var['-2'] = '-2'; unset($nuovo_nome_var); unset($nuovo_num_all); $leggendo_backup = "NO"; $leggendo_database = "NO"; $leggendo_tabella = "NO"; $leggendo_colonne = "NO"; $leggendo_righe = "NO"; $leggendo_file = "NO"; $leggendo_contenuto = "NO"; $nome_file = ""; unset($linee_inserite_in_tabella); if (defined("C_CARTELLA_CREA_MODELLI") and C_CARTELLA_CREA_MODELLI != "") { if (C_CARTELLA_DOC != "" and @is_dir(C_CARTELLA_CREA_MODELLI . "/" . C_CARTELLA_DOC)) { $dir_salva_home = C_CARTELLA_CREA_MODELLI . "/" . C_CARTELLA_DOC; } else { $dir_salva_home = C_CARTELLA_CREA_MODELLI; } } else { $dir_salva_home = C_DATA_PATH; } for ($num1 = 0; $num1 < $num_linee_backup; $num1++) { $linea = togli_acapo($linee_backup[$num1]); if ($linea == "</backup>" and $leggendo_righe != "SI") { $leggendo_backup = "NO"; } if ($leggendo_backup == "SI") { if ($linea == "</database>" and $leggendo_righe != "SI") { $leggendo_database = "NO"; } # restore del database if ($leggendo_database == "SI") { if ($linea == "</tabella>" and $leggendo_righe != "SI") { $leggendo_tabella = "NO"; } if ($leggendo_tabella == "SI") { if (substr($linea, 0, 13) == "<nometabella>") { $nome_tabella = substr($linea, 13); $nome_tabella = substr($nome_tabella, 0, -14); } # fine if (substr($linea,0,13) == "<nometabella>") if ($linea == "</colonnetabella>" and $leggendo_righe != "SI") { $leggendo_colonne == "NO"; #if ($nome_tabella == "contratti") esegui_query2("create table ".$N_PHPR_TAB_PRE."contratti (numero integer, tipo varchar(8), testo $MEDIUMTEXT )",$N_PHPR_DB_TYPE); } # fine if ($linea == "</colonnetabella>") if ($leggendo_colonne == "SI") { if (substr($linea, 0, 13) == "<nomecolonna>") { $num_colonne++; $nome_colonna[$num_colonne] = substr($linea, 13); $nome_colonna[$num_colonne] = substr($nome_colonna[$num_colonne], 0, -14); $num_colonna[$nome_colonna[$num_colonne]] = $num_colonne - 1; } # fine if (substr($linea,0,13) == "<nomecolonna>") if (substr($linea, 0, 13) == "<tipocolonna>") { $tipo_colonna[$num_colonne] = substr($linea, 13); $tipo_colonna[$num_colonne] = substr($tipo_colonna[$num_colonne], 0, -14); } # fine if (substr($linea,0,13) == "<tipocolonna>") } # fine if ($leggendo_colonne == "SI") if ($linea == "<colonnetabella>" and $leggendo_righe != "SI") { $leggendo_colonne = "SI"; $num_colonne = 0; $lista_tariffe = ""; } # fine if ($linea == "<colonnetabella>" and $leggendo_righe != "SI") if ($linea == "</righetabella>") { $leggendo_righe = "NO"; } if ($leggendo_righe == "SI") { if (substr($linea, 0, 6) == "<riga>") { $riga = substr($linea, 11); } else { $riga .= "\n" . $linea; } # fine else if (substr($linea,0,6) == "<riga>") if (substr($linea, -7) == "</riga>") { $riga = substr($riga, 0, -13); $riga = explode("</cmp><cmp>", $riga); $lista_valori = ""; $lista_colonne = ""; unset($valore_colonna); $inserire_riga = "SI"; $tipo_contr = $riga[$num_colonna['tipo']]; $vecchio_num = $riga[$num_colonna['numero']]; if (substr($tipo_contr, 0, 5) == "contr" or $tipo_contr == "opzeml" or $tipo_contr == "oggetto" or $tipo_contr == "allegato" or $tipo_contr == "headhtm" or $tipo_contr == "foothtm" or $tipo_contr == "est_txt" or $tipo_contr == "dir" or substr($tipo_contr, 0, 4) == "mln_" or $tipo_contr == "impor_vc" or $tipo_contr == "num_prog" or $tipo_contr == "nomefile" or $tipo_contr == "autosalv" or $tipo_contr == "compress" or $tipo_contr == "incr_np") { if (!$contr_agg or $vecchio_num == $contr_agg) { if (!$nuovo_num_contr[$vecchio_num]) { if ($contr_agg) { $nuovo_num_contr[$vecchio_num] = $max_contr + 1; } else { $nuovo_num_contr[$vecchio_num] = $max_contr + $vecchio_num; } } # fine if (!$nuovo_num_contr[$vecchio_num]) $riga[$num_colonna['numero']] = $nuovo_num_contr[$vecchio_num]; if (substr($tipo_contr, 0, 5) == "contr" or substr($tipo_contr, 0, 4) == "mln_") { if (@is_array($nuovo_nome_var)) { reset($nuovo_nome_var); while (list($v_nome, $n_nome) = each($nuovo_nome_var)) { $riga[$num_colonna['testo']] = str_replace("[{$v_nome}]", "[{$n_nome}]", $riga[$num_colonna['testo']]); $riga[$num_colonna['testo']] = str_replace("[c {$v_nome}=", "[c {$n_nome}=", $riga[$num_colonna['testo']]); $riga[$num_colonna['testo']] = str_replace("[c {$v_nome}!=", "[c {$n_nome}!=", $riga[$num_colonna['testo']]); if (substr($v_nome, -1) == ")") { $v_nome_arr = explode("(", $v_nome); $v_nome_arr = $v_nome_arr[0]; $n_nome_arr = explode("(", $n_nome); $n_nome_arr = $n_nome_arr[0]; $riga[$num_colonna['testo']] = str_replace("[r4 array=\"{$v_nome_arr}\"]", "[r4 array=\"{$n_nome_arr}\"]", $riga[$num_colonna['testo']]); $riga[$num_colonna['testo']] = str_replace("[{$v_nome_arr}('", "[{$n_nome_arr}('", $riga[$num_colonna['testo']]); $riga[$num_colonna['testo']] = str_replace("[c {$v_nome_arr}('", "[c {$n_nome_arr}('", $riga[$num_colonna['testo']]); } # fine if (substr($v_nome,-1) == ")") } # fine while (list($v_nome,$n_nome) = each($nuovo_nome_var)) } # fine if (@is_array($nuovo_nome_var)) } # fine if (substr($tipo_contr,0,5) == "contr" or substr($tipo_contr,0,4) == "mln_") if ($tipo_contr == "dir") { if (!function_exists('formatta_dir_salva_doc')) { include './includes/funzioni_contratti.php'; } $dir_salva = formatta_dir_salva_doc($riga[$num_colonna['testo']]); if ($dir_salva == "~") { $dir_salva = $dir_salva_home; } if (!@is_dir($dir_salva)) { $inserire_riga = "NO"; } else { $fileaperto = @fopen("{$dir_salva}/prova.tmp", "a+"); if (!$fileaperto) { $inserire_riga = "NO"; } else { fclose($fileaperto); unlink("{$dir_salva}/prova.tmp"); } # fine else if (!$fileaperto) } # fine else if (!@is_dir($dir_salva)) } # fine if ($tipo_contr == "dir") if ($tipo_contr == "allegato") { $vecchio_all = $riga[$num_colonna['testo']]; if (!$nuovo_num_all[$vecchio_all]) { $nuovo_num_all[$vecchio_all] = $max_all + $vecchio_all; } $riga[$num_colonna['testo']] = $nuovo_num_all[$vecchio_all]; } # fine if ($tipo_contr == "allegato") if ($tipo_contr == "impor_vc") { if (!$contr_agg) { $vecchio_num_impor_vc = $riga[$num_colonna['testo']]; if (!$nuovo_num_contr[$vecchio_num_impor_vc]) { $nuovo_num_contr[$vecchio_num_impor_vc] = $max_contr + $vecchio_num_impor_vc; } $riga[$num_colonna['testo']] = $nuovo_num_contr[$vecchio_num_impor_vc]; } else { $inserire_riga = "NO"; } } # fine if ($tipo_contr == "impor_vc") if ($tipo_contr == "num_prog") { if (!$contr_agg) { $vecchio_num_np = $riga[$num_colonna['testo']]; if (!$nuovo_num_contr[$vecchio_num_np]) { $nuovo_num_contr[$vecchio_num_np] = $max_contr + $vecchio_num_np; } $riga[$num_colonna['testo']] = $nuovo_num_contr[$vecchio_num_np]; } else { $inserire_riga = "NO"; } } # fine if ($tipo_contr == "num_prog") } else { $inserire_riga = "NO"; } } # fine if (substr($tipo_contr,0,5) == "contr" or $tipo_contr == "opzeml" or... if (substr($tipo_contr, 0, 3) == "var") { $contr_cond = substr($tipo_contr, 3); if (!$contr_agg or $contr_agg_var == $contr_cond) { if (strcmp($contr_cond, "")) { if (!$nuovo_num_contr[$contr_cond]) { if ($contr_agg) { $nuovo_num_contr[$contr_cond] = $max_contr + 1; } else { $nuovo_num_contr[$contr_cond] = $max_contr + $contr_cond; } } # fine if (!$nuovo_num_contr[$contr_cond]) $contr_cond = $nuovo_num_contr[$contr_cond]; $tipo_contr = "var{$contr_cond}"; $riga[$num_colonna['tipo']] = $tipo_contr; } # fine if (strcmp($contr_cond,"")) if (!$nuovo_num_var[$vecchio_num]) { $num_var_esistente = ""; $testo = $riga[$num_colonna['testo']]; $var_esistente = esegui_query("select * from " . $PHPR_TAB_PRE . "contratti where (tipo {$LIKE} 'var%' and testo = '" . aggslashdb($testo) . "') or (tipo {$LIKE} 'vett%' and testo {$LIKE} '" . aggslashdb($testo) . ";%') "); for ($num2 = 0; $num2 < numlin_query($var_esistente); $num2++) { if ($testo == risul_query($var_esistente, $num2, 'testo') and $tipo_contr == risul_query($var_esistente, $num2, 'tipo')) { $num_var_esistente = $num2 + 1; } } if ($num_var_esistente) { $nuovo_num_var[$vecchio_num] = risul_query($var_esistente, $num_var_esistente - 1, 'numero'); $inserire_riga = "NO"; } else { $nuovo_num_var[$vecchio_num] = $max_var + $vecchio_num; if (numlin_query($var_esistente)) { $nuovo_nome_trovato = "NO"; $nuovo_nome = $testo; while ($nuovo_nome_trovato == "NO") { $nuovo_nome .= "_"; $var_esistente = esegui_query("select * from " . $PHPR_TAB_PRE . "contratti where (tipo {$LIKE} 'var%' and testo = '" . aggslashdb($nuovo_nome) . "') or (tipo {$LIKE} 'vett%' and testo {$LIKE} '" . aggslashdb($nuovo_nome) . ";%') "); if (!numlin_query($var_esistente)) { $nuovo_nome_trovato = "SI"; } } # fine while ($nuovo_nome_trovato == "NO") $nuovo_nome_var[$testo] = $nuovo_nome; # cambio il nome della variabile anche negli array già inseriti reset($nuovo_nome_var); while (list($key, $val) = each($nuovo_nome_var)) { $nuovo_nome_var[$key] = str_replace("({$testo})", "({$nuovo_nome})", $val); if ($val != $nuovo_nome_var[$key]) { $nome_arr = substr($nuovo_nome_var[$key], 0, -1 * (strlen($nuovo_nome) + 2)); $arr_esistente = esegui_query("select * from " . $PHPR_TAB_PRE . "contratti where tipo = 'vett{$contr_cond}' and testo = '" . aggslashdb($nome_arr) . ";" . aggslashdb($testo) . "' "); if (numlin_query($arr_esistente)) { $testo_arr = explode(";", risul_query($arr_esistente, 0, 'testo')); $testo_arr[1] = $nuovo_nome; $testo_arr = implode(";", $testo_arr); esegui_query("update " . $PHPR_TAB_PRE . "contratti set testo = '" . aggslashdb($testo_arr) . "' where tipo = 'vett{$contr_cond}' and testo = '" . aggslashdb($nome_arr) . ";" . aggslashdb($testo) . "' "); } # fine if (numlin_query($arr_esistente)) } # fine if ($val != $nuovo_nome_var[$key]) } # fine while (list($key,$val) = each($nuovo_nome_var)) $riga[$num_colonna['testo']] = $nuovo_nome; } # fine if (numlin_query($var_esistente)) } # fine else if ($num_var_esistente) } # fine if (!$nuovo_num_contr[$vecchio_num]) $riga[$num_colonna['numero']] = $nuovo_num_var[$vecchio_num]; } else { $inserire_riga = "NO"; } } # fine if (substr($tipo_contr,0,3) == "var") if (substr($tipo_contr, 0, 4) == "vett") { $contr_cond = substr($tipo_contr, 4); if (!$contr_agg or $contr_agg_var == $contr_cond) { if (strcmp($contr_cond, "")) { if (!$nuovo_num_contr[$contr_cond]) { if ($contr_agg) { $nuovo_num_contr[$contr_cond] = $max_contr + 1; } else { $nuovo_num_contr[$contr_cond] = $max_contr + $contr_cond; } } # fine if (!$nuovo_num_contr[$contr_cond]) $contr_cond = $nuovo_num_contr[$contr_cond]; $tipo_contr = "vett{$contr_cond}"; $riga[$num_colonna['tipo']] = $tipo_contr; } # fine if (strcmp($contr_cond,"")) if (!$nuovo_num_var["a{$vecchio_num}"]) { $num_arr_esistente = ""; $testo = $riga[$num_colonna['testo']]; $nome_arr = explode(";", $testo); $var_arr = $nome_arr[1]; $nome_arr = $nome_arr[0]; $arr_esistente = esegui_query("select * from " . $PHPR_TAB_PRE . "contratti where (tipo {$LIKE} 'var%' and testo = '" . aggslashdb($nome_arr) . "') or (tipo {$LIKE} 'vett%' and testo {$LIKE} '" . aggslashdb($nome_arr) . ";%') "); for ($num2 = 0; $num2 < numlin_query($arr_esistente); $num2++) { if ($testo == risul_query($arr_esistente, $num2, 'testo') and $tipo_contr == risul_query($arr_esistente, $num2, 'tipo')) { $num_arr_esistente = $num2 + 1; } } if ($num_arr_esistente) { $nuovo_num_var["a{$vecchio_num}"] = "a" . risul_query($arr_esistente, $num_arr_esistente - 1, 'numero'); $inserire_riga = "NO"; } else { $nuovo_num_var["a{$vecchio_num}"] = "a" . ($max_arr + $vecchio_num); if (numlin_query($arr_esistente)) { $nuovo_nome_trovato = "NO"; $nuovo_nome = $nome_arr; while ($nuovo_nome_trovato == "NO") { $nuovo_nome .= "_"; $arr_esistente = esegui_query("select * from " . $PHPR_TAB_PRE . "contratti where (tipo {$LIKE} 'var%' and testo = '" . aggslashdb($nuovo_nome) . "') or (tipo {$LIKE} 'vett%' and testo {$LIKE} '" . aggslashdb($nuovo_nome) . ";%') "); if (!numlin_query($arr_esistente)) { $nuovo_nome_trovato = "SI"; } } # fine while ($nuovo_nome_trovato == "NO") $nuovo_nome_var["{$nome_arr}({$var_arr})"] = "{$nuovo_nome}({$var_arr})"; $riga[$num_colonna["testo"]] = $nuovo_nome . substr($testo, strlen($nome_arr)); } else { $nuovo_nome_var["{$nome_arr}({$var_arr})"] = "{$nome_arr}({$var_arr})"; } } # fine else if ($num_arr_esistente) } # fine if (!$nuovo_num_contr["a$vecchio_num"]) $riga[$num_colonna['numero']] = substr($nuovo_num_var["a{$vecchio_num}"], 1); } else { $inserire_riga = "NO"; } } # fine if (substr($tipo_contr,0,4) == "vett") if (substr($tipo_contr, 0, 4) == "cond") { $contr_cond = substr($tipo_contr, 4); if (!$contr_agg or $contr_agg_var == $contr_cond) { if (!strcmp($contr_cond, "")) { $riga[$num_colonna['numero']] = $max_cond + $vecchio_num; } else { $vecchio_num = $contr_cond; if (!$nuovo_num_contr[$vecchio_num]) { if ($contr_agg) { $nuovo_num_contr[$vecchio_num] = $max_contr + 1; } else { $nuovo_num_contr[$vecchio_num] = $max_contr + $vecchio_num; } } # fine if (!$nuovo_num_contr[$vecchio_num]) $riga[$num_colonna['tipo']] = "cond" . $nuovo_num_contr[$vecchio_num]; $contr_cond = $nuovo_num_contr[$vecchio_num]; } # fine else if (!strcmp($contr_cond,"")) $cond_vecchia = $riga[$num_colonna['testo']]; $cond_vecchia = explode("#@?", $cond_vecchia); $azione_vecchia = explode("#%?", $cond_vecchia[2]); $cond_nuova = $cond_vecchia[0] . "#@?"; if ($cond_vecchia[1]) { $cond_vecchia = explode("#\$?", $cond_vecchia[1]); $cond_nuova .= $cond_vecchia[0]; $num_cond = count($cond_vecchia); for ($num2 = 1; $num2 < $num_cond; $num2++) { $cond_nuova .= "#\$?"; $cond_vett = explode("#%?", $cond_vecchia[$num2]); if ($cond_vett[2] == "var") { ripristina_nome_var_cond(array(0, 3), $cond_vett, $nuovo_nome_var); } else { ripristina_nome_var_cond(array('0'), $cond_vett, $nuovo_nome_var); } for ($num3 = 0; $num3 < count($cond_vett); $num3++) { $cond_nuova .= $cond_vett[$num3] . "#%?"; } $cond_nuova = substr($cond_nuova, 0, -3); } # fine for $num2 } # fine ($cond_vecchia[1]) $cond_nuova .= "#@?" . $azione_vecchia[0]; if ($azione_vecchia[0] == "set") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; if ($azione_vecchia[3] == "var") { ripristina_nome_var_cond(array(4), $azione_vecchia, $nuovo_nome_var); } if ($azione_vecchia[5] == "var") { ripristina_nome_var_cond(array(6), $azione_vecchia, $nuovo_nome_var); } if ($azione_vecchia[7] == "var") { ripristina_nome_var_cond(array(8), $azione_vecchia, $nuovo_nome_var); } } # fine if ($azione_vecchia[0] == "set") if ($azione_vecchia[0] == "trunc") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; } if ($azione_vecchia[0] == "oper") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; if ($azione_vecchia[4] == "var") { ripristina_nome_var_cond(array(2, 5), $azione_vecchia, $nuovo_nome_var); } else { ripristina_nome_var_cond(array(2), $azione_vecchia, $nuovo_nome_var); } } # fine if ($azione_vecchia[0] == "oper") if ($azione_vecchia[0] == "date") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; ripristina_nome_var_cond(array(2), $azione_vecchia, $nuovo_nome_var); } # fine if ($azione_vecchia[0] == "date") if ($azione_vecchia[0] == "unset") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; } if ($azione_vecchia[0] == "array") { $azione_vecchia[1] = $nuovo_num_var[$azione_vecchia[1]]; if ($azione_vecchia[2] == "cop") { $azione_vecchia[3] = $nuovo_num_var[$azione_vecchia[3]]; } } # fine if ($azione_vecchia[0] == "array") for ($num2 = 1; $num2 < count($azione_vecchia); $num2++) { $cond_nuova .= "#%?" . $azione_vecchia[$num2]; } $riga[$num_colonna['testo']] = $cond_nuova; $testo = aggslashdb($riga[$num_colonna['testo']]); #$cond_esistente = esegui_query("select * from ".$PHPR_TAB_PRE."contratti where tipo = 'cond$contr_cond' and testo = '$testo' "); #for ($num2 = 0 ; $num2 < numlin_query($cond_esistente) ; $num2++) if ($cond_nuova == risul_query($cond_esistente,$num2,'testo')) $inserire_riga = "NO"; } else { $inserire_riga = "NO"; } } # fine if (substr($tipo_contr,0,4) == "cond") if ($tipo_contr == "file_all") { $vecchio_all = $riga[$num_colonna['numero']]; if (!$contr_agg or str_replace(",{$vecchio_all},", "", $contr_agg_all) != $contr_agg_all) { if (!$nuovo_num_all[$vecchio_all]) { $nuovo_num_all[$vecchio_all] = $max_all + $vecchio_all; } $riga[$num_colonna['numero']] = $nuovo_num_all[$vecchio_all]; } else { $inserire_riga = "NO"; } } # fine if ($tipo_contr == "file_all") for ($num2 = 0; $num2 < count($riga); $num2++) { $valore = aggslashdb($riga[$num2]); if ($valore != "") { $valore = str_replace("</righetabella@%&@>", "</righetabella>", $valore); $valore = str_replace("</riga@%&@>", "</riga>", $valore); $valore = str_replace("<riga@%&@>", "<riga>", $valore); $valore = str_replace("</cmp@%&@>", "</cmp>", $valore); $valore = str_replace("@%&@@%&@", "@%&@", $valore); $lista_valori .= ",'" . $valore . "'"; $lista_colonne .= "," . $nome_colonna[$num2 + 1]; } # fine if ($valore != "") } # fine for $num2 $lista_valori = substr($lista_valori, 1); $lista_colonne = substr($lista_colonne, 1); #echo "insert into $nome_tabella ($lista_colonne) values ($lista_valori)<br>"; if ($inserire_riga != "NO") { esegui_query("insert into " . $PHPR_TAB_PRE . "{$nome_tabella} ({$lista_colonne}) values ({$lista_valori}) "); } } # fine if (substr($linea,-7) == "</riga>") } # fine if ($leggendo_righe == "SI") if ($linea == "<righetabella>") { $leggendo_righe = "SI"; $linee_inserite_in_tabella[$nome_tabella] = 0; } # fine if ($linea == "<righetabella>") } # fine if ($leggendo_tabella == "SI") if ($linea == "<tabella>") { $leggendo_tabella = "SI"; } } # fine if ($leggendo_database == "SI") if ($linea == "<database>") { $leggendo_database = "SI"; } } # fine if ($leggendo_backup == "SI") if ($linea == "<backup>") { $leggendo_backup = "SI"; } } # fine for $num1 $tabelle_lock = array($PHPR_TAB_PRE . "contratti", $PHPR_TAB_PRE . "personalizza"); $altre_tab_lock = array($PHPR_TAB_PRE . "versioni"); $tabelle_lock = lock_tabelle($tabelle_lock, $altre_tab_lock); $nomi_contratti = esegui_query("select testo from {$PHPR_TAB_PRE}" . "contratti where numero = '1' and tipo = 'nomi_con' "); $nomi_contratti = risul_query($nomi_contratti, 0, 'testo'); if ($modalita == "rimpiazza") { esegui_query("update {$PHPR_TAB_PRE}" . "personalizza set valpersonalizza = '" . aggslashdb($nomi_contratti) . "' where idpersonalizza = 'nomi_contratti'"); } else { $nomi_contratti = explode("#@&", $nomi_contratti); $n_nomi_contratti = ""; for ($num1 = 0; $num1 < count($nomi_contratti); $num1++) { $nome_contr = explode("#?&", $nomi_contratti[$num1]); if (!$contr_agg or $nome_contr[0] == $contr_agg) { $n_nomi_contratti .= "#@&" . $nuovo_num_contr[$nome_contr[0]] . "#?&" . $nome_contr[1]; } } # fine for $num1 $d_nomi_contr = esegui_query("select * from {$PHPR_TAB_PRE}" . "personalizza where idpersonalizza = 'nomi_contratti' "); for ($num1 = 0; $num1 < numlin_query($d_nomi_contr); $num1++) { $idutente_contr = risul_query($d_nomi_contr, $num1, 'idutente'); $nomi_contr_utente = risul_query($d_nomi_contr, $num1, 'valpersonalizza') . $n_nomi_contratti; esegui_query("update {$PHPR_TAB_PRE}" . "personalizza set valpersonalizza = '" . aggslashdb($nomi_contr_utente) . "' where idpersonalizza = 'nomi_contratti' and idutente = '{$idutente_contr}' "); } # fine for $num1 } # fine else if ($modalita == "rimpiazza") esegui_query("delete from {$PHPR_TAB_PRE}" . "contratti where numero = '1' and tipo = 'nomi_con' "); unlock_tabelle($tabelle_lock); if ($silenzio != "SI") { echo mex("Documenti ripristinati", $pag) . ".<br>"; } } # fine else if ($file_coerente == "NO") } else { if ($silenzio != "SI") { echo mex("La versione attuale di hoteldruid e quella del file non coincidono", $pag) . ".<br>"; } } }
<input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"num_tariffe_mostra\" value=\"1\"> <input type=\"hidden\" name=\"numtariffa1\" value=\"".$numtariffa1."\"> <input type=\"hidden\" name=\"azione\" value=\"SI\"> <input type=\"hidden\" name=\"commentofoto\" value=\"SI\"> <input type=\"hidden\" name=\"numfoto\" value=\"$numfoto\"> ".ucfirst(mex("commento",$pag)).":<br>"; $d_commento = esegui_query("select testo from $tabledescrizioni where nome = 'tariffa".$numtariffa1."' and tipo = 'tarcommfoto' and lingua = 'ita' and numero = '$numfoto' "); if (numlin_query($d_commento)) $d_commento = risul_query($d_commento,0,'testo'); else $d_commento = ""; if ($priv_mod_tariffe != "n") echo "Italiano: <input type=\"text\" name=\"n_commento_ita\" value=\"$d_commento\" size=\"24\"><br>"; else echo "<div style=\"width: 300px;\">Italiano: \"<em>$d_commento</em>\"</div>"; reset($lingue_vett); while (list($ini_lingua,$nome_lingua) = each($lingue_vett)) { $d_commento = esegui_query("select testo from $tabledescrizioni where nome = 'tariffa".$numtariffa1."' and tipo = 'tarcommfoto' and lingua = '$ini_lingua' and numero = '$numfoto' "); if (numlin_query($d_commento)) $d_commento = risul_query($d_commento,0,'testo'); else $d_commento = ""; if ($priv_mod_tariffe != "n") echo "".ucfirst($nome_lingua).": <input type=\"text\" name=\"n_commento_$ini_lingua\" value=\"$d_commento\" size=\"24\"><br>"; else echo "<div style=\"width: 300px;\">".ucfirst($nome_lingua).": \"<em>$d_commento</em>\"</div>"; } # fine while (list($ini_lingua,$nome_lingua) = each($lingue_vett)) if ($priv_mod_tariffe != "n") echo "<input class=\"sbutton\" type=\"submit\" value=\"".ucfirst(mex("modifica",$pag))."\">"; echo "</div></form><br></td><td style=\"width: 20px;\"></td><td valign=\"middle\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"num_tariffe_mostra\" value=\"1\"> <input type=\"hidden\" name=\"numtariffa1\" value=\"".$numtariffa1."\"> <input type=\"hidden\" name=\"azione\" value=\"SI\"> <input type=\"hidden\" name=\"cancurlfoto\" value=\"SI\"> <input type=\"hidden\" name=\"numfoto\" value=\"$numfoto\">";
function genera_statistiche (&$entrate_ins_mese,&$num_prenota_ins_mese,&$entrate_prog_ins_mese,&$num_prenota_prog_ins_mese,&$percent_occupazione,&$entrate_mese,&$num_prenota_mese,&$num_origine,&$entrate_origine,&$percent_num_origine,&$percent_entrate_origine,&$num_nazionalita,&$entrate_nazionalita,&$percent_num_nazionalita,&$percent_entrate_nazionalita,&$app_occupati,&$prezzo_medio_prenota,&$revpar,&$revpar_ca,&$pagamenti,&$nazionalita_mese,&$num_giorni_mese,$anno_stat,$mesi,$date_ins,$prezzi,$appartamenti_sel,$condizione_prenota_proprie,$PHPR_TAB_PRE) { global $LIKE,$ILIKE; $tableprenota_stat = $PHPR_TAB_PRE."prenota".$anno_stat; $tablecostiprenota_stat = $PHPR_TAB_PRE."costiprenota".$anno_stat; $tableperiodi_stat = $PHPR_TAB_PRE."periodi".$anno_stat; $tablesoldi_stat = $PHPR_TAB_PRE."soldi".$anno_stat; $tableclienti = $PHPR_TAB_PRE."clienti"; $tableappartamenti = $PHPR_TAB_PRE."appartamenti"; $num_giorni_mese[$anno_stat][1] = 31; if (date("n",mktime(0,0,0,2,29,$anno_stat)) == "2") $num_giorni_mese[$anno_stat][2] = 29; else $num_giorni_mese[$anno_stat][2] = 28; $num_giorni_mese[$anno_stat][3] = 31; $num_giorni_mese[$anno_stat][4] = 30; $num_giorni_mese[$anno_stat][5] = 31; $num_giorni_mese[$anno_stat][6] = 30; $num_giorni_mese[$anno_stat][7] = 31; $num_giorni_mese[$anno_stat][8] = 31; $num_giorni_mese[$anno_stat][9] = 30; $num_giorni_mese[$anno_stat][10] = 31; $num_giorni_mese[$anno_stat][11] = 30; $num_giorni_mese[$anno_stat][12] = 31; if (strcmp($appartamenti_sel,"")) { $appartamenti_sel = explode(",",$appartamenti_sel); $num_appartamenti_sel = count($appartamenti_sel); for ($num1 = 0 ; $num1 < $num_appartamenti_sel ; $num1++) { if ($num1 == 0) $cond_app = " where ("; else $cond_app .= " or "; $cond_app .= "$tableprenota_stat.idappartamenti = '".aggslashdb($appartamenti_sel[$num1])."'"; } # fine for $num1 $cond_app .= ")"; } # fine if (strcmp($appartamenti_sel,"")) else $cond_app = ""; if ($date_ins['ini'] or $date_ins['fine']) { if ($cond_app) $cond_ins = " and ("; else $cond_ins = " where ("; if ($date_ins['ini']) $cond_ins .= "$tableprenota_stat.datainserimento >= '$anno_stat".$date_ins['ini']." 00:00:00'"; if ($date_ins['ini'] and $date_ins['fine']) $cond_ins .= " and "; if ($date_ins['fine']) $cond_ins .= "$tableprenota_stat.datainserimento <= '$anno_stat".$date_ins['fine']." 23:59:59'"; $cond_ins .= ")"; } # fine if ($date_ins['ini'] or $date_ins['fine']) else $cond_ins = ""; if ($condizione_prenota_proprie) { $condizione_prenota_proprie = str_replace("utente_inserimento","$tableprenota_stat.utente_inserimento",$condizione_prenota_proprie); if ($cond_app or $cond_ins) $condizione_prenota_proprie = " and".$condizione_prenota_proprie; else $condizione_prenota_proprie = " where".$condizione_prenota_proprie; } # fine if ($condizione_prenota_proprie) $appartamenti = esegui_query("select idappartamenti from $tableappartamenti".str_replace("$tableprenota_stat.idappartamenti = '","idappartamenti = '",$cond_app)." order by idappartamenti"); $num_appartamenti = numlin_query($appartamenti); $periodi = esegui_query("select idperiodi,datainizio,datafine from $tableperiodi_stat order by idperiodi "); $num_periodi = numlin_query($periodi); for ($num1 = 0 ; $num1 < $num_periodi ; $num1++) { $idper = risul_query($periodi,$num1,'idperiodi'); $datainizio[$idper] = risul_query($periodi,$num1,'datainizio'); $datafine[$idper] = risul_query($periodi,$num1,'datafine'); $anno_inizio = (integer) substr($datainizio[$idper],0,4); $mese_inizio = (integer) substr($datainizio[$idper],5,2); $num_periodi_mese[$anno_inizio][$mese_inizio]++; } # fine for $num1 $tutte_prenota = esegui_query("select distinct $tableprenota_stat.idprenota,$tableprenota_stat.iddatainizio,$tableprenota_stat.iddatafine,$tableprenota_stat.datainserimento,$tableprenota_stat.num_persone,$tableprenota_stat.tariffa,$tableprenota_stat.sconto,$tableprenota_stat.tariffa_tot,$tableprenota_stat.tariffesettimanali,$tableprenota_stat.caparra,$tableprenota_stat.commissioni,$tableprenota_stat.tasseperc,$tableprenota_stat.origine,$tableclienti.nazionalita from $tableprenota_stat inner join $tableclienti on $tableprenota_stat.idclienti = $tableclienti.idclienti$cond_app$cond_ins$condizione_prenota_proprie"); $num_tutte_prenota = numlin_query($tutte_prenota); $entrate_mese[$anno_stat][1] = 0; $num_prenota_mese[$anno_stat][1] = 0; for ($num1 = 0 ; $num1 < $num_tutte_prenota ; $num1++) { $id_prenota = risul_query($tutte_prenota,$num1,'idprenota',$tableprenota_stat); $id_data_inizio = risul_query($tutte_prenota,$num1,'iddatainizio',$tableprenota_stat); $id_data_fine = risul_query($tutte_prenota,$num1,'iddatafine',$tableprenota_stat); $num_sett = $id_data_fine - $id_data_inizio + 1; $data_inserimento = risul_query($tutte_prenota,$num1,'datainserimento',$tableprenota_stat); $tariffa = explode("#@&",risul_query($tutte_prenota,$num1,'tariffa',$tableprenota_stat)); $sconto = risul_query($tutte_prenota,$num1,'sconto',$tableprenota_stat); if ((double) $sconto > (double) $tariffa[1]) $sconto = $tariffa[1]; $prezzo_tariffa = (double) $tariffa[1]; $tariffa_tot = risul_query($tutte_prenota,$num1,'tariffa_tot',$tableprenota_stat); $tariffe_settimanali_int = risul_query($tutte_prenota,$num1,'tariffesettimanali',$tableprenota_stat); $tariffe_settimanali = explode(";",$tariffe_settimanali_int); $tariffe_settimanali = explode(",",$tariffe_settimanali[0]); if (!$prezzi['commissioni']) { $commissioni = (double) risul_query($tutte_prenota,$num1,'commissioni',$tableprenota_stat); if ($commissioni > 0) { $tariffa_tot = (double) $tariffa_tot - (double) $commissioni; $prezzo_tariffa = (double) $prezzo_tariffa - (double) $commissioni; $commissioni_sett = round(((double) $commissioni / ($id_data_fine - $id_data_inizio + 1)),2); for ($num2 = 0 ; $num2 < count($tariffe_settimanali) ; $num2++) $tariffe_settimanali[$num2] = (double) $tariffe_settimanali[$num2] - (double) $commissioni_sett; $resto_arr = (double) $commissioni - ((double) $commissioni_sett * ($id_data_fine - $id_data_inizio + 1)); $tariffe_settimanali[0] = (double) $tariffe_settimanali[0] - (double) $resto_arr; } # fine if ($commissioni > 0) } # fine if (!$prezzi['commissioni']) if (!$prezzi['tasse']) { $tasse_tot = 0; $tasse_perc = (double) risul_query($tutte_prenota,$num1,'tasseperc',$tableprenota_stat); $caparra = (double) risul_query($tutte_prenota,$num1,'caparra',$tableprenota_stat); $numpersone = risul_query($tutte_prenota,$num1,'num_persone',$tableprenota_stat); if ($tasse_perc) { $tasse = (((double) $tariffa[1] - (double) $sconto) / ($tasse_perc + 100)) * $tasse_perc; $tasse = $tasse / (double) $prezzi['tasse_arrotond']; $tasse = round($tasse); $tasse = $tasse * (double) $prezzi['tasse_arrotond']; $tasse_tot = (double) $tasse_tot + $tasse; } # fine if ($tasse_perc) $prezzo_tariffa = (double) $prezzo_tariffa - (double) $tasse_tot; $tasse_sett = round(((double) $tasse_tot / ($id_data_fine - $id_data_inizio + 1)),2); for ($num2 = 0 ; $num2 < count($tariffe_settimanali) ; $num2++) $tariffe_settimanali[$num2] = (double) $tariffe_settimanali[$num2] - (double) $tasse_sett; $resto_arr = (double) $tasse_tot - ((double) $tasse_sett * ($id_data_fine - $id_data_inizio + 1)); $tariffe_settimanali[0] = (double) $tariffe_settimanali[0] - (double) $resto_arr; $dati_cap = dati_costi_agg_prenota($tablecostiprenota_stat,$id_prenota); $costo_agg_tot = 0; $costo_escludi_perc = 0; for ($numca = 0 ; $numca < $dati_cap['num'] ; $numca++) { $costo_agg_parziale = (double) calcola_prezzo_totale_costo($dati_cap,$numca,$id_data_inizio,$id_data_fine,$dati_cap[$numca]['settimane'],$dati_cap[$numca]['moltiplica_costo'],$tariffa[1],$tariffe_settimanali_int,((double) $tariffa[1] + $costo_agg_tot - (double) $sconto),$caparra,$numpersone,$costo_escludi_perc); $costo_agg_tot = (double) $costo_agg_tot + $costo_agg_parziale; if ($dati_cap[$numca]['escludi_tot_perc'] == "s") $costo_escludi_perc = (double) $costo_escludi_perc + $costo_agg_parziale; if ($dati_cap[$numca]['tasseperc']) { if ($dati_cap[$numca]['tasseperc'] == -1) $tasse_ca = (double) $costo_agg_parziale; else { $tasse_ca = ($costo_agg_parziale / (double) ($dati_cap[$numca]['tasseperc'] + 100)) * (double) $dati_cap[$numca]['tasseperc']; $tasse_ca = $tasse_ca / $prezzi['tasse_arrotond']; $tasse_ca = round($tasse_ca); $tasse_ca = $tasse_ca * (double) $prezzi['tasse_arrotond']; } # fine else if ($dati_cap[$numca]['tasseperc'] == -1) $tasse_tot = (double) $tasse_tot + (double) $tasse_ca; } # fine if ($dati_cap[$numca]['tasseperc']) } # fine for $numca $tariffa_tot = (double) $tariffa_tot - (double) $tasse_tot; } # fine if (!$prezzi['tasse']) $val_medio_costi_agg_e_sconto_per_sett = round((((double) $tariffa_tot - (double) $prezzo_tariffa) / (double) $num_sett),2); $val_medio_sconto_per_sett = round(((double) $sconto / (double) $num_sett),2); $origine = risul_query($tutte_prenota,$num1,'origine',$tableprenota_stat); $nazionalita = risul_query($tutte_prenota,$num1,'nazionalita',$tableprenota_stat); $anno_ins = (integer) substr($data_inserimento,0,4); $mese_ins = (integer) substr($data_inserimento,5,2); if (substr($datainizio[$id_data_inizio],0,4) == $anno_stat) { if ($anno_ins < $anno_stat) { $anno_ins = (integer) $anno_stat; $mese_ins = (integer) 0; } # fine if ($anno_ins < $anno_stat) $entrate_ins_mese[$anno_ins][$mese_ins] = (double) $entrate_ins_mese[$anno_ins][$mese_ins] + (double) $tariffa_tot; $num_prenota_ins_mese[$anno_ins][$mese_ins]++; } # fine if (substr($datainizio[$id_data_inizio],0,4) == $anno_stat) $ultimo_mese_inizio = ""; for ($num2 = $id_data_inizio ; $num2 <= $id_data_fine ; $num2++) { $anno_inizio = (integer) substr($datainizio[$num2],0,4); $mese_inizio = (integer) substr($datainizio[$num2],5,2); $app_occupati[$anno_inizio][$mese_inizio]++; $entrate_mese[$anno_inizio][$mese_inizio] = (double) $entrate_mese[$anno_inizio][$mese_inizio] + (double) $tariffe_settimanali[($num2 - $id_data_inizio)] + (double) $val_medio_costi_agg_e_sconto_per_sett; $entrate_mese_no_ca[$anno_inizio][$mese_inizio] = (double) $entrate_mese_no_ca[$anno_inizio][$mese_inizio] + (double) $tariffe_settimanali[($num2 - $id_data_inizio)] - (double) $val_medio_sconto_per_sett; if ($mese_inizio != $ultimo_mese_inizio) $num_prenota_mese[$anno_inizio][$mese_inizio]++; $ultimo_mese_inizio = $mese_inizio; } # fine for $num2 $anno_inizio = (integer) substr($datainizio[$id_data_inizio],0,4); $mese_inizio = (integer) substr($datainizio[$id_data_inizio],5,2); if ($mesi[$mese_inizio]) { $num_prenota_mese[$anno_inizio]['TOT']++; if ($origine != "") { $num_origine[$anno_inizio][$origine]++; $entrate_origine[$anno_inizio][$origine] = (double) $entrate_origine[$anno_inizio][$origine] + (double) $tariffa_tot; } # fine if ($origine != "") if ($nazionalita != "") { $num_nazionalita[$anno_inizio][$nazionalita]++; $entrate_nazionalita[$anno_inizio][$nazionalita] = (double) $entrate_nazionalita[$anno_inizio][$nazionalita] + (double) $tariffa_tot; } # fine if ($nazionalita != "") $pagamenti_p = esegui_query("select metodo_pagamento,saldo_prenota from $tablesoldi_stat where saldo_prenota is not NULL and motivazione $LIKE '%;$id_prenota' order by data_inserimento"); $num_pagamenti_p = numlin_query($pagamenti_p); for ($num2 = 0 ; $num2 < $num_pagamenti_p ; $num2++) { $metodo_pagamento = risul_query($pagamenti_p,$num2,'metodo_pagamento'); $saldo_prenota = risul_query($pagamenti_p,$num2,'saldo_prenota'); if ($metodo_pagamento) $pagamenti[$anno_inizio][$metodo_pagamento] = (double) $pagamenti[$anno_inizio][$metodo_pagamento] + (double) $saldo_prenota; } # fine for $num2 } # fine if ($mesi[$mese_inizio]) } # fine for $num1 $percent_occupazione[$anno_stat]['TOT'] = 0; $revpar[$anno_stat]['TOT'] = 0; $revpar_ca[$anno_stat]['TOT'] = 0; $num_mesi_media = 0; $num_giorni_revpar = 0; $num_giorni_revpar_ca = 0; $entrate_prog_ins_mese[$anno_stat][0] = (double) $entrate_ins_mese[$anno_stat][0]; $num_prenota_prog_ins_mese[$anno_stat][0] = $num_prenota_ins_mese[$anno_stat][0]; for ($num1 = 1 ; $num1 <= 12 ; $num1++) { $entrate_prog_ins_mese[$anno_stat][$num1] = (double) $entrate_prog_ins_mese[$anno_stat][($num1 - 1)] + (double) $entrate_ins_mese[$anno_stat][$num1]; $num_prenota_prog_ins_mese[$anno_stat][$num1] = $num_prenota_prog_ins_mese[$anno_stat][($num1 - 1)] + $num_prenota_ins_mese[$anno_stat][$num1]; if (!$app_occupati[$anno_stat][$num1] or !$num_periodi_mese[$anno_stat][$num1] or !$num_appartamenti) $percent_occupazione[$anno_stat][$num1] = 0; else $percent_occupazione[$anno_stat][$num1] = round(($app_occupati[$anno_stat][$num1] / ($num_appartamenti * $num_periodi_mese[$anno_stat][$num1]) * 100),1); if ($mesi[$num1]) { $percent_occupazione[$anno_stat]['TOT'] = (double) $percent_occupazione[$anno_stat]['TOT'] + (double) $percent_occupazione[$anno_stat][$num1]; $num_mesi_media++; if ($num_appartamenti) { $revpar[$anno_stat][$num1] = round(((double) $entrate_mese_no_ca[$anno_stat][$num1] / ((double) $num_appartamenti * (double) $num_giorni_mese[$anno_stat][$num1])),2); $revpar_ca[$anno_stat][$num1] = round(((double) $entrate_mese[$anno_stat][$num1] / ((double) $num_appartamenti * (double) $num_giorni_mese[$anno_stat][$num1])),2); } # fine if ($num_appartamenti) $entrate_mese[$anno_stat]['TOT'] = (double) $entrate_mese[$anno_stat]['TOT'] + (double) $entrate_mese[$anno_stat][$num1]; $entrate_mese_no_ca[$anno_stat]['TOT'] = (double) $entrate_mese_no_ca[$anno_stat]['TOT'] + (double) $entrate_mese_no_ca[$anno_stat][$num1]; $app_occupati[$anno_stat]['TOT'] = (double) $app_occupati[$anno_stat]['TOT'] + (double) $app_occupati[$anno_stat][$num1]; $num_giorni_revpar = $num_giorni_revpar + $num_giorni_mese[$anno_stat][$num1]; $num_giorni_revpar_ca = $num_giorni_revpar_ca + $num_giorni_mese[$anno_stat][$num1]; if ($app_occupati[$anno_stat][$num1]) $prezzo_medio_prenota[$anno_stat][$num1] = (double) $entrate_mese[$anno_stat][$num1] / (double) $app_occupati[$anno_stat][$num1]; else $prezzo_medio_prenota[$anno_stat][$num1] = (double) 0; } # fine if ($mesi[$num1]) } # fine for $num1 if ($num_mesi_media) $percent_occupazione[$anno_stat]['TOT'] = round(((double) $percent_occupazione[$anno_stat]['TOT'] / (double) $num_mesi_media),1); if ($num_giorni_revpar and $num_appartamenti) $revpar[$anno_stat]['TOT'] = round(((double) $entrate_mese_no_ca[$anno_stat]['TOT'] / ((double) $num_appartamenti * (double) $num_giorni_revpar)),2); if ($num_giorni_revpar_ca and $num_appartamenti) $revpar_ca[$anno_stat]['TOT'] = round(((double) $entrate_mese[$anno_stat]['TOT'] / ((double) $num_appartamenti * (double) $num_giorni_revpar_ca)),2); if ($app_occupati[$anno_stat]['TOT']) $prezzo_medio_prenota[$anno_stat]['TOT'] = (double) $entrate_mese[$anno_stat]['TOT'] / (double) $app_occupati[$anno_stat]['TOT']; if (@is_array($num_origine)) { $num_origine_anno = $num_origine[$anno_stat]; if (@is_array($num_origine_anno)) { reset($num_origine_anno); while (list($orig,$val) = each($num_origine_anno)) { if (!$val or !$num_prenota_mese[$anno_stat]['TOT']) $percent_num_origine[$anno_stat][$orig] = 0; else $percent_num_origine[$anno_stat][$orig] = round(((double) $val / (double) $num_prenota_mese[$anno_stat]['TOT'] * 100),1); if (!$entrate_origine[$anno_stat][$orig] or !$entrate_mese[$anno_stat]['TOT']) $percent_entrate_origine[$anno_stat][$orig] = 0; else $percent_entrate_origine[$anno_stat][$orig] = round(((double) $entrate_origine[$anno_stat][$orig] / (double) $entrate_mese[$anno_stat]['TOT'] * 100),1); } # fine while (list($orig,$val) = each($num_origine_anno)) } # fine if (@is_array($num_origine_anno)) } # fine if (@is_array($num_origine)) if (@is_array($num_nazionalita)) { $num_nazionalita_anno = $num_nazionalita[$anno_stat]; reset($num_nazionalita_anno); while (list($nazion,$val) = each($num_nazionalita_anno)) { if (!$val or !$num_prenota_mese[$anno_stat]['TOT']) $percent_num_nazionalita[$anno_stat][$nazion] = 0; else $percent_num_nazionalita[$anno_stat][$nazion] = round(((double) $val / (double) $num_prenota_mese[$anno_stat]['TOT'] * 100),1); if (!$entrate_nazionalita[$anno_stat][$nazion] or !$entrate_mese[$anno_stat]['TOT']) $percent_entrate_nazionalita[$anno_stat][$nazion] = 0; else $percent_entrate_nazionalita[$anno_stat][$nazion] = round(((double) $entrate_nazionalita[$anno_stat][$nazion] / (double) $entrate_mese[$anno_stat]['TOT'] * 100),1); } # fine while (list($nazion,$val) = each($num_nazionalita_anno)) } # fine if (@is_array($num_nazionalita)) } # fine function genera_statistiche
</td><td style=\"width: 20px;\"></td><td> <form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div class=\"linhbox\"> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"idappartamenti\" value=\"".$idappartamenti."\"> <input type=\"hidden\" name=\"commentofoto\" value=\"SI\"> <input type=\"hidden\" name=\"numfoto\" value=\"$numfoto\"> ".ucfirst(mex("commento",$pag)).":<br>"; $d_commento = esegui_query("select testo from $tabledescrizioni where nome = '$idappartamenti' and tipo = 'appcommfoto' and lingua = 'ita' and numero = '$numfoto' "); if (numlin_query($d_commento)) $d_commento = risul_query($d_commento,0,'testo'); else $d_commento = ""; if ($priv_mod_tariffe != "n") echo "Italiano: <input type=\"text\" name=\"n_commento_ita\" value=\"$d_commento\" size=\"24\"><br>"; else echo "<div style=\"width: 300px;\">Italiano: \"<em>$d_commento</em>\"</div>"; reset($lingue_vett); while (list($ini_lingua,$nome_lingua) = each($lingue_vett)) { $d_commento = esegui_query("select testo from $tabledescrizioni where nome = '$idappartamenti' and tipo = 'appcommfoto' and lingua = '$ini_lingua' and numero = '$numfoto' "); if (numlin_query($d_commento)) $d_commento = risul_query($d_commento,0,'testo'); else $d_commento = ""; echo "".ucfirst($nome_lingua).": <input type=\"text\" name=\"n_commento_$ini_lingua\" value=\"$d_commento\" size=\"24\"><br>"; } # fine while (list($ini_lingua,$nome_lingua) = each($lingue_vett)) echo "<input class=\"sbutton\" type=\"submit\" value=\"".ucfirst(mex("modifica",$pag))."\"> </div></form><br></td><td style=\"width: 20px;\"></td><td valign=\"middle\"> <form accept-charset=\"utf-8\" method=\"post\" action=\"$pag\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"idappartamenti\" value=\"".$idappartamenti."\"> <input type=\"hidden\" name=\"cancurlfoto\" value=\"SI\"> <input type=\"hidden\" name=\"numfoto\" value=\"$numfoto\"> <input class=\"sbutton\" type=\"submit\" value=\"".ucfirst(mex("elimina",$pag))."\"> </div></form></td></tr></table>"; } # fine for $num1
echo "<br><form accept-charset=\"utf-8\" method=\"post\" action=\"creaanno.php\"><div> <input type=\"hidden\" name=\"anno\" value=\"$anno\"> <input type=\"hidden\" name=\"id_sessione\" value=\"$id_sessione\"> <input type=\"hidden\" name=\"nuovo_mess\" value=\"$nuovo_mess\"> <input class=\"sbutton\" type=\"submit\" name=\"creaanno\" value=\"".mex("Crea l'anno",$pag)." $anno \"> ".mex("con periodi",$pag).":<br>"; unset($tipo_periodi_obbligati); unset($checked_g); unset($checked_s); if (!$numconnessione) { include(C_DATA_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); } # fine if (!$numconnessione) $tableanni = $PHPR_TAB_PRE."anni"; $tipo_periodi_esistenti = esegui_query("select * from $tableanni order by idanni desc"); if (numlin_query($tipo_periodi_esistenti) != 0) $tipo_periodi_prec = risul_query($tipo_periodi_esistenti,0,'tipo_periodi'); if ($tipo_periodi_prec == "s") $checked_s = " checked"; else $checked_g = " checked"; if (C_CAMBIA_TIPO_PERIODI == "NO") $tipo_periodi_obbligati = $tipo_periodi_prec; if (!$tipo_periodi_obbligati or $tipo_periodi_obbligati == "s") { echo "<label><input type=\"radio\" name=\"tipo_periodi\" value=\"s\"$checked_s> ".mex("settimanali",$pag)."</label> (<em>".mex("obsoleti",$pag)."</em>): <select name=\"giorno_ini_fine\"> <option value=\"0\">".mex("Domenica",$pag)."</option> <option value=\"1\">".mex("Lunedì",$pag)."</option> <option value=\"2\">".mex("Martedì",$pag)."</option> <option value=\"3\">".mex("Mercoledì",$pag)."</option> <option value=\"4\">".mex("Giovedì",$pag)."</option> <option value=\"5\">".mex("Venerdì",$pag)."</option> <option value=\"6\" selected>".mex("Sabato",$pag)."</option>