app\controllers\SiteController::actionLogin PHP Метод

actionLogin() публичный Метод

User login
public actionLogin ( )
    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'])));
        }
    }

Usage Example

Пример #1
0
 public function run()
 {
     $site = new SiteController();
     switch ($_SERVER["REQUEST_URI"]) {
         case '/':
         case '/home':
             return $site->actionIndex();
             break;
         case '/profile':
             return $site->actionProfile();
             break;
         case '/login':
             return $site->actionLogin();
             break;
         case '/signup':
             return $site->actionSignup();
             break;
         case '/email-unique':
             return $site->actionEmailUnique();
             break;
         case '/verify-password':
             return $site->actionVerifyPassword();
             break;
         case '/logout':
             return $site->actionLogout();
             break;
         case '/400':
             $error = new ErrorController(400);
             return $error->actionIndex();
             break;
         case '/403':
             $error = new ErrorController(403);
             return $error->actionIndex();
             break;
         default:
             $error = new ErrorController(404);
             return $error->actionIndex();
             break;
     }
 }
All Usage Examples Of app\controllers\SiteController::actionLogin