diff options
| author | 2025-03-07 15:04:34 +0100 | |
|---|---|---|
| committer | 2025-03-07 14:04:34 +0000 | |
| commit | d8113c11e4d84a6d04d56b58d337c235154a535b (patch) | |
| tree | 3ed983cbb8f95c9ef51a02a51a50ab89c42abd14 /internal/text/sanitize.go | |
| parent | [bugfix] Store and expose status content type (#3870) (diff) | |
| download | gotosocial-d8113c11e4d84a6d04d56b58d337c235154a535b.tar.xz | |
[feature] Parse content warning to HTML, serialize via client API as plaintext (#3876)
* [feature] Parse content warning as HTML, serialize via API to plaintext
* tidy up some cruft
* whoops
* oops
* i'm da joker baybee
* clemency muy lorde
* rename some of the text functions for clarity
* jiggle the opts
* fiddle de deee
* hopefully the last test fix i ever have to do in my beautiful life
Diffstat (limited to 'internal/text/sanitize.go')
| -rw-r--r-- | internal/text/sanitize.go | 31 |
1 files changed, 5 insertions, 26 deletions
diff --git a/internal/text/sanitize.go b/internal/text/sanitize.go index 81c436264..29e1df1d8 100644 --- a/internal/text/sanitize.go +++ b/internal/text/sanitize.go @@ -18,9 +18,7 @@ package text import ( - "html" "regexp" - "strings" "github.com/microcosm-cc/bluemonday" ) @@ -163,29 +161,10 @@ var regular *bluemonday.Policy = func() *bluemonday.Policy { // Source: https://github.com/microcosm-cc/bluemonday#usage var strict *bluemonday.Policy = bluemonday.StrictPolicy() -// removeHTML strictly removes *all* recognized -// HTML elements from the given string. -func removeHTML(in string) string { - return strict.Sanitize(in) -} - -// SanitizeToHTML sanitizes only risky html elements +// SanitizeHTML sanitizes only risky html elements // from the given string, allowing safe ones through. -func SanitizeToHTML(in string) string { - return regular.Sanitize(in) -} - -// SanitizeToPlaintext runs text through basic sanitization. -// This removes any html elements that were in the string, -// and returns clean plaintext. -func SanitizeToPlaintext(in string) string { - // Unescape first to catch any tricky critters. - content := html.UnescapeString(in) - - // Remove all detected HTML. - content = removeHTML(content) - - // Unescape again to return plaintext. - content = html.UnescapeString(content) - return strings.TrimSpace(content) +// +// It returns an HTML string. +func SanitizeHTML(html string) string { + return regular.Sanitize(html) } |
