Class: SurveyGizmo::API::Question
Instance Method Summary
collapse
#title=
Methods included from Resource
descendants, #destroy, #inspect, #reload, #save
Instance Method Details
#options ⇒ Object
33
34
35
36
37
38
|
# File 'lib/survey_gizmo/api/question.rb', line 33
def options
return parent_question.options.dup.each { |o| o.question_id = id } if parent_question
@options ||= Option.all(children_params.merge(all_pages: true)).to_a
@options.each { |o| o.attributes = children_params }
end
|
#parent_question ⇒ Object
40
41
42
43
|
# File 'lib/survey_gizmo/api/question.rb', line 40
def parent_question
return nil unless parent_question_id
@parent_question ||= Question.first(survey_id: survey_id, id: parent_question_id)
end
|
#sub_question_skus ⇒ Object
45
46
47
48
49
50
|
# File 'lib/survey_gizmo/api/question.rb', line 45
def sub_question_skus
@sub_question_skus.map { |sku| sku.is_a?(Array) ? sku[1] : sku }
end
|
#sub_questions ⇒ Object
52
53
54
55
56
57
58
59
|
# File 'lib/survey_gizmo/api/question.rb', line 52
def sub_questions
@sub_questions ||= sub_question_skus.map do |sku|
SurveyGizmo.configuration.logger.debug("Have to do individual load of sub question #{sku}...")
subquestion = Question.first(survey_id: survey_id, id: sku)
subquestion.parent_question_id = id
subquestion
end
end
|
#survey ⇒ Object
29
30
31
|
# File 'lib/survey_gizmo/api/question.rb', line 29
def survey
@survey ||= Survey.first(id: survey_id)
end
|