Browse Source

Update tasklist

pull/2822/head
Kat 1 year ago
parent
commit
191f0ec25b
  1. 9
      app/helpers/tag_helper.rb
  2. 7
      app/helpers/tasklist_helper.rb
  3. 28
      app/views/logs/_tasklist.html.erb

9
app/helpers/tag_helper.rb

@ -30,8 +30,7 @@ module TagHelper
}.freeze }.freeze
COLOUR = { COLOUR = {
not_started: "grey", not_started: "light-blue",
cannot_start_yet: "grey",
in_progress: "blue", in_progress: "blue",
completed: "green", completed: "green",
active: "green", active: "green",
@ -58,6 +57,8 @@ module TagHelper
}.freeze }.freeze
def status_tag(status, classes = []) def status_tag(status, classes = [])
return nil if COLOUR[status.to_sym].nil?
govuk_tag( govuk_tag(
classes:, classes:,
colour: COLOUR[status.to_sym], colour: COLOUR[status.to_sym],
@ -65,6 +66,10 @@ module TagHelper
) )
end end
def status_text(status)
TEXT[status.to_sym]
end
def status_tag_from_resource(resource, classes = []) def status_tag_from_resource(resource, classes = [])
status = resource.status status = resource.status
status = :active if resource.deactivates_in_a_long_time? status = :active if resource.deactivates_in_a_long_time?

7
app/helpers/tasklist_helper.rb

@ -47,6 +47,13 @@ module TasklistHelper
end end
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) def review_log_text(log)
if log.collection_period_open? if log.collection_period_open?
path = log.sales? ? review_sales_log_path(id: log, sales_log: true) : review_lettings_log_path(log) path = log.sales? ? review_sales_log_path(id: log, sales_log: true) : review_lettings_log_path(log)

28
app/views/logs/_tasklist.html.erb

@ -8,19 +8,21 @@
<% if section.description %> <% if section.description %>
<p class="govuk-body"><%= section.description.html_safe %></p> <p class="govuk-body"><%= section.description.html_safe %></p>
<% end %> <% end %>
<ul class="govuk-task-list app-task-list__items"> <%= govuk_task_list(id_prefix: "logs", classes: "app-task-list__items") do |task_list|
<% section.subsections.each do |subsection| %> section.subsections.each do |subsection|
<% if subsection.displayed_in_tasklist?(@log) && (subsection.applicable_questions(@log).count > 0 || !subsection.enabled?(@log)) %> next unless subsection.displayed_in_tasklist?(@log) && (subsection.applicable_questions(@log).count.positive? || !subsection.enabled?(@log))
<% subsection_status = subsection.status(@log) %>
<li class="govuk-task-list__item <%= tasklist_link_class(subsection_status) %> app-task-list__item"> subsection_status = subsection.status(@log)
<div class="govuk-task-list__name-and-hint app-task-list__task-name" id="<%= subsection.id.dasherize %>"> task_list.with_item(classes: "#{tasklist_link_class(subsection_status)} app-task-list__item") do |item|
<%= subsection_link(subsection, @log, current_user) %> item.with_title(text: subsection.label, href: subsection_href(subsection, @log, current_user), classes: "app-task-list__name-and-hint--my-modifier")
</div> if status_tag(subsection_status, "app-task-list__tag").present?
<%= status_tag(subsection_status, "app-task-list__tag") %> item.with_status(text: status_tag(subsection_status), classes: "app-task-list__tag")
</li> else
<% end %> item.with_status(text: status_text(subsection_status), classes: "app-task-list__tag")
<% end %> end
</ul> end
end
end %>
</li> </li>
<% end %> <% end %>
</ol> </ol>

Loading…
Cancel
Save