diff --git a/app/controllers/lettings_logs_controller.rb b/app/controllers/lettings_logs_controller.rb index 87892bf77..2b5b95028 100644 --- a/app/controllers/lettings_logs_controller.rb +++ b/app/controllers/lettings_logs_controller.rb @@ -13,6 +13,7 @@ class LettingsLogsController < LogsController @pagy, @logs = pagy(unpaginated_filtered_logs) @searched = search_term.presence @total_count = all_logs.size + @unresolved_count = all_logs.where(unresolved: true, created_by: current_user).count render "logs/index" end end diff --git a/app/views/logs/index.html.erb b/app/views/logs/index.html.erb index a340973cf..4f955e471 100644 --- a/app/views/logs/index.html.erb +++ b/app/views/logs/index.html.erb @@ -4,6 +4,18 @@ <% content_for :title, title %> <% if current_page?(controller: 'lettings_logs', action: 'index') %> + <% if @unresolved_count > 0 %> + <%= govuk_notification_banner( + title_text: "Important", + title_heading_level: 3, + title_id: "impacted-logs-banner", + ) do |notification_banner| %> + <% notification_banner.heading(text: "A scheme has changed and it has affected #{@unresolved_count} #{@unresolved_count > 1 ? 'logs' : 'log'}") %> +
+ <% end %> + <% end %> <%= render partial: "organisations/headings", locals: current_user.support? ? { main: "Lettings logs", sub: nil } : { main: "Lettings logs", sub: current_user.organisation.name } %> <% elsif current_page?(controller: 'sales_logs', action: 'index') %> <%= render partial: "organisations/headings", locals: current_user.support? ? { main: "Sales logs", sub: nil } : { main: "Sales logs", sub: current_user.organisation.name } %> diff --git a/spec/requests/lettings_logs_controller_spec.rb b/spec/requests/lettings_logs_controller_spec.rb index a02d4247f..d74206181 100644 --- a/spec/requests/lettings_logs_controller_spec.rb +++ b/spec/requests/lettings_logs_controller_spec.rb @@ -859,6 +859,13 @@ RSpec.describe LettingsLogsController, type: :request do expect(page).to have_content("You’ve completed all the logs that were affected by scheme changes.") page.assert_selector(".govuk-button", text: "Back to all logs") end + + it "displays a banner on the lettings log page" do + get "/lettings-logs", headers:, params: {} + expect(page).to have_css(".govuk-notification-banner") + expect(page).to have_content("A scheme has changed and it has affected 3 logs") + expect(page).to have_link("Update logs", href: "/lettings-logs/update-logs") + end end context "when viewing a specific log affected by deactivated location" do