Browse Source

feat: update subsection status tag

pull/1120/head
natdeanlewissoftwire 4 years ago
parent
commit
a697e5ee30
  1. 5
      app/models/form/question.rb
  2. 2
      app/models/form/subsection.rb

5
app/models/form/question.rb

@ -129,6 +129,11 @@ class Form::Question
"/#{log.model_name.param_key.dasherize}s/#{log.id}/#{page_id.to_s.dasherize}?referrer=check_answers"
end
def unanswered?(log)
return answer_options.keys.none? { |key| value_is_yes?(log[key]) } if type == "checkbox"
log[id].blank?
end
def completed?(log)
return answer_options.keys.any? { |key| value_is_yes?(log[key]) } if type == "checkbox"

2
app/models/form/subsection.rb

@ -30,7 +30,7 @@ class Form::Subsection
qs = applicable_questions(log)
qs_optional_removed = qs.reject { |q| log.optional_fields.include?(q.id) }
return :not_started if qs.count.positive? && qs.all? { |question| !question.completed?(log) || question.read_only? || question.derived? }
return :not_started if qs.count.positive? && qs.all? { |question| question.unanswered?(log) || question.read_only? || question.derived? }
return :completed if qs_optional_removed.all? { |question| question.completed?(log) }
:in_progress

Loading…
Cancel
Save