class PopcorntimeSearch::ShowResult
Attributes
episode[RW]
season[RW]
Public Class Methods
new(result, season, episode)
click to toggle source
Calls superclass method
PopcorntimeSearch::MovieResult::new
# File lib/popcorntime_search/show_result.rb, line 7 def initialize(result, season, episode) super(result) @kind = :show @season = season @episode = episode end
Private Instance Methods
build_episode_links()
click to toggle source
# File lib/popcorntime_search/show_result.rb, line 21 def build_episode_links episode_links = self.class.get("/#{@imdb_id}")['episodes'].find do |episode| episode['season'] == @season && episode['episode'] == @episode end return [] unless episode_links episode_links['torrents'].each_with_object([]) do |(quality, info), links_list| links_list << Link.new(title: "#{@title} #{@season}x#{@episode.to_s.rjust(2, '0')}", imdb_id: imdb_id, magnet: info['url'], seeders: info['seeds'], leechers: info['peers'], language: 'en', quality: quality, provider: info['provider']) end end
build_links()
click to toggle source
# File lib/popcorntime_search/show_result.rb, line 17 def build_links @episode ? build_episode_links : build_season_links end
build_season_links()
click to toggle source
# File lib/popcorntime_search/show_result.rb, line 40 def build_season_links season_links = self.class.get("/#{@imdb_id}")['episodes'].select do |episode| episode['season'] == @season end return [] unless season_links season_links.each_with_object([]) do |episode_info, links_list| episode = episode_info['episode'] quality, info = episode_info['torrents'].max_by { |quality, _| quality.to_i } links_list << Link.new(title: "#{@title} #{@season}x#{episode.to_s.rjust(2, '0')}", imdb_id: imdb_id, magnet: info['url'], seeders: info['seeds'], leechers: info['peers'], language: 'en', quality: quality, provider: info['provider']) end end