diff options
-rw-r--r-- | app/services/after_block_service.rb | 4 | ||||
-rw-r--r-- | app/services/mute_service.rb | 2 | ||||
-rw-r--r-- | app/workers/block_worker.rb | 5 |
3 files changed, 7 insertions, 4 deletions
diff --git a/app/services/after_block_service.rb b/app/services/after_block_service.rb index 3ee7e2e56..36f891988 100644 --- a/app/services/after_block_service.rb +++ b/app/services/after_block_service.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class AfterBlockService < BaseService - def call(account, target_account) + def call(account, target_account, defederate: true) @account = account @target_account = target_account @@ -9,6 +9,8 @@ class AfterBlockService < BaseService clear_notifications! clear_conversations! + return unless defederate + defederate_interactions! unlink_interactions! end diff --git a/app/services/mute_service.rb b/app/services/mute_service.rb index 67df92f5c..5e7e1d292 100644 --- a/app/services/mute_service.rb +++ b/app/services/mute_service.rb @@ -7,7 +7,7 @@ class MuteService < BaseService mute = account.mute!(target_account, notifications: notifications, timelines_only: timelines_only, duration: duration) if mute.hide_notifications? - BlockWorker.perform_async(account.id, target_account.id) + BlockWorker.perform_async(account.id, target_account.id, defederate: false) else MuteWorker.perform_async(account.id, target_account.id) end diff --git a/app/workers/block_worker.rb b/app/workers/block_worker.rb index 25f5dd808..89ba11b55 100644 --- a/app/workers/block_worker.rb +++ b/app/workers/block_worker.rb @@ -3,10 +3,11 @@ class BlockWorker include Sidekiq::Worker - def perform(account_id, target_account_id) + def perform(account_id, target_account_id, defederate: true) AfterBlockService.new.call( Account.find(account_id), - Account.find(target_account_id) + Account.find(target_account_id), + defederate: defederate ) end end |