Class: Senkyoshi::GradeCriteria
- Inherits:
-
RuleCriteria
- Object
- RuleCriteria
- Senkyoshi::GradeCriteria
- Defined in:
- lib/senkyoshi/models/grade_criteria.rb
Direct Known Subclasses
Constant Summary
Constants inherited from RuleCriteria
RuleCriteria::COMPLETION_TYPES
Constants included from Senkyoshi
DIR_BASE, FILE_BASE, MAIN_CANVAS_MODULE, MASTER_MODULE, PRE_RESOURCE_TYPE, RESOURCE_TYPE, VERSION
Instance Attribute Summary collapse
-
#outcome_def_id ⇒ Object
readonly
Returns the value of attribute outcome_def_id.
Attributes inherited from RuleCriteria
#asidata_id, #content_id, #id, #negated
Class Method Summary collapse
Instance Method Summary collapse
- #canvas_conversion(course, content_id, resources) ⇒ Object
- #get_foreign_id ⇒ Object
-
#initialize(id, outcome_def_id, negated) ⇒ GradeCriteria
constructor
A new instance of GradeCriteria.
-
#set_foreign_ids(resources, outcome_def_id) ⇒ Object
use gradebook to match outcome_definition_id to the assignment content id.
Methods inherited from RuleCriteria
#add_if_unique, #add_to_module_if_unique, get_id, #get_id, get_negated, in_same_module?, #make_completion, #make_prereq, module_completion_requirement?, module_prerequisite?, #set_ids
Methods included from Senkyoshi
build_file, build_heirarchy, cleanup, configure, connect_content, create_canvas_course, create_random_hex, get_attribute_value, get_description, get_single_pre_data, get_text, initialize_course, iterate_files, iterate_xml, iterator_master, parse, parse_and_process_single, pre_iterator, read_file, reset, true?
Constructor Details
#initialize(id, outcome_def_id, negated) ⇒ GradeCriteria
Returns a new instance of GradeCriteria.
21 22 23 24 25 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 21 def initialize(id, outcome_def_id, negated) super(id, negated) @outcome_def_id = outcome_def_id @foreign_content_id = nil end |
Instance Attribute Details
#outcome_def_id ⇒ Object (readonly)
Returns the value of attribute outcome_def_id.
19 20 21 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 19 def outcome_def_id @outcome_def_id end |
Class Method Details
.from_xml(xml) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 35 def self.from_xml(xml) id = RuleCriteria.get_id xml negated = Senkyoshi.true? RuleCriteria.get_negated xml outcome_def_id = GradeCriteria.get_outcome_def_id xml new(id, outcome_def_id, negated) end |
.get_outcome_def_id(xml) ⇒ Object
31 32 33 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 31 def self.get_outcome_def_id(xml) xml.xpath("./OUTCOME_DEFINITION_ID/@value").text end |
Instance Method Details
#canvas_conversion(course, content_id, resources) ⇒ Object
56 57 58 59 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 56 def canvas_conversion(course, content_id, resources) set_foreign_ids(resources, @outcome_def_id) super(course, content_id, resources) end |
#get_foreign_id ⇒ Object
27 28 29 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 27 def get_foreign_id @foreign_asidata_id || @foreign_content_id end |
#set_foreign_ids(resources, outcome_def_id) ⇒ Object
use gradebook to match outcome_definition_id to the assignment content id
46 47 48 49 50 51 52 53 54 |
# File 'lib/senkyoshi/models/grade_criteria.rb', line 46 def set_foreign_ids(resources, outcome_def_id) gradebook = resources.find_instances_of(Gradebook).first outcome = gradebook.find_outcome_def(outcome_def_id) if outcome @foreign_content_id = outcome.content_id @foreign_asidata_id = outcome.asidataid end end |