version info updated
[brisk.git] / web / Obj / brisk.phh
index 09b1da8..13a21a3 100644 (file)
@@ -134,12 +134,12 @@ $mlang_brisk = array( 'btn_backstand'=> array( 'it' => 'torna in piedi',
 $G_lng = langtolng($G_lang);
 
 $G_all_points = array( 11,10,4,3,2, 0,0,0,0,0 );
-$G_brisk_version = "3.4.3";
+$G_brisk_version = "3.5.0";
 
 /* MLANG: ALL THE INFO STRINGS IN brisk.phh */
-$root_wellarr = array( 'it' => array ( 'Brisk (Ver. '.$G_brisk_version.'), <b>NOVITA\'</b>: versione di test per la nuova gestione dei dati volatili, rivista gestione del ticker.',
+$root_wellarr = array( 'it' => array ( 'Brisk (Ver. '.$G_brisk_version.'), <b>NOVITA\'</b>: seconda versione di test per la nuova gestione dei dati volatili, rivista gestione del ticker.',
                                        'Se vuoi iscriverti alla <a target="_blank" href="mailto:ml-briscola+subscribe@milug.org">Mailing List</a>, cliccala!' ),
-                       'en' => array ( 'Brisk (Ver. '.$G_brisk_version.'), <b>NEWS</b>: test version for the new volatile data management, ticker management refactored.',
+                       'en' => array ( 'Brisk (Ver. '.$G_brisk_version.'), <b>NEWS</b>: second test version for the new volatile data management, ticker management refactored.',
                                        'If you want to subscribe our <a target="_blank" href="ml-briscola+subscribe@milug.org">Mailing List</a>, click it!' ) );
 
 $G_room_help = array( 'it' => '
@@ -854,6 +854,36 @@ class User {
       return (FALSE);
   }
 
+  static function step_get($sess)
+  {
+      $fp = FALSE;
+      do {
+          if (validate_sess($sess) == FALSE)
+              break;
+          
+          if (file_exists(PROXY_PATH) == FALSE)
+              mkdir(PROXY_PATH);
+          if (($fp = @fopen(PROXY_PATH."/".$sess.".step", 'rb')) == FALSE)
+              break;
+          if (($s = fread($fp, 8)) == FALSE)
+              break;
+          if (strlen($s) != 8)
+              break;
+          $arr = unpack('Ls/Li', $s);
+          fclose($fp);
+          
+          // log_rd2("A0: ".$arr[0]."  A1: ".$arr[1]);
+          return ($arr);
+      } while (0);
+      
+      if ($fp != FALSE)
+          fclose($fp);
+      
+      log_rd2("STEP_GET [".$sess."]: return false ");
+      
+      return (FALSE);
+  }
+
   function reset() {
     $curtime = time();
     log_legal($curtime, $this, "STAT:LOGOUT", '');
@@ -872,137 +902,104 @@ class User {
     $this->the_end = FALSE;
   }
 
-
-
-  // SHSPLIT save and load function for the User class.
   static function load_data($id, $sess) 
   {
-    // error_log("User::load_data BEGIN", 0);
-
-    log_main("load_data: id [".$id."] sess [".($sess == FALSE ? "FALSE" : $sess)."] ");
-
-    $doexit = FALSE;
-    do {
-      if (($tok = @ftok(FTOK_PATH."/user".$id, "B")) == -1) {
-       log_main("ftok failed");
-       $doexit = TRUE;
-       break;
-      }
-    
-      if (($shm_sz = sharedmem_sz($tok)) == -1) {
-       log_main("shmop_open failed");
-      }
-       
-      if ($shm_sz == -1)
-       $shm_sz = SHM_DIMS_U_MIN;
-
-      if ($shm = shm_attach($tok, $shm_sz)) {
-       $user = @shm_get_var($shm, $tok);
-       
-        if ($sess != FALSE && $user->sess != $sess) {
-            $doexit = TRUE;
-            break;
-        }
-       log_only("user ==  ".($user == FALSE ?   "FALSE" : "TRUE")."  user ===  ".($user === FALSE ? "FALSE" : "TRUE")."  user isset ".(isset($user) ?   "TRUE" : "FALSE"));
-       if (isset($user)) 
-         log_only("bri count ".count($user));
-       
-       if ($user == FALSE) {
-         log_only("INIT MAIN DATA");
-         
-          // SHSPLIT FIXME: init_data for User class ??
-         $user = User::create($id, "", "");
-         if (@shm_put_var($shm, $tok, $user) == FALSE) {
-              log_only("PUT_VAR FALLITA ".strlen(serialize($user)));
-              log_only(serialize($user));
-         }
-       }
-
-       $user->shm_sz = $shm_sz;
-       
-       shm_detach($shm);
-      }
+      // error_log("User::load_data BEGIN", 0);
       
-      //  
-      // SHSPLIT: load users from the shared memory
-      //
-      return ($user);
-    } while (0);
-    
-    if ($doexit)
-      exit();
-    
-    return (FALSE);
+      log_main("load_data: id [".$id."] sess [".($sess == FALSE ? "FALSE" : $sess)."] ");
+      
+      $doexit = FALSE;
+      do {
+          if (($tok = @ftok(FTOK_PATH."/user".$id, "B")) == -1) {
+              log_main("ftok failed");
+              $doexit = TRUE;
+              break;
+          }
+          
+          if (($shm_sz = sharedmem_sz($tok)) == -1) {
+              log_main("shmop_open failed");
+          }
+          
+          if ($shm_sz == -1)
+              $shm_sz = SHM_DIMS_U_MIN;
+          
+          if ($shm = shm_attach($tok, $shm_sz)) {
+              $user = @shm_get_var($shm, $tok);
+              
+              if ($sess != FALSE && $user->sess != $sess) {
+                  $doexit = TRUE;
+                  break;
+              }
+              log_only("user ==  ".($user == FALSE ?   "FALSE" : "TRUE")."  user ===  ".($user === FALSE ? "FALSE" : "TRUE")."  user isset ".(isset($user) ?   "TRUE" : "FALSE"));
+              if (isset($user)) 
+                  log_only("bri count ".count($user));
+              
+              if ($user == FALSE) {
+                  log_only("INIT MAIN DATA");
+                  
+                  // SHSPLIT FIXME: init_data for User class ??
+                  $user = User::create($id, "", "");
+                  if (@shm_put_var($shm, $tok, $user) == FALSE) {
+                      log_only("PUT_VAR FALLITA ".strlen(serialize($user)));
+                      log_only(serialize($user));
+                  }
+              }
+              
+              $user->shm_sz = $shm_sz;
+              
+              shm_detach($shm);
+          }
+          
+          //  
+          // SHSPLIT: load users from the shared memory
+          //
+          return ($user);
+      } while (0);
+      
+      if ($doexit)
+          exit();
+      
+      return (FALSE);
   }
   
 
-  function save_data($user, $id) 
+  static function save_data($user, $id) 
   {
-    GLOBAL $sess;
-    
-    $shm =   FALSE;
-    
-    // var_dump($user);
-    // error_log("User::save_data BEGIN", 0);
-
-    if (($tok = @ftok(FTOK_PATH."/user".$id, "B")) == -1) {
-      return (FALSE);
-    }
-    while ($user->shm_sz < SHM_DIMS_U_MAX) {
-      if (($shm = shm_attach($tok, $user->shm_sz)) == FALSE)
-       break;
+      GLOBAL $sess;
       
-      // log_only("PUT_VAR DI ".strlen(serialize($user)));
-      if (shm_put_var($shm, $tok, $user) != FALSE) {
-       shm_detach($shm);
-       log_main("User[".$id."] saved.");
-       return (TRUE);
-      }
-      if (shm_remove($shm) === FALSE) {
-       log_only("REMOVE FALLITA");
-       break;
+      $shm =   FALSE;
+      
+      // var_dump($user);
+      // error_log("User::save_data BEGIN", 0);
+      
+      if (($tok = @ftok(FTOK_PATH."/user".$id, "B")) == -1) {
+          return (FALSE);
       }
-      shm_detach($shm);
-      $user->shm_sz += SHM_DIMS_U_DLT;
-    } 
-
-    if ($shm)
-      shm_detach($shm);
-    
-    return (FALSE);
-  }
-
-
-  static function step_get($sess)
-  {
-      $fp = FALSE;
-      do {
-          if (validate_sess($sess) == FALSE)
+      while ($user->shm_sz < SHM_DIMS_U_MAX) {
+          if (($shm = shm_attach($tok, $user->shm_sz)) == FALSE)
               break;
           
-          if (file_exists(PROXY_PATH) == FALSE)
-              mkdir(PROXY_PATH);
-          if (($fp = @fopen(PROXY_PATH."/".$sess.".step", 'rb')) == FALSE)
-              break;
-          if (($s = fread($fp, 8)) == FALSE)
-              break;
-          if (strlen($s) != 8)
+          // log_only("PUT_VAR DI ".strlen(serialize($user)));
+          if (shm_put_var($shm, $tok, $user) != FALSE) {
+              shm_detach($shm);
+              log_main("User[".$id."] saved.");
+              return (TRUE);
+          }
+          if (shm_remove($shm) === FALSE) {
+              log_only("REMOVE FALLITA");
               break;
-          $arr = unpack('Ls/Li', $s);
-          fclose($fp);
-          
-          // log_rd2("A0: ".$arr[0]."  A1: ".$arr[1]);
-          return ($arr);
-      } while (0);
-      
-      if ($fp != FALSE)
-          fclose($fp);
+          }
+          shm_detach($shm);
+          $user->shm_sz += SHM_DIMS_U_DLT;
+      } 
       
-      log_rd2("STEP_GET [".$sess."]: return false ");
+      if ($shm)
+          shm_detach($shm);
       
       return (FALSE);
   }
 
+
 } // end class User
 
 
@@ -2502,7 +2499,7 @@ class Room {
       do {
           if (file_exists(PROXY_PATH) == FALSE)
               mkdir(PROXY_PATH);
-          if (($fp = @fopen(PROXY_PATH."/room_garbage_time.expired", 'rb')) == FALSE)
+          if (($fp = @fopen(PROXY_PATH."/garbage_time.expired", 'rb')) == FALSE)
               break;
           if (($s = fread($fp, 4)) == FALSE)
               break;
@@ -2526,7 +2523,7 @@ class Room {
       do {
           if (file_exists(PROXY_PATH) == FALSE)
               mkdir(PROXY_PATH);
-          if (($fp = @fopen(PROXY_PATH."/room_garbage_time.expired", 'wb')) == FALSE)
+          if (($fp = @fopen(PROXY_PATH."/garbage_time.expired", 'wb')) == FALSE)
               break;
           fwrite($fp, pack("L",$tm));
           fclose($fp);