summaryrefslogtreecommitdiff
path: root/internal/typeutils/astointernal.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/typeutils/astointernal.go')
-rw-r--r--internal/typeutils/astointernal.go15
1 files changed, 9 insertions, 6 deletions
diff --git a/internal/typeutils/astointernal.go b/internal/typeutils/astointernal.go
index 707f51629..c7908ad24 100644
--- a/internal/typeutils/astointernal.go
+++ b/internal/typeutils/astointernal.go
@@ -244,9 +244,15 @@ func (c *Converter) ASStatusToStatus(ctx context.Context, statusable ap.Statusab
}
// status.Content
+ // status.Language
//
- // The (html-formatted) content of this status.
- status.Content = ap.ExtractContent(statusable)
+ // Many implementations set both content
+ // and contentMap; we can use these to
+ // infer the language of the status.
+ status.Content, status.Language = ContentToContentLanguage(
+ ctx,
+ ap.ExtractContent(statusable),
+ )
// status.Attachments
//
@@ -396,9 +402,6 @@ func (c *Converter) ASStatusToStatus(ctx context.Context, statusable ap.Statusab
return &s
}()
- // language
- // TODO: we might be able to extract this from the contentMap field
-
// ActivityStreamsType
status.ActivityStreamsType = statusable.GetTypeName()
@@ -707,7 +710,7 @@ func (c *Converter) ASFlagToReport(ctx context.Context, flaggable ap.Flaggable)
// For Mastodon, this will just be a string, or nothing.
// In Misskey's case, it may also contain the URLs of
// one or more reported statuses, so extract these too.
- content := ap.ExtractContent(flaggable)
+ content := ap.ExtractContent(flaggable).Content
statusURIs := []*url.URL{}
inlineURLs := misskeyReportInlineURLs(content)
statusURIs = append(statusURIs, inlineURLs...)