From b37847a030c792697902466274080ed095600008 Mon Sep 17 00:00:00 2001 From: keiser Date: Fri, 4 Nov 2016 18:07:11 +0100 Subject: Drucker ist ein fauler versager diff --git a/modules/lists/lists.go b/modules/lists/lists.go index 753a7be..ad3bd0e 100644 --- a/modules/lists/lists.go +++ b/modules/lists/lists.go @@ -663,6 +663,7 @@ func (m *Module) updateGrilOrder(w http.ResponseWriter, r *http.Request, p httpr func (m *Module) removeGrilFromList(w http.ResponseWriter, r *http.Request, p httprouter.Params) { el := m.g.EventLogger(r) + var oldOrder int user, err := m.g.Charakterin.GetUserFromRequest(r) if err != nil { @@ -694,7 +695,7 @@ func (m *Module) removeGrilFromList(w http.ResponseWriter, r *http.Request, p ht return } - res, err := m.g.DB.Exec(`DELETE FROM grilist.lists_grils WHERE list_id=$1 AND gril_id=$2`, listID, grilID) + res, err := m.g.DB.QueryRow(`DELETE FROM grilist.lists_grils WHERE list_id=$1 AND gril_id=$2`, listID, grilID).scan(&oldOrder) if err != nil { log.Println("error removing gril:", err) http.Error(w, "could not remove gril", 500) @@ -706,6 +707,13 @@ func (m *Module) removeGrilFromList(w http.ResponseWriter, r *http.Request, p ht http.Error(w, "gril not in list / other error", 500) return } + + res, err := m.g.DB.Exec(`UPDATE grilist.lists_gril SET "order" = "order" - 1 WHERE list_id = $1 AND "order" > $2`, listID, oldOrder) + if err != nil { + log.Println("error removing gril:", err) + http.Error(w, "could not remove gril", 500) + return + } list.Grils = list.Grils[:0] -- cgit v0.10.1