mirror of
https://github.com/mastodon/mastodon
synced 2024-11-23 14:46:18 +09:00
Prevent delivery of posts to (even more) suspended followers (#33030)
This commit is contained in:
parent
2e66dd09e2
commit
21a8612aab
@ -17,8 +17,7 @@ class StatusReachFinder
|
|||||||
|
|
||||||
def reached_account_inboxes
|
def reached_account_inboxes
|
||||||
scope = Account.where(id: reached_account_ids)
|
scope = Account.where(id: reached_account_ids)
|
||||||
scope.merge!(Account.without_suspended) unless unsafe?
|
inboxes_without_suspended_for(scope)
|
||||||
scope.inboxes
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def reached_account_ids
|
def reached_account_ids
|
||||||
@ -71,13 +70,8 @@ class StatusReachFinder
|
|||||||
end
|
end
|
||||||
|
|
||||||
def followers_inboxes
|
def followers_inboxes
|
||||||
if @status.in_reply_to_local_account? && distributable?
|
scope = followers_scope
|
||||||
@status.account.followers.or(@status.thread.account.followers.not_domain_blocked_by_account(@status.account)).inboxes
|
inboxes_without_suspended_for(scope)
|
||||||
elsif @status.direct_visibility? || @status.limited_visibility?
|
|
||||||
[]
|
|
||||||
else
|
|
||||||
@status.account.followers.inboxes
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def relay_inboxes
|
def relay_inboxes
|
||||||
@ -95,4 +89,19 @@ class StatusReachFinder
|
|||||||
def unsafe?
|
def unsafe?
|
||||||
@options[:unsafe]
|
@options[:unsafe]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def followers_scope
|
||||||
|
if @status.in_reply_to_local_account? && distributable?
|
||||||
|
@status.account.followers.or(@status.thread.account.followers.not_domain_blocked_by_account(@status.account))
|
||||||
|
elsif @status.direct_visibility? || @status.limited_visibility?
|
||||||
|
Account.none
|
||||||
|
else
|
||||||
|
@status.account.followers
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def inboxes_without_suspended_for(scope)
|
||||||
|
scope.merge!(Account.without_suspended) unless unsafe?
|
||||||
|
scope.inboxes
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user