diff options
author | lain <lain@soykaf.club> | 2020-05-25 15:08:43 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-05-25 15:08:43 +0200 |
commit | 6bd7070b00a8d0ac64292f4c7152b71bee5f6b69 (patch) | |
tree | 476f6595ba49b61114a4bd787938ce0cdac54ca4 /lib | |
parent | 5fef40520819bea1effab5ed4937613d8896a453 (diff) | |
download | pleroma-6bd7070b00a8d0ac64292f4c7152b71bee5f6b69.tar.gz |
Transmogrifier: Use a simpler way to get mentions.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/activity_pub/transmogrifier.ex | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index d594c64f4..8443c284c 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -1045,10 +1045,14 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do Map.put(object, "tag", tags) end + # TODO These should be added on our side on insertion, it doesn't make much + # sense to regenerate these all the time def add_mention_tags(object) do - {enabled_receivers, disabled_receivers} = Utils.get_notified_from_object(object) - potential_receivers = enabled_receivers ++ disabled_receivers - mentions = Enum.map(potential_receivers, &build_mention_tag/1) + to = object["to"] || [] + cc = object["cc"] || [] + mentioned = User.get_users_from_set(to ++ cc, local_only: false) + + mentions = Enum.map(mentioned, &build_mention_tag/1) tags = object["tag"] || [] Map.put(object, "tag", tags ++ mentions) |