Beispiel #1
0
 public function clean()
 {
     $current_time = clock::get_stamp();
     $sql = "DELETE FROM `{$this->table_name}` WHERE `expire_time` <= " . $current_time;
     mysqli_query($this->conn, $sql);
     if (kernel::is_debug()) {
         debug::save('session', $sql);
     }
 }
Beispiel #2
0
 public static function set_cookie($name, $value, $seconds = 0, $path = '/', $domain = '', $secure = false, $http_only = false)
 {
     if ($seconds !== 0) {
         $seconds = clock::get_stamp() + $seconds;
     }
     $path = self::$request['prefix'] . $path;
     if ($domain === '') {
         $domain = config::get_module('visitor.cookie_domain', '');
     }
     $cookie = ['name' => $name, 'value' => $value, 'expire' => $seconds, 'path' => $path, 'domain' => $domain, 'secure' => $secure, 'http_only' => $http_only];
     self::$response['cookies'][] = $cookie;
 }
Beispiel #3
0
 public static function create_session($role_name, $role_id, $sid, $login_seconds, array $role_vars)
 {
     $current_time = clock::get_stamp();
     $last_active = $expire_time = $current_time;
     $login_seconds = (int) $login_seconds;
     $expire_time += $login_seconds === 0 ? self::$role_configs[$role_name]['default_alive_seconds'] : $login_seconds;
     $role_id = (int) $role_id;
     $role_secret = self::new_role_secret();
     $session_store = self::get_session_store($role_name);
     $session_store->create($sid, $expire_time, $last_active, $role_id, $role_secret, $role_vars);
     return new session($role_name, $session_store, $sid, $expire_time, $last_active, $role_id, $role_secret, $role_vars);
 }