diff options
Diffstat (limited to 'app/models/instance_filter.rb')
-rw-r--r-- | app/models/instance_filter.rb | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/app/models/instance_filter.rb b/app/models/instance_filter.rb index 9e533c4aa..e7e5166a1 100644 --- a/app/models/instance_filter.rb +++ b/app/models/instance_filter.rb @@ -4,8 +4,7 @@ class InstanceFilter KEYS = %i( limited by_domain - warning - unavailable + availability ).freeze attr_reader :params @@ -34,12 +33,21 @@ class InstanceFilter Instance.joins(:domain_allow).reorder(Arel.sql('domain_allows.id desc')) when 'by_domain' Instance.matches_domain(value) - when 'warning' + when 'availability' + availability_scope(value) + else + raise "Unknown filter: #{key}" + end + end + + def availability_scope(value) + case value + when 'failing' Instance.where(domain: DeliveryFailureTracker.warning_domains) when 'unavailable' Instance.joins(:unavailable_domain) else - raise "Unknown filter: #{key}" + raise "Unknown availability: #{value}" end end end |