X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Findex_rd.php;h=ad4a874d7d4aa95ecd2f71ccbe325728609e6a74;hb=1c864a7f5b393bddf3ef4ce94886703d2ac3b21c;hp=994fe874188e45689e227bfede80113be015eb13;hpb=f18bac8374119fa1f3c826e82cfc74ce2ce52dd7;p=brisk.git diff --git a/web/index_rd.php b/web/index_rd.php index 994fe87..ad4a874 100644 --- a/web/index_rd.php +++ b/web/index_rd.php @@ -17,6 +17,8 @@ * not, write to the Free Software Foundation, Inc, 59 Temple Place - * Suite 330, Boston, MA 02111-1307, USA. * + * $Id$ + * */ require_once("brisk.phh"); @@ -44,7 +46,7 @@ function unrecerror() GLOBAL $is_page_streaming; $is_page_streaming = TRUE; - return (sprintf('the_end=true; document.location.assign("index.php");')); + return (sprintf('the_end=true; window.onunload = null; document.location.assign("index.php");')); } @@ -59,11 +61,14 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su /* Sync check (read only without modifications */ + ignore_user_abort(TRUE); if (($sem = lock_data()) != FALSE) { $bri = &load_data(); // Aggiorna l'expire time lato server if ($first_loop == TRUE) { - if (($user = &get_user($bri, $sess, $idx)) == FALSE) { + if (($user = &$bri->get_user($sess, $idx)) == FALSE) { + unlock_data($sem); + ignore_user_abort(FALSE); return (unrecerror()); } log_auth($sess, "update lacc"); @@ -77,11 +82,13 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su save_data($bri); } unlock_data($sem); + ignore_user_abort(FALSE); } - else + else { return (FALSE); + } - if (($user = &get_user(&$bri, $sess, $idx)) == FALSE) { + if (($user = &$bri->get_user($sess, $idx)) == FALSE) { return (unrecerror()); } @@ -93,9 +100,12 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su if ($cur_step == -1) { // FUNZIONE from_scratch DA QUI + ignore_user_abort(TRUE); $sem = lock_data(); $bri = &load_data(); - if (($user = &get_user($bri, $sess, $idx)) == FALSE) { + if (($user = &$bri->get_user($sess, $idx)) == FALSE) { + unlock_data($sem); + ignore_user_abort(FALSE); return (unrecerror()); } if ($user->the_end) @@ -110,9 +120,12 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su save_data($bri); unlock_data($sem); + ignore_user_abort(FALSE); } else { log_rd2($sess, "TRANS NON ATTIVATO"); + unlock_data($sem); + ignore_user_abort(FALSE); } } @@ -138,13 +151,14 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su $new_stat = $user->stat; $new_subst = $user->subst; $new_step = $user->step; - - unlock_data($sem); } else { + ignore_user_abort(TRUE); $sem = lock_data(); $bri = &load_data(); - if (($user = &get_user($bri, $sess, $idx)) == FALSE) { + if (($user = &$bri->get_user($sess, $idx)) == FALSE) { + unlock_data($sem); + ignore_user_abort(FALSE); return (unrecerror()); } if ($cur_step < $user->step) { @@ -182,6 +196,7 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su } unlock_data($sem); + ignore_user_abort(FALSE); }