aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkaniini <nenolod@gmail.com>2019-06-01 03:39:13 +0000
committerkaniini <nenolod@gmail.com>2019-06-01 03:39:13 +0000
commite706b42f519fe754af980fc758be492b24e3ccde (patch)
treed89b2658be602c5c0d81f56072b2f4673ca757d3
parent14ef35f402299d58b5d4dc9c927e6da6e00a7ddb (diff)
parentf2efe24cf8b668de160bb893d2b40a7c6151ba78 (diff)
downloadpleroma-e706b42f519fe754af980fc758be492b24e3ccde.tar.gz
Merge branch 'bugfix/visibility-indicator-litepub-dm' into 'develop'
visibility: if litepub:directMessage is asserted, always report the object as "direct" visibility See merge request pleroma/pleroma!1230
-rw-r--r--lib/pleroma/web/activity_pub/visibility.ex3
-rw-r--r--test/web/activity_pub/visibilty_test.exs4
2 files changed, 7 insertions, 0 deletions
diff --git a/lib/pleroma/web/activity_pub/visibility.ex b/lib/pleroma/web/activity_pub/visibility.ex
index 93b50ee47..8965e3253 100644
--- a/lib/pleroma/web/activity_pub/visibility.ex
+++ b/lib/pleroma/web/activity_pub/visibility.ex
@@ -66,6 +66,9 @@ defmodule Pleroma.Web.ActivityPub.Visibility do
Enum.any?(to, &String.contains?(&1, "/followers")) ->
"private"
+ object.data["directMessage"] == true ->
+ "direct"
+
length(cc) > 0 ->
"private"
diff --git a/test/web/activity_pub/visibilty_test.exs b/test/web/activity_pub/visibilty_test.exs
index e2584f635..466d980dc 100644
--- a/test/web/activity_pub/visibilty_test.exs
+++ b/test/web/activity_pub/visibilty_test.exs
@@ -117,4 +117,8 @@ defmodule Pleroma.Web.ActivityPub.VisibilityTest do
assert Visibility.get_visibility(direct) == "direct"
assert Visibility.get_visibility(unlisted) == "unlisted"
end
+
+ test "get_visibility with directMessage flag" do
+ assert Visibility.get_visibility(%{data: %{"directMessage" => true}}) == "direct"
+ end
end