/** * * @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); }