diff options
author | Mark Felder <feld@feld.me> | 2024-01-30 10:41:52 -0500 |
---|---|---|
committer | Mark Felder <feld@feld.me> | 2024-03-19 12:11:30 -0400 |
commit | c25fda34e7560d0d8eb5fdbfb444b641c4c4bf53 (patch) | |
tree | 156047be5506acf405b99ca9352aae9d3bcacf0d | |
parent | 291d531e4cbdb5b63edb5b43914d82dafe356907 (diff) | |
download | pleroma-c25fda34e7560d0d8eb5fdbfb444b641c4c4bf53.tar.gz pleroma-c25fda34e7560d0d8eb5fdbfb444b641c4c4bf53.zip |
Skip generating notifications for internal users
-rw-r--r-- | lib/pleroma/notification.ex | 7 | ||||
-rw-r--r-- | lib/pleroma/web/activity_pub/side_effects.ex | 11 |
2 files changed, 9 insertions, 9 deletions
diff --git a/lib/pleroma/notification.ex b/lib/pleroma/notification.ex index 654c9c98d..a80279fa6 100644 --- a/lib/pleroma/notification.ex +++ b/lib/pleroma/notification.ex @@ -630,6 +630,7 @@ defmodule Pleroma.Notification do def skip?(%Activity{} = activity, %User{} = user, opts) do [ :self, + :internal, :invisible, :block_from_strangers, :recently_followed, @@ -649,6 +650,12 @@ defmodule Pleroma.Notification do end end + def skip?(:internal, %Activity{} = activity, _user, _opts) do + actor = activity.data["actor"] + user = User.get_cached_by_ap_id(actor) + User.internal?(user) + end + def skip?(:invisible, %Activity{} = activity, _user, _opts) do actor = activity.data["actor"] user = User.get_cached_by_ap_id(actor) diff --git a/lib/pleroma/web/activity_pub/side_effects.ex b/lib/pleroma/web/activity_pub/side_effects.ex index 982927e16..7ae16eb57 100644 --- a/lib/pleroma/web/activity_pub/side_effects.ex +++ b/lib/pleroma/web/activity_pub/side_effects.ex @@ -261,16 +261,9 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do Utils.add_announce_to_object(object, announced_object) - notifications = - if !User.is_internal_user?(user) do - {:ok, notifications} = Notification.create_notifications(object) - - ap_streamer().stream_out(object) + {:ok, notifications} = Notification.create_notifications(object) - notifications - else - [] - end + if !User.internal?(user), do: ap_streamer().stream_out(object) meta = meta |