From 0b57063d451db15e30b5568bfa3e3c2d77de8a87 Mon Sep 17 00:00:00 2001 From: pg9182 <96569817+pg9182@users.noreply.github.com> Date: Sat, 15 Oct 2022 10:49:28 -0400 Subject: pkg/api/api0: Implement bad words filter option --- pkg/api/api0/api.go | 4 ++++ pkg/api/api0/server.go | 8 ++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'pkg/api/api0') diff --git a/pkg/api/api0/api.go b/pkg/api/api0/api.go index 0786463..818f6b9 100644 --- a/pkg/api/api0/api.go +++ b/pkg/api/api0/api.go @@ -43,6 +43,10 @@ type Handler struct { // usernames). If not provided, usernames will not be updated. OriginAuthMgr *origin.AuthMgr + // CleanBadWords is used to filter bad words from server names and + // descriptions. If not provided, words will not be filtered. + CleanBadWords func(s string) string + // MainMenuPromos gets the main menu promos to return for a request. MainMenuPromos func(*http.Request) MainMenuPromos diff --git a/pkg/api/api0/server.go b/pkg/api/api0/server.go index bb25790..06f4957 100644 --- a/pkg/api/api0/server.go +++ b/pkg/api/api0/server.go @@ -194,7 +194,9 @@ func (h *Handler) handleServerUpsert(w http.ResponseWriter, r *http.Request) { return } } else { - // TODO: bad word censoring + if h.CleanBadWords != nil { + v = h.CleanBadWords(v) + } if n := 256; len(v) > n { // NorthstarLauncher@v1.9.7 limits it to 63 v = v[:n] } @@ -207,7 +209,9 @@ func (h *Handler) handleServerUpsert(w http.ResponseWriter, r *http.Request) { } if v := r.URL.Query().Get("description"); v != "" { - // TODO: bad word censoring + if h.CleanBadWords != nil { + v = h.CleanBadWords(v) + } if n := 1024; len(v) > n { // NorthstarLauncher@v1.9.7 doesn't have a limit v = v[:n] } -- cgit v1.2.3