public function timing(Phase $phase, $id) { $data = array(); $data = splitString($id); $id = $data[0]; $statusName = $data[2]; $currentStatus = $data[3]; $timing = new Timing(); $affectedRows = $timing->whereId($id)->orderBy('id', 'desc')->first(); $datetime = currentTimestamp($currentStatus); if ($currentStatus == "start") { $newStatus = "pause"; } elseif ($currentStatus == "notStart") { $newStatus = "start"; } elseif ($currentStatus == "pause") { $newStatus = "restart"; } elseif ($currentStatus == "restart") { $newStatus = "pause"; } $timing->tracker = $datetime; $timing->status = $newStatus; $timing->type_id = $affectedRows->type_id; $timing->phase_id = $affectedRows->phase_id; $timing->project_id = $affectedRows->project_id; $timing->save(); $updatePhase = $this->phase->where('id', $affectedRows->phase_id)->update(array('updated_at' => currentTimestamp($affectedRows->phase_id))); return view('phases.show', compact('phase')); }