module RenameMovies

Constants

MOVIES_DIR
OMDB_KEY
VERBOSE
VERSION

Public Class Methods

extract_movie_data() click to toggle source
# File lib/rename_movies.rb, line 20
def self.extract_movie_data
  @data = InfoExtractor.extract(@data)
end
get_movie_data() click to toggle source
# File lib/rename_movies.rb, line 24
def self.get_movie_data
  @data = @client.search(@data)
end
rename_folder() click to toggle source
# File lib/rename_movies.rb, line 35
def self.rename_folder
  if @data[:new_name] && !@data[:new_name].empty?
    new_file_name = []
    new_file_name << "[ #{@data[:year] || @data[:omdb_year]} ]" if @data[:year] || @data[:omdb_year]
    new_file_name << @data[:new_name]
    new_file_name << "[ #{@data[:resolution]} ]"                if @data[:resolution]
    new_file_name << "[ #{@data[:storage_format]} ]"            if @data[:storage_format]
    new_file_name << "[ #{@data[:rating]} ]"                    if @data[:rating]
    new_file_name << "[ #{@data[:imdb_rating]} ]"               if @data[:imdb_rating]
    new_file_name = new_file_name.join(" ")
    @logger.info("Moving to :: All Movies/#{new_file_name}")
    all_dir = "#{MOVIES_DIR}All Movies/"
    FileUtils.mkdir_p(all_dir)
    FileUtils.mv(MOVIES_DIR + @data[:original_name], all_dir + new_file_name)
    if @data[:genre]
      @data[:genre].split(", ").each do |genre|
        genre_dir = "#{MOVIES_DIR}By Genre/#{genre}/"
        FileUtils.mkdir_p(genre_dir)
        FileUtils.symlink(all_dir + new_file_name, genre_dir + new_file_name)
      end
    end
    if @data[:country]
      @data[:country].split(", ").each do |country|
        country_dir = "#{MOVIES_DIR}By Country/#{country}/"
        FileUtils.mkdir_p(country_dir)
        FileUtils.symlink(all_dir + new_file_name, country_dir + new_file_name)
      end
    end
    if @data[:omdb_year]
      year_dir = "#{MOVIES_DIR}By Year/#{@data[:omdb_year]}/"
      FileUtils.mkdir_p(year_dir)
      FileUtils.symlink(all_dir + new_file_name, year_dir + new_file_name)
    end
    if @data[:rating]
      rating_dir = "#{MOVIES_DIR}By Rating/#{@data[:rating]}/"
      FileUtils.mkdir_p(rating_dir)
      FileUtils.symlink(all_dir + new_file_name, rating_dir + new_file_name)
    end
  end
end
save_movie_info() click to toggle source
# File lib/rename_movies.rb, line 28
def self.save_movie_info
  file_name = MOVIES_DIR + @data[:original_name] + "/info.yml"
  @logger.info(@data.to_yaml) if VERBOSE
  @logger.info("Saving :: #{file_name}")
  File.write(file_name, @data.to_yaml)
end