# frozen_string_literal: true module NgRuleHelper def check_invalid_status_for_ng_rule!(account, **options) (check_for_ng_rule!(account, **options) { |rule| !rule.check_status_or_record! }).none? end def check_invalid_reaction_for_ng_rule!(account, **options) (check_for_ng_rule!(account, **options) { |rule| !rule.check_reaction_or_record! }).none? end private def check_for_ng_rule!(account, **options, &block) NgRule.cached_rules .map { |raw_rule| Admin::NgRule.new(raw_rule, account, **options) } .filter(&block) end def do_account_action_for_rule!(account, action) case action when :silence account.silence! when :suspend account.suspend! end end end