/**
  * Create a new user from given social profile and log him in.
  *
  * @param  string $profile
  * @param  string $email
  * @param  string $service
  * @return User
  */
 public function createUserFromProfile($profile, $service, $email)
 {
     $profile = (array) $profile;
     $newUser = User::create(['email' => $email]);
     //create a root folder for this user
     Folder::create(['name' => 'root', 'share_id' => str_random(15), 'user_id' => $newUser->id, 'description' => trans('app.rootAlbumDesc')]);
     $newUser->oauth()->create(['service' => $service, 'token' => $profile['id']]);
     return Auth::loginUsingId($newUser->id, true);
 }
 public function create(User $user)
 {
     $rootFolder = $user->folders->first();
     $this->createFilesForFolder('root', $user, $rootFolder);
     $images = Folder::create(['name' => 'Images', 'description' => 'Demo images folder.', 'user_id' => $user->id, 'share_id' => str_random(20), 'path' => 'root/Images']);
     $this->createFilesForFolder('Images', $user, $images);
     $text = Folder::create(['name' => 'Text', 'description' => 'Demo text folder.', 'user_id' => $user->id, 'share_id' => str_random(20), 'path' => 'root/Text']);
     $this->createFilesForFolder('text', $user, $text);
     Folder::create(['name' => 'Stuff', 'description' => 'Empty demo stuff folder.', 'user_id' => $user->id, 'share_id' => str_random(20), 'path' => 'root/Stuff']);
     Folder::create(['name' => 'Sub-Folder', 'description' => 'Demo sub-folder.', 'user_id' => $user->id, 'share_id' => str_random(20), 'folder_id' => $text->id, 'path' => 'root/Stuff/Sub-Folder']);
 }
 /**
  * Register/create a new user.
  *
  * @param Registrar $registrar
  * @return *
  */
 public function postRegister(Registrar $registrar)
 {
     //make sure that admin has enabled regisration before proceeding
     if (!App::make('Settings')->get('enableRegistration', true) && !Auth::user()->isAdmin) {
         return response(trans('app.registrationDisabled'), 403);
     }
     $validator = $registrar->validator(Input::all());
     if ($validator->fails()) {
         return response()->json($validator->errors(), 400);
     }
     $user = $registrar->create(Input::all());
     //create a root folder for this user
     Folder::create(['name' => 'root', 'share_id' => str_random(15), 'user_id' => $user->id, 'description' => trans('app.rootAlbumDesc')]);
     if (IS_DEMO && Input::has('createDemoContent')) {
         App::make('\\App\\Services\\DemoContentCreator')->create($user);
     }
     //if user is not logged in, do it now
     if (!Auth::check()) {
         Auth::login($user);
     }
     return $user;
 }
 /**
  * Store admin account and basic details in db.
  * 
  * @param  array  $input
  * @return void
  */
 public function createAdmin(array $input)
 {
     //create admin account
     $user = new User();
     $user->email = $input['email'];
     $user->password = bcrypt($input['password']);
     $user->permissions = array('admin' => 1);
     $user->save();
     //create a root folder for this user
     Folder::create(['name' => 'root', 'share_id' => str_random(15), 'user_id' => $user->id, 'description' => trans('app.rootAlbumDesc')]);
     //login user
     Auth::login($user);
     //mark as installed
     App::make('Settings')->set('installed', 1);
 }
示例#5
0
 /**
  *
  */
 public function run()
 {
     $faker = Faker::create();
     $groupIds = Group::lists('id');
     foreach (range(1, 200) as $index) {
         Folder::create(['name' => $faker->word, 'group_id' => $faker->randomElement($groupIds), 'folder_id' => null, 'sub-directory' => 0]);
     }
 }