예제 #1
0
        $seeder = new LOFaker();
        $n = 4;
        for ($i = 0; $i < $n; $i++) {
            $seeder->createFakeUser();
        }
    }
    if (Project\Project::all()->count() < 2) {
        $project_names = ["Bravo", "Tinker", "Pando", "Denso", "Rabbit"];
        foreach ($project_names as $name) {
            $prj = new Project\Project(['title' => $name, 'user_id' => User::getRandomID()]);
            $prj->save();
        }
    }
    $task_titles = ["Draw me a picture", "Proof-read a email", "Using the espresso machine", "Render a building", "Take a picture", "Use the 3D printer", "Setup a wordpress site", "Make a ios prototype", "Finding a place to eat", "Move a couch", "Chop veggies", "Talk about life..."];
    $n = 10;
    $tasks = [];
    $faker = Faker\Factory::create();
    $durs = ['a min', 'couple of hours', 'a day', 'few mins', "10 minutes"];
    for ($i = 0; $i < $n; $i++) {
        $data = ['title' => array_random_item($task_titles), 'creator_id' => User::getRandomID(), 'claimed_id' => rand() % 10 > 5 ? User::getRandomID() : null, 'project_id' => Project\Project::getRandomID(), 'duration' => $durs[array_rand($durs)]];
        $task = new Task($data);
        $task->save();
        array_push($tasks, $task);
    }
    return $tasks;
});
// ------------------------------------------------------------------------
Route::get('seeder/users', function () {
    $seeder = new LOFaker();
    return $seeder->createFakeUser();
});
예제 #2
0
 public function store($input)
 {
     $validator = Validator::make($input, Task::$rules);
     if ($validator->fails()) {
         return $this->listener ? $this->listener->errorResponse($validator->errors()->all()) : $validator->errors()->all();
     }
     $creator_id = isset($input['creator_id']) ? $input['creator_id'] : Auth::id();
     $claimed_id = isset($input['claimed_id']) ? $input['claimed_id'] : NULL;
     $project = Project::where('title', '=', $input['project'])->first();
     // if null we need to create the new project
     if ($project == NULL) {
         $project = new Project(['title' => $input['project'], 'creator_id' => $creator_id]);
         $project->save();
     }
     // does_not_expire
     $does_not_expire = false;
     if (Input::has('does_not_expire')) {
         $does_not_expire = bool_val($input['does_not_expire']);
     }
     $task_date = NULL;
     if (Input::has('task_date')) {
         $task_date = Carbon::createFromFormat("m/d/Y", Input::get('task_date'))->startOfDay();
     }
     $data = ['title' => $input['title'], 'duration' => $input['duration'], 'claimed_id' => $claimed_id, 'project_id' => $project->id, 'creator_id' => $creator_id, 'details' => isset($input['details']) ? $input['details'] : NULL, 'task_date' => $does_not_expire ? NULL : $task_date, 'does_not_expire' => $does_not_expire];
     $task = new Task($data);
     if (isset($input['created_at'])) {
         $task->created_at = $task->updated_at = $input['created_at'];
     }
     $task->save();
     $view = NULL;
     // fire a new notification to the system
     Event::fire(Notification::NOTIFICATION_NEW_TASK, array(['object' => $task, 'name' => Notification::NOTIFICATION_NEW_TASK]));
     if (Input::has('view') && Input::get('view') == true) {
         $view = View::make('site.tasks.card', array('task' => $task, 'claimed' => false))->render();
     }
     $id = $task->id;
     $task = Task::where('id', '=', $id)->with('Creator')->first();
     return $this->listener ? $this->listener->statusResponse(['notice' => 'Task Created. Help is on the way!', 'task' => $task, 'view' => $view]) : $task;
 }