public static function getActionFromArrayId($arrayId) { $sql = AccessGlobal::model()->findAllByAttributes(array('id' => $arrayId)); $res = array(); foreach ($sql as $action) { $res[] = strtolower($action['action']); } return $res; }
public function actionUser() { $user = User::model()->findByPk(isset($_REQUEST['user_id']) ? intval($_REQUEST['user_id']) : null); if (is_null($user)) { $user = new User(); } $criteria = new CDbCriteria(); $criteria->compare('controller', Yii::app()->params['controllers'][2]); $criteria->compare('enable', '1'); $criteria->addNotInCondition('action', AccessGlobal::getDefaultAction()); $criteria->order = "action asc"; $actions = AccessGlobal::model()->findAll($criteria); if (Yii::app()->request->isPostRequest && isset($_POST['User'])) { $user->attributes = $_POST['User']; $user->pass = $_POST['User']['pass']; if ($user->save()) { AccessUser::model()->deleteAllByAttributes(array('user_id' => $user->user_id)); $accessForUser = array_merge($_POST['access'] ? $_POST['access'] : array(), AccessGlobal::getIdDefaultAction()); foreach ($accessForUser as $val) { $access = new AccessUser(); $access->user_id = $user->user_id; $access->action_id = $val; $access->save(); } $this->redirect($this->createUrl('admin/users')); } } $this->render('user', array('user' => $user, 'actions' => $actions, 'access' => AccessUser::getActionIdFromUser($user->user_id))); }
public function actionAccessChange() { $id = intval($_REQUEST['id']); $access = AccessGlobal::model()->findByPk(isset($id) ? intval($id) : null); if (!is_null($access)) { $access->attributes = array('enable' => $access->enable == '1' ? '0' : '1'); $access->save(); } $this->redirect($this->createUrl('superadmin/access')); }