From 0b064e89774e1ffcba59ce71a7fb78feca0d3b76 Mon Sep 17 00:00:00 2001 From: "Alexander \"Arav\" Andreev" Date: Sun, 28 Aug 2022 23:32:16 +0400 Subject: [PATCH] Added a `remove` URL query parameter for IsSolved() handler. Calls a Remove() method of a DB. --- internal/handlers/handlers.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/internal/handlers/handlers.go b/internal/handlers/handlers.go index 2428788..bf57c6b 100644 --- a/internal/handlers/handlers.go +++ b/internal/handlers/handlers.go @@ -60,6 +60,15 @@ func (h *CaptchaHandlers) Solve(w http.ResponseWriter, r *http.Request) { func (h *CaptchaHandlers) IsSolved(w http.ResponseWriter, r *http.Request) { captchaID := pcaptcha.ID(server.GetURLParam(r, "captcha")) + isJustRemove := r.URL.Query().Has("remove") + + if isJustRemove { + err := captcha.Remove(captchaID) + if err != nil { + w.WriteHeader(http.StatusNotFound) + } + return + } solved, err := captcha.IsSolved(captchaID) if err != nil {