From 9fdc8246f289a25823cc7512078de14dce41d5f6 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Tue, 7 Apr 2026 05:59:36 -0400 Subject: [PATCH] Use consistent style in `*Filter` classes to skip pagination (#38559) --- app/models/account_filter.rb | 4 +++- app/models/admin/action_log_filter.rb | 4 +++- app/models/admin/tag_filter.rb | 4 +++- app/models/announcement_filter.rb | 4 +++- app/models/custom_emoji_filter.rb | 4 +++- app/models/trends/preview_card_provider_filter.rb | 4 +++- 6 files changed, 18 insertions(+), 6 deletions(-) diff --git a/app/models/account_filter.rb b/app/models/account_filter.rb index f5e9fc7db9..5487363be5 100644 --- a/app/models/account_filter.rb +++ b/app/models/account_filter.rb @@ -14,6 +14,8 @@ class AccountFilter order ).freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -24,7 +26,7 @@ class AccountFilter scope = Account.includes(:account_stat, user: [:ips, :invite_request]).without_instance_actor relevant_params.each do |key, value| - next if key.to_s == 'page' + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key, value)) if value.present? end diff --git a/app/models/admin/action_log_filter.rb b/app/models/admin/action_log_filter.rb index a5bdd97420..b912865cc8 100644 --- a/app/models/admin/action_log_filter.rb +++ b/app/models/admin/action_log_filter.rb @@ -82,6 +82,8 @@ class Admin::ActionLogFilter destroy_username_block: { target_type: 'UsernameBlock', action: 'destroy' }.freeze, }.freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -92,7 +94,7 @@ class Admin::ActionLogFilter scope = latest_action_logs.includes(:target, :account) params.each do |key, value| - next if key.to_s == 'page' + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key.to_s, value.to_s.strip)) if value.present? end diff --git a/app/models/admin/tag_filter.rb b/app/models/admin/tag_filter.rb index a35c77bcad..baddfc541a 100644 --- a/app/models/admin/tag_filter.rb +++ b/app/models/admin/tag_filter.rb @@ -7,6 +7,8 @@ class Admin::TagFilter order ).freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -17,7 +19,7 @@ class Admin::TagFilter scope = Tag.all params.each do |key, value| - next if key == :page + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key, value)) if value.present? end diff --git a/app/models/announcement_filter.rb b/app/models/announcement_filter.rb index 85c3b1d2ce..43eb0e96d9 100644 --- a/app/models/announcement_filter.rb +++ b/app/models/announcement_filter.rb @@ -6,6 +6,8 @@ class AnnouncementFilter unpublished ).freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -16,7 +18,7 @@ class AnnouncementFilter scope = Announcement.unscoped params.each do |key, value| - next if key.to_s == 'page' + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key, value.to_s.strip)) if value.present? end diff --git a/app/models/custom_emoji_filter.rb b/app/models/custom_emoji_filter.rb index 070637fea0..59ab010875 100644 --- a/app/models/custom_emoji_filter.rb +++ b/app/models/custom_emoji_filter.rb @@ -8,6 +8,8 @@ class CustomEmojiFilter shortcode ).freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -18,7 +20,7 @@ class CustomEmojiFilter scope = CustomEmoji.alphabetic params.each do |key, value| - next if key.to_s == 'page' + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key, value)) if value.present? end diff --git a/app/models/trends/preview_card_provider_filter.rb b/app/models/trends/preview_card_provider_filter.rb index 33f4e97912..69205908bf 100644 --- a/app/models/trends/preview_card_provider_filter.rb +++ b/app/models/trends/preview_card_provider_filter.rb @@ -5,6 +5,8 @@ class Trends::PreviewCardProviderFilter status ).freeze + IGNORED_PARAMS = %w(page).freeze + attr_reader :params def initialize(params) @@ -15,7 +17,7 @@ class Trends::PreviewCardProviderFilter scope = PreviewCardProvider.unscoped params.each do |key, value| - next if key.to_s == 'page' + next if IGNORED_PARAMS.include?(key.to_s) scope.merge!(scope_for(key, value.to_s.strip)) if value.present? end