public function __construct($request, $response) { parent::__construct($request, $response); //$this->checkAllowIP(); $role_id = $this->isAdmin(); if ($role_id < 1) { return $this->redirect('admin/login/index'); } if ($GLOBALS['user_id'] > 0) { $user = CacheManager::getUser(); $uri = addslashes(@$_SERVER['REQUEST_URI']); if (Util::filterOnlineUrl($uri)) { $update_time = 0; $key = 'last_time_' . $GLOBALS['user_id']; $time = CacheManager::cache_get($key, 0); if ($time > 0) { $update_time = TIMESTAMP - $time; } if ($update_time < 0) { $update_time = 0; } Model::factory('App')->updateAdminOnline($GLOBALS['user_id'], $uri, Util::getIP(), $update_time, addslashes(json_encode(@$_REQUEST))); CacheManager::cache_set($key, TIMESTAMP); } } }
public function initApp(&$obj) { $sessionKey = $obj->req('sessionKey'); $obj->income = Util::up_decode($sessionKey); if ($obj->income && $obj->income['u'] > 0) { $obj->uid = $obj->income['u']; $obj->user = CacheManager::getUser($obj->uid); if (!isset($obj->income['l'])) { $obj->income['l'] = $obj->user->locale; } $obj->locale = $obj->getLocale($obj->income['l']); $obj->lang = $obj->getLang($obj->locale); $obj->mobile = $obj->income['m'] == 1 ? true : false; $obj->login($obj->uid); } else { if ($GLOBALS['user_id'] > 0) { $obj->uid = $GLOBALS['user_id']; $obj->user = CacheManager::getUser($obj->uid); if (!$obj->user) { $GLOBALS['user_id'] = 0; $obj->uid = 0; $obj->locale = $obj->getLocale(Util::determineLang()); $obj->lang = $obj->getLang($obj->locale); } else { $obj->locale = $obj->getLocale($obj->user->locale); $obj->lang = $obj->getLang($obj->locale); } } else { $obj->locale = $obj->getLocale(Util::determineLang()); $obj->lang = $obj->getLang($obj->locale); } } if ($obj->uid > 0) { $uri = addslashes(@$_SERVER['REQUEST_URI']); if (Util::filterOnlineUrl($uri)) { $update_time = 0; $key = 'last_time_' . $obj->uid; $time = CacheManager::cache_get($key, 0); if ($time > 0) { $update_time = TIMESTAMP - $time; } if ($update_time < 0) { $update_time = 0; } Model::factory('App')->updateUserOnline($obj->uid, $uri, Util::getIP(), $update_time); CacheManager::cache_set($key, TIMESTAMP); } } }
public function getpassport($username, $password) { if (!Util::check_username($username)) { return -4; } $key = 'logins_' . $username; $logins = CacheManager::cache_get($key, 0); if ($logins > 10) { return -5; } CacheManager::cache_set($key, $logins + 1); return $this->check_login($username, $password); }