public function actionRegistration() { $model = new SignupForm(); if (\Yii::$app->request->isAjax) { $model->username = \Yii::$app->request->post('username'); $model->password = \Yii::$app->request->post('password'); $model->password_repeat = \Yii::$app->request->post('password_repeat'); $phone = \Yii::$app->request->post('phone'); $phone = str_replace(['(', ')', '-', '+'], "", $phone); $phone = substr($phone, 2); $model->phone = $phone; $user = $model->signup(); if ($user == -1) { return json_encode(['error' => true, 'message' => 'К данному номеру телефона уже привязан аккаунт']); } elseif ($user == -2) { return json_encode(['error' => true, 'message' => 'Неверно введенны данные']); } else { $model->login(); return $this->redirect('/'); } } else { if (\Yii::$app->user->isGuest) { if ($model->load(\Yii::$app->request->post())) { $user = $model->signup(); if ($user) { $this->redirect('/'); } } return $this->render('registration', ['model' => $model]); } else { return $this->redirect('/'); } } }
public function actionSignup() { $model = new SignupForm(); if ($model->load(Yii::$app->request->post())) { $user = $model->signup(); if ($user && Yii::$app->getUser()->login($user)) { return $this->goHome(); } } return $this->render('signup', ['model' => $model]); }
/** * @return string|Response */ public function actionSignup() { $model = new SignupForm(); if ($model->load(Yii::$app->request->post())) { $user = $model->signup(); if ($user) { if ($model->shouldBeActivated()) { Yii::$app->getSession()->setFlash('alert', ['body' => Yii::t('frontend', 'Your account has been successfully created. Check your email for further instructions.'), 'options' => ['class' => 'alert-success']]); } else { Yii::$app->getUser()->login($user); } return $this->goHome(); } } return $this->render('signup', ['model' => $model]); }