summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2018-02-19 10:39:03 +0100
committerlain <lain@soykaf.club>2018-02-19 10:39:03 +0100
commit6b6ab592ab18f8db68431e74a4ec4c785d394756 (patch)
treedf0218ace967d86347f741592ab95a980978729f /lib
parent6b32b9e3466016f457fd257e7cc18d85fa075a93 (diff)
downloadpleroma-6b6ab592ab18f8db68431e74a4ec4c785d394756.tar.gz
pleroma-6b6ab592ab18f8db68431e74a4ec4c785d394756.zip
AP: Fix incoming conversations.
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/activity_pub/transmogrifier.ex9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex
index 076bd2ea8..075250aa5 100644
--- a/lib/pleroma/web/activity_pub/transmogrifier.ex
+++ b/lib/pleroma/web/activity_pub/transmogrifier.ex
@@ -14,6 +14,12 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
object
|> Map.put("actor", object["attributedTo"])
|> fix_attachments
+ |> fix_context
+ end
+
+ def fix_context(object) do
+ object
+ |> Map.put("context", object["conversation"])
end
def fix_attachments(object) do
@@ -130,7 +136,8 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do
end
def add_mention_tags(object) do
- mentions = object["to"]
+ recipients = object["to"] ++ (object["cc"] || [])
+ mentions = recipients
|> Enum.map(fn (ap_id) -> User.get_cached_by_ap_id(ap_id) end)
|> Enum.filter(&(&1))
|> Enum.map(fn(user) -> %{"type" => "Mention", "href" => user.ap_id, "name" => "@#{user.nickname}"} end)