From 9397372432144b68efda7f459a945f5ee598d349 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Thu, 2 Dec 2021 20:26:23 +1100 Subject: [PATCH] Add additional functionality for tasks --- app/Repositories/TaskRepository.php | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/app/Repositories/TaskRepository.php b/app/Repositories/TaskRepository.php index 9ef63b735b6d..2717f11dc9d5 100644 --- a/app/Repositories/TaskRepository.php +++ b/app/Repositories/TaskRepository.php @@ -54,6 +54,37 @@ class TaskRepository extends BaseRepository $task->status_order = $data['status_order']; } + /*V4 override*/ + if (! empty($data['time_details'])) { + $timeLog = []; + foreach ($data['time_details'] as $detail) { + $startTime = strtotime($detail['start_datetime']); + $endTime = false; + if (! empty($detail['end_datetime'])) { + $endTime = strtotime($detail['end_datetime']); + } else { + $duration = 0; + if (! empty($detail['duration_seconds'])) { + $duration += $detail['duration_seconds']; + } + if (! empty($detail['duration_minutes'])) { + $duration += $detail['duration_minutes'] * 60; + } + if (! empty($detail['duration_hours'])) { + $duration += $detail['duration_hours'] * 60 * 60; + } + if ($duration) { + $endTime = $startTime + $duration; + } + } + $timeLog[] = [$startTime, $endTime]; + if (! $endTime) { + $data['is_running'] = true; + } + } + $data['time_log'] = json_encode($timeLog); + } + if (isset($data['time_log'])) { $time_log = json_decode($data['time_log']); } elseif ($task->time_log) {