pre-merge into master
[brisk.git] / web / briskin5 / index_wr.php
index 63c21f6..98fd79b 100644 (file)
@@ -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,9 +38,16 @@ 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) {
@@ -69,6 +76,12 @@ 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.']');
@@ -177,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++) {    
@@ -494,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");