app\models\forms\LdapLoginForm::login PHP Method

login() public method

Logs in a user using the provided username and password.
public login ( ) : boolean
return boolean whether the user is logged in successfully
    public function login()
    {
        if ($this->validate()) {
            return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600 * 24 * 30 : 0);
        } else {
            return false;
        }
    }

Usage Example

Example #1
0
 /**
  * User login
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $userDriver = isset(\Yii::$app->params['user_driver']) == true && empty(\Yii::$app->params['user_driver']) == false ? strtolower(\Yii::$app->params['user_driver']) : 'local';
     if ($userDriver == 'ldap') {
         if (isset(\Yii::$app->params['ldap']) == false) {
             throw new \Exception(yii::t('walle', 'the login dirver configs does not defined', array('loginType' => \Yii::$app->params['user_driver'])));
         }
         if (is_array(\Yii::$app->params['ldap']) == false) {
             throw new \Exception(yii::t('walle', 'the login dirver configs parse error', array('loginType' => \Yii::$app->params['user_driver'])));
         }
         $model = new LdapLoginForm(\Yii::$app->params['ldap']);
         if ($model->load(Yii::$app->request->post()) && $model->login()) {
             return $this->goBack();
         } else {
             return $this->render('login', ['isLdapLigin' => true, 'model' => $model]);
         }
     } elseif ($userDriver == 'local') {
         $model = new LoginForm();
         if ($model->load(Yii::$app->request->post()) && $model->login()) {
             return $this->goBack();
         } else {
             return $this->render('login', ['isLdapLigin' => false, 'model' => $model]);
         }
     } else {
         throw new \Exception(yii::t('walle', 'login type could not support', array('loginType' => \Yii::$app->params['user_driver'])));
     }
 }