Class: SurveyGizmo::API::Question

Inherits:
Object
  • Object
show all
Includes:
MultilingualTitle, Resource
Defined in:
lib/survey_gizmo/api/question.rb

Overview

Instance Method Summary collapse

Methods included from MultilingualTitle

#title_with_multilingual=

Methods included from Resource

#create_record_in_surveygizmo, descendants, #destroy, #inspect, #reload, #save

Instance Method Details

#optionsObject



30
31
32
# File 'lib/survey_gizmo/api/question.rb', line 30

def options
  @options ||= SurveyGizmo::API::Option.all(survey_id: survey_id, page_id: page_id, question_id: id)
end

#parent_questionObject



34
35
36
# File 'lib/survey_gizmo/api/question.rb', line 34

def parent_question
  @parent_question ||= parent_question_id ? SurveyGizmo::API::Question.first(survey_id: survey_id, id: parent_question_id) : nil
end

#sub_questionsObject



38
39
40
41
# File 'lib/survey_gizmo/api/question.rb', line 38

def sub_questions
  @sub_questions ||= sub_question_skus.map { |subquestion_id| SurveyGizmo::API::Question.first(survey_id: survey_id, id: subquestion_id) }
                                      .each { |subquestion| subquestion.parent_question_id = id  }
end

#surveyObject



26
27
28
# File 'lib/survey_gizmo/api/question.rb', line 26

def survey
  @survey ||= SurveyGizmo::API::Survey.first(id: survey_id)
end

#to_param_optionsObject



44
45
46
# File 'lib/survey_gizmo/api/question.rb', line 44

def to_param_options
  { id: self.id, survey_id: self.survey_id, page_id: self.page_id }
end