Example #1
0
 public function actionRegister()
 {
     if (!Application::$app->getUser()->getIsGuest()) {
         Application::$app->getSession()->setFlash('register-warning', 'You must be unauthorized');
         return $this->redirect('site/index');
     }
     if (!empty($_POST) && (!isset($_POST['email']) || empty($_POST['email']) || !isset($_POST['password']) || empty($_POST['password']) || !isset($_POST['repeat_password']) || empty($_POST['repeat_password']))) {
         Application::$app->getSession()->setFlash('register-danger', 'Please fill all fields.');
     } elseif (!empty($_POST) && $_POST['password'] !== $_POST['repeat_password']) {
         Application::$app->getSession()->setFlash('register-danger', 'Passwords not match.');
     } elseif (!empty($_POST)) {
         //check email
         $model = User::findIdentityByEmail($_POST['email']);
         if (!empty($model)) {
             Application::$app->getSession()->setFlash('register-danger', 'User with email ' . HtmlPurifier::process($_POST['email']) . ' already registered.');
             return $this->redirect('user/register');
         }
         $model = new User();
         $model->load($_POST);
         $model->insert();
         Application::$app->getSession()->setFlash('register-success', 'User successfully created.');
         return $this->redirect('user/login');
     }
     return $this->render('user/register');
 }
Example #2
0
 public function InsertTestCode()
 {
     $user = new User();
     $user->testcode = $this->GetTestCode(4);
     $user->telephone = $this->telephone;
     $isExist = User::find()->where(['telephone' => $user->telephone])->one();
     if (!empty($isExist)) {
         if (empty($isExist->username)) {
             if (User::updateAll(['testcode' => $user->testcode], 'telephone =' . $user->telephone)) {
                 $password = md5("ontee123ontee");
                 $content = urlencode("欢迎您注册ONTEE,您的验证码" . $user->testcode . ",请在10分钟之内输入。【ONTEE】");
                 $time = $this->getMillisecond();
                 $remote_server = "http://api.sms.cn/mt/?uid=ontee&pwd=" . $password . "&mobile=" . $user->telephone . "&mobileids=" . $user->telephone . $time . "&content=" . $content . "&encode=utf8";
                 $data = $this->request_by_curl($remote_server);
                 echo $user->testcode;
             }
         } else {
             echo 0;
         }
     } else {
         if ($user->insert('user', ['testcode', 'telephone'], [$user->testcode, $user->telephone])) {
             $password = md5("ontee123ontee");
             $content = urlencode("欢迎您注册ONTEE,您的验证码" . $user->testcode . ",请在10分钟之内输入。【ONTEE】");
             $time = $this->getMillisecond();
             $remote_server = "http://api.sms.cn/mt/?uid=ontee&pwd=" . $password . "&mobile=" . $user->telephone . "&mobileids=" . $user->telephone . $time . "&content=" . $content . "&encode=utf8";
             $data = $this->request_by_curl($remote_server);
             echo $user->testcode;
         }
     }
 }
