From c1f97240230ada378d77eeb8db726e0d936169c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adri=C3=A1n=20Oliva?= <adrian.oliva@cimat.mx>
Date: Sat, 27 May 2023 15:48:23 -0600
Subject: Can now set a to do as done or undone.

---
 src/ToDo-UI/ListToDo.jsx | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

(limited to 'src/ToDo-UI/ListToDo.jsx')

diff --git a/src/ToDo-UI/ListToDo.jsx b/src/ToDo-UI/ListToDo.jsx
index 74c36de..c777f8f 100644
--- a/src/ToDo-UI/ListToDo.jsx
+++ b/src/ToDo-UI/ListToDo.jsx
@@ -11,7 +11,12 @@ import {
     select_current_sorting,
 } from "../features/todo/reducer";
 
-import { edit_todo_function, remove_todo_function } from "../api/axios_methods";
+import {
+    edit_todo_function,
+    remove_todo_function,
+    set_done_function,
+    set_undone_function,
+} from "../api/axios_methods";
 
 function sort_table_header(prefix, current_sorting) {
     if (prefix.toLowerCase().startsWith(current_sorting.substr(0, 3))) {
@@ -56,6 +61,9 @@ function list_of_todos(edit_button, delete_button) {
         dispatch(refresh_filtered_todos());
     }
 
+    const set_done_api = set_done_function();
+    const set_undone_api = set_undone_function();
+
     // Table contents
     var table_head = (
         <thead>
@@ -90,13 +98,16 @@ function list_of_todos(edit_button, delete_button) {
                                 checked={item.done}
                                 id={"list-todo-done-" + item.id}
                                 onChange={(e) => {
+                                    e.target.checked
+                                        ? set_done_api({ id: item.id })
+                                        : set_undone_api({ id: item.id });
                                     dispatch(
                                         change_done({
                                             id: item.id,
                                             done: e.target.checked,
                                         })
-                                    ),
-                                        dispatch(refresh_filtered_todos());
+                                    );
+                                    dispatch(refresh_filtered_todos());
                                 }}
                             ></input>
                         </div>
-- 
cgit v1.2.3

