diff options
author | Fire Demon <firedemon@creature.cafe> | 2020-10-27 19:20:43 -0500 |
---|---|---|
committer | Fire Demon <firedemon@creature.cafe> | 2020-10-28 19:05:51 -0500 |
commit | ecaf21464226b5cecc6d100165f7d1265afdffb9 (patch) | |
tree | 2bca30f3b22dfed6cf4827c0bb37c61371eb0a7e /app | |
parent | d4eeebb57c4e21f908ad5bbae2b920c31b711dd5 (diff) |
Do not deliver deletes to servers which a user has had no contact
Diffstat (limited to 'app')
-rw-r--r-- | app/services/remove_status_service.rb | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index 4d07632d3..8025f235b 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -48,7 +48,6 @@ class RemoveStatusService < BaseService remove_from_remote_followers remove_from_remote_affected - remove_from_remote_shared @status.mentions.where(account_id: @options[:blocking]).destroy_all if @options[:blocking] @@ -106,6 +105,10 @@ class RemoveStatusService < BaseService [signed_activity_json, @account.id, inbox_url] end + ActivityPub::DeliveryWorker.push_bulk(@account.following.inboxes) do |inbox_url| + [signed_activity_json, @account.id, inbox_url] + end + relay! if relayable? end @@ -119,12 +122,6 @@ class RemoveStatusService < BaseService end end - def remove_from_remote_shared - ActivityPub::DeliveryWorker.push_bulk(Account.remote.activitypub.where.not(shared_inbox_url: '').distinct.select(:shared_inbox_url).pluck(:shared_inbox_url)) do |inbox_url| - [signed_activity_json, @account.id, inbox_url] - end - end - def signed_activity_json @signed_activity_json ||= Oj.dump(serialize_payload(@status, @status.reblog? && @status.spoiler_text.blank? ? ActivityPub::UndoAnnounceSerializer : ActivityPub::DeleteSerializer, signer: @account)) end |