package server import ( "fmt" "log/slog" "net/http" ) func HandleSetQueueEnable(w http.ResponseWriter, r *http.Request) { err := r.ParseForm() if err != nil { http.Error(w, fmt.Sprintf("Parseing Form: %v", err), http.StatusBadRequest) return } enable := r.FormValue("enable") if enable != "true" && enable != "false" { http.Error(w, "Enable must be true or false", http.StatusBadRequest) return } worker := r.FormValue("worker") slog.Info("Got set Queue Enable", "enable", enable, "worker", worker) if worker == "all" { _, err = db.Exec(r.Context(), "UPDATE workers SET queue_enable = $1", enable) if err != nil { http.Error(w, fmt.Sprintf("Setting Worker Queue Enable: %v", err), http.StatusInternalServerError) return } } else { _, err = db.Exec(r.Context(), "UPDATE workers SET queue_enable = $1 where id = $2", enable, worker) if err != nil { http.Error(w, fmt.Sprintf("Setting Worker Queue Enable: %v", err), http.StatusInternalServerError) return } } http.Redirect(w, r, r.Header.Get("Referer"), http.StatusFound) }