X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Findex_rd.php;h=a8771d52008069d9ebf7b97c247ab085e1d81638;hb=53f1d7c93385df967eb95ece569aa2144626380b;hp=240891b1d642957530090bebf3e670539a22b328;hpb=9441f09e33850c2a74e00ec909da4522c451abb6;p=brisk.git diff --git a/web/index_rd.php b/web/index_rd.php index 240891b..a8771d5 100644 --- a/web/index_rd.php +++ b/web/index_rd.php @@ -17,11 +17,13 @@ * not, write to the Free Software Foundation, Inc, 59 Temple Place - * Suite 330, Boston, MA 02111-1307, USA. * + * $Id$ + * */ require_once("brisk.phh"); -log_load($sess, "LOAD: index_rd.php"); +log_load($sess, "LOAD: index_rd.php ".$QUERY_STRING); $first_loop = TRUE; $the_end = FALSE; @@ -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,15 +61,18 @@ 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"); - $user->lacc = time() + EXPIRE_TIME; + $user->lacc = time(); save_data($bri); $first_loop = FALSE; @@ -77,13 +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 { - unlock_data($sem); return (FALSE); } - if (($user = &get_user(&$bri, $sess, $idx)) == FALSE) { + if (($user = &$bri->get_user($sess, $idx)) == FALSE) { return (unrecerror()); } @@ -95,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) @@ -112,10 +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); } } @@ -141,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) { @@ -185,6 +196,7 @@ function maincheck($sess, $cur_stat, $cur_subst, $cur_step, &$new_stat, &$new_su } unlock_data($sem); + ignore_user_abort(FALSE); }