Class: Enklawa::Api::Program

Inherits:
Struct
  • Object
show all
Defined in:
lib/enklawa/api/program.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeProgram



6
7
8
# File 'lib/enklawa/api/program.rb', line 6

def initialize
  self.episodes = []
end

Instance Attribute Details

#authorObject

Returns the value of attribute author



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def author
  @author
end

#base_urlObject

Returns the value of attribute base_url.



4
5
6
# File 'lib/enklawa/api/program.rb', line 4

def base_url
  @base_url
end

#category_idObject

Returns the value of attribute category_id



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def category_id
  @category_id
end

#descriptionObject

Returns the value of attribute description



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def description
  @description
end

#episodesObject

Returns the value of attribute episodes.



4
5
6
# File 'lib/enklawa/api/program.rb', line 4

def episodes
  @episodes
end

#idObject

Returns the value of attribute id



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def id
  @id
end

#liveObject

Returns the value of attribute live



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def live
  @live
end

#nameObject

Returns the value of attribute name



3
4
5
# File 'lib/enklawa/api/program.rb', line 3

def name
  @name
end

Instance Method Details

#<<(episode) ⇒ Object



18
19
20
# File 'lib/enklawa/api/program.rb', line 18

def <<(episode)
  self.episodes << episode
end

#feed_urlObject



22
23
24
# File 'lib/enklawa/api/program.rb', line 22

def feed_url
  File.join([base_url, "/program#{self.id}.xml"])
end

#imageObject



10
11
12
13
14
15
16
# File 'lib/enklawa/api/program.rb', line 10

def image
  if base_url.match("enklawa")
    File.join([base_url, "/images/programs/#{id}.jpg"])
  else
    File.join([base_url, "/images/programs/240/#{id}.jpg"])
  end
end

#to_hObject



26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/enklawa/api/program.rb', line 26

def to_h
  {
    id: id,
    name: name,
    description: description,
    author: author,
    live: live,
    image: image,
    feed_url: feed_url,
    category_id: category_id,
    episodes: episodes.map(&:to_h)
  }
end