source IP address stored into log
[brisk.git] / web / Obj / user.phh
index 7d42cf9..b6efbcd 100644 (file)
@@ -46,6 +46,10 @@ define('USER_FLAG_S_RABB',  0x800); // done
 define('USER_FLAG_S_SOCC',  0x900); // done
 define('USER_FLAG_S_BABY',  0xa00); // done
 define('USER_FLAG_S_MOP',   0xb00); // done
+define('USER_FLAG_S_BABBO',   0xc00); // done
+define('USER_FLAG_S_RENNA',   0xd00); // done
+define('USER_FLAG_S_PUPAZ',   0xe00); // done
+define('USER_FLAG_S_VISCH',   0xf00); // done
 
 define('USER_FLAG_S_ALL',   0xf00); // done
 
@@ -294,7 +298,7 @@ class User {
     return ($thiz);
   }
 
-  function rd_data_set($curtime, $enc, $stat, $subst, $step, $from)
+  function rd_data_set($curtime, $transp, $enc, $stat, $subst, $step, $from)
   {
       $this->rd_endtime = $curtime + RD_ENDTIME_DELTA;
       $this->rd_stat    = $stat;
@@ -304,7 +308,7 @@ class User {
       $this->rd_scristp = 0;
       $this->rd_kalive  = $curtime + RD_KEEPALIVE_TOUT;
       $this->rd_zls     = ZLibStream::create($enc);
-      $this->rd_transp  = new Transport_iframe();
+      $this->rd_transp  = Transport::create($transp);
   }
 
   function rd_socket_get() {
@@ -461,7 +465,7 @@ class User {
 
   function reset() {
     $curtime = time();
-    log_legal($curtime, 'xxx', $this, "STAT:LOGOUT", '');
+    log_legal($curtime, $this->ip, $this, "STAT:LOGOUT", '');
 
     $tmp_sess = $this->sess;
     $this->sess = "";
@@ -653,7 +657,7 @@ class User {
 
     // FIXME: dynamic "Transport_" type
     $tans_class = "Transport_iframe";
-    $body = $tansclass::fini($init_string, static::blocking_error($is_unrecoverable));
+    $body = $tans_class::fini($init_string, self::base_get(), static::blocking_error($is_unrecoverable));
 
     // ELSE IF XHR THEN:
     // return (static::blocking_error($is_unrecoverable));
@@ -688,8 +692,10 @@ function stream_init($init_string, $enc, &$header_out, &$body, $get, $post, $coo
         $subst = "";
     if (($step  = gpcs_var('step', $get, $post, $cookie)) === FALSE) 
         unset($step);
+    if (($transp  = gpcs_var('transp', $get, $post, $cookie)) === FALSE)
+        $transp = "iframe";
     
-    $this->rd_data_set($curtime, $enc, $stat, $subst, $step, $from);
+    $this->rd_data_set($curtime, $transp, $enc, $stat, $subst, $step, $from);
     
     $body .= $this->rd_transp->init($enc, &$header_out, $init_string, self::base_get(), $this->rd_scristp);