Fix completing tasks, showing completed tasks, and stable display order. Sorting broken.
This commit is contained in:
@@ -8,6 +8,7 @@ import (
|
||||
"local/todo-server/server/ajax/task"
|
||||
"net/http"
|
||||
"path"
|
||||
"sort"
|
||||
"strings"
|
||||
)
|
||||
|
||||
@@ -75,6 +76,9 @@ func (a *Ajax) storageListTasks(listID string, filters ...func(t *task.Task) boo
|
||||
tasks = append(tasks, task)
|
||||
}
|
||||
}
|
||||
sort.SliceStable(tasks, func(i, j int) bool {
|
||||
return tasks[i].Created.Before(tasks[j].Created)
|
||||
})
|
||||
return tasks, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ func (a *Ajax) loadTasks(w http.ResponseWriter, r *http.Request) error {
|
||||
if form.Get(r, "compl") == "" {
|
||||
return true
|
||||
}
|
||||
return t.Complete == (form.Get(r, "compl") != "0")
|
||||
return form.Get(r, "compl") == "1" || !t.Complete
|
||||
}
|
||||
filterTags := func(t *task.Task) bool {
|
||||
if form.Get(r, "t") == "" {
|
||||
@@ -79,12 +79,18 @@ func (a *Ajax) deleteTask(w http.ResponseWriter, r *http.Request) error {
|
||||
|
||||
func (a *Ajax) completeTask(w http.ResponseWriter, r *http.Request) error {
|
||||
listID, taskID, _ := a.Cur(r)
|
||||
task, err := a.storageGetTask(taskID)
|
||||
completedTask, err := a.storageGetTask(taskID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
task.SetComplete(form.Get(r, "compl") == "1")
|
||||
return a.storageSetTask(listID, task)
|
||||
completedTask.SetComplete(form.Get(r, "compl") == "1")
|
||||
if err := a.storageSetTask(listID, completedTask); err != nil {
|
||||
return err
|
||||
}
|
||||
return json.NewEncoder(w).Encode(map[string]interface{}{
|
||||
"total": 1,
|
||||
"list": []*task.Task{completedTask},
|
||||
})
|
||||
}
|
||||
|
||||
func (a *Ajax) editNote(w http.ResponseWriter, r *http.Request) error {
|
||||
|
||||
Reference in New Issue
Block a user