public function testChangeCorrect() { /** @var User $user */ $user = User::findOne($this->users[0]['id']); $form = new PasswordChangeForm($user); $form->setAttributes(['currentPassword' => 'adminpass', 'newPassword' => 'new-password', 'newPasswordRepeat' => 'new-password']); expect('password is changed', $form->changePassword())->true(); expect('password is correct', $user->validatePassword('new-password'))->true(); }
public function actionPassword() { $user = $this->findModel(); $model = new PasswordChangeForm($user); if ($model->load(Yii::$app->request->post()) && $model->changePassword()) { Yii::$app->getSession()->setFlash('success', Module::t('app', 'FLASH_PASSWORD_CHANGE_SUCCESS')); return $this->redirect(['index']); } else { return $this->render('password', ['model' => $model]); } }
public function actionIndex() { $user = $this->findModel(); $profile = $user->profile; $passwordChangeForm = new PasswordChangeForm($user); $profileChangeForm = new ProfileChangeForm($profile); $postData = Yii::$app->request->post(); $session = Yii::$app->getSession(); if ($passwordChangeForm->load($postData) && $passwordChangeForm->changePassword()) { $session->setFlash('success', Yii::t('user/password', 'The password has been successfully updated')); $passwordChangeForm = new PasswordChangeForm($user); } if ($profileChangeForm->load($postData) && $profileChangeForm->update()) { $session->setFlash('success', Yii::t('user/password', 'The profile has been successfully updated')); } return $this->render('index', ['passwordChangeForm' => $passwordChangeForm, 'profileChangeForm' => $profileChangeForm]); }