/** * Tests lock a user * * @return User * * @depends testUpdateUser */ public function testLockAndActivate() { /* @var $user User */ $user = $this->getModule('Yii2')->grabFixture('users', 'activeUser1'); $result = $this->userModule->lockUser($user); $this->assertTrue($result); $this->assertFalse($user->canSignIn()); $result = $this->userModule->activateUser($user); $this->assertTrue($result); $this->assertTrue($user->canSignIn()); return $user; }
/** * Users locking * * @param integer $id * @return mixed * @throws NotFoundHttpException */ public function actionLock($id) { $model = $this->findModel($id); /* @var $systemAlert Alert */ $systemAlert = Yii::$app->systemAlert; try { if ($this->userModule->lockUser($model)) { $systemAlert->setMessage(Alert::SUCCESS, Yii::t('user', 'User successfully blocked')); } else { $systemAlert->setMessage(Alert::SUCCESS, Yii::t('user', 'Error locking a user')); } } catch (Exception $ex) { $systemAlert->setMessage(Alert::DANGER, Yii::t('app', 'System error: {message}', ['message' => $ex->getMessage()])); } return $this->redirect(['index']); }