Poll notification: notify for polls even when block_from_strangers is set

This commit is contained in:
Alex Gleason 2021-07-18 10:48:37 -05:00
parent 0114754db2
commit cbd1a10c16
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7

View file

@ -631,11 +631,17 @@ defmodule Pleroma.Notification do
:block_from_strangers, :block_from_strangers,
%Activity{} = activity, %Activity{} = activity,
%User{notification_settings: %{block_from_strangers: true}} = user, %User{notification_settings: %{block_from_strangers: true}} = user,
_opts opts
) do ) do
actor = activity.data["actor"] actor = activity.data["actor"]
follower = User.get_cached_by_ap_id(actor) follower = User.get_cached_by_ap_id(actor)
!User.following?(follower, user)
cond do
opts[:type] == "poll" -> false
user.ap_id == actor -> false
!User.following?(follower, user) -> true
true -> false
end
end end
# To do: consider defining recency in hours and checking FollowingRelationship with a single SQL # To do: consider defining recency in hours and checking FollowingRelationship with a single SQL