class P3::Tvdb::Series
Attributes
actors[RW]
air_time[RW]
client[R]
content_rating[RW]
first_aired[RW]
genres[RW]
id[RW]
imdb_id[RW]
name[RW]
network[RW]
overview[RW]
rating[RW]
rating_count[RW]
runtime[RW]
seasons[RW]
status[RW]
Public Class Methods
new(client, options={})
click to toggle source
# File lib/p3-tvdb/series.rb, line 8 def initialize(client, options={}) @client = client @id = options["id"] @name = options["SeriesName"] @overview = options["Overview"] @network = options["Network"] @runtime = options["Runtime"] @air_time = options['Airs_Time'] if options['Airs_Time'] @imdb_id = options["IMDB_ID"] @content_rating = options["ContentRating"] @status = options["Status"] if options["Genre"] @genres = options["Genre"][1..-1].split("|") else @genres = [] end if options["Rating"] && options["Rating"].size > 0 @rating = options["Rating"].to_f else @rating = 0 end if options["RatingCount"] && options["RatingCount"].size > 0 @rating_count = options["RatingCount"].to_f else @rating_count = 0 end begin @first_aired = Date.parse(options["FirstAired"]) rescue end end
Public Instance Methods
episodes()
click to toggle source
# File lib/p3-tvdb/series.rb, line 76 def episodes @episodes ||= client.get_all_episodes(self) end
fanart(language)
click to toggle source
# File lib/p3-tvdb/series.rb, line 52 def fanart(language) banners.select{|b| b.banner_type == 'fanart' && b.language == language} end
get_episode(season_number, episode_number)
click to toggle source
# File lib/p3-tvdb/series.rb, line 44 def get_episode(season_number, episode_number) client.get_episode(self, season_number, episode_number) end
posters(language)
click to toggle source
# File lib/p3-tvdb/series.rb, line 48 def posters(language) banners.select{|b| b.banner_type == 'poster' && b.language == language} end
season(season_number)
click to toggle source
# File lib/p3-tvdb/series.rb, line 84 def season(season_number) seasons.detect{|s| s.number == season_number} end
season_posters(season_number, language)
click to toggle source
# File lib/p3-tvdb/series.rb, line 60 def season_posters(season_number, language) banners.select{|b| b.banner_type == 'season' && b.banner_type2 == 'season' && b.season == season_number.to_s && b.language == language} end
seasonwide_posters(season_number, language)
click to toggle source
# File lib/p3-tvdb/series.rb, line 64 def seasonwide_posters(season_number, language) banners.select{|b| b.banner_type == 'season' && b.banner_type2 == 'seasonwide' && b.season == season_number.to_s && b.language == language} end
to_h()
click to toggle source
# File lib/p3-tvdb/series.rb, line 88 def to_h hash = {} self.instance_variables.each do | var | #turn episode object into hash v = self.instance_variable_get( var ) hash[ var.to_s.gsub('@','').to_sym ] = v end hash.delete(:client) hash.delete(:banners) return hash end