From 10f51c9886123982bc9f2a95fba39dd1f24b9a05 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Sat, 9 Jun 2018 22:46:54 +0200 Subject: Fix domain hiding logic (#7765) * Send rejections to followers when user hides domain they're on * Use account domain blocks for "authorized followers" action Replace soft-blocking (block & unblock) behaviour with follow rejection * Split sync and async work of account domain blocking Do not create domain block when removing followers by domain, that is probably unexpected from the user's perspective. * Adjust confirmation message for domain block * yarn manage:translations --- app/workers/after_account_domain_block_worker.rb | 11 +++++++++++ app/workers/soft_block_domain_followers_worker.rb | 14 -------------- app/workers/soft_block_worker.rb | 17 ----------------- 3 files changed, 11 insertions(+), 31 deletions(-) create mode 100644 app/workers/after_account_domain_block_worker.rb delete mode 100644 app/workers/soft_block_domain_followers_worker.rb delete mode 100644 app/workers/soft_block_worker.rb (limited to 'app/workers') diff --git a/app/workers/after_account_domain_block_worker.rb b/app/workers/after_account_domain_block_worker.rb new file mode 100644 index 000000000..043c33311 --- /dev/null +++ b/app/workers/after_account_domain_block_worker.rb @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +class AfterAccountDomainBlockWorker + include Sidekiq::Worker + + def perform(account_id, domain) + AfterBlockDomainFromAccountService.new.call(Account.find(account_id), domain) + rescue ActiveRecord::RecordNotFound + true + end +end diff --git a/app/workers/soft_block_domain_followers_worker.rb b/app/workers/soft_block_domain_followers_worker.rb deleted file mode 100644 index 85445c7fb..000000000 --- a/app/workers/soft_block_domain_followers_worker.rb +++ /dev/null @@ -1,14 +0,0 @@ -# frozen_string_literal: true - -class SoftBlockDomainFollowersWorker - include Sidekiq::Worker - - sidekiq_options queue: 'pull' - - def perform(account_id, domain) - followers_id = Account.find(account_id).followers.where(domain: domain).pluck(:id) - SoftBlockWorker.push_bulk(followers_id) do |follower_id| - [account_id, follower_id] - end - end -end diff --git a/app/workers/soft_block_worker.rb b/app/workers/soft_block_worker.rb deleted file mode 100644 index 312d880b9..000000000 --- a/app/workers/soft_block_worker.rb +++ /dev/null @@ -1,17 +0,0 @@ -# frozen_string_literal: true - -class SoftBlockWorker - include Sidekiq::Worker - - sidekiq_options queue: 'pull' - - def perform(account_id, target_account_id) - account = Account.find(account_id) - target_account = Account.find(target_account_id) - - BlockService.new.call(account, target_account) - UnblockService.new.call(account, target_account) - rescue ActiveRecord::RecordNotFound - true - end -end -- cgit