2019-07-30 18:10:46 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
class UnallowDomainService < BaseService
|
2020-07-13 05:11:49 +09:00
|
|
|
include DomainControlHelper
|
|
|
|
|
2019-07-30 18:10:46 +09:00
|
|
|
def call(domain_allow)
|
2023-08-03 02:32:48 +09:00
|
|
|
suspend_accounts!(domain_allow.domain) if limited_federation_mode?
|
2019-07-30 18:10:46 +09:00
|
|
|
|
|
|
|
domain_allow.destroy
|
|
|
|
end
|
2020-07-13 05:11:49 +09:00
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def suspend_accounts!(domain)
|
2024-11-08 19:00:15 +09:00
|
|
|
Account.where(domain: domain).in_batches.touch_all(:suspended_at)
|
2020-07-16 04:08:19 +09:00
|
|
|
AfterUnallowDomainWorker.perform_async(domain)
|
2020-07-13 05:11:49 +09:00
|
|
|
end
|
2019-07-30 18:10:46 +09:00
|
|
|
end
|