X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Findex.php;h=bee14638813a7ac30d10b46e79d8affb8621d1a3;hb=971fb704f6cb6091d0c597209f5f878c04336d51;hp=7020e7ca3d4c37a6b5f01a744872a2e4dcb3e0dc;hpb=795194e019e7535556044c8f959882f1737e1233;p=brisk.git diff --git a/web/index.php b/web/index.php index 7020e7c..bee1463 100644 --- a/web/index.php +++ b/web/index.php @@ -21,7 +21,8 @@ * */ -require_once("brisk.phh"); +require_once("Obj/brisk.phh"); +require_once("briskin5/Obj/briskin5.phh"); if (DEBUGGING == "local" && $_SERVER['REMOTE_ADDR'] != '127.0.0.1') { echo "Debugging time!"; exit; @@ -31,7 +32,7 @@ log_load((isset($sess) ? $sess : "XXX"), "LOAD: index.php"); function main() { - GLOBAL $sess, $name, $BRISK_SHOWHTML, $BRISK_DEBUG, $_SERVER; + GLOBAL $sess, $name, $table_idx, $table_token, $BRISK_SHOWHTML, $BRISK_DEBUG, $_SERVER; $body = ""; $tables = ""; @@ -40,32 +41,117 @@ function main() if (isset($BRISK_SHOWHTML) == FALSE) { $is_table = FALSE; - $sem = lock_data(); - $bri = &load_data(); - + $sem = Room::lock_data(); + log_load($sess, "lock Room"); + $room = &Room::load_data(); + $curtime = time(); /* Actions */ if (validate_sess($sess)) { - $bri->garbage_manager(TRUE); - if (($user = &$bri->get_user($sess, &$idx)) != FALSE) { + $room->garbage_manager(TRUE); + if (($user = &$room->get_user($sess, &$idx)) != FALSE) { if ($user->stat == "table") { - header ("Location: table.php"); - unlock_data($sem); - exit; + $change_page = TRUE; + log_load($sess, "resync from index.php"); + + log_load($sess, "SET TABLE_IDX table.">".TABLES_N); + + log_load($sess, "SET TABLE_IDX GOOD VALUE"); + $bri_sem = Briskin5::lock_data($user->table); + if (($bri = &Briskin5::load_data($user->table, $user->table_token)) == FALSE) { + /* + * CASE: TABLE DATA ERROR - RECOVERY + */ + log_load($sess, "table data error: recovery".$user->table); + + $table = &$room->table[$user->table]; + for ($i = 0 ; $i < $table->player_n ; $i++) { + $user_cur = &$room->user[$table->player[$i]]; + $user_cur->subst = "shutdowner"; + $user_cur->step_inc(); + $user_cur->trans_step = $user_cur->step; + + $ret = sprintf('stat = "%s"; subst = "%s";', $cur_user->stat, $cur_user->subst); + $ret .= "gst.st = ".($user_cur->step+1)."; "; + $ret .= show_notify("
I dati del tavolo n°".$user->table." sono inconsistenti, verranno resettati.

Torni in piedi.

", 2000, "Chiudi.", 400, 110); + $user_cur->comm[$user_cur->step % COMM_N] = $ret; + $user_cur->step_inc(); + } + + $room->room_join_wakeup(&$user, TRUE); + $table->table_token = ""; +// if (Room::save_data(&$room) == FALSE) { +// echo "ERRORE SALVATAGGIO\n"; +// exit; +// } + + Briskin5::destroy_data($user->table); + + $change_page = FALSE; + } // if (($bri = &Briskin5::load_data($user->table, ... + else if (($bri_user = &$bri->get_user($sess, &$bri_idx)) != FALSE) { + if ($bri_user->subst == "shutdowned" || $bri_user->subst == "shutdowner") { + /* + * DESTROY OF FINISHED TABLE && MOVE PLAYER TO ROOM AGAIN + */ + $table = &$room->table[$user->table]; + $bri_table = &$bri->table[0]; + + for ($i = 0 ; $i < $bri_table->player_n ; $i++) { + $room->user[$table->player[$i]]->subst = $bri->user[$i]->subst; + $room->user[$table->player[$i]]->step = $bri->user[$i]->step; + $room->user[$table->player[$i]]->trans_step = $bri->user[$i]->step+1; + $room->user[$table->player[$i]]->lacc = $bri->user[$i]->lacc; + $room->user[$table->player[$i]]->laccwr = $bri->user[$i]->laccwr; + + log_load($sess, "from table bri subst[".$i."]: ".$bri->user[$i]->subst); + log_load($sess, "from table roo subst[".$i."]: ".$room->user[$table->player[$i]]->subst); + } + + $room->room_join_wakeup(&$user); + $table->table_token = ""; +// if (Room::save_data(&$room) == FALSE) { +// echo "ERRORE SALVATAGGIO\n"; +// exit; +// } + + $change_page = FALSE; + Briskin5::destroy_data($user->table); + } + } + Briskin5::unlock_data($bri_sem); + + if ($change_page) { + if (Room::save_data(&$room) == FALSE) { + echo "ERRORE SALVATAGGIO\n"; + exit; + } + log_load($sess, "unlock Room"); + Room::unlock_data($sem); + setcookie("table_token", $user->table_token, $curtime + 31536000); + setcookie("table_idx", $user->table_idx, $curtime + 31536000); + header ("Location: briskin5/briskin5.php"); + exit; + } } $ACTION = "room"; } + + if (Room::save_data(&$room) == FALSE) { + echo "ERRORE SALVATAGGIO\n"; + exit; + } } if ($ACTION == "login" && isset($name)) { - $bri->garbage_manager(TRUE); + $room->garbage_manager(TRUE); /* try login */ - if (($user = &$bri->add_user(&$sess, &$idx, $name, $_SERVER['REMOTE_ADDR'])) != FALSE) { + if (($user = &$room->add_user(&$sess, &$idx, $name, $_SERVER['REMOTE_ADDR'])) != FALSE) { $ACTION = "room"; // setcookie ("sess", "", time() + 180); - $bri->standup_update(&$user); + $room->standup_update(&$user); - if (save_data(&$bri) == FALSE) { + if (Room::save_data(&$room) == FALSE) { echo "ERRORE SALVATAGGIO\n"; exit; } @@ -80,7 +166,7 @@ function main() $body .= '
Il tuo nickname è già in uso.
'; } } - unlock_data($sem); + Room::unlock_data($sem); } /* Rendering. */ @@ -135,12 +221,13 @@ function main() $altout_propag = array( array ( 'url' => 'http://www.alternativeoutput.it', 'content' => '' ), array ( 'url' => 'http://virtualsky.alternativeoutput.it', - 'content' => '' ) + 'content' => '' ) ); // seed with microseconds since last "whole" second srand ((double) microtime() * 1000000); - $randval = rand(0,count($altout_propag)-1); + // $randval = rand(0,count($altout_propag)-1); + $randval = 1; $altout_carousel = sprintf('%s', $altout_propag[$randval]['url'], $altout_propag[$randval]['content']); @@ -179,10 +266,15 @@ google_color_url = "000000"; -
+ + +
briscola chiamata in salsa ajax
-
+
+ +
@@ -214,7 +306,22 @@ google_color_url = "000000"; $brisk_vertical_menu = '
- + + +


sponsored by:

'.$altout_carousel.'


@@ -245,7 +352,7 @@ supported by: