define('USER_FLAG_TY_ALL', 0xff0000); // done
define('USER_FLAG_TY_NORM', 0x010000); // done
define('USER_FLAG_TY_SUPER', 0x020000); // done
+define('USER_FLAG_TY_CERT', 0x040000); // done
// ... other usefull status ...
define('USER_FLAG_TY_SUSPEND', 0x400000); // done
define('USER_FLAG_TY_DISABLE', 0x800000); // done
function User() {
}
- function create(&$room, $idx, $name, $sess, $stat = "", $subst = "", $table = -1, $ip="0.0.0.0") {
+ static function create(&$room, $idx, $name, $sess, $stat = "", $subst = "", $table = -1, $ip="0.0.0.0") {
if (($thiz = new User()) == FALSE)
return (FALSE);
}
- function myclone($from)
+ static function myclone($from)
{
if (($thiz = new User()) == FALSE)
return (FALSE);
return ($thiz);
}
- function spawn($from, $table, $table_pos)
+ static function spawn($from, $table, $table_pos)
{
if (($thiz = new User()) == FALSE)
return (FALSE);
return ($thiz);
}
+ function flags_set($flags, $mask)
+ {
+ $flags_old = $this->flags & (~$mask);
+ $this->flags = ($flags_old | ($flags & $mask));
+ }
+
+ function store_set()
+ {
+ if (($bdb = BriskDB::create()) == FALSE) {
+ return FALSE;
+ }
+ return ($bdb->user_update_flags($this->code, ($this->flags & (USER_FLAG_TY_ALL | USER_FLAG_MAP_AUTH))));
+ }
+
function rd_data_set($curtime, $transp, $enc, $stat, $subst, $step, $from)
{
$this->rd_endtime = $curtime + RD_ENDTIME_DELTA;
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 = "";
return ($ret);
} // function maincheck (...
- public static function stream_fini($init_string, $is_unrecoverable)
+ public static function stream_fini($transp, $init_string, $is_unrecoverable)
{
printf("xXx user::stream_fini\n");
// FIXME: dynamic "Transport_" type
- $tans_class = "Transport_iframe";
- $body = $tans_class::fini($init_string, self::base_get(), static::blocking_error($is_unrecoverable));
+ $trans_class = Transport::gettype($transp);
+ $body = $trans_class::fini($init_string, self::base_get(), static::blocking_error($is_unrecoverable));
// ELSE IF XHR THEN:
// return (static::blocking_error($is_unrecoverable));
$curtime = time();
printf("CLASS: [%s] base: [%s]\n", get_class($this), self::base_get());
-
- // (webservers_exceeded() || stristr($HTTP_USER_AGENT, "Mozilla/5.0 (Windows NT 6.1; rv:5.0)") || stristr($HTTP_USER_AGENT, "MSIE") || stristr($HTTP_USER_AGENT, "CHROME") ? TRUE : FALSE);
log_load("index_rd_ifra_init.php");