X-Git-Url: https://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2Fbriskin5%2Findex_wr.php;h=98fd79bb64afd649daa020d3acde4aff94cae9cb;hb=9a17da4020740578e3a744630fd6be96c8237cab;hp=d865972eff372a9922cecdaaca4875d659c540d3;hpb=123416d979e44c2cf3403fffc23fe99c8d6d80d5;p=brisk.git diff --git a/web/briskin5/index_wr.php b/web/briskin5/index_wr.php index d865972..98fd79b 100644 --- a/web/briskin5/index_wr.php +++ b/web/briskin5/index_wr.php @@ -2,7 +2,7 @@ /* * brisk - index_wr.php * - * Copyright (C) 2006-2011 Matteo Nastasi + * Copyright (C) 2006-2012 Matteo Nastasi * mailto: nastasi@alternativeoutput.it * matteo.nastasi@milug.org * web: http://www.alternativeoutput.it @@ -38,10 +38,18 @@ require_once("Obj/briskin5.phh"); /* * MAIN */ -function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) +function bin5_index_wr_main(&$bri, $remote_addr_full, $get, $post, $cookie) { - GLOBAL $G_base, $G_dbasetype; + GLOBAL $G_base, $G_dbasetype, $G_black_list; + $remote_addr = addrtoipv4($remote_addr_full); + + if (array_search($remote_addr, $G_black_list) !== FALSE) { + // TODO: waiting async 5 sec before close + return (FALSE); + } + + $curtime = time(); if ($bri == NULL) { return FALSE; } @@ -68,12 +76,23 @@ function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) log_wr("Get User Error"); return FALSE; } + + if (array_search($user->ip, $G_black_list) !== FALSE) { + // TODO: waiting async 5 sec before close + return (FALSE); + } + $argz = explode('|', $mesg); log_wr('POSTSPLIT: '.$argz[0].' user->stat: ['.$user->stat.']'); log_wr($user->step, 'bin::index_wr.php: after get_user()'); + + $user->lacc = $curtime; - if (false && $argz[0] == 'shutdown') { + if ($argz[0] == 'ping') { + log_wr("PING RECEIVED"); + } + else if (false && $argz[0] == 'shutdown') { log_auth($user_cur->sess, "Shutdown session. delegate to room gc the autologout"); log_rd2("bin5/index_wr.php: AUTO LOGOUT."); @@ -105,8 +124,6 @@ function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) $bri->chatt_send(&$user,$mesg); } else if ($argz[0] == 'preferences_update') { - GLOBAL $CO_bin5_pref_ring_endauct; - log_wr("PER DI PREFERENCES_UPDATE"); if ($CO_bin5_pref_ring_endauct == "true") @@ -173,7 +190,8 @@ function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) $table->mult += 1; $table->old_reason = sprintf("Ha lasciato %s perché aveva al massimo 2 punti.", xcape($user->name)); - $table->game_next(); + // Non si cambia mazzo se si abbandona la partita + // $table->game_next(); $table->game_init(&$bri->user); for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { @@ -481,7 +499,6 @@ function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) $pt_cur = calculate_points(&$table); $plist = "$table->table_token|$user->table_orig|$table->player_n"; - $curtime = time(); $ucodes = array(); for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { $user_cur = &$bri->user[$table->player[$i]]; @@ -491,7 +508,7 @@ function bin5_index_wr_main(&$bri, $remote_addr, $get, $post, $cookie) for ($i = 0 ; $i < BIN5_PLAYERS_N ; $i++) { $plist .= '|'.xcapelt($ucodes[$i]); } - log_legal($curtime, 'xxx', $user, "STAT:BRISKIN5:FINISH_GAME", $plist); + log_legal($curtime, $user->ip, $user, "STAT:BRISKIN5:FINISH_GAME", $plist); if ($user->table_orig < TABLES_AUTH_N) { require_once("../Obj/dbase_".$G_dbasetype.".phh");