diff --git a/app/Http/Controllers/ToDoController.php b/app/Http/Controllers/ToDoController.php index 719236d..94f29d2 100644 --- a/app/Http/Controllers/ToDoController.php +++ b/app/Http/Controllers/ToDoController.php @@ -59,6 +59,18 @@ class ToDoController extends Controller ->setStatusCode(200); } + public function checkedToogle(ToDoList $toDoList, ToDo $toDo) + { + $this->authorize('update', $toDoList); + + ($toDo->checked_at) ? $toDo->checked_at = NULL : $toDo->checked_at = now(); + $toDo->save(); + + return (new ToDoResource($toDo)) + ->response() + ->setStatusCode(200); + } + private function validateData() { return request()->validate([ diff --git a/app/Http/Resources/ToDo.php b/app/Http/Resources/ToDo.php index 0fbf4c0..b8f3cb6 100644 --- a/app/Http/Resources/ToDo.php +++ b/app/Http/Resources/ToDo.php @@ -22,7 +22,7 @@ class ToDo extends JsonResource 'data' => [ 'name' => $this->name, 'order' => (int) $this->order, - 'checked_at' => optional($this->checked_at)->diffForHumans(), + 'checked_at' => ($this->checked_at) ? 1 : null, 'last_updated' => $this->updated_at->diffForHumans(), ] ] diff --git a/resources/js/views/ToDoLists/ToDo.vue b/resources/js/views/ToDoLists/ToDo.vue deleted file mode 100644 index ded8bd2..0000000 --- a/resources/js/views/ToDoLists/ToDo.vue +++ /dev/null @@ -1,53 +0,0 @@ - - - - - diff --git a/resources/js/views/ToDoLists/ToDoList.vue b/resources/js/views/ToDoLists/ToDoList.vue deleted file mode 100644 index bfbd72e..0000000 --- a/resources/js/views/ToDoLists/ToDoList.vue +++ /dev/null @@ -1,95 +0,0 @@ - - - - - diff --git a/resources/js/views/ToDoLists/ToDoListIndex.vue b/resources/js/views/ToDoLists/ToDoListIndex.vue index d057b24..90deaab 100644 --- a/resources/js/views/ToDoLists/ToDoListIndex.vue +++ b/resources/js/views/ToDoLists/ToDoListIndex.vue @@ -17,11 +17,14 @@
No List Yet
- + + {{ toDoList.data.attributes.data.name }} +
@@ -29,12 +32,11 @@ + + diff --git a/routes/api.php b/routes/api.php index f248b77..2d23833 100644 --- a/routes/api.php +++ b/routes/api.php @@ -32,5 +32,6 @@ Route::middleware('auth:api')->group(function () { Route::post('/images/users/{users}', 'ImageController@users'); Route::post('/images/memos/{memo}', 'ImageController@memos'); Route::patch('/to-do-lists/{toDoList}/to-do/{toDo}/change', 'ToDoController@changeOrder'); + Route::patch('/to-do-lists/{toDoList}/to-do/{toDo}/check', 'ToDoController@checkedToogle'); });