/** * Update the specified resource in storage. * * @param Request $request * @param int $id * @return Response */ public function update(DriveRequest $request, Drive $drive) { // Concatenate and format date + times $start = join(' ', [$request->input('formatted_start_date'), $request->input('start_time')]); $start = str_replace('/', '-', $start); $end = join(' ', [$request->input('formatted_end_date'), $request->input('end_time')]); $end = str_replace('/', '-', $end); // Parse newly created date/time strings into Carbon objects // and merge them into the form request $request->merge(['start_date' => Carbon::parse($start), 'end_date' => Carbon::parse($end)]); // Update Drive with new values $drive->fill($request->all())->save(); // Sync road types, tasks, conditions, etc. $this->syncDriveRelations($drive, $request); // Create a success flash message flash()->success('Drive updated successfully!'); return redirect('drives')->with('flash_message'); }