From ae0fda1e042dddfcdedc600fe7c7d3922243fcaf Mon Sep 17 00:00:00 2001 From: Kat Date: Tue, 7 May 2024 14:28:19 +0100 Subject: [PATCH] Add cancel, conditionally display send email --- .../lettings_logs_filters_controller.rb | 10 +- app/views/filters/_checkbox_filter.html.erb | 1 + app/views/filters/_select_filter.html.erb | 1 + .../lettings_log_filters/assigned_to.html.erb | 6 +- .../lettings_log_filters/managed_by.html.erb | 5 +- .../lettings_log_filters/needstype.html.erb | 6 +- .../lettings_log_filters/owned_by.html.erb | 5 +- .../lettings_log_filters/status.html.erb | 5 +- .../lettings_log_filters/years.html.erb | 6 +- app/views/logs/download_csv.html.erb | 11 ++- spec/features/lettings_log_spec.rb | 93 +++++++++++++++++++ 11 files changed, 136 insertions(+), 13 deletions(-) diff --git a/app/controllers/lettings_logs_filters_controller.rb b/app/controllers/lettings_logs_filters_controller.rb index 90c0f42ea..a18b9602c 100644 --- a/app/controllers/lettings_logs_filters_controller.rb +++ b/app/controllers/lettings_logs_filters_controller.rb @@ -6,20 +6,22 @@ class LettingsLogsFiltersController < ApplicationController define_method(filter) do @filter_form = Forms::FilterForm.new @filter_type = "lettings_logs" + @search_term = params["search"] + @codes_only = params["codes_only"] render "filters/lettings_log_filters/#{filter}" end end def update @filter_form = Forms::FilterForm.new(filter_form_params) + @filter_type = "lettings_logs" + @search_term = params["search"] + @codes_only = params["codes_only"] if @filter_form.valid? session_filters - redirect_to csv_download_lettings_logs_path(search: "", codes_only: true) + redirect_to csv_download_lettings_logs_path(search: @search_term, codes_only: @codes_only) else - @filter_type = "lettings_logs" - @search_term = params["search"] - @codes_only = params["codes_only"] render "filters/lettings_log_filters/years", status: :unprocessable_entity end end diff --git a/app/views/filters/_checkbox_filter.html.erb b/app/views/filters/_checkbox_filter.html.erb index d08c42a77..c862875ef 100644 --- a/app/views/filters/_checkbox_filter.html.erb +++ b/app/views/filters/_checkbox_filter.html.erb @@ -2,6 +2,7 @@ <% options.map do |key, option| %> <%= f.govuk_check_box category, key.to_s, label: { text: option }, + name: "#{category}[]", checked: filter_selected?(category, key, @filter_type), size: "s" %> <% end %> diff --git a/app/views/filters/_select_filter.html.erb b/app/views/filters/_select_filter.html.erb index e31326347..9e85bbf9b 100644 --- a/app/views/filters/_select_filter.html.erb +++ b/app/views/filters/_select_filter.html.erb @@ -1,5 +1,6 @@ <%= f.govuk_select(category.to_sym, label: { text: label, hidden: secondary }, + name: "#{category}[]", "data-controller": "accessible-autocomplete conditional-filter") do %> <% collection.each do |answer| %>