Esempio n. 1
0
 /**
  * reset password api
  * @return type
  */
 public function actionResetpwd()
 {
     $request = \Yii::$app->request;
     $data = $request->_get();
     $data['userId'] = $request->_get('userId', '');
     $data['usign'] = $request->_get('usign', '');
     if ($data['usign'] != EasyHelpers::encrypty($data['userId'], \Yii::$app->params['key'])) {
         return ['code' => 5, 'msg' => '非法数据'];
     }
     $Iduser = \common\models\User::findOne(['userId' => $data['userId']]);
     if ($Iduser && $data['userMobile'] != $Iduser['userMobile']) {
         return ['code' => 6, 'msg' => '非法数据'];
     }
     $model = new ResetPasswordForm();
     if ($model->load($data, '') && $model->validate() && $model->resetPassword()) {
         return ['code' => 0, 'msg' => '密码修改成功,请重新登录'];
     } else {
         $errors = $model->getErrors();
         $error = '';
         foreach ($errors as $v) {
             if ($v[0]) {
                 $error = $v[0];
             }
         }
         return ['code' => 1, 'msg' => $error];
     }
 }
 public function actionResetPassword($token)
 {
     try {
         $model = new ResetPasswordForm($token);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
         Yii::$app->getSession()->setFlash('success', 'New password was saved.');
         return $this->goHome();
     }
     return $this->render('resetPassword', ['model' => $model]);
 }
Esempio n. 3
0
 public function actionResetPassword($token)
 {
     try {
         $model = new ResetPasswordForm($token);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
         Yii::$app->getSession()->setFlash('success', 'Password has been changed successfully.');
         return $this->redirect(['/auth/login']);
     }
     return $this->render('resetpassword', ['model' => $model]);
 }
 /**
  * Show reset password. It requires param $token that generated on actionRequestPasswordReset which is sent to
  * user's email.
  *
  * @param $token
  *
  * @return string|\yii\web\Response
  * @throws \yii\web\BadRequestHttpException
  */
 public function actionResetPassword($token)
 {
     // Change layout and body class of reset password page
     $this->layout = 'blank';
     Yii::$app->params['bodyClass'] = 'register-page';
     try {
         $model = new ResetPasswordForm($token);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
         Yii::$app->getSession()->setFlash('success', 'New password was saved.');
         return $this->goHome();
     }
     return $this->render('reset-password', ['model' => $model]);
 }
Esempio n. 5
0
 public function actionNewpass($token)
 {
     try {
         $model = new ResetPasswordForm($token);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
         Yii::$app->getSession()->setFlash('newpass-success', 'Новый пароль установлен.');
         return $this->redirect(['/login']);
     }
     return $this->render('resetPassword', ['model' => $model]);
 }
Esempio n. 6
0
 public function actionChange_password()
 {
     Yii::$app->util->tab = 5;
     $user = Yii::$app->user->identity;
     $token = Yii::$app->security->generateRandomString() . '_' . time();
     //echo $token; exit(0);
     $user->password_reset_token = $token;
     $user->save();
     Yii::$app->util->member = $user;
     try {
         $model = new ResetPasswordForm($token);
     } catch (InvalidParamException $e) {
         throw new BadRequestHttpException($e->getMessage());
     }
     if ($model->load(Yii::$app->request->post()) && $model->validate() && $model->resetPassword()) {
         Yii::$app->getSession()->setFlash('success', 'New password was saved.');
         return $this->redirect(Yii::$app->urlManager->createAbsoluteUrl('site/login'));
     }
     return $this->render('_change_password', ['model' => $model, 'user' => $user]);
 }