Class: CanvasFactory::Module
- Inherits:
-
Object
- Object
- CanvasFactory::Module
- Defined in:
- lib/japanda/canvas_factory/module.rb
Overview
canvas module class
Instance Attribute Summary collapse
-
#course_id ⇒ Object
readonly
Returns the value of attribute course_id.
-
#module_id ⇒ Object
readonly
Returns the value of attribute module_id.
-
#module_items ⇒ Object
readonly
Returns the value of attribute module_items.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#publish_request ⇒ Object
readonly
Returns the value of attribute publish_request.
-
#publish_response ⇒ Object
readonly
Returns the value of attribute publish_response.
-
#published ⇒ Object
readonly
Returns the value of attribute published.
-
#request ⇒ Object
readonly
Returns the value of attribute request.
-
#response ⇒ Object
readonly
Returns the value of attribute response.
Instance Method Summary collapse
-
#add_module_item(content, opts = {}, merge = true) ⇒ Object
content can be assignment or quiz …
-
#initialize(course_id, opts = {}, merge = true) ⇒ Module
constructor
A new instance of Module.
- #publish(opts = {}, merge = true) ⇒ Object
Constructor Details
#initialize(course_id, opts = {}, merge = true) ⇒ Module
7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/japanda/canvas_factory/module.rb', line 7 def initialize(course_id, opts = {}, merge = true) @module_items = [] @course_id = course_id @request = { module: { name: "module-#{Time.now.to_i}", unlock_at: DateTime.now.iso8601, require_sequential_progress: true } } @request = Mergie.deep_merge(@request, opts, merge) create_module self end |
Instance Attribute Details
#course_id ⇒ Object (readonly)
Returns the value of attribute course_id.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def course_id @course_id end |
#module_id ⇒ Object (readonly)
Returns the value of attribute module_id.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def module_id @module_id end |
#module_items ⇒ Object (readonly)
Returns the value of attribute module_items.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def module_items @module_items end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def name @name end |
#publish_request ⇒ Object (readonly)
Returns the value of attribute publish_request.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def publish_request @publish_request end |
#publish_response ⇒ Object (readonly)
Returns the value of attribute publish_response.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def publish_response @publish_response end |
#published ⇒ Object (readonly)
Returns the value of attribute published.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def published @published end |
#request ⇒ Object (readonly)
Returns the value of attribute request.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def request @request end |
#response ⇒ Object (readonly)
Returns the value of attribute response.
4 5 6 |
# File 'lib/japanda/canvas_factory/module.rb', line 4 def response @response end |
Instance Method Details
#add_module_item(content, opts = {}, merge = true) ⇒ Object
content can be assignment or quiz …
22 23 24 25 26 |
# File 'lib/japanda/canvas_factory/module.rb', line 22 def add_module_item(content, opts = {}, merge = true) # content can be assignment or quiz ... module_item = CanvasFactory::ModuleItem.new(@course_id, @module_id, content, opts, merge) @module_items << module_item module_item end |
#publish(opts = {}, merge = true) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/japanda/canvas_factory/module.rb', line 28 def publish(opts = {}, merge = true) @publish_request = { module: { published: true } } @publish_request = Mergie.deep_merge(@publish_request, opts, merge) publish_ep = "#{CANVAS_API_V1}/courses/#{@course_id}/modules/#{@module_id}" @publish_response = CanvasFactory.perform_put(publish_ep, @publish_request) @published = @publish_response['published'] end |