Beispiel #1
0
 public function signin($id, $password, $type = UserContact::TYPE_EMAIL)
 {
     if (!is_scalar($id)) {
         return false;
     }
     $auth = UserContact::where('type', '=', $type)->where('value', '=', $id)->first();
     if (empty($auth)) {
         return false;
     }
     $obj = User::where('id', '=', $auth->user_id)->where('password', '=', password_crypt($password))->with('session')->first();
     if (!empty($obj->id)) {
         $session = $obj->session;
         if (empty($session->id)) {
             $session = new UserSession();
         }
         $session->session_id = $this->session->id(true);
         $session->user_id = $obj->id;
         $session->ip_address = get_ip_address();
         $session->stamp = time();
         $session->save();
         $this->autorization = true;
         $this->user = $session->user;
         $smarty = new \Smarty();
         $smarty->assignGlobal('auth_user', $this->user);
         $smarty->assignGlobal('auth', $this);
         return true;
     }
     return false;
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $faker = Faker::create();
     foreach (range(1, 4) as $index) {
         User::create(['username' => $faker->word, 'email' => $faker->email, 'password' => 'secret', 'role_id' => 1]);
     }
     User::create(['username' => 'test', 'email' => '*****@*****.**', 'password' => 'secret', 'role_id' => 2]);
 }
 public function run()
 {
     $faker = Faker\Factory::create();
     $usersNumber = 10;
     for ($i = 1; $i <= $usersNumber; $i++) {
         \App\Models\Users\User::create(['name' => $faker->name, 'surname' => $faker->lastName, 'email' => $faker->email, 'age' => rand(15, 99)]);
     }
 }
 public function run()
 {
     $faker = Faker\Factory::create();
     $users = User::all();
     foreach ($users as $user) {
         UserToken::create(['user_id' => $user->id, 'user_ip' => $faker->ipv4, 'device_token' => $faker->password, 'device_name' => $faker->colorName, 'token' => str_repeat($user->id, 6), 'last_usage' => \Carbon\Carbon::now()]);
     }
 }
Beispiel #5
0
 public function findByUserNameOrCreate($userData)
 {
     $user = User::where('provider_id', '=', $userData->id)->first();
     if (!$user) {
         $user = User::create(['provider_id' => $userData->id, 'name' => $userData->name, 'username' => $userData->nickname, 'email' => $userData->email, 'avatar' => $userData->avatar, 'status' => 1]);
     }
     $this->checkIfUserNeedsUpdating($userData, $user);
     return $user;
 }
Beispiel #6
0
 public function accountIsActive($code)
 {
     $user = User::where('activation_code', '=', $code)->first();
     $user->status = 1;
     $user->activation_code = '';
     if ($user->save()) {
         Auth::login($user);
     }
     return true;
 }
 public function changeTraining(Request $request)
 {
     $rules = array('promotion' => 'required', 'select-students' => 'required');
     $validator = \Validator::make(\Input::all(), $rules);
     if ($validator->fails()) {
         return redirect()->back()->withErrors($validator);
     }
     $t = Training::find($request->input('promotion'));
     foreach ($request->input('select-students') as $sid) {
         $s = User::find($sid);
         $s->trainings()->detach();
         $s->trainings()->save($t);
     }
     return redirect()->back();
 }
Beispiel #8
0
 public function postEdit($id = null)
 {
     if (empty($id) || !is_numeric($id)) {
         redirect();
     }
     $user = User::findOrNew($id);
     if (empty($user->id)) {
         redirect();
     }
     $confirm = $this->input->post('confirm');
     $form = $this->input->post('form');
     $errors = [];
     if (!empty($confirm) && $confirm == 'ok') {
         $validator = new \Wasp\Validator($form, $this->validation);
         if (!$validator->checkAll()) {
             $errors = $validator->getMessages();
         }
         if (array_count($errors) == 0) {
             $current_user = $this->auth->getAuthUser();
             $group_level = $this->users->getGroupLevel($form['group_id']);
             $user_data = ['birthday' => wasp_date_format($form['birthday'], 'Y-m-d')];
             if ($this->users->groupIdExists($form['group_id']) && ($group_level < $current_user->group->level || $this->auth->is_root())) {
                 if ($user->id != $this->auth->getAuthUserId()) {
                     $user_data['group_id'] = intval($form['group_id']);
                     $user_data['blocked'] = intval($form['blocked']);
                 }
             }
             if ($user->id == $current_user->id || $this->auth->isAdmin()) {
                 foreach ($form as $key => $val) {
                     if (!array_key_isset($key, $user_data)) {
                         $user_data[$key] = $val;
                     }
                 }
             }
             $this->users->update($user_data);
             redirect(['controller' => 'users', 'method' => 'edit', 'id' => $id]);
         }
     }
     $this->layout->useThemeCss('datepicker.css')->useThemeJs('bootstrap-datepicker.js', false);
     return $this->ui->assign('errors', $errors)->assign('user', $user)->assign('groups', UsersGroup::get())->fetch('users/edit');
 }
