Module: ActiveRecordSurveyApi::Concerns::Controllers::InstanceNodes

Extended by:
ActiveSupport::Concern
Included in:
InstanceNodesController, Concerns::Controllers::InstanceNodes
Defined in:
lib/active_record_survey_api/concerns/controllers/instance_nodes.rb

Instance Method Summary collapse

Instance Method Details

#find_instanceObject



41
42
43
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 41

def find_instance
  self.instance_variable_set "@instance", ActiveRecordSurvey::Instance.find(params[:instance_id])
end

#find_surveyObject



37
38
39
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 37

def find_survey
  self.instance_variable_set "@survey", ActiveRecordSurvey::Survey.find(params[:survey_id])
end

#instance_node_by_id(id) ⇒ Object



7
8
9
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 7

def instance_node_by_id(id)
  ActiveRecordSurvey::Instance.find(id)
end

#instance_node_paramsObject



28
29
30
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 28

def instance_node_params
  json_params.require(:instance_node).permit(:active_record_survey_node_id)
end

#json_paramsObject



18
19
20
21
22
23
24
25
26
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 18

def json_params
  i = {}
  begin
    i = JSON.parse(request.body.read)
  rescue Exception => $e
  end

  ActionController::Parameters.new(i)
end

#new_instance_node(params) ⇒ Object



11
12
13
14
15
16
# File 'lib/active_record_survey_api/concerns/controllers/instance_nodes.rb', line 11

def new_instance_node(params)
  # DRAGONS!
  # This doesn't work properly unless params has key :instance with proper object passed
  # Because of active_record_survey validate method in how it determines INVALID_PATH
  @instance.instance_nodes.build(params)
end