public function run() { $request = Yii::$app->request; $ident = Yii::$app->user->getIdentity(); $form = new PasswordForm(); $form->screen_name = $ident->screen_name; if ($request->isPost) { $form->load($request->bodyParams); $form->screen_name = $ident->screen_name; if ($form->validate()) { $transaction = Yii::$app->db->beginTransaction(); try { $ident->password = Password::hash($form->new_password); if ($ident->save()) { $transaction->commit(); $this->controller->redirect(['user/profile']); return; } } catch (\Exception $e) { } $transaction->rollback(); } } return $this->controller->render('edit-password.tpl', ['user' => $ident, 'form' => $form]); }
public function actionChangepassword() { $model = new PasswordForm(); $modeluser = User::find()->where(['username' => Yii::$app->user->identity->username])->one(); if ($model->load(Yii::$app->request->post())) { if ($model->validate()) { try { $modeluser->password_hash = Yii::$app->security->generatePasswordHash($_POST['PasswordForm']['newpass']); if ($modeluser->save()) { Yii::$app->getSession()->setFlash('success', 'Password changed'); Yii::$app->user->logout(); return $this->goHome(); } else { Yii::$app->getSession()->setFlash('error', 'Password not changed'); //return $this->redirect(['page']); } } catch (Exception $e) { Yii::$app->getSession()->setFlash('error', "{$e->getMessage()}"); return $this->render('changepassword', ['model' => $model]); } } else { return $this->render('changepassword', ['model' => $model]); } } else { return $this->render('changepassword', ['model' => $model]); } }
public function actionChangepwd() { \Yii::$app->language = 'vi-VN'; $model = new PasswordForm(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { $user = User::find(['id' => Yii::$app->user->id])->one(); $user->setPassword($model->newPassword); $user->update(); Yii::$app->session->setFlash('changePasswordCompleted'); return $this->refresh(); } else { return $this->render('changepwd', ['model' => $model]); } }