class EZTV::Series
Attributes
name[R]
Public Class Methods
new(name)
click to toggle source
# File lib/eztv.rb, line 19 def initialize(name) @name = name @options = { body: {'SearchString' => @name}} end
Public Instance Methods
episode(season, episode_number)
click to toggle source
# File lib/eztv.rb, line 41 def episode(season, episode_number) episodes.find do |episode| episode.season == season and episode.episode_number == episode_number end end
episodes()
click to toggle source
# File lib/eztv.rb, line 24 def episodes return @episodes if @episodes result = self.class.post('/search/',@options) document = Nokogiri::HTML(result) episodes = document.css('html body div#header_holder table.forum_header_border tr.forum_header_border') raise SeriesNotFoundError.new(self) if episodes.empty? episodes = episodes.reject do |episode| episode.css('img').first.attributes['title'].value.match(/Show Description about #{name}/i).nil? end @episodes = EpisodeFactory.create(episodes) end
season(season)
click to toggle source
# File lib/eztv.rb, line 47 def season(season) episodes.find_all {|episode| episode.season == season } end
seasons()
click to toggle source
# File lib/eztv.rb, line 51 def seasons episodes.group_by {|episode| episode.season }.to_hash.values end