Beispiel #9
0
 /**
  * Verifica el usuario y contraseña dados. Si son correctos genera un access token y un refresh token.
  * <p>
  * Ejemplo: 
  * </p>
  * </p>
  * <p>JSON DE ENTRAA</p>
  * <p>
  * {
  *"user": "******",
  *"password": "******",
  *"imei": "XCVSDF2343"
  *}
  * </p>
  * <p>JSON DE SALIDA</p>
  * <p>
  * {
  * "error": false,
  * "msg": "OK",
  * "access_token": "OrrotWVZJXyGx42RnnBkdtXrwrk2gTrtVUuBr5dJiwPJtN3X",
  * "refresh_token": "q16d7NHS2b3M8OTgTKqbgBoRKsZahUWqk3tuTujHqjETS6dq",
  * "valid_until": "2015-07-08 15:00:00"
  * }
  * </p>
  *
  * @param Request $request
  *
  * @return Array
  *
  */
 public function login(Request $request)
 {
     $resp = array();
     $status = 200;
     $resp['error'] = true;
     $resp['msg'] = 'Ocurrió un error';
     $resp['access_token'] = null;
     $resp['refresh_token'] = null;
     $in = json_decode($request->getContent());
     $imei = $request->header('X-imei');
     if (property_exists($in, 'user') && property_exists($in, 'password')) {
         $user = User::where('login', '=', $in->user)->where('password', '=', $in->password)->first();
         if ($user) {
             $access_token = $this->generateToken();
             $refresh_token = $this->generateToken();
             $userToken = new UserToken();
             $userToken->access_token = $access_token;
             $userToken->refresh_token = $refresh_token;
             $userToken->id_user = $user->id;
             $userToken->imei = $imei;
             $userToken->save();
             $hoy = Carbon::now();
             $hoy->addDay();
             $resp['error'] = false;
             $resp['msg'] = 'OK';
             $resp['access_token'] = $access_token;
             $resp['refresh_token'] = $refresh_token;
             $resp['valid_until'] = $hoy->toDateTimeString();
         } else {
             $status = 401;
             $resp['msg'] = 'Login y/o password inválidos';
         }
     } else {
         $resp['msg'] = 'El login y/o password son obligatorios';
     }
     return new Response($resp, $status);
 }
Beispiel #10
0
 public function doLogin(LoginRequest $request)
 {
     $message = '';
     $email = $request->get('email');
     $password = $request->get('password');
     $remember = $request->get('remember');
     $check = User::where('email', '=', $email)->get();
     try {
         if (!count($check) > 0) {
             throw new Exception("Email Tidak Terdaftar");
         }
         if (!Auth::validate(['email' => $email, 'password' => $password, 'status' => 1])) {
             throw new Exception("Email atau Password Salah");
         } elseif ($remember) {
             if (Auth::attempt(['email' => $email, 'password' => $password, 'status' => 1, $remember])) {
                 if (Entrust::can(['backend'], true)) {
                     return redirect('backend/product');
                 }
                 return redirect('customer/account');
             }
         } else {
             if (Auth::attempt(['email' => $email, 'password' => $password, 'status' => 1])) {
                 if (Entrust::can(['backend'], true)) {
                     return redirect('backend/product');
                 }
                 return redirect('customer/account');
             }
         }
     } catch (Exception $e) {
         $message = $e->getMessage();
     }
     if ($request->has('page')) {
         return redirect('customer/login')->withInput()->withErrors(['message' => $message]);
     }
     return redirect('login')->withInput()->withErrors(['message' => $message]);
 }
 /**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 protected function create(array $data)
 {
     return User::create(['username' => $data['username'], 'email' => $data['email'], 'password' => $data['password']]);
 }
 protected function performAction()
 {
     $this->pagination = $this->getPaginationParams($this->request);
     $this->payload = User::filter($this->getQueryParams())->page($this->pagination)->get();
 }
Beispiel #13
0
 /**
  * Create a new user instance after a valid registration.
  *
  * @param  array  $data
  * @return User
  */
 public function create(array $data)
 {
     return User::create(['name' => $data['name'], 'email' => $data['email'], 'password' => bcrypt($data['password'])]);
 }
 /**
  * Find a user by its user id
  *
  * @param $userId
  *
  * @return USer
  */
 public function findById($userId)
 {
     return $this->user->findOrFail($userId);
 }