Example #3
0
 public function register($attributes)
 {
     $fields = ['fb_id' => $attributes['id'], 'datetime_reg' => gmdate('YmdHis'), 'datetime_activate' => gmdate('YmdHis'), 'is_active' => 1];
     if (ArrayHelper::getValue($attributes, 'first_name', '') != '') {
         $fields['name_first'] = ArrayHelper::getValue($attributes, 'first_name', '');
         $fields['name_last'] = ArrayHelper::getValue($attributes, 'last_name', '');
     } else {
         $fields['name_first'] = $attributes['name'];
     }
     if (ArrayHelper::getValue($attributes, 'fb_link', '') != '') {
         $fields['fb_link'] = $attributes['link'];
     }
     if (ArrayHelper::getValue($attributes, 'fb_link', '') != '') {
         $fields['gender'] = $attributes['gender'] == 'male' ? 1 : 0;
     }
     // добавляю поля для подписки
     foreach (\app\services\Subscribe::$userFieldList as $field) {
         $fields[$field] = 1;
     }
     if (isset($attributes['email'])) {
         $fields['email'] = $attributes['email'];
         $fields['is_confirm'] = 1;
     }
     $user = User::insert($fields);
     $user->setAvatarFromUrl('https://graph.facebook.com/' . $attributes['id'] . '/picture?type=large', 'jpg');
     return $user;
 }
 /**
  * AJAX
  * Создает подписку для авторизованного или неавторизованного пользователя
  * Высылает письмо подтверждения email
  *
  * @return string json
  *                error
  *                101, 'Такая почта уже зарегистрирована'
  */
 public function actionMail()
 {
     $email = self::getParam('email');
     $name = self::getParam('name');
     $email = strtolower($email);
     if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
         return self::jsonErrorId(101, 'Не корректная почта');
     }
     if (User::query(['email' => $email])->exists()) {
         return self::jsonErrorId(101, 'Такая почта уже зарегистрирована');
     }
     if (Yii::$app->user->isGuest) {
         $fields = ['email' => $email, 'datetime_reg' => gmdate('YmdHis'), 'is_active' => 0, 'is_confirm' => 0, 'name_first' => $name];
         foreach (Subscribe::$userFieldList as $field) {
             $fields[$field] = 1;
         }
         $user = User::insert($fields);
     } else {
         /** @var \app\models\User $user */
         $user = Yii::$app->user->identity;
         $fields = ['email' => $email, 'datetime_reg' => gmdate('YmdHis'), 'is_active' => 0, 'is_confirm' => 0];
         foreach (Subscribe::$userFieldList as $field) {
             $fields[$field] = 1;
         }
         $user->update($fields);
     }
     $fields = RegistrationDispatcher::add($user->getId());
     \cs\Application::mail($email, 'Подтверждение почты', 'subscribe_activate', ['url' => Url::to(['subscribe/activate', 'code' => $fields['code']], true), 'user' => $user, 'datetime' => \Yii::$app->formatter->asDatetime($fields['date_finish'])]);
     return self::jsonSuccess();
 }
Example #5
0
 public static function saveFBDetails($data)
 {
     if (!User::checkFBUser($data['fb_id'])) {
         User::insert($data);
         Notifier::sendSignupEmail($data['email'], $data['first_name'] . ' ' . $data['last_name']);
     }
 }
Example #6
0
 function create()
 {
     $input = Request::all();
     $validator = Validator::make($input, array("name" => "required", "email" => "required|email|unique:users", "password" => "required|min:6", "password_again" => "same:password"));
     if ($validator->passes()) {
         User::insert($input);
         return redirect('user/login')->with('info', 'Register success!');
     } else {
         return redirect('user/register')->withErrors($validator);
     }
 }
Example #7
0
 public function register($attributes)
 {
     $fields = ['vk_id' => $attributes['uid'], 'name_first' => $attributes['first_name'], 'name_last' => $attributes['last_name'], 'gender' => $attributes['sex'] == 0 ? null : ($attributes['sex'] == 1 ? 0 : 1), 'vk_link' => $attributes['screen_name'], 'datetime_reg' => gmdate('YmdHis'), 'datetime_activate' => gmdate('YmdHis'), 'is_active' => 1, 'is_confirm' => 0, 'birth_date' => $this->getBirthDate($attributes)];
     // добавляю поля для подписки
     foreach (\app\services\Subscribe::$userFieldList as $field) {
         $fields[$field] = 1;
     }
     $user = User::insert($fields);
     \Yii::info('$fields: ' . \yii\helpers\VarDumper::dumpAsString($fields), 'gs\\fb_registration');
     $user->setAvatarFromUrl($attributes['photo_200']);
     return $user;
 }
Example #8
0
 public static function saveUser($data)
 {
     $user = new User();
     $user->username = $data['username'];
     $user->email = $data['email'];
     $user->password = md5($data['password']);
     $user->type_id = $data['type_id'];
     if ($user->insert()) {
         return true;
     } else {
         return false;
     }
 }
 public function create(Request $request)
 {
     $validator = Validator::make($request->all(), ['email' => 'required|email|unique:users', 'phone' => 'required|unique:users', 'password' => 'required|same:repassword']);
     if ($validator->fails()) {
         return \Redirect::back()->withErrors($validator)->withInput();
     } else {
         $inputData = $request->only('email', 'password', 'fullname', 'phone', 'role', 'priority');
         $inputData['password'] = Hash::make($inputData['password']);
         if (User::insert($inputData)) {
             return \Redirect::back()->with('responseData', array('statusCode' => 1, 'message' => 'Thêm mới thành công'));
         } else {
             return \Redirect::back()->withInput()->with('responseData', array('statusCode' => 2, 'message' => 'Có lỗi xảy ra, vui lòng thử lại'));
         }
     }
 }
