/** * * @see Zend_Controller_Action::init() */ public function init() { $this->_setParam('allowedGameTypes', array()); try { $user = new ZtChart_Model_User($this->_getParam('uname', '')); if ($user->isActive() && $user->getTokenring() == $this->_getParam('token')) { $this->_setParam('allowedGameTypes', array_intersect(explode(',', $this->_getParam('gametype')), $user->getRole()->getGameTypes(true))); } } catch (ZtChart_Model_User_Exception $e) { } }
/** * 判断登陆的用户是否属于本系统 * * @param string $username * @return false|ZtChart_Model_User */ protected function _checkIdentity($username) { try { $user = new ZtChart_Model_User($username); if (!$user->isActive()) { return false; } } catch (ZtChart_Model_User_Exception $e) { return false; } return $user; }
/** * 分配角色 */ public function assignAction() { if (!$this->_hasParam('user_id')) { return $this->render('deny'); } $userId = $this->_getParam('user_id'); if (Zend_Registry::get('user')->hasRoleUser($userId)) { if ($this->_request->isPost()) { if (Zend_Registry::get('user')->hasRole($this->_request->getPost('user_roleid'))) { $userAccess = new ZtChart_System_Model_User(); if ($userAccess->update($this->_request->getPost(), $userId)) { $this->_helper->dialog('分配角色成功', Zend_Log::INFO, $this->_helper->url('index')); } } } } else { $this->view->noRoleUser = true; } $this->view->parentRoleId = Zend_Registry::get('user')->getRoleId(); $objectUser = new ZtChart_Model_User($userId); $this->view->roleId = $objectUser->getRoleId(); }
/** * 设置匿名用户的身份 * * @param integer $role * @return void */ public static function setAnonymousRole($role) { self::$_anonymousRole = $role; }
/** * * @deprecated */ public function gamedataAction() { $data = array(); $user = new ZtChart_Model_User($this->_getParam('uname')); if ($user->isActive() && $user->getTokenring() == $this->_getParam('token')) { $allowedGameTypes = $user->getRole()->getGameTypes(true); if (in_array($this->_getParam('gametype'), $allowedGameTypes)) { $data = Zend_Json::decode(file_get_contents('http://192.168.102.203:6989/?getnumber&gametype=' . $this->_getParam('gametype') . '&zoneid=' . $this->_getParam('zoneid') . '&first=' . $this->_getParam('first'))); } } $this->_helper->json($data); }
/** * 初始化匿名用户 */ protected function _initUser() { $frontController = $this->bootstrap('frontController')->getResource('frontController'); if (!$frontController->hasPlugin('ZtChart_Plugin_Auth')) { ZtChart_Model_User::setAnonymousRole(ZtChart_Model_Role::ADMIN); } Zend_Registry::set('user', ZtChart_Model_User::getAnonymous()); }