Beispiel #15
0
 public function anyDefault()
 {
     global $database;
     $schema = $database->connection()->getSchemaBuilder();
     if (!$schema->hasTable('user_groups')) {
         $schema->create('user_groups', function ($table) {
             $table->increments('id');
             $table->integer('parent_id')->index()->default(0);
             $table->string('name', 50)->index()->default('');
             $table->string('desctiption')->index()->default('');
             $table->smallInteger('level')->index()->default(0);
             $table->string('lng')->default('');
             $table->timestamps();
             $table->softDeletes();
         });
     }
     if (!$schema->hasTable('users')) {
         $schema->create('users', function ($table) {
             $table->bigIncrements('id');
             $table->integer('group_id')->index()->default(0);
             $table->string('password', 48)->default('')->index();
             $table->tinyInteger('blocked')->default(0)->index();
             $table->bigInteger('blocked_to')->default(0)->index();
             $table->timestamps();
             $table->softDeletes();
         });
     }
     if (!$schema->hasTable('user_contacts')) {
         $schema->create('user_contacts', function ($table) {
             $table->bigIncrements('id');
             $table->bigInteger('user_id')->index()->default(0);
             $table->tinyInteger('type')->index()->default(Contact::TYPE_EMAIL);
             $table->string('value')->index()->default('');
             $table->tinyInteger('default')->index()->default(0);
             $table->timestamps();
             $table->softDeletes();
         });
     }
     if (!$schema->hasTable('user_sessions')) {
         $schema->create('user_sessions', function ($table) {
             $table->bigIncrements('id');
             $table->bigInteger('user_id')->index()->default(0);
             $table->string('session_id', 48)->index()->default('');
             $table->string('ip_address', 12)->index()->default('');
             $table->bigInteger('stamp')->index()->default(0);
             $table->timestamps();
             $table->softDeletes();
         });
     }
     if (!$schema->hasTable('user_profiles')) {
         $schema->create('user_profiles', function ($table) {
             $table->bigIncrements('id');
             $table->bigInteger('user_id')->index()->default(0);
             $table->string('nicname', 32)->index()->default('');
             $table->string('first_name', 150)->index()->default('');
             $table->string('middle_name', 150)->index()->default('');
             $table->string('last_name', 150)->index()->default('');
             $table->enum('gender', ['MALE', 'FEMALE', 'OTHER'])->index()->default('MALE');
             $table->date('birthday')->index();
             $table->bigInteger('stamp')->index()->default(0);
             $table->timestamps();
             $table->softDeletes();
         });
     }
     /**
      * Install groups
      */
     foreach ($this->groups as $level => $name) {
         $group = new Group();
         $group->name = $name;
         $group->level = $level;
         $group->lng = snake_case($name);
         $group->save();
     }
     unset($level, $name, $group);
     /**
      * Create SuperUser
      */
     $user = new User();
     $user->group_id = 1;
     $user->password = password_crypt('toor');
     $user->save();
     $userAuth = new Contact();
     $userAuth->user_id = $user->id;
     $userAuth->type = Contact::TYPE_EMAIL;
     $userAuth->value = '*****@*****.**';
     $userAuth->default = 1;
     $userAuth->save();
     $userProfile = new Profile();
     $userProfile->user_id = $user->id;
     $userProfile->nicname = 'SuperUser';
     $userProfile->save();
     return 'Installation success!';
 }
Beispiel #16
0
 public function postShipping(ShippingRequest $request)
 {
     $input = $request->all();
     $user = User::find($input['user_id']);
     $order = Session::get('order');
     $order['user'] = $request->except('_token', 'payment_id');
     Session::put(['order' => $order]);
     if ($user->update($input)) {
         return response()->json(['success' => TRUE]);
     }
 }
Beispiel #17
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     //
     if (!Entrust::can('user-delete')) {
         return response()->json(['success' => FALSE]);
     }
     $user = User::find($id);
     if ($user->delete()) {
         return response()->json(['success' => TRUE]);
     }
 }
Beispiel #18
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function destroy($id)
 {
     User::find($id)->roles()->detach();
     User::find($id)->trainings()->detach();
     User::destroy($id);
     return \Redirect::back();
 }
 /**
  * Update a users status
  * @param User $user
  * @param int $status
  * @return User
  */
 public function updateUserStatus(User $user, $status)
 {
     $user->update(['status' => $status]);
     return $user;
 }