0
0
Fork 0

Change account suspensions to be reversible by default (#14726)

This commit is contained in:
Eugen Rochko 2020-09-15 14:37:58 +02:00 committed by GitHub
parent bbcbf12215
commit ed099d8bdc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
39 changed files with 526 additions and 279 deletions

View file

@ -6,9 +6,22 @@ class Scheduler::UserCleanupScheduler
sidekiq_options lock: :until_executed, retry: 0
def perform
clean_unconfirmed_accounts!
clean_suspended_accounts!
end
private
def clean_unconfirmed_accounts!
User.where('confirmed_at is NULL AND confirmation_sent_at <= ?', 2.days.ago).reorder(nil).find_in_batches do |batch|
Account.where(id: batch.map(&:account_id)).delete_all
User.where(id: batch.map(&:id)).delete_all
end
end
def clean_suspended_accounts!
AccountDeletionRequest.where('created_at <= ?', AccountDeletionRequest::DELAY_TO_DELETION.ago).reorder(nil).find_each do |deletion_request|
Admin::AccountDeletionWorker.perform_async(deletion_request.account_id)
end
end
end