public function actionLogin() { /** * EAUTH-авторизация с помощью аккаунтов соц. сетей */ $serviceName = Yii::$app->getRequest()->getQueryParam('service'); if (isset($serviceName)) { User::loginByEAuth($serviceName); } if (!\Yii::$app->user->isGuest) { return $this->goHome(); } /** * Классическая аторизация через форму с помощью Email */ $model = new LoginForm(); if ($model->load(Yii::$app->request->post()) && $model->login()) { return $this->goBack(); } else { return $this->render('login', ['model' => $model]); } }
/** * @throws \yii\base\InvalidConfigException * Привзяывание аккаунтов соц.сетей к профилю */ public function actionEnable() { $serviceName = Yii::$app->getRequest()->getQueryParam('service'); if (isset($serviceName)) { User::loginByEAuth($serviceName, false); } }