From: ThibG Date: Sun, 12 Jul 2020 20:11:49 +0000 (+0200) Subject: Fix removing a DomainAllow rule wiping known accounts in open federation mode (#14298) X-Git-Url: https://git.xn--scling-oua.cat.family/?a=commitdiff_plain;h=ee5a4030f76c0ec4799d2249aad952665a7bda80;p=mastodon.git Fix removing a DomainAllow rule wiping known accounts in open federation mode (#14298) Fixes #14296 --- diff --git a/app/services/unallow_domain_service.rb b/app/services/unallow_domain_service.rb index bd1ad328d..870c79951 100644 --- a/app/services/unallow_domain_service.rb +++ b/app/services/unallow_domain_service.rb @@ -1,11 +1,19 @@ # frozen_string_literal: true class UnallowDomainService < BaseService + include DomainControlHelper + def call(domain_allow) - Account.where(domain: domain_allow.domain).find_each do |account| - SuspendAccountService.new.call(account, reserve_username: false) - end + suspend_accounts!(domain_allow.domain) if whitelist_mode? domain_allow.destroy end + + private + + def suspend_accounts!(domain) + Account.where(domain: domain).find_each do |account| + SuspendAccountService.new.call(account, reserve_username: false) + end + end end