summaryrefslogtreecommitdiff
path: root/internal/processing/status/get.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2025-03-07 15:04:34 +0100
committerLibravatar GitHub <noreply@github.com>2025-03-07 14:04:34 +0000
commitd8113c11e4d84a6d04d56b58d337c235154a535b (patch)
tree3ed983cbb8f95c9ef51a02a51a50ab89c42abd14 /internal/processing/status/get.go
parent[bugfix] Store and expose status content type (#3870) (diff)
downloadgotosocial-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/processing/status/get.go')
-rw-r--r--internal/processing/status/get.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/internal/processing/status/get.go b/internal/processing/status/get.go
index 6065c7cfe..e97d9e1b2 100644
--- a/internal/processing/status/get.go
+++ b/internal/processing/status/get.go
@@ -53,10 +53,21 @@ func (p *Processor) SourceGet(ctx context.Context, requester *gtsmodel.Account,
"target status not found",
)
}
+
+ // Try to use unparsed content
+ // warning text if available,
+ // fall back to parsed cw html.
+ var spoilerText string
+ if status.ContentWarningText != "" {
+ spoilerText = status.ContentWarningText
+ } else {
+ spoilerText = status.ContentWarning
+ }
+
return &apimodel.StatusSource{
ID: status.ID,
Text: status.Text,
- SpoilerText: status.ContentWarning,
+ SpoilerText: spoilerText,
ContentType: typeutils.ContentTypeToAPIContentType(status.ContentType),
}, nil
}