module IMS::LTI::Extensions::OutcomeData::OutcomeRequest

Attributes

outcome_cdata_text[RW]
outcome_lti_launch_url[RW]
outcome_text[RW]
outcome_url[RW]
submitted_at[RW]
total_score[RW]

Public Instance Methods

details(node) click to toggle source
Calls superclass method
# File lib/ims/lti/extensions/outcome_data.rb, line 187
def details(node)
  super
  return unless has_details_data?

  node.submittedAt submitted_at
end
extention_process_xml(doc) click to toggle source
Calls superclass method
# File lib/ims/lti/extensions/outcome_data.rb, line 206
def extention_process_xml(doc)
  super
  @outcome_text = doc.get_text("//resultRecord/result/resultData/text")
  @outcome_url = doc.get_text("//resultRecord/result/resultData/url")
  @outcome_lti_launch_url = doc.get_text("//resultRecord/result/resultData/ltiLaunchUrl")
end
has_details_data?() click to toggle source
# File lib/ims/lti/extensions/outcome_data.rb, line 202
def has_details_data?
  !!submitted_at
end
has_result_data?() click to toggle source
Calls superclass method
# File lib/ims/lti/extensions/outcome_data.rb, line 198
def has_result_data?
  !!outcome_text || !!outcome_url || !!outcome_lti_launch_url || !!outcome_cdata_text || !!total_score || super
end
result_values(node) click to toggle source
Calls superclass method
# File lib/ims/lti/extensions/outcome_data.rb, line 161
def result_values(node)
  super

  if total_score
    node.resultTotalScore do |res_total_score|
      res_total_score.language "en" # 'en' represents the format of the number
      res_total_score.textString total_score.to_s
    end
  end

  if outcome_text || outcome_url || outcome_cdata_text || outcome_lti_launch_url
    node.resultData do |res_data|
      if outcome_cdata_text
        res_data.text {
          res_data.cdata! outcome_cdata_text
        }
      elsif outcome_text
        res_data.text outcome_text
      elsif outcome_lti_launch_url
        res_data.ltiLaunchUrl outcome_lti_launch_url
      end
      res_data.url outcome_url if outcome_url
    end
  end
end
score() click to toggle source
# File lib/ims/lti/extensions/outcome_data.rb, line 194
def score
  total_score ? nil : @score
end