This commit is contained in:
Magnus Åhall 2025-07-05 07:50:59 +02:00
parent a6bb845c9d
commit cfd5bfd719
9 changed files with 213 additions and 111 deletions

View file

@ -37,6 +37,7 @@ func initWebserver() (err error) {
http.HandleFunc("/nodes/{nodeID}", actionNode)
http.HandleFunc("/nodes/update/{nodeID}", actionNodeUpdate)
http.HandleFunc("/nodes/rename/{nodeID}", actionNodeRename)
http.HandleFunc("/nodes/delete/{nodeID}", actionNodeDelete)
http.HandleFunc("/nodes/create", actionNodeCreate)
http.HandleFunc("/types/{typeID}", actionType)
http.HandleFunc("/types/", actionTypesAll)
@ -163,7 +164,7 @@ func actionNodeRename(w http.ResponseWriter, r *http.Request) { // {{{
nodeID, _ = strconv.Atoi(nodeIDStr)
data, _ := io.ReadAll(r.Body)
var req struct { Name string }
var req struct{ Name string }
err := json.Unmarshal(data, &req)
err = RenameNode(nodeID, req.Name)
@ -195,7 +196,30 @@ func actionNodeCreate(w http.ResponseWriter, r *http.Request) { // {{{
return
}
err = CreateNode(req.ParentNodeID, req.TypeID, req.Name)
var nodeID int
nodeID, err = CreateNode(req.ParentNodeID, req.TypeID, req.Name)
if err != nil {
err = werr.Wrap(err)
httpError(w, err)
return
}
out := struct {
OK bool
NodeID int
}{
true,
nodeID,
}
j, _ := json.Marshal(out)
w.Write(j)
} // }}}
func actionNodeDelete(w http.ResponseWriter, r *http.Request) { // {{{
nodeID := 0
nodeIDStr := r.PathValue("nodeID")
nodeID, _ = strconv.Atoi(nodeIDStr)
err := DeleteNode(nodeID)
if err != nil {
err = werr.Wrap(err)
httpError(w, err)