Skip to content
Snippets Groups Projects
Commit 17e287d0 authored by Simon Lindblad's avatar Simon Lindblad
Browse files

Implement creation of lists

parent 9468c285
No related branches found
No related tags found
No related merge requests found
......@@ -92,6 +92,14 @@ func getTasks(db *sql.DB, listId int) []Task {
return res
}
func insertList(db *sql.DB, listName string) int {
var listId int
err := db.QueryRow("insert into list (name) values ($1) returning id", listName).Scan(&listId)
CheckFatal(err)
return listId
}
func insertTask(db *sql.DB, taskName string, listId int) {
_, err := db.Exec("insert into task (name, list) values ($1, $2)", taskName, listId)
// Handle non-existing list id
......@@ -117,6 +125,18 @@ func (db *Database) listHandler(w http.ResponseWriter, r *http.Request) {
tasks := getTasks(db.Db, listId)
json.NewEncoder(w).Encode(&tasks)
}
} else if r.Method == "POST" {
// Parse the request and create a new list
body, err := ioutil.ReadAll(r.Body)
CheckFatal(err)
listRequest := ListCreateRequest{}
err = json.Unmarshal(body, &listRequest)
CheckFatal(err)
listResponse := ListCreateResponse{}
listResponse.Id = insertList(db.Db, listRequest.Name)
json.NewEncoder(w).Encode(&listResponse)
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment