skeeks\cms\controllers\AuthController::actionLogin PHP Method

actionLogin() public method

public actionLogin ( )
    public function actionLogin()
    {
        if (!\Yii::$app->user->isGuest) {
            return $this->goHome();
        }
        $rr = new RequestResponse();
        $model = new LoginFormUsernameOrEmail();
        //Запрос на валидацию ajax формы
        if ($rr->isRequestOnValidateAjaxForm()) {
            return $rr->ajaxValidateForm($model);
        }
        //Запрос ajax post
        if ($rr->isRequestAjaxPost()) {
            if ($model->load(\Yii::$app->request->post()) && $model->login()) {
                $rr->success = true;
                $rr->message = 'Авторизация прошла успешно';
                if ($ref = UrlHelper::getCurrent()->getRef()) {
                    $rr->redirect = $ref;
                } else {
                    $rr->redirect = Yii::$app->getUser()->getReturnUrl();
                }
            } else {
                $rr->message = 'Не удалось авторизоваться';
            }
            return (array) $rr;
        } else {
            if (\Yii::$app->request->isPost) {
                if ($model->load(\Yii::$app->request->post()) && $model->login()) {
                    if ($ref = UrlHelper::getCurrent()->getRef()) {
                        return $this->redirect($ref);
                    } else {
                        return $this->goBack();
                    }
                }
            }
        }
        return $this->render('login', ['model' => $model]);
    }