summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/pleroma/web/mastodon_api/views/status_view.ex2
-rw-r--r--lib/pleroma/web/twitter_api/representers/activity_representer.ex4
-rw-r--r--test/fixtures/mastodon-post-activity.json2
-rw-r--r--test/web/activity_pub/transmogrifier_test.exs1
4 files changed, 6 insertions, 3 deletions
diff --git a/lib/pleroma/web/mastodon_api/views/status_view.ex b/lib/pleroma/web/mastodon_api/views/status_view.ex
index e205a420d..d859fc851 100644
--- a/lib/pleroma/web/mastodon_api/views/status_view.ex
+++ b/lib/pleroma/web/mastodon_api/views/status_view.ex
@@ -58,7 +58,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
announcement_count = object["announcement_count"] || 0
tags = object["tag"] || []
- sensitive = Enum.member?(tags, "nsfw")
+ sensitive = object["sensitive"] || Enum.member?(tags, "nsfw")
mentions = activity.data["to"]
|> Enum.map(fn (ap_id) -> User.get_cached_by_ap_id(ap_id) end)
diff --git a/lib/pleroma/web/twitter_api/representers/activity_representer.ex b/lib/pleroma/web/twitter_api/representers/activity_representer.ex
index 1f11bc9ac..f9f9bd7b4 100644
--- a/lib/pleroma/web/twitter_api/representers/activity_representer.ex
+++ b/lib/pleroma/web/twitter_api/representers/activity_representer.ex
@@ -133,7 +133,9 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenter do
conversation_id = conversation_id(activity)
tags = activity.data["object"]["tag"] || []
- possibly_sensitive = Enum.member?(tags, "nsfw")
+ possibly_sensitive = activity.data["object"]["sensitive"] || Enum.member?(tags, "nsfw")
+
+ tags = if possibly_sensitive, do: ["nsfw" | tags], else: tags
summary = activity.data["object"]["summary"]
content = if !!summary and summary != "" do
diff --git a/test/fixtures/mastodon-post-activity.json b/test/fixtures/mastodon-post-activity.json
index 448310b0b..693e0ce39 100644
--- a/test/fixtures/mastodon-post-activity.json
+++ b/test/fixtures/mastodon-post-activity.json
@@ -36,7 +36,7 @@
"inReplyTo": null,
"inReplyToAtomUri": null,
"published": "2018-02-12T14:08:20Z",
- "sensitive": false,
+ "sensitive": true,
"summary": "cw",
"tag": [
{
diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs
index 6271e200e..08f8e8206 100644
--- a/test/web/activity_pub/transmogrifier_test.exs
+++ b/test/web/activity_pub/transmogrifier_test.exs
@@ -33,6 +33,7 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
]
assert object["actor"] == "http://mastodon.example.org/users/admin"
assert object["attributedTo"] == "http://mastodon.example.org/users/admin"
+ assert object["sensitive"] == true
end
test "it works for incoming follow requests" do