From 191f0ec25bd41cf973adef5b1bcaa0f97ae6c9fe Mon Sep 17 00:00:00 2001 From: Kat <54268893+kosiakkatrina@users.noreply.github.com> Date: Tue, 26 Nov 2024 11:50:25 +0000 Subject: [PATCH] Update tasklist --- app/helpers/tag_helper.rb | 9 +++++++-- app/helpers/tasklist_helper.rb | 7 +++++++ app/views/logs/_tasklist.html.erb | 28 +++++++++++++++------------- 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/app/helpers/tag_helper.rb b/app/helpers/tag_helper.rb index bc0d8e06b..398f897cf 100644 --- a/app/helpers/tag_helper.rb +++ b/app/helpers/tag_helper.rb @@ -30,8 +30,7 @@ module TagHelper }.freeze COLOUR = { - not_started: "grey", - cannot_start_yet: "grey", + not_started: "light-blue", in_progress: "blue", completed: "green", active: "green", @@ -58,6 +57,8 @@ module TagHelper }.freeze def status_tag(status, classes = []) + return nil if COLOUR[status.to_sym].nil? + govuk_tag( classes:, colour: COLOUR[status.to_sym], @@ -65,6 +66,10 @@ module TagHelper ) end + def status_text(status) + TEXT[status.to_sym] + end + def status_tag_from_resource(resource, classes = []) status = resource.status status = :active if resource.deactivates_in_a_long_time? diff --git a/app/helpers/tasklist_helper.rb b/app/helpers/tasklist_helper.rb index 4c371d711..3a07a00f3 100644 --- a/app/helpers/tasklist_helper.rb +++ b/app/helpers/tasklist_helper.rb @@ -47,6 +47,13 @@ module TasklistHelper end end + def subsection_href(subsection, log, current_user) + if subsection.status(log) != :cannot_start_yet + next_page_path = next_page_or_check_answers(subsection, log, current_user).to_s + next_page_path.dasherize + end + end + def review_log_text(log) if log.collection_period_open? path = log.sales? ? review_sales_log_path(id: log, sales_log: true) : review_lettings_log_path(log) diff --git a/app/views/logs/_tasklist.html.erb b/app/views/logs/_tasklist.html.erb index 824b41113..7a5e26a0e 100644 --- a/app/views/logs/_tasklist.html.erb +++ b/app/views/logs/_tasklist.html.erb @@ -8,19 +8,21 @@ <% if section.description %>

<%= section.description.html_safe %>

<% end %> - + <%= govuk_task_list(id_prefix: "logs", classes: "app-task-list__items") do |task_list| + section.subsections.each do |subsection| + next unless subsection.displayed_in_tasklist?(@log) && (subsection.applicable_questions(@log).count.positive? || !subsection.enabled?(@log)) + + subsection_status = subsection.status(@log) + task_list.with_item(classes: "#{tasklist_link_class(subsection_status)} app-task-list__item") do |item| + item.with_title(text: subsection.label, href: subsection_href(subsection, @log, current_user), classes: "app-task-list__name-and-hint--my-modifier") + if status_tag(subsection_status, "app-task-list__tag").present? + item.with_status(text: status_tag(subsection_status), classes: "app-task-list__tag") + else + item.with_status(text: status_text(subsection_status), classes: "app-task-list__tag") + end + end + end + end %> <% end %>