From cbd4e3202210626ab0b1c46e0b0cd99bcb285eca Mon Sep 17 00:00:00 2001 From: bel Date: Sun, 30 Nov 2025 08:44:27 -0700 Subject: [PATCH] DELETE /v1/feeds/abc updates all fields to "" --- src/cmd/server/handler/feeds.go | 11 +++++++++++ src/feeds/db.go | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/src/cmd/server/handler/feeds.go b/src/cmd/server/handler/feeds.go index 7d203ed..592f147 100644 --- a/src/cmd/server/handler/feeds.go +++ b/src/cmd/server/handler/feeds.go @@ -10,6 +10,13 @@ import ( func (h Handler) feeds(w http.ResponseWriter, r *http.Request) error { switch r.Method { + case http.MethodDelete: + if err := r.ParseForm(); err != nil { + return err + } + if err := h.feedsDelete(r.Context(), r.URL.Query().Get("id")); err != nil { + return err + } case http.MethodPost, http.MethodPut: if err := r.ParseForm(); err != nil { return err @@ -29,6 +36,10 @@ func (h Handler) feeds(w http.ResponseWriter, r *http.Request) error { return nil } +func (h Handler) feedsDelete(ctx context.Context, id string) error { + return feeds.Delete(ctx, id) +} + func (h Handler) feedsUpsert(ctx context.Context, id string, form url.Values) error { var req feeds.Version for k, v := range map[string]*string{ diff --git a/src/feeds/db.go b/src/feeds/db.go index d38bb95..4a3af20 100644 --- a/src/feeds/db.go +++ b/src/feeds/db.go @@ -84,6 +84,10 @@ func ForEach(ctx context.Context, cb func(Feed) error) error { return nil } +func Delete(ctx context.Context, id string) error { + return Update(ctx, id, "", "", "", "", "", "") +} + func Get(ctx context.Context, id string) (Feed, error) { if err := initDB(ctx); err != nil { return Feed{}, err