Example #10
0
 public function register($attributes)
 {
     $fields = ['fb_id' => $attributes['id'], 'fb_link' => $attributes['link'], 'name_first' => $attributes['first_name'], 'name_last' => $attributes['last_name'], 'gender' => $attributes['gender'] == '' ? null : ($attributes['gender'] == 'male' ? 1 : 0), 'datetime_reg' => gmdate('YmdHis'), 'datetime_activate' => gmdate('YmdHis'), 'is_active' => 1, 'is_confirm' => 1];
     // добавляю поля для подписки
     foreach (\app\services\Subscribe::$userFieldList as $field) {
         $fields[$field] = 1;
     }
     if (isset($attributes['email'])) {
         $fields['email'] = $attributes['email'];
     }
     \Yii::info('$fields: ' . \yii\helpers\VarDumper::dumpAsString($fields), 'gs\\fb_registration');
     $user = User::insert($fields);
     $user->setAvatarFromUrl('https://graph.facebook.com/' . $attributes['id'] . '/picture?type=large');
     return $user;
 }
Example #11
0
 /**
  * AJAX
  * Создает подписку для авторизованного или неавторизованного пользователя
  * Высылает письмо подтверждения email
  *
  * @return string json
  *                error
  *                101, 'Такая почта уже зарегистрирована'
  */
 public function actionMail()
 {
     $email = self::getParam('email');
     $name = self::getParam('name');
     if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
         return self::jsonErrorId(101, 'Не корректный формат адреса');
     }
     $email = strtolower($email);
     $user = User::find(['email' => $email, 'subscribe_is_tesla' => 1]);
     if ($user) {
         $user->update(['subscribe_is_tesla' => 1]);
     } else {
         $fields = ['email' => $email, 'datetime_reg' => gmdate('YmdHis'), 'is_active' => 1, 'is_confirm' => 0, 'name_first' => $name, 'subscribe_is_tesla' => 1];
         $user = User::insert($fields);
         $fields = RegistrationDispatcher::add($user->getId());
         \cs\Application::mail($email, 'Подтверждение почты', 'subscribe_activate', ['url' => Url::to(['subscribe/activate', 'code' => $fields['code']], true), 'user' => $user, 'datetime' => \Yii::$app->formatter->asDatetime($fields['date_finish'])]);
     }
     return self::jsonSuccess();
 }
Example #12
0
 public function signupAction()
 {
     $form = new UserForm($this);
     if ($this->POST) {
         if ($form->validate($_POST)) {
             // Form output
             $data = $form->output;
             // Save user
             $uid = User::insert($data['default']);
             // Get user
             $account = User::get($uid);
             // Set password
             $account->setPassword($data['private']['password']);
             // Notify
             Session::success('Account created!');
             // Redirect
             return $this->_redirect('user/login');
         }
     }
     return get_defined_vars();
 }
