$d_host_inserimento = risul_query($dati_prenota_modifica,0,'hostinserimento');
unset($num_letti_agg);
for ($numca = 0 ; $numca < $dati_cap['num'] ; $numca++) aggiorna_letti_agg_in_periodi($dati_cap,$numca,$num_letti_agg,$d_id_data_inizio,$d_id_data_fine,$dati_cap[$numca]['settimane'],$dati_cap[$numca]['moltiplica_costo'],"","");

for ($num_idpr = 1 ; $num_idpr < $num_id_prenota ; $num_idpr++) {
$id_prenota = $id_prenota_idpr[$num_idpr];
$dati_prenota_modifica = esegui_query("select * from $tableprenota where idprenota = '$id_prenota' and idclienti != '0'");
if ($id_clienti != risul_query($dati_prenota_modifica,0,'idclienti')) $id_clienti = "~~~~";
${"dati_cap".$id_prenota} = dati_costi_agg_prenota($tablecostiprenota,$id_prenota);
$dati_cap = ${"dati_cap".$id_prenota};
$d_id_data_inizio_vett[$id_prenota] = risul_query($dati_prenota_modifica,0,'iddatainizio');
if ($d_id_data_inizio != $d_id_data_inizio_vett[$id_prenota]) {
$d_data_inizio = "~~~~";
$d_data_inizio_f = "~~~~";
} # fine if ($d_id_data_inizio != $d_id_data_inizio_vett[$id_prenota])
$id_prenota_prec2 = trova_prenota_prec($anno,$d_id_data_inizio_vett[$id_prenota],$PHPR_TAB_PRE,$dati_prenota_modifica,$n_dati_prenota_modifica);
if ($id_prenota_prec2) $id_prenota_prec = $id_prenota_prec2;
$d_id_data_fine_vett[$id_prenota] = risul_query($dati_prenota_modifica,0,'iddatafine');
if ($d_id_data_fine != $d_id_data_fine_vett[$id_prenota]) {
$d_data_fine = "~~~~";
$d_data_fine_f = "~~~~";
} # fine if ($d_id_data_fine != $d_id_data_fine_vett[$id_prenota])
if ($d_id_data_inizio != $d_id_data_inizio_vett[$id_prenota] or $d_id_data_fine != $d_id_data_fine_vett[$id_prenota]) $d_numero_settimane = "~~~~";
$d_tariffa = risul_query($dati_prenota_modifica,0,'tariffa');
$d_tariffa = explode("#@&",$d_tariffa);
$d_nome_tariffa_vett[$id_prenota] = $d_tariffa[0];
if ($d_nome_tariffa != $d_tariffa[0]) $d_nome_tariffa = "~~~~";
$d_costo_tariffa_vett[$id_prenota] = (double) $d_tariffa[1];
if ($d_costo_tariffa != (double) $d_tariffa[1]) $d_costo_tariffa = "~~~~";
$d_sconto_vett[$id_prenota] = (double) risul_query($dati_prenota_modifica,0,'sconto');
if ($d_sconto != $d_sconto_vett[$id_prenota]) $d_sconto = "~~~~";
function prepara_modifiche_prenotazione($id_prenota_idpr, $num_id_prenota, &$prenota_in_anno_succ, &$dati_da_anno_prec, &$tra_anni, $anno, $PHPR_TAB_PRE)
{
    global $d_id_utente_inserimento_idpr, $d_id_clienti_idpr, $d_id_data_inizio_idpr, $d_id_data_fine_idpr, $d_appartamento_idpr, $d_assegnazione_app_idpr, $d_app_assegnabili_idpr, $d_nome_tipotariffa_idpr, $d_app_eliminati_costi_idpr, $d_sconto_idpr, $d_caparra_idpr, $d_met_paga_caparra_idpr, $d_commissioni_idpr, $d_num_persone_idpr, $d_nome_tariffa_idpr, $d_costo_tariffa_idpr, $d_molt_tariffa_idpr, $d_tariffesettimanali_idpr, $d_costo_agg_tot_idpr, $d_prezzo_costo_agg_idpr, $d_costo_tot_idpr, $d_pagato_idpr, $d_confermato_idpr, $d_checkin_idpr, $d_checkout_idpr, $d_commento, $d_prenota_comp_idpr;
    global $dati_tariffe, $dati_ca, $dati_prenota_modifica, $id_prenota_orig, $tableperiodi_orig, $tableprenota_orig, $tablecostiprenota_orig, $tableperiodi_prec, $tableprenota_prec, $tablecostiprenota_prec, $fineperiodo_orig, $stile_data, $d_data_inizio_f, $d_data_fine_f, $n_host_inserimento_idpr;
    if (!function_exists('dati_tariffe')) {
        include "./includes/funzioni_tariffe.php";
    }
    if (!function_exists('dati_costi_agg_ntariffe')) {
        include "./includes/funzioni_costi_agg.php";
    }
    $tablenometariffe = $PHPR_TAB_PRE . "ntariffe" . $anno;
    $tableprenota = $PHPR_TAB_PRE . "prenota" . $anno;
    $tableperiodi = $PHPR_TAB_PRE . "periodi" . $anno;
    $tableregole = $PHPR_TAB_PRE . "regole" . $anno;
    $tableappartamenti = $PHPR_TAB_PRE . "appartamenti";
    $tableclienti = $PHPR_TAB_PRE . "clienti";
    $tablecostiprenota = $PHPR_TAB_PRE . "costiprenota" . $anno;
    $d_id_utente_inserimento_idpr = "";
    $d_id_clienti_idpr = "";
    $d_id_data_inizio_idpr = "";
    $d_id_data_fine_idpr = "";
    $d_appartamento_idpr = "";
    $d_assegnazione_app_idpr = "";
    $d_app_assegnabili_idpr = "";
    $d_nome_tipotariffa_idpr = "";
    $d_costo_tariffa_idpr = "";
    $d_molt_tariffa_idpr = "";
    $d_app_eliminati_costi_idpr = "";
    $d_sconto_idpr = "";
    $d_caparra_idpr = "";
    $d_met_paga_caparra_idpr = "";
    $d_commissioni_idpr = "";
    $d_num_persone_idpr = "";
    $d_nome_tariffa_idpr = "";
    $d_tariffesettimanali_idpr = "";
    $d_costo_agg_tot_idpr = "";
    $d_prezzo_costo_agg_idpr = "";
    $d_costo_tot_idpr = "";
    $d_pagato_idpr = "";
    $d_confermato_idpr = "";
    $d_checkin_idpr = "";
    $d_checkout_idpr = "";
    $d_prenota_comp_idpr = "";
    $n_host_inserimento_idpr = "";
    $dati_tariffe = dati_tariffe($tablenometariffe, "", "", $tableregole);
    $dati_ca = dati_costi_agg_ntariffe($tablenometariffe, $dati_tariffe['num'], "NO", "", $tableappartamenti);
    $dati_prenota_modifica = esegui_query("select * from {$tableprenota} where idprenota = '" . $id_prenota_idpr[0] . "' and idclienti != '0'");
    $d_id_data_inizio0 = risul_query($dati_prenota_modifica, 0, 'iddatainizio');
    if ($d_id_data_inizio0 == 0) {
        $d_data_inizio_f = "<";
        $d_id_data_inizio = 1;
    } else {
        $d_data_inizio_f = "";
        $d_id_data_inizio = $d_id_data_inizio0;
    }
    # fine if ($d_id_data_inizio0 == 0)
    $d_data_inizio = esegui_query("select datainizio from {$tableperiodi} where idperiodi = '{$d_id_data_inizio}' ");
    $d_data_inizio = risul_query($d_data_inizio, 0, 'datainizio');
    $d_data_inizio_f .= formatta_data($d_data_inizio, $stile_data);
    $d_id_data_fine0 = risul_query($dati_prenota_modifica, 0, 'iddatafine');
    $d_data_fine = esegui_query("select datafine from {$tableperiodi} where idperiodi = '{$d_id_data_fine0}' ");
    $d_data_fine = risul_query($d_data_fine, 0, 'datafine');
    $d_data_fine_f = formatta_data($d_data_fine, $stile_data);
    for ($num_idpr = 0; $num_idpr < $num_id_prenota; $num_idpr++) {
        $id_prenota = $id_prenota_idpr[$num_idpr];
        global ${"dati_cap" . $id_prenota};
        if ($num_idpr > 0) {
            $dati_prenota_modifica = esegui_query("select * from {$tableprenota} where idprenota = '{$id_prenota}' and idclienti != '0'");
        }
        $d_id_utente_inserimento_idpr[$id_prenota] = risul_query($dati_prenota_modifica, 0, 'utente_inserimento');
        $d_id_clienti_idpr[$id_prenota] = risul_query($dati_prenota_modifica, 0, 'idclienti');
        $d_id_data_inizio = risul_query($dati_prenota_modifica, 0, 'iddatainizio');
        $d_id_data_inizio_idpr[$id_prenota] = $d_id_data_inizio;
        if ($d_id_data_inizio != $d_id_data_inizio0) {
            $d_data_inizio_f = "~~~~";
        }
        $d_id_data_fine = risul_query($dati_prenota_modifica, 0, 'iddatafine');
        $d_id_data_fine_idpr[$id_prenota] = $d_id_data_fine;
        if ($d_id_data_fine != $d_id_data_fine0) {
            $d_data_fine_f = "~~~~";
        }
        $d_appartamento = risul_query($dati_prenota_modifica, 0, 'idappartamenti');
        $d_appartamento_idpr[$id_prenota] = $d_appartamento;
        $d_assegnazione_app = risul_query($dati_prenota_modifica, 0, 'assegnazioneapp');
        $d_assegnazione_app_idpr[$id_prenota] = $d_assegnazione_app;
        $d_app_assegnabili = risul_query($dati_prenota_modifica, 0, 'app_assegnabili');
        $d_app_assegnabili_idpr[$id_prenota] = $d_app_assegnabili;
        $tra_anni = "";
        $prenota_in_anno_succ = trova_prenota_succ($anno, $d_id_data_fine, $PHPR_TAB_PRE, $id_prenota, $fineperiodo_orig);
        if ($prenota_in_anno_succ) {
            $tra_anni = $anno;
            $tableperiodi_orig = $PHPR_TAB_PRE . "periodi" . ($anno + 1);
            $tableprenota_orig = $PHPR_TAB_PRE . "prenota" . ($anno + 1);
            $tablecostiprenota_orig = $PHPR_TAB_PRE . "costiprenota" . ($anno + 1);
            $tableperiodi_prec = $tableperiodi;
            $tableprenota_prec = $tableprenota;
            $tablecostiprenota_prec = $tablecostiprenota;
            if ($prenota_in_anno_succ != "soloanno") {
                $id_prenota_orig = $prenota_in_anno_succ;
            } else {
                $prenota_in_anno_succ = "";
            }
        }
        # fine if ($prenota_in_anno_succ)
        $dati_da_anno_prec = "NO";
        if ($num_id_prenota == 1) {
            $id_prenota_prec = trova_prenota_prec($anno, $d_id_data_inizio, $PHPR_TAB_PRE, $dati_prenota_modifica, $n_dati_prenota_modifica);
        } else {
            $id_prenota_prec = "";
        }
        if ($id_prenota_prec == "SI") {
            $id_prenota_prec = "";
        }
        if ($id_prenota_prec) {
            $dati_da_anno_prec = "SI";
            $tra_anni = $anno - 1;
            $dati_prenota_modifica = $n_dati_prenota_modifica;
            $id_prenota_orig = $id_prenota;
            $tableperiodi_orig = $tableperiodi;
            $tableprenota_orig = $tableprenota;
            $tablecostiprenota_orig = $tablecostiprenota;
            $tableperiodi_prec = $PHPR_TAB_PRE . "periodi" . ($anno - 1);
            $tableprenota_prec = $PHPR_TAB_PRE . "prenota" . ($anno - 1);
            $tablecostiprenota_prec = $PHPR_TAB_PRE . "costiprenota" . ($anno - 1);
            $dati_tariffe = dati_tariffe($PHPR_TAB_PRE . "ntariffe" . ($anno - 1), "", "", $PHPR_TAB_PRE . "regole" . ($anno - 1));
            $dati_ca = dati_costi_agg_ntariffe($PHPR_TAB_PRE . "ntariffe" . ($anno - 1), $dati_tariffe['num'], "NO", "", $tableappartamenti);
            $dati_cap = dati_costi_agg_prenota($tablecostiprenota_prec, $id_prenota_prec);
            ${"dati_cap" . $id_prenota} = $dati_cap;
            function passa_var_a_anno_prec(&$id_prenota, &$tableperiodi, &$tableprenota, &$tablecostiprenota, &$d_id_data_inizio, &$d_id_data_fine, &$n_fineperiodo, &$inizioperiodo, &$fineperiodo, &$lunghezza_periodo, $dati_prenota_modifica)
            {
                global $id_prenota_prec, $tableperiodi_prec, $tableprenota_prec, $tablecostiprenota_prec, $d_id_data_inizio_orig, $d_id_data_fine_orig, $n_fineperiodo_orig, $inizioperiodo_orig, $fineperiodo_orig;
                $id_prenota = $id_prenota_prec;
                $tableperiodi = $tableperiodi_prec;
                $tableprenota = $tableprenota_prec;
                $tablecostiprenota = $tablecostiprenota_prec;
                $d_id_data_inizio_orig = $d_id_data_inizio;
                $d_id_data_fine_orig = $d_id_data_fine;
                $n_fineperiodo_orig = $n_fineperiodo;
                $inizioperiodo_orig = $inizioperiodo;
                $fineperiodo_orig = $fineperiodo;
                $d_id_data_inizio = risul_query($dati_prenota_modifica, 0, 'iddatainizio');
                $inizioperiodo = $d_id_data_inizio;
                if ($n_fineperiodo) {
                    $diff_fineperiodo = $n_fineperiodo - $d_id_data_fine;
                }
                $d_id_data_fine = risul_query($dati_prenota_modifica, 0, 'iddatafine');
                if ($n_fineperiodo) {
                    $n_fineperiodo = $d_id_data_fine + $diff_fineperiodo;
                    $fineperiodo = $n_fineperiodo;
                } else {
                    $fineperiodo = $d_id_data_fine;
                }
                $lunghezza_periodo = $fineperiodo - $inizioperiodo + 1;
            }
            # fine function passa_var_a_anno_prec
            function passa_var_a_anno_corr(&$id_prenota, &$tableperiodi, &$tableprenota, &$tablecostiprenota, &$d_id_data_inizio, &$d_id_data_fine, &$n_fineperiodo, &$inizioperiodo, &$fineperiodo, &$lunghezza_periodo)
            {
                global $id_prenota_orig, $tableperiodi_orig, $tableprenota_orig, $tablecostiprenota_orig, $d_id_data_inizio_orig, $d_id_data_fine_orig, $n_fineperiodo_orig, $inizioperiodo_orig, $fineperiodo_orig;
                $id_prenota = $id_prenota_orig;
                $tableperiodi = $tableperiodi_orig;
                $tableprenota = $tableprenota_orig;
                $tablecostiprenota = $tablecostiprenota_orig;
                $d_id_data_inizio = $d_id_data_inizio_orig;
                $d_id_data_fine = $d_id_data_fine_orig;
                $n_fineperiodo = $n_fineperiodo_orig;
                $inizioperiodo = $inizioperiodo_orig;
                $fineperiodo = $fineperiodo_orig;
                $lunghezza_periodo = $fineperiodo - $inizioperiodo + 1;
            }
            # fine function passa_var_a_anno_corr
        }
        # fine if ($id_prenota_prec)
        $d_tariffa = risul_query($dati_prenota_modifica, 0, 'tariffa');
        $d_tariffa = explode("#@&", $d_tariffa);
        $d_nome_tariffa = $d_tariffa[0];
        $d_nome_tariffa_idpr[$id_prenota] = $d_nome_tariffa;
        $d_costo_tariffa = (double) $d_tariffa[1];
        $d_costo_tariffa_idpr[$id_prenota] = $d_costo_tariffa;
        $d_molt_tariffa = $d_tariffa[2];
        $d_molt_tariffa_idpr[$id_prenota] = $d_molt_tariffa;
        if ($dati_da_anno_prec != "SI") {
            $dati_cap = dati_costi_agg_prenota($tablecostiprenota, $id_prenota);
            ${"dati_cap" . $id_prenota} = $dati_cap;
        }
        # fine if ($dati_da_anno_prec != "SI")
        $d_nome_tipotariffa = "";
        for ($numtariffa = 1; $numtariffa <= $dati_tariffe['num']; $numtariffa++) {
            $nometariffa = $dati_tariffe["tariffa{$numtariffa}"]['nome'];
            if ($d_nome_tariffa == $nometariffa or $d_nome_tariffa == "tariffa" . $numtariffa) {
                $d_nome_tipotariffa = "tariffa" . $numtariffa;
            }
            # fine if ($d_nome_tariffa == $nometariffa or $d_nome_tariffa == "tariffa".$numtariffa
        }
        # fine for $numtariffa
        $d_nome_tipotariffa_idpr[$id_prenota] = $d_nome_tipotariffa;
        $d_app_eliminati_costi = risul_query($dati_prenota_modifica, 0, 'incompatibilita');
        $d_app_eliminati_costi_idpr[$id_prenota] = $d_app_eliminati_costi;
        $d_sconto = (double) risul_query($dati_prenota_modifica, 0, 'sconto');
        if (!$d_sconto) {
            $d_sconto = (double) 0;
        }
        $d_sconto_idpr[$id_prenota] = $d_sconto;
        $d_commento = risul_query($dati_prenota_modifica, 0, 'commento');
        $d_caparra = risul_query($dati_prenota_modifica, 0, 'caparra');
        $d_caparra_idpr[$id_prenota] = $d_caparra;
        $d_met_paga_caparra = risul_query($dati_prenota_modifica, 0, 'metodo_pagamento');
        $d_met_paga_caparra_idpr[$id_prenota] = $d_met_paga_caparra;
        $d_commissioni = risul_query($dati_prenota_modifica, 0, 'commissioni');
        $d_commissioni_idpr[$id_prenota] = $d_commissioni;
        $d_origine_prenota = risul_query($dati_prenota_modifica, 0, 'origine');
        $d_num_persone = risul_query($dati_prenota_modifica, 0, 'num_persone');
        $d_num_persone_idpr[$id_prenota] = $d_num_persone;
        if (!$d_num_persone) {
            $d_num_persone = 0;
        }
        $d_tariffesettimanali = risul_query($dati_prenota_modifica, 0, 'tariffesettimanali');
        $d_tariffesettimanali_idpr[$id_prenota] = $d_tariffesettimanali;
        $d_costo_agg_tot = (double) 0;
        $costo_escludi_perc = (double) 0;
        if ($dati_da_anno_prec == "SI") {
            passa_var_a_anno_prec($id_prenota, $tableperiodi, $tableprenota, $tablecostiprenota, $d_id_data_inizio, $d_id_data_fine, $n_fineperiodo, $inizioperiodo, $fineperiodo, $lunghezza_periodo, $dati_prenota_modifica);
        }
        for ($numca = 0; $numca < $dati_cap['num']; $numca++) {
            $d_prezzo_costo_agg[$numca] = (double) calcola_prezzo_totale_costo($dati_cap, $numca, $d_id_data_inizio, $d_id_data_fine, $dati_cap[$numca]['settimane'], $dati_cap[$numca]['moltiplica_costo'], $d_costo_tariffa, $d_tariffesettimanali, $d_costo_tariffa + $d_costo_agg_tot - $d_sconto, $d_caparra, $d_num_persone, $costo_escludi_perc);
            $d_costo_agg_tot = (double) $d_costo_agg_tot + $d_prezzo_costo_agg[$numca];
            if ($dati_cap[$numca]['escludi_tot_perc'] == "s") {
                $costo_escludi_perc = (double) $costo_escludi_perc + $d_prezzo_costo_agg[$numca];
            }
        }
        # fine for $numca
        $d_costo_agg_tot_idpr[$id_prenota] = $d_costo_agg_tot;
        $d_prezzo_costo_agg_idpr[$id_prenota] = $d_prezzo_costo_agg;
        if ($dati_da_anno_prec == "SI") {
            passa_var_a_anno_corr($id_prenota, $tableperiodi, $tableprenota, $tablecostiprenota, $d_id_data_inizio, $d_id_data_fine, $n_fineperiodo, $inizioperiodo, $fineperiodo, $lunghezza_periodo);
        }
        $d_costo_tot = $d_costo_tariffa + $d_costo_agg_tot - $d_sconto;
        $d_costo_tot_idpr[$id_prenota] = $d_costo_tot;
        $d_pagato = risul_query($dati_prenota_modifica, 0, 'pagato');
        if (!$d_pagato) {
            $d_pagato = 0;
        }
        $d_pagato_idpr[$id_prenota] = $d_pagato;
        $d_conferma = risul_query($dati_prenota_modifica, 0, 'conferma');
        $d_confermato_idpr[$id_prenota] = substr($d_conferma, 0, 1);
        $d_checkin = risul_query($dati_prenota_modifica, 0, 'checkin');
        $d_checkin_idpr[$id_prenota] = $d_checkin;
        $d_checkout = risul_query($dati_prenota_modifica, 0, 'checkout');
        $d_checkout_idpr[$id_prenota] = $d_checkout;
        $d_prenota_comp = risul_query($dati_prenota_modifica, 0, 'idprenota_compagna');
        $d_prenota_comp_idpr[$id_prenota] = $d_prenota_comp;
        $n_host_inserimento_idpr[$id_prenota] = risul_query($dati_prenota_modifica, 0, 'hostinserimento');
    }
    # fine for $num_idpr
}