Class: CanvasQtiToLearnosityConverter::TemplateQuestion

Inherits:
QuizQuestion
  • Object
show all
Defined in:
lib/canvas_qti_to_learnosity_converter/questions/template_question.rb

Instance Method Summary collapse

Methods inherited from QuizQuestion

#convert, #dynamic_content_data, #extract_mattext, #extract_points_possible, #extract_stimulus, #initialize, #make_identifier, #process_assets!

Constructor Details

This class inherits a constructor from CanvasQtiToLearnosityConverter::QuizQuestion

Instance Method Details

#add_learnosity_assets(assets, path, learnosity) ⇒ Object



29
30
31
32
33
34
35
36
# File 'lib/canvas_qti_to_learnosity_converter/questions/template_question.rb', line 29

def add_learnosity_assets(assets, path, learnosity)
  process_assets!(
    assets,
    path,
    learnosity[:template]
  )
  learnosity
end

#extract_templateObject



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/canvas_qti_to_learnosity_converter/questions/template_question.rb', line 5

def extract_template()
  placeholders = @xml.css("item > presentation > response_lid > material >
    mattext").map { |text| extract_mattext(text) }

  template = get_template()

  placeholders.each do |placeholder|
    template.sub!("[#{placeholder}]", "{{response}}")
  end

  template
end

#extract_template_values(template) ⇒ Object



18
19
20
21
22
# File 'lib/canvas_qti_to_learnosity_converter/questions/template_question.rb', line 18

def extract_template_values(template)
  template.scan(/\[([^\]]+)\]/).map do |capture_list|
    capture_list.first
  end
end

#get_templateObject



24
25
26
27
# File 'lib/canvas_qti_to_learnosity_converter/questions/template_question.rb', line 24

def get_template()
  template_node_list = @xml.css("item > presentation > material > mattext")
  extract_mattext(template_node_list.first)
end