Example #13
0
 /**
  * Делает заказ
  *
  * @param  int $id идентификатор генератора
  *
  * @return boolean whether the model passes validation
  */
 public function insert($fieldsCols = null)
 {
     $id = $fieldsCols;
     $request = parent::insert(['beforeInsert' => function ($fields) {
         $fields['email'] = strtolower($fields['email']);
         $fields['datetime'] = time();
         $fields['status'] = \app\models\Request::STATUS_1_WAIT;
         return $fields;
     }]);
     if ($request === false) {
         return false;
     }
     $request['product_id'] = $id;
     $this->email = strtolower($this->email);
     if (!Yii::$app->user->isGuest) {
         $user = Yii::$app->user->identity;
         $request = new \app\models\Request($request);
         $request->update(['user_id' => Yii::$app->user->getId(), 'product_id' => $id]);
         // письмо клиенту
         $result = \cs\Application::mail($user->getEmail(), 'Вы сделали очередной заказ', 'next_request_client', ['user' => $user, 'request' => $request]);
     } else {
         $fields = ['email' => $this->email, 'datetime_reg' => gmdate('YmdHis'), 'is_active' => 1, 'is_confirm' => 0, 'subscribe_is_tesla' => 1, 'name_first' => $this->name, 'phone' => $this->phone];
         $user = User::insert($fields);
         $fields = \app\services\RegistrationDispatcher::add($user->getId());
         $request = new \app\models\Request($request);
         $request->update(['user_id' => $user->getId(), 'product_id' => $id]);
         // письмо им
         \cs\Application::mail($this->email, 'Поздравляем вы сделали первый шаг к своему полю коллективного счастья', 'new_request_client', ['url' => Url::to(['site/activate', 'code' => $fields['code']], true), 'user' => $user, 'request' => $request]);
     }
     foreach (\Yii::$app->params['requestMailList'] as $item) {
         // письмо нам
         $result = Application::mail($item, 'Появился заказ на TeslaGen', 'new_request', ['request' => $request, 'user' => $user]);
         //            VarDumper::dump([$result,$item]);
     }
     return $request;
 }
Example #14
0
 /**
  * Registration process
  */
 public function postRegister()
 {
     //Form not valid
     $validator = true;
     //Error messages
     $data['register_error_messages'] = [];
     //Username
     if (!isset($_POST['username']) || $_POST['username'] == '') {
         //Set error message for registration form username
         $data['register_error_messages']['username'] = '******';
         //Validator is false
         $validator = false;
     }
     if (!isset($_POST['password']) || $_POST['password'] == '') {
         //Set error message for registration form password
         $data['register_error_messages']['password'] = '******';
         //Validator is false
         $validator = false;
     }
     if (!isset($_POST['email']) || $_POST['email'] == '') {
         //Set error message for registration form email
         $data['register_error_messages']['email'] = 'E-mail is required!';
         //Validator is false
         $validator = false;
     }
     //If form is valid the continue processing
     if ($validator) {
         //Create new user model
         $user = new User();
         //Create new hash
         $hash = new Hash();
         //Get user data
         $data = ['username' => $_POST['username'], 'password' => $hash->make($_POST['password']), 'email' => $_POST['email'], 'created_at' => date('Y-m-d H:i:s')];
         //Send data to database
         $results = $user->insert($data);
         if ($results) {
             //Set success message
             $data['alert_msg'] = 'Your account has been created';
             //Reload page
             view('login-register', $data);
         } else {
             //Set error message
             $data['alert_msg'] = 'Your Could not be created';
             //Reload page
             view('login-register', $data);
         }
     } else {
         //Form is not valid
         view('login-register', $data);
     }
 }
Example #15
0
<?php

/**
 * Тестирование ActiveRecord
 */
//use App\Db;
use App\Models\User;
require_once __DIR__ . '/../../index.php';
/**
 * Тестирование метода insert() в классе Model
 */
$user = new User();
$user->name = 'Андрей';
$user->email = '*****@*****.**';
echo 'Добавили: ' . $user->insert() . '<br>';
echo 'id новой записи: ' . $user->id;
echo '<hr>';
/**
 * Тестирование метода update() в классе Model
 */
$id = 2;
$user = App\Models\User::findById($id);
$user->name = 'Светлана';
$user->email = '*****@*****.**';
echo 'Изменена ли запись с id=' . $id . ': ' . $user->update();
echo '<hr>';
/**
 * Тестирование метода save() в классе Model => вызов insert()
 */
