Class: Netologiest::Lesson

Inherits:
Resource show all
Defined in:
lib/netologiest/resources/lesson.rb

Instance Attribute Summary collapse

Attributes inherited from Resource

#token, #token_expire

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Resource

#authorize!, detail, #detail, #get, #handle_detail, #handle_list, list, #list, #token_expired?

Constructor Details

#initialize(course_id, lesson_id) ⇒ Lesson

Returns a new instance of Lesson.



8
9
10
11
12
# File 'lib/netologiest/resources/lesson.rb', line 8

def initialize(course_id, lesson_id)
  authorize!
  @course_id = course_id
  @id = lesson_id
end

Instance Attribute Details

#course_idObject (readonly)

Returns the value of attribute course_id.



5
6
7
# File 'lib/netologiest/resources/lesson.rb', line 5

def course_id
  @course_id
end

#idObject (readonly)

Returns the value of attribute id.



5
6
7
# File 'lib/netologiest/resources/lesson.rb', line 5

def id
  @id
end

#iframe_urlObject (readonly)

Returns the value of attribute iframe_url.



5
6
7
# File 'lib/netologiest/resources/lesson.rb', line 5

def iframe_url
  @iframe_url
end

#lesson_tokenObject (readonly)

Returns the value of attribute lesson_token.



5
6
7
# File 'lib/netologiest/resources/lesson.rb', line 5

def lesson_token
  @lesson_token
end

#lesson_token_expireObject (readonly)

Returns the value of attribute lesson_token_expire.



5
6
7
# File 'lib/netologiest/resources/lesson.rb', line 5

def lesson_token_expire
  @lesson_token_expire
end

Class Method Details

.video_url(course_id, lesson_id) ⇒ Object



14
15
16
17
18
# File 'lib/netologiest/resources/lesson.rb', line 14

def self.video_url(course_id, lesson_id)
  lesson = new(course_id, lesson_id)
  lesson.video_token
  lesson.video_url
end

Instance Method Details

#video_tokenObject



20
21
22
23
24
25
26
27
28
29
30
# File 'lib/netologiest/resources/lesson.rb', line 20

def video_token
  url = build_url(
    Netologiest::Course.resource_name,
    course_id,
    self.class.resource_name,
    id,
    'gettoken'
  )

  handle_lesson_token(get(url))
end

#video_urlObject



32
33
34
35
36
37
38
39
40
# File 'lib/netologiest/resources/lesson.rb', line 32

def video_url
  @iframe_url = build_url(
    Netologiest::Course.resource_name,
    course_id,
    self.class.resource_name,
    id,
    "iframe?token=#{lesson_token}"
  )
end