Class: Senkyoshi::AssignmentGroup

Inherits:
Resource
  • Object
show all
Defined in:
lib/senkyoshi/models/assignment_group.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

#_find_directories, #_fix_path, #_matches_directory_xid?, #_search_and_replace, #cleanup, #fix_html, get_pre_data, #matches_xid?, #strip_xid

Constructor Details

#initialize(name, id) ⇒ AssignmentGroup

Returns a new instance of AssignmentGroup.



21
22
23
24
25
26
# File 'lib/senkyoshi/models/assignment_group.rb', line 21

def initialize(name, id)
  @title = name
  @group_weight = ""
  @rules = {}
  @id = id
end

Instance Attribute Details

#idObject (readonly)

Returns the value of attribute id.



20
21
22
# File 'lib/senkyoshi/models/assignment_group.rb', line 20

def id
  @id
end

Class Method Details

.create_assignment_group(group_name) ⇒ Object



37
38
39
40
41
# File 'lib/senkyoshi/models/assignment_group.rb', line 37

def self.create_assignment_group(group_name)
  id = Senkyoshi.create_random_hex
  group = AssignmentGroup.new(group_name, id)
  group.canvas_conversion
end

.find_group(course, category) ⇒ Object



43
44
45
46
# File 'lib/senkyoshi/models/assignment_group.rb', line 43

def self.find_group(course, category)
  course.assignment_groups.
    detect { |a| a.title == category }
end

.find_or_create(course, category) ⇒ Object



48
49
50
51
52
53
54
55
# File 'lib/senkyoshi/models/assignment_group.rb', line 48

def self.find_or_create(course, category)
  assignment_group = find_group(course, category)
  if !assignment_group
    assignment_group = AssignmentGroup.create_assignment_group(category)
    course.assignment_groups << assignment_group
  end
  assignment_group
end

Instance Method Details

#canvas_conversionObject



28
29
30
31
32
33
34
35
# File 'lib/senkyoshi/models/assignment_group.rb', line 28

def canvas_conversion
  assignment_group = CanvasCc::CanvasCC::Models::AssignmentGroup.new
  assignment_group.identifier = @id
  assignment_group.title = @title
  assignment_group.group_weight = @group_weight
  assignment_group.rules = @rules
  assignment_group
end