class TTVDB::Client
Attributes
language[RW]
Public Class Methods
new(opts = {})
click to toggle source
# File lib/ttvdb/client.rb, line 8 def initialize(opts = {}) @opts = { :api_url => 'http://www.thetvdb.com/api/', :api_key => '530293E55310DAB2', :language => 'en', }.merge!opts @language = @opts[:language] @apikey = @opts[:api_key] end
Public Instance Methods
get_episodes_by_series_id(id)
click to toggle source
# File lib/ttvdb/client.rb, line 40 def get_episodes_by_series_id id lookup = "series/#{id}/all/#{@language}.xml" hsh = XmlSimple.xml_in(client[lookup].get) return [] unless hsh["Episode"] episodes = [] hsh["Episode"].each do |e| episode = TTVDB::Episode.new(e) episode.client = self episodes << episode end episodes end
get_series(name)
click to toggle source
# File lib/ttvdb/client.rb, line 26 def get_series name _client = RestClient::Resource.new("#{@opts[:api_url]}/GetSeries.php", :headers => { :params => { 'seriesname' => name, 'language' => @language }}) hsh = XmlSimple.xml_in(_client.get) return [] unless hsh["Series"] series = [] hsh["Series"].each do |s| serie = TTVDB::Series.new(s) next if serie.language != @language serie.client = self series << serie end return series end
get_series_by_id(id)
click to toggle source
# File lib/ttvdb/client.rb, line 18 def get_series_by_id id lookup = "series/#{id}/#{@language}.xml" hsh = XmlSimple.xml_in(client[lookup].get) serie = TTVDB::Series.new(hsh["Series"][0]) serie.client = self return serie end
Private Instance Methods
client()
click to toggle source
# File lib/ttvdb/client.rb, line 54 def client @client ||= RestClient::Resource.new("#{@opts[:api_url]}/#{@apikey}/") end