From 052cf199ae6aa960158807c943ddda63aef305c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesko=20Ansch=C3=BCtz?= Date: Thu, 26 Mar 2026 22:29:48 +0100 Subject: [PATCH] =?UTF-8?q?fix(manage):=20HandleReorder=20gibt=20400=20bei?= =?UTF-8?q?=20Mismatch=20zur=C3=BCck,=20slog=20f=C3=BCr=20500-Fehler?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/backend/internal/httpapi/manage/playlist.go | 9 ++++++++- server/backend/internal/httpapi/manage/ui.go | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/server/backend/internal/httpapi/manage/playlist.go b/server/backend/internal/httpapi/manage/playlist.go index b51f62d..95177f8 100644 --- a/server/backend/internal/httpapi/manage/playlist.go +++ b/server/backend/internal/httpapi/manage/playlist.go @@ -2,7 +2,9 @@ package manage import ( "encoding/json" + "errors" "fmt" + "log/slog" "net/http" "strconv" "strings" @@ -242,7 +244,12 @@ func HandleReorder(playlists *store.PlaylistStore, notifier *mqttnotifier.Notifi } if err := playlists.Reorder(r.Context(), playlistID, ids); err != nil { - http.Error(w, "db error", http.StatusInternalServerError) + if errors.Is(err, store.ErrReorderMismatch) { + http.Error(w, "item list mismatch", http.StatusBadRequest) + } else { + slog.Error("reorder failed", "err", err) + http.Error(w, "db error", http.StatusInternalServerError) + } return } diff --git a/server/backend/internal/httpapi/manage/ui.go b/server/backend/internal/httpapi/manage/ui.go index f71f451..336b094 100644 --- a/server/backend/internal/httpapi/manage/ui.go +++ b/server/backend/internal/httpapi/manage/ui.go @@ -745,6 +745,7 @@ func HandleReorderUI(playlists *store.PlaylistStore, screens *store.ScreenStore, if errors.Is(err, store.ErrReorderMismatch) { http.Error(w, "item list mismatch", http.StatusBadRequest) } else { + slog.Error("reorder failed", "err", err) http.Error(w, "db error", http.StatusInternalServerError) } return