public function init_menus()
 {
     $menus = [['name' => 'p-system', 'desc' => '系统', 'subMenus' => [['rbac/user-list', '管理员列表[R]'], ['rbac/user-edit', '管理员列表[W]'], ['rbac/role-list', '管理员角色[R]'], ['rbac/role-edit', '管理员角色[W]']]]];
     $manager = \Yii::$app->authManager;
     $role = new \yii\rbac\Role();
     $role->name = 'r-admin';
     $role->description = '系统管理员';
     $manager->add($role);
     foreach ($menus as $menu) {
         $pm = new \yii\rbac\Permission();
         $pm->name = $menu['name'];
         $pm->description = $menu['desc'];
         $manager->add($pm);
         foreach ($menu['subMenus'] as $m) {
             $sub_pm = new \yii\rbac\Permission();
             $sub_pm->name = $m[0];
             $sub_pm->description = $m[1];
             $manager->add($sub_pm);
             $manager->addChild($sub_pm, $pm);
             $manager->addChild($role, $sub_pm);
         }
         $manager->addChild($role, $pm);
     }
     // 初始化后台管理员
     $admin = new \backend\models\User();
     $admin->username = '******';
     $admin->setPassword('root');
     $admin->save();
     $manager->assign($manager->getRole('r-admin'), $admin->id);
 }
 public function actionChangePassword()
 {
     $model = new \backend\models\User(['scenario' => 'admin-change-password']);
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         $user = User::findOne(Yii::$app->user->identity->id);
         $user->setPassword($model->password);
         $user->generateAuthKey();
         if ($user->save()) {
             Yii::$app->getSession()->setFlash('success', Yii::t('app', 'New password was saved.'));
         }
         return $this->redirect(['change-password']);
     }
     return $this->render('changePassword', ['model' => $model]);
 }
Beispiel #3
0
 /**
  * 获取user_info页面所需信息
  */
 public function actionUserInfoPageById()
 {
     $user_id = Cookie::getInstance()->getCookie('bhy_id')->value;
     // 获取用户信息
     $userInfo = User::getInstance()->getUserById($this->get['id']);
     // 获取admin用户信息
     $authUser = new \backend\models\User();
     $authUserInfo = $authUser->authUserById($this->get['id']);
     $authUserInfo = $authUserInfo ? $authUserInfo : [];
     // 获取用户相册
     $userPhoto = UserPhoto::getInstance()->getPhotoList($this->get['id']);
     // 获取用户动态
     $dynamic = UserDynamic::getInstance()->getDynamicList($this->get['id']);
     // 获取关注状态
     $followStatus = UserFollow::getInstance()->getFollowStatus(['user_id' => $user_id, 'follow_id' => $this->get['id']]);
     $followStatus = $followStatus ? $followStatus['status'] : false;
     // 获取被关注状态
     $followedStatus = UserFollow::getInstance()->getFollowStatus(['user_id' => $this->get['id'], 'follow_id' => $user_id]);
     $followedStatus = $followedStatus ? $followedStatus['status'] : false;
     if ($userInfo) {
         $this->renderAjax(['status' => 1, 'userInfo' => $userInfo, 'authUserInfo' => $authUserInfo, 'userPhoto' => $userPhoto, 'dynamic' => $dynamic, 'followStatus' => $followStatus, 'followedStatus' => $followedStatus, 'msg' => 'user_info页面获取信息成功']);
     } else {
         $this->renderAjax(['status' => 0, 'userInfo' => $userInfo, 'authUserInfo' => $authUserInfo, 'userPhoto' => $userPhoto, 'dynamic' => $dynamic, 'followStatus' => $followStatus, 'followedStatus' => $followedStatus, 'msg' => 'user_info页面获取信息失败']);
     }
 }