예제 #1
0
 /**
  * Signs user up.
  *
  * @return Users|null the saved model or null if saving fails
  */
 public function register()
 {
     $user = null;
     $transaction = Yii::$app->db->beginTransaction();
     try {
         $group = new Groups();
         $group->name = $this->email;
         if ($group->save()) {
             $user = parent::register($group->id);
             for ($i = 0; $i < $this->beacon_count; $i++) {
                 $beacon = new Beacons();
                 $beacon->name = Yii::$app->security->generateRandomString(16);
                 $beacon->title = "Such title {$i}";
                 $beacon->description = "So description {$i}";
                 $beacon->minor = $group->id . $user->id . $i;
                 $beacon->major = $group->id . $user->id . $i;
                 $beacon->place = "Wow Place {$i}";
                 $beacon->uuid = UUID::v4();
                 $beacon->groupToBind = $group->id;
                 $beacon->save();
             }
         }
         $transaction->commit();
         return $user;
     } catch (Exception $e) {
         if ($transaction->isActive) {
             $transaction->rollBack();
         }
         return null;
     }
 }
예제 #2
0
 public function actionRegister()
 {
     if (!Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post()) && $model->register()) {
         return $this->goBack();
     } else {
         return $this->render('register', ['model' => $model]);
     }
 }
예제 #3
0
 public function actionRegister()
 {
     $this->layout = "main-login";
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post()) && $model->register()) {
         Yii::$app->session->addFlash("success", "Register success, please login");
         return $this->redirect(["site/login"]);
     }
     return $this->render('register', ['model' => $model]);
 }
예제 #4
0
 public function actionRegister()
 {
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post()) && $model->validate()) {
         if ($model->register()) {
             return $this->goHome();
         } else {
             Yii::$app->session->setFlash('error', 'Возникла ошибка при регистрации');
             Yii::error('Ошибка при регистрации');
             return $this->refresh();
         }
     }
     return $this->render('register', ['model' => $model]);
 }
예제 #5
0
 public function actionIndex()
 {
     if (!Yii::$app->user->isGuest) {
         return $this->redirect(['site/index']);
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($model->register()) {
             $model->login();
             return $this->redirect(['site/index']);
         }
     }
     return $this->render('index', ['model' => $model]);
 }
예제 #6
0
 public function actionRegister()
 {
     $this->view->title = 'Регистрация';
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($user = $model->register()) {
             Yii::$app->user->login($user);
             return $this->goHome();
         }
     }
     return $this->render('register', ['model' => $model]);
 }
예제 #7
0
 public function actionRegister()
 {
     if (!\Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     // Throw exception if there are users registered
     if (User::find()->active()->count()) {
         throw new \yii\web\BadRequestHttpException();
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post()) && $model->register()) {
         return $this->goBack();
     } else {
         return $this->render('register', ['model' => $model]);
     }
 }
예제 #8
0
 public function actionRegister()
 {
     /*
     if (!Yii::$app->user->isGuest) {
         return $this->goHome();
     }
     */
     echo Yii::$app->language;
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post())) {
         if ($user = $model->register()) {
             if (Yii::$app->getUser()->login($user)) {
                 return $this->goHome();
             }
         }
     }
     return $this->render('register', ['model' => $model]);
 }
예제 #9
0
 public function actionRegister()
 {
     $model_register_form = new RegisterForm();
     //Если данные были отправлены и прошли валидацию
     if ($model_register_form->load(Yii::$app->request->post()) && $model_register_form->validate()) {
         //Если регистрация прошла успешно,данные были сохранены,авторизуем пользователя
         if ($user = $model_register_form->register()) {
             Yii::$app->user->login($user);
             $url = Url::toRoute(['login']);
             return $this->redirect($url);
         } else {
             Yii::error("Ошибка при регистрации");
             var_dump($model_register_form->getErrors());
             //return $this->refresh();
         }
     }
     return $this->render("register", ["model" => $model_register_form]);
 }
예제 #10
0
 public function actionRegister()
 {
     $back = isset($_REQUEST['back']) ? $_REQUEST['back'] : '';
     if (!is_null($this->getLoggedUser())) {
         if (!empty($back)) {
             $this->redirect($back);
         } else {
             $this->redirect(['user/profile']);
         }
     }
     $this->layout = 'main';
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post()) && $model->register()) {
         StoreUtils::sendPendingEmails();
         if (!empty($back)) {
             return $this->redirect($back);
         }
         return $this->goHome();
     }
     return $this->render('register', ['model' => $model, 'back' => $back]);
 }
예제 #11
0
 public function actionRegister()
 {
     if (!Yii::$app->user->isGuest) {
         return $this->redirect(Url::toRoute('/site/index'));
     }
     $model = new RegisterForm();
     if ($model->load(Yii::$app->request->post())) {
         $user = $model->register();
         if ($user) {
             $login = new LoginForm();
             $login->username = $model->username;
             $login->password = $model->password;
             $login->login();
             echo '<pre>';
             print_r($login);
             echo '</pre>';
             die;
         }
         return $this->goHome();
     }
     return $this->render('register', ['model' => $model]);
 }