/** * Create a day's sleep */ private function createDaySleep($index, $finishMinutes) { $today = Carbon::today(); $this->date = $today->subDays($index); $entry = new Timer(['start' => $this->date->hour(16)->format('Y-m-d H:i:s'), 'finish' => $this->date->hour(17)->minute($finishMinutes)->format('Y-m-d H:i:s')]); $entry->user()->associate($this->user); $entry->activity()->associate(Activity::where('name', 'sleep')->where('user_id', $this->user->id)->first()); $entry->save(); }
/** * * @param Request $request * @return Response */ public function store(Request $request) { $timer = new Timer($request->only(['start', 'finish'])); $timer->user()->associate(Auth::user()); $activity = Activity::find($request->get('activity_id')); if (!$activity) { $activity = Activity::forCurrentUser()->where('name', 'sleep')->first(); } $timer->activity()->associate($activity); $timer->save(); $timer = $this->transform($this->createItem($timer, new TimerTransformer(['date' => $this->calculateFinishDate($timer)])))['data']; return response($timer, Response::HTTP_CREATED); }