$user = new User();
$user->name = 'Агрипина';
 public function actionRegister()
 {
     $model = new RegisterForm();
     $msg = null;
     if ($model->load(Yii::$app->request->post()) && Yii::$app->request->isAjax) {
         Yii::$app->response->format = Response::FORMAT_JSON;
         return ActiveForm::validate($model);
     }
     if ($model->load(Yii::$app->request->post())) {
         if ($model->validate()) {
             $table = new User();
             $table->loadDefaultValues();
             $table->username = $model->username;
             $table->Mail = $model->Mail;
             $table->password = crypt($model->password, Yii::$app->params["salt"]);
             $table->Authkey = $this->randKey("abcdef0123456789", 200);
             $table->Token = $this->randKey("abcdef0123456789", 200);
             $table->RRHH_idRRHH = $model->RRHH_idRRHH;
             $table->tiporrhh_idTipoRRHH = $model->tiporrhh_idTipoRRHH;
             if ($table->insert()) {
                 $user = User::find()->Where("AuthKey=:AuthKey", [":AuthKey" => $table->Authkey])->one();
                 $id = urlencode($user->idAutenticacion);
                 $authKey = urlencode($user->Authkey);
                 $subject = "Confirmar registro";
                 $body = "<h1>Haga click en el siguiente enlace para finalizar tu registro</h1>";
                 $link = Intranet::getUrlHead() . "/basic/web/index.php?r=site/confirm&id=" . $id . "&authKey=" . $authKey;
                 $body .= "<a href='" . $link . "'>Confirmar</a>";
                 if (Yii::$app->params["adminEmail"] != '*****@*****.**') {
                     Yii::$app->mailer->compose()->setTo($user->Mail)->setFrom([Yii::$app->params["adminEmail"] => Yii::$app->params["title"]])->setSubject($subject)->setHtmlBody($body)->send();
                     $msg = "Enhorabuena, ahora sólo falta que confirmes tu registro en tu cuenta de correo ";
                 } else {
                     $msg = "Confirmación alternativa " . Mailto::getUrlMailto($user->Mail, $subject, "", "", "Haga click en el siguiente enlace para finalizar tu registro", $link, "\nClick aquí para reenviar confirmación vía mailto:");
                 }
                 $model->username = null;
                 $model->Mail = null;
                 $model->password = null;
                 $model->password_repeat = null;
             } else {
                 $msg = "Ha ocurrido un error al llevar a cabo tu  registro\n" . "username="******"\npassword="******"\nemail=" . $model->Mail . "\n\n\t\t\t\t\tidRRHH=" . $model->RRHH_idRRHH . "\nidTipoRrhh=" . $model->tiporrhh_idTipoRRHH;
             }
         } else {
             $model->getErrors();
         }
     }
     $subModelTiporrhh = new Tiporrhh();
     $subModelRrhh = new Rrhh();
     return $this->render("register", ["model" => $model, "msg" => $msg, "subModelTiporrhh" => $subModelTiporrhh, "subModelRrhh" => $subModelRrhh]);
 }
Example #17
0
 /**
  * Seed the database table
  */
 public function __construct()
 {
     User::insert(['firstname' => 'John', 'lastname' => 'Doe', 'username' => 'username', 'password' => Hash::encode('password'), 'email' => '*****@*****.**', 'number' => 010000040120, 'avatar' => 'default.jpg', 'role' => 'superadmin', 'active' => 'yes', 'date_added' => date_now(), 'time_added' => time_now()]);
 }
Example #18
0
<?php

use App\Models\User;
require __DIR__ . '/../autoload.php';
$user = new User();
$user->name = 'vasya';
$user->email = '*****@*****.**';
$user->insert();
Example #19
0
 private function approved($conditions, $params = array())
 {
     try {
         // existing openid user
         $openid = UserOpenID::one($conditions);
         if ($this->user->isLoggedIn()) {
             Session::warning('That account is already connected.');
             return $this->_redirect('pages/restricted');
         }
         // get user object
         $user = User::get($openid->user_id);
     } catch (ModelException $ex) {
         // remove potential openid user
         UserOpenID::_delete($conditions);
         // new user
         if (!$this->user->isLoggedIn()) {
             // insert
             $user = array('signed_up_at' => time(), 'first_login' => time());
             $uid = User::insert($user);
             // get user object
             $user = User::get($uid);
         } else {
             $user = $this->user->user;
         }
         // new openid user
         $conditions['user_id'] = $user->user_id;
         $conditions['params'] = json_encode($params);
         UserOpenID::insert($conditions);
     }
     if (!$this->user->isLoggedIn()) {
         $this->user->login($user);
     } else {
         Session::success('Account connected!');
     }
     return $this->_redirect('pages/restricted');
 }