class OSDb::Search::Name

Public Class Methods

new(server) click to toggle source
# File lib/osdb/search/name.rb, line 6
def initialize(server)
  @server = server
end

Public Instance Methods

search_subs_for(movie, language) click to toggle source
# File lib/osdb/search/name.rb, line 10
def search_subs_for(movie, language)
  subs = @server.search_subtitles(:sublanguageid => language, :query => movie.name)
  normalized_movie_name = normalize_name(movie.name)
  subs.select! do |sub|
    normalize_name(sub.filename).index(normalized_movie_name) # MAYBE: Levenshtein ?
  end
  subs
end

Protected Instance Methods

normalize_name(name) click to toggle source
# File lib/osdb/search/name.rb, line 21
def normalize_name(name)
  name.downcase.gsub(/[\s\.\-\_]+/, ' ')
end