Browse Source

feat: actually clear filters

pull/1768/head
natdeanlewissoftwire 3 years ago
parent
commit
0d4fee9991
  1. 13
      app/controllers/sessions_controller.rb
  2. 6
      app/helpers/filters_helper.rb
  3. 2
      config/routes.rb

13
app/controllers/sessions_controller.rb

@ -0,0 +1,13 @@
class SessionsController < ApplicationController
def clear_filters
session[session_name_for(params[:filter_type])] = "{}"
redirect_to send("#{params[:filter_type]}_path")
end
private
def session_name_for(filter_type)
"#{filter_type}_filters"
end
end

6
app/helpers/filters_helper.rb

@ -49,16 +49,14 @@ module FiltersHelper
def filters_applied_text(filter_type)
applied_filters = JSON.parse(session[session_name_for(filter_type)])
applied_filters_count = filters_count(applied_filters)
applied_filters_count.zero? ? "No filters applied" : "#{pluralize(88, 'filter')} applied"
applied_filters_count.zero? ? "No filters applied" : "#{pluralize(applied_filters_count, 'filter')} applied"
end
def reset_filters_link(filter_type)
applied_filters = JSON.parse(session[session_name_for(filter_type)])
applied_filters_count = filters_count(applied_filters)
if applied_filters_count.positive?
#clear filters
govuk_link_to "Clear", request.path
govuk_link_to "Clear", clear_filters_path(filter_type:)
end
end

2
config/routes.rb

@ -54,6 +54,8 @@ Rails.application.routes.draw do
get "/download-22-23-sales-bulk-upload-template", to: "start#download_22_23_sales_bulk_upload_template"
get "/download-22-23-sales-bulk-upload-specification", to: "start#download_22_23_sales_bulk_upload_specification"
get "clear_filters", to: "sessions#clear_filters"
resource :account, only: %i[show edit], controller: "users" do
get "edit/password", to: "users#edit_password"
end

Loading…
Cancel
Save