From 1cb9ccdf151f6594f97c8f7e1246e1b358ae92d8 Mon Sep 17 00:00:00 2001 From: Jason Zimdars Date: Thu, 26 Jun 2025 17:57:30 -0500 Subject: [PATCH] Comparing params is fragile, use `id` for saved filters --- app/controllers/concerns/filter_scoped.rb | 6 +++++- app/controllers/filters_controller.rb | 2 +- app/views/events/filter/_custom_collections.html.erb | 2 +- app/views/filters/_settings.html.erb | 5 ++--- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/app/controllers/concerns/filter_scoped.rb b/app/controllers/concerns/filter_scoped.rb index ff796db27..3d5f1fc91 100644 --- a/app/controllers/concerns/filter_scoped.rb +++ b/app/controllers/concerns/filter_scoped.rb @@ -10,6 +10,10 @@ module FilterScoped def set_filter @expand_all = params[:expand_all] - @filter = Current.user.filters.from_params params.reverse_merge(**DEFAULT_PARAMS).permit(*Filter::PERMITTED_PARAMS) + if params[:filter_id].present? + @filter = Current.user.filters.find(params[:filter_id]) + else + @filter = Current.user.filters.from_params params.reverse_merge(**DEFAULT_PARAMS).permit(*Filter::PERMITTED_PARAMS) + end end end diff --git a/app/controllers/filters_controller.rb b/app/controllers/filters_controller.rb index 1d0ff6b47..cbb44963b 100644 --- a/app/controllers/filters_controller.rb +++ b/app/controllers/filters_controller.rb @@ -3,7 +3,7 @@ class FiltersController < ApplicationController def create @filter = Current.user.filters.remember filter_params - redirect_to cards_path(@filter.as_params) + redirect_to cards_path(filter_id: @filter.id) end def destroy diff --git a/app/views/events/filter/_custom_collections.html.erb b/app/views/events/filter/_custom_collections.html.erb index 9a6b793d8..5b577df75 100644 --- a/app/views/events/filter/_custom_collections.html.erb +++ b/app/views/events/filter/_custom_collections.html.erb @@ -2,7 +2,7 @@ Saved filters <% @filters.each do |filter| %>