diff --git a/app/controllers/lettings_logs_controller.rb b/app/controllers/lettings_logs_controller.rb index e7d233f87..d58c2de9c 100644 --- a/app/controllers/lettings_logs_controller.rb +++ b/app/controllers/lettings_logs_controller.rb @@ -4,6 +4,8 @@ class LettingsLogsController < LogsController before_action :set_session_filters, if: :current_user def index + extract_bulk_upload_from_session_filters + respond_to do |format| format.html do all_logs = current_user.lettings_logs @@ -109,6 +111,11 @@ class LettingsLogsController < LogsController private + def extract_bulk_upload_from_session_filters + id = ((@session_filters["bulk_upload_id"] || []).reject(&:blank?))[0] + @bulk_upload = current_user.bulk_uploads.find_by(id:) + end + def permitted_log_params params.require(:lettings_log).permit(LettingsLog.editable_fields) end diff --git a/app/views/logs/index.html.erb b/app/views/logs/index.html.erb index 3f0d2031d..234d60ccf 100644 --- a/app/views/logs/index.html.erb +++ b/app/views/logs/index.html.erb @@ -22,21 +22,24 @@ <% end %>
-
- <% if current_page?(controller: 'lettings_logs', action: 'index') %> - <%= govuk_button_to "Create a new lettings log", lettings_logs_path, class: "govuk-!-margin-right-6" %> - <% end %> + <% unless @bulk_upload %> +
+ <% if current_page?(controller: 'lettings_logs', action: 'index') %> + <%= govuk_button_to "Create a new lettings log", lettings_logs_path, class: "govuk-!-margin-right-6" %> + <% end %> - <% if FeatureToggle.sales_log_enabled? && current_page?(controller: 'sales_logs', action: 'index') %> - <%= govuk_button_to "Create a new sales log", sales_logs_path, class: "govuk-!-margin-right-6" %> - <% end %> + <% if FeatureToggle.sales_log_enabled? && current_page?(controller: 'sales_logs', action: 'index') %> + <%= govuk_button_to "Create a new sales log", sales_logs_path, class: "govuk-!-margin-right-6" %> + <% end %> - <% if FeatureToggle.bulk_upload_logs? %> - <%= govuk_button_link_to "Upload #{log_type_for_controller(controller)} logs in bulk", bulk_upload_path_for_controller(controller, id: "start"), secondary: true %> - <% end %> -
+ <% if FeatureToggle.bulk_upload_logs? %> + <%= govuk_button_link_to "Upload #{log_type_for_controller(controller)} logs in bulk", bulk_upload_path_for_controller(controller, id: "start"), secondary: true %> + <% end %> +
+ <% end %> <%= render partial: "log_filters" %> +
<%= render SearchComponent.new(current_user:, search_label: "Search by log ID, tenant code, property reference or postcode", value: @searched) %> <%= govuk_section_break(visible: true, size: "m") %> diff --git a/spec/requests/lettings_logs_controller_spec.rb b/spec/requests/lettings_logs_controller_spec.rb index f11998120..56b26ca8e 100644 --- a/spec/requests/lettings_logs_controller_spec.rb +++ b/spec/requests/lettings_logs_controller_spec.rb @@ -422,6 +422,11 @@ RSpec.describe LettingsLogsController, type: :request do get "/lettings-logs?bulk_upload_id[]=#{bulk_upload.id}" expect(page).to have_content("With logs from bulk upload") end + + it "hides button to create a new log" do + get "/lettings-logs?bulk_upload_id[]=#{bulk_upload.id}" + expect(page).not_to have_content("Create a new lettings log") + end end context "with bulk upload that belongs to another user" do @@ -448,6 +453,11 @@ RSpec.describe LettingsLogsController, type: :request do get "/lettings-logs" expect(page).not_to have_content("With logs from bulk upload") end + + it "displays button to create a new log" do + get "/lettings-logs" + expect(page).to have_content("Create a new lettings log") + end end end end