class Bathyscaphe::TVDB
Constants
- TVREGEXP1
- TVREGEXP2
- TVREGEXP3
- TVREGEXP4
- TVREGEXP5
Attributes
episode[RW]
name[RW]
season[RW]
Public Class Methods
new(filename, filedir)
click to toggle source
# File lib/bathyscaphe/tvdb.rb, line 13 def initialize filename, filedir wholefile = File.join(filedir, filename) @name = @season = @episode = nil if md = filename.match(TVREGEXP1) || md = filename.match(TVREGEXP2) || md = filename.match(TVREGEXP3) @name, @season, @episode = get_from_md(md) end return unless [@name, @season, @episode].collect(&:blank?).any? if md = wholefile.match(TVREGEXP4) || md = wholefile.match(TVREGEXP5) @name, @season, @episode = get_from_md(md) end return unless [@name, @season, @episode].collect(&:blank?).any? if md = filedir.split("/").last.match(/(.*)Season(.*)/i) @name = md[1].gsub(/[-.]+/i, ' ').gsub("'", '').strip @season = md[2].strip.scan(/^(\d+).*/).flatten.last.to_i.to_s if namemd = filename.match(/(\d*).*/) @episode = namemd[1].to_i.to_s end end end
Public Instance Methods
get_from_md(md)
click to toggle source
# File lib/bathyscaphe/tvdb.rb, line 38 def get_from_md(md) name = md[1].gsub(/[-.]+/i, " ").strip name = "Castle" if name =~ /Castle 2009/i name = "Missing (2012)" if name =~ /Missing 2012/i name = "Brooklyn Nine-Nine" if name =~ /Brooklyn Nine Nine/i season = md[2].to_i.to_s episode = md[3].to_i.to_s return name, season, episode end