From 14f6ce2885f7999f2fcbbdda6241a035271076d4 Mon Sep 17 00:00:00 2001 From: ThibG Date: Tue, 14 May 2019 19:05:02 +0200 Subject: Record account suspend/silence time and keep track of domain blocks (#10660) * Record account suspend/silence time and keep track of domain blocks * Also unblock users who were suspended/silenced before dates were recorded * Add tests * Keep track of suspending date for users suspended through the CLI * Show accurate number of accounts that would be affected by unsuspending an instance * Change migration to set silenced_at and suspended_at * Revert "Also unblock users who were suspended/silenced before dates were recorded" This reverts commit a015c65d2d1e28c7b7cfab8b3f8cd5fb48b8b71c. * Switch from using suspended and silenced to suspended_at and silenced_at * Add post-deployment migration script to remove `suspended` and `silenced` columns * Use Account#silence! and Account#suspend! instead of updating the underlying property * Add silenced_at and suspended_at migration to post-migration * Change account fabricator to translate suspended and silenced attributes * Minor fixes * Make unblocking domains always retroactive --- app/services/block_domain_service.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'app/services/block_domain_service.rb') diff --git a/app/services/block_domain_service.rb b/app/services/block_domain_service.rb index a1fe93665..497f0394b 100644 --- a/app/services/block_domain_service.rb +++ b/app/services/block_domain_service.rb @@ -29,7 +29,7 @@ class BlockDomainService < BaseService end def silence_accounts! - blocked_domain_accounts.in_batches.update_all(silenced: true) + blocked_domain_accounts.without_silenced.in_batches.update_all(silenced_at: @domain_block.created_at) end def clear_media! @@ -43,9 +43,9 @@ class BlockDomainService < BaseService end def suspend_accounts! - blocked_domain_accounts.where(suspended: false).reorder(nil).find_each do |account| + blocked_domain_accounts.without_suspended.reorder(nil).find_each do |account| UnsubscribeService.new.call(account) if account.subscribed? - SuspendAccountService.new.call(account) + SuspendAccountService.new.call(account, suspended_at: @domain_block.created_at) end end -- cgit