Наследование: extends yii\base\Model
Пример #1
0
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest || !Yii::$app->request->isAjax) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post())) {
         Yii::$app->response->format = Response::FORMAT_JSON;
         $erros = ActiveForm::validate($model);
         if (!empty($erros)) {
             return $erros;
         }
         if (!Yii::$app->request->post('login')) {
             return $erros;
         }
         if (!$model->login()) {
             $erros = [];
             $erros_model = $model->getErrors();
             foreach ($erros_model as $k => $v) {
                 $erros = [Html::getInputId($model, $k) => $v];
                 break;
             }
             return $erros;
         } else {
             return [];
         }
     } else {
         return $this->renderAjax('login', ['model' => $model]);
     }
 }
Пример #2
0
 public function testNotLoginInactiveUser()
 {
     $model = new LoginForm(['accountName' => 'erau-inactive', 'password' => 'password_0']);
     expect('model should not login user', $model->login())->false();
     expect('error message should be set', $model->errors)->hasKey('password');
     expect('user should not be logged in', Yii::$app->user->isGuest)->true();
 }
Пример #3
0
 /**
  * /login
  *
  * @return string|\yii\web\Response
  */
 public function actionIndex()
 {
     if ($this->member) {
         return $this->goHome();
     }
     // Check for login
     $model = new LoginForm();
     $redirectAfter = $this->request->getQueryParam('r');
     if ($redirectAfter) {
         $this->session->set('redirectAfterLogin', $redirectAfter);
     }
     $errors = null;
     if ($this->request->method == 'POST') {
         // populate model attributes with user inputs
         $model->load($this->request->post());
         if ($model->validate() && $model->authenticate()) {
             // all inputs are valid
             $redirectAfter = $this->session->get('redirectAfterLogin');
             if ($redirectAfter) {
                 $this->session->remove('redirectAfterLogin');
                 $this->redirect($redirectAfter);
             } else {
                 return $this->goHome();
             }
         } else {
             // validation failed: $errors is an array containing error messages
             $errors = $model->errors;
         }
     }
     return $this->render('login', ['model' => $model, 'errors' => $errors]);
 }
 /**
  * @return array|Response
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         return $this->goBack();
     }
     return $this->render('login', ['model' => $model]);
 }
Пример #5
0
 /**
  * Logs in a user.
  *
  * @return mixed
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         return $this->goBack();
         // return $this->redirect(\yii\helpers\Url::to(['site/index']));
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #6
0
 /**
  * @return string
  */
 function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $login_model = new LoginForm();
     if ($login_model->load(Yii::$app->request->post()) && $login_model->login()) {
         //$login_model->login()
         return $this->goBack();
     } else {
         $js = '$("#login-modal").modal("show")';
         $this->getView()->registerJs($js);
         return $this->render('login', ['login_model' => $login_model]);
     }
 }
Пример #7
0
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         $currentUserId = (string) Yii::$app->user->identity->_id;
         $currProfile = Profile::find()->where(['userId' => new \MongoId($currentUserId)])->asArray()->all();
         $session = Yii::$app->session;
         $session['profile'] = $currProfile;
         return $this->goBack();
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #8
0
 public function actionIndex()
 {
     if (!\Yii::$app->user->isGuest) {
         //return $this->goHome();
         return $this->render('dashboard');
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         $pk = Yii::$app->user->identity->id;
         $shopid = User::find()->where(['sn' => $pk])->one();
         Yii::$app->session->set('shopid', $shopid->shop_id);
         Yii::$app->session->set('usertype', $shopid->type);
         return $this->render('dashboard');
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #9
0
 public function actionLogin()
 {
     if (!Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     $model->load(Yii::$app->request->post());
     if (Yii::$app->request->isAjax) {
         Yii::$app->response->format = Response::FORMAT_JSON;
         return ActiveForm::validate($model);
     }
     if (Yii::$app->request->isPost && $model->login()) {
         return $this->goBack();
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #10
0
 public function actionLogin()
 {
     $model = Yii::createObject(LoginForm::className());
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         return $this->goHome();
     }
     return $this->render('login', compact('model'));
 }
Пример #11
0
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     $signup = new SignupForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         return $this->redirect(['index']);
     } elseif ($signup->load(Yii::$app->request->post()) && ($user = $signup->signup())) {
         if (Yii::$app->getUser()->login($user)) {
             return $this->redirect(['data']);
         }
     } else {
         return $this->render('login', ['model' => $model, 'signup' => $signup]);
     }
 }
Пример #12
0
 /**
  * Logs in a user.
  *
  * @return mixed
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     $model->load(Yii::$app->request->post());
     /** @var User $user*/
     $user = User::findOne(['username' => $model->username]);
     if ($user && !$user->activated) {
         return $this->render('confirmPending');
     }
     if ($user && $model->login()) {
         return $this->goBack();
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #13
0
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         //设置session
         $teacher = Teacher::find()->where(['username' => $_POST['LoginForm']['username']])->with('details')->one();
         $session = Yii::$app->session;
         $session['tid'] = $teacher->id;
         $session['username'] = $teacher->username;
         $session['head_image'] = $teacher->details->head_image;
         return $this->goBack();
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }
Пример #14
0
 /**
  * @return bool
  */
 public function signup()
 {
     if ($this->validate()) {
         try {
             if (!Purina::init()->signup($this->firstname, $this->lastname, $this->email, $this->password)) {
                 $data = Purina::getData();
                 if ($data->message) {
                     Yii::$app->session->setFlash('error', Yii::t('frontend/base', $data->message));
                 } else {
                     Yii::$app->session->setFlash('error', "Не удалось зарегистрироваться");
                 }
             } else {
                 $login = new LoginForm();
                 $login->email = $this->email;
                 $login->password = $this->password;
                 return $login->login();
             }
         } catch (\Exception $e) {
             Yii::$app->session->setFlash('error', "Не удалось зарегистрироваться");
             return false;
         }
     }
     return false;
 }
Пример #15
0
 /**
  * Logs in a user.
  *
  * @return mixed
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         return $this->goBack();
     } else {
         //var_dump(Yii::$app->request->isAjax);die;
         //echo'<pre>';print_r($model);echo'</pre>';//die;
         if (count($model->errors)) {
             foreach ($model->errors as $err) {
                 Yii::$app->session->setFlash('error', $err[0]);
                 break;
             }
         }
         if (Yii::$app->request->isAjax === true) {
             return $this->renderPartial('login-modal', ['model' => $model]);
         } else {
             return $this->render('login', ['model' => $model]);
         }
     }
 }
Пример #16
0
 /**
  * Logs in a user.
  *
  * @return mixed
  */
 public function actionLogin()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new LoginForm();
     if ($model->load(Yii::$app->request->post()) && $model->login()) {
         $cookies = Yii::$app->response->cookies;
         if (isset($_COOKIE['cart_' . Yii::$app->user->identity->id])) {
             return $this->redirect('/cart');
         }
         if (isset($_COOKIE['cart_0'])) {
             return $this->redirect('/cart');
         } else {
             return $this->goBack();
         }
     } else {
         return $this->render('login', ['model' => $model]);
     }
 }