/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { /** * * POST /9999999/campaigns/99999/subscribers Content-Type: application/vnd.api+json * * { "subscribers": [{ "email": "*****@*****.**", "utc_offset": 660, "double_optin": true, "starting_email_index": 0, "reactivate_if_removed": true, "custom_fields": { "name": "John Doe" } }] } */ if ($this->validate()) { $user = new User(); //$user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); if ($user->save()) { $this->subscribe(); \Yii::$app->mailer->compose(['html' => 'signUp-html', 'text' => 'signUp-text'], ['user' => $user])->setFrom([\Yii::$app->params['supportEmail'] => \Yii::$app->name . ' robot'])->setTo($this->email)->setSubject('Sign Up to ' . \Yii::$app->name)->send(); return $user; } } return null; }
/** * Creates a new User model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new User(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Logs in a user using the provided username and password. * * @return boolean whether the user is logged in successfully */ public function login() { if ($this->validate()) { try { if (!Purina::init()->login($this->email, $this->password)) { $db_user = User::findByEmail($this->email); if ($db_user) { $db_user->status = User::STATUS_DISABLED; $db_user->save(); } $data = Purina::getData(); if ($data->message) { $this->addError('password', Yii::t('frontend/base', $data->message)); } else { $this->addError('password', 'Не верный логин или пароль.'); } return false; } else { $user = Purina::getData(); $db_user = User::findByEmail($this->email); if (!$db_user) { $db_user = new User(); $db_user->id = $user->id; $db_user->firstname = $user->firstname; $db_user->lastname = $user->lastname; $db_user->email = $user->email; $db_user->token = $user->token->key; $db_user->token_expire = $user->token->expire; $db_user->created_at = Yii::$app->formatter->asTimestamp($user->register_date); $db_user->updated_at = $db_user->created_at; $db_user->setPassword($this->password); } else { $db_user->token = $user->token->key; $db_user->token_expire = $user->token->expire; } $db_user->status = User::STATUS_ACTIVE; if (!$db_user->save()) { return false; } $duration = $user->token->expire - Yii::$app->formatter->asTimestamp('now'); if (!Yii::$app->user->login($db_user, $duration)) { $this->addError('password', 'Не удалось авторизоваться.'); return false; } else { return true; } } } catch (\Exception $e) { $this->addError('password', 'Не удалось авторизоваться.'); return false; } } return false; }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function register() { if ($this->validate()) { $user = new User(); $user->email = $this->email; $user->password = $this->password; if ($user->save()) { return $user; } } return null; }
/** * Create new user based on Steam profile * @param \frontend\components\SteamAuth $client * @return \frontend\models\User|boolean */ public static function createSteamUser($client) { $user = new User(['steamid' => $client->steamId, 'registered' => date('Y-m-d')]); $steam_data = $client->steamData; $user->name = $steam_data['response']['players'][0]['personaname']; $user->avatar = $steam_data['response']['players'][0]['avatarmedium']; if ($user->save()) { return $user; } Yii::error($user->errors); return false; }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate()) { $user = new User(); $user->username = $this->username; $user->setPassword($this->password); $user->create_time = time(); if ($user->save()) { return $user; } } return null; }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate()) { $user = new User(); $user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); if ($user->save()) { return $user; } } return null; }
/** * Signs user up. * @return User|null the saved model or null if saving fails */ public function updateProfile() { if ($this->validate()) { $user = new User(); $user->setScenario('updateProfile'); $user->username = $this->username; $user->email = $this->email; $user->updated_at = time(); if ($user->save()) { return $user; } } return false; }
/** * Creates a new User model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new User(); if (Yii::$app->user->identity->rol_id == '2') { $tipoAplicaciones = AplicacionesDb::find()->all(); } if ($model->load(Yii::$app->request->post())) { $model->setPassword(); $model->generateAuthKey(); if ($model->save()) { return $this->redirect(['view', 'id' => $model->id]); } } else { return $this->render('create', ['model' => $model, 'tipoAplicaciones' => Yii::$app->user->identity->rol_id == '2' ? $tipoAplicaciones : '']); } }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->password != $this->password2) { $this->addError('password2', \Yii::t('site', 'Пароли не совпадают!')); } if ($this->validate()) { $user = new User(); $user->username = $this->username; $user->email = $this->email; $user->setPassword($this->password); $user->generateAuthKey(); if ($user->save()) { return $user; } } return null; }
/** * Signs user up. * * @return User|null the saved model or null if saving fails */ public function signup() { if ($this->validate()) { $user = new User(); $user->setScenario('signup'); $user->username = $this->username; $user->email = $this->email; $user->created_at = time(); $user->updated_at = time(); $user->password = $user->setPassword($this->password); //echo '<pre>';var_dump($user);die; if ($user->save()) { return true; } var_dump($user->getErrors()); die; } return null; }
public function actualizar() { if ($this->validate()) { $user = new User(); $user->nombre = $this->nombre; $user->apellido = $this->apellido; $user->username = $this->username; $user->email = $this->email; $user->cedula = $this->cedula; $user->supervisor = $this->supervisor; $user->id_division = $this->id_division; $user->id_organizacion = $this->id_organizacion; $user->id_empresa = $this->id_empresa; $user->departamento = $this->departamento; $user->id_aplicacion = $this->id_aplicacion; $user->id_distrito = $this->id_distrito; $user->telefono = $this->telefono; $user->setPassword($this->password); $user->generateAuthKey(); if ($user->save()) { return $user; } } return null; }
public function actionEdit() { $model = new UserModel(); $model->scenario = 'edit'; $user = Yii::$app->user->identity->getAttributes(); $model->setAttributes($user, false); $serviceName = Yii::$app->getRequest()->getQueryParam('service'); if (isset($serviceName)) { $eauth = Yii::$app->get('eauth')->getIdentity($serviceName); $eauth->setRedirectUrl(Yii::$app->getUrlManager()->createAbsoluteUrl('profile/edit')); $eauth->setCancelUrl(Yii::$app->getUrlManager()->createAbsoluteUrl('profile/edit')); try { if ($eauth->authenticate()) { $attributes = User::getResponseEAuth($eauth); // BIND SOCIAL ID if (!empty($attributes['field']) && !empty($attributes['userId'])) { $user = User::findOne($user['id']); $user->load(['User' => [$attributes['field'] => $attributes['userId']]]); $user->save(); Yii::$app->getSession()->setFlash('success', Yii::t('user', 'Profile successfully changed')); } // UPLOAD SOCIAL AVATAR $imageUrl = $attributes['photo']; if ($imageUrl) { $filename = User2Image::copySocialImage($imageUrl); $image = new User2Image(); $image->user_id = $user['id']; $image->main_image = $filename; $image->images = ['0' => $filename]; if (User2Image::hasImages($user['id'])) { $db = Yii::$app->db; $db->createCommand("UPDATE user_2_image SET is_main=0 WHERE user_id = {$user['id']}")->query(); } $image->addImages(); } return $eauth->redirect(); } else { return $eauth->redirect($eauth->getCancelUrl()); } } catch (\nodge\eauth\ErrorException $e) { Yii::$app->getSession()->setFlash('error', 'EAuthException: ' . $e->getMessage()); return $eauth->redirect($eauth->getCancelUrl()); } } // IMAGES list($images, $mainImage) = User2Image::existsImages(Yii::$app->user->identity->id); if ($model->load(Yii::$app->request->post()) && $model->validate()) { $model->save(); Yii::$app->getSession()->setFlash('success', Yii::t('user', 'Profile successfully changed')); return $this->redirect(['/profile']); } else { return $this->render('edit', ['model' => $model, 'images' => $images, 'mainImage' => $mainImage, 'user' => $user]); } }
private function insert_user($data) { $user = new User(); $salt = substr(uniqid(rand()), -6); $time = time(); $ip = getRealIp(); $password = md5(md5($data['password']) . $salt); $authkey = Yii::$app->security->generateRandomString(); $password_reset_token = Yii::$app->security->generateRandomString() . '_' . time(); $password_hash = Yii::$app->security->generatePasswordHash($data['password']); $user->username = $data['username']; $user->password = $password; $user->auth_key = $authkey; $user->password_hash = $password_hash; $user->password_reset_token = $password_reset_token; $user->mobile = $data['mobile']; $user->email = $data['email']; $user->card_id = $data['card_id']; $user->reg_date = $time; $user->reg_ip = $ip; $user->last_login_date = $time; $user->last_login_ip = $ip; $user->salt = $salt; $result = $user->save(); if ($result) { $session = Yii::$app->session; if (!$session->isActive) { $session->open(); } $session['user'] = ['id' => $result, 'username' => $user->username]; } return $result; }