示例#1
0
 public function actionAvatarChange()
 {
     $user = \Yii::$app->user->identity;
     $avatar = new AvatarForm();
     if ($avatar->load($_POST)) {
         if (\Yii::$app->request->isAjax) {
             return ActiveForm::validate($avatar);
         }
         $avatar->img = UploadedFile::getInstance($avatar, 'img');
         if ($avatar->validate()) {
             $avatar->save($user);
             return $this->redirect('index');
         }
     }
     return $this->render('avatar-change', ['user' => $user, 'avatar' => $avatar]);
 }
示例#2
0
 /**
  * @return array|string
  */
 public function actionSetting()
 {
     $this->title = '设置' . ' - ' . Yii::$app->name;
     $this->description = '';
     if (Yii::$app->user->isGuest) {
         return $this->redirect('/account/login?next=/account/setting');
     }
     $model = User::findOne(Yii::$app->user->id);
     $avatar = new AvatarForm();
     $password = new EditPasswordForm();
     if (Yii::$app->request->post() != null) {
         if ($model->load(Yii::$app->request->post())) {
             $model->updated_at = time();
             if ($model->update()) {
                 Yii::$app->getSession()->setFlash('setting', 1);
                 Yii::$app->getSession()->setFlash('success', '修改成功');
                 Yii::$app->cache->delete('user' . Yii::$app->user->id);
                 return $this->refresh();
             } else {
                 Yii::$app->getSession()->setFlash('setting', 1);
                 Yii::$app->getSession()->setFlash('danger', '修改失败');
             }
         }
         if ($avatar->load(Yii::$app->request->post())) {
             if ($avatar->update()) {
                 Yii::$app->cache->delete('user' . Yii::$app->user->id);
                 Yii::$app->getSession()->setFlash('avatar', 1);
                 Yii::$app->getSession()->setFlash('success', '修改成功');
                 return $this->redirect('/account/setting#avatar');
             } else {
                 Yii::$app->getSession()->setFlash('avatar', 1);
                 Yii::$app->getSession()->setFlash('danger', '修改失败');
             }
         }
         if ($password->load(Yii::$app->request->post())) {
             if ($password->update()) {
                 Yii::$app->getSession()->setFlash('password', 1);
                 Yii::$app->getSession()->setFlash('success', '修改成功');
                 return $this->redirect('/account/setting#password');
             } else {
                 Yii::$app->getSession()->setFlash('password', 1);
                 Yii::$app->getSession()->setFlash('danger', '修改失败');
             }
         }
     }
     return $this->render('setting', ['model' => $model, 'avatar' => $avatar, 'password' => $password]);
 }