2019-07-30 12:10:46 +03:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class UnallowDomainService < BaseService
|
2020-07-12 23:11:49 +03:00
|
|
|
include DomainControlHelper
|
|
|
|
|
2019-07-30 12:10:46 +03:00
|
|
|
def call(domain_allow)
|
2023-08-02 20:32:48 +03:00
|
|
|
suspend_accounts!(domain_allow.domain) if limited_federation_mode?
|
2019-07-30 12:10:46 +03:00
|
|
|
|
|
|
|
domain_allow.destroy
|
|
|
|
end
|
2020-07-12 23:11:49 +03:00
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def suspend_accounts!(domain)
|
2020-07-15 22:08:19 +03:00
|
|
|
Account.where(domain: domain).in_batches.update_all(suspended_at: Time.now.utc)
|
|
|
|
AfterUnallowDomainWorker.perform_async(domain)
|
2020-07-12 23:11:49 +03:00
|
|
|
end
|
2019-07-30 12:10:46 +03:00
|
|
|
end
|