Sha256: 91df67649c36b699adaed0c98fcc3518e40985f9a1854b033d866b22e0327a63

Contents?: true

Size: 811 Bytes

Versions: 1

Compression:

Stored size: 811 Bytes

Contents

# frozen_string_literal: true

require 'net/scp'
require 'net/ssh'

module MovieOrganizer
  class Movie < Media
    def initialize(filename, options)
      super
    end

    def process!
      target_dir = File.join(MovieOrganizer.movie_directory, "#{title} (#{year})")
      target_file = File.join(target_dir, processed_filename)
      logger.info("    target dir: [#{target_dir}]")
      logger.info("    target file: [#{target_file.green.bold}]")
      fc = FileCopier.new(filename, target_file, options)
      fc.copy
    end

    def processed_filename
      "#{title} (#{year})#{ext}"
    end

    def title
      ext_regex = Regexp.new(ext.sub(/\./, '\\.'))
      newbase = sanitize(
        basename.sub(/#{ext_regex}$/, '').sub(/\(?#{year}\)?/, '')
      )
      @title ||= newbase
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
movie_organizer-0.1.8 lib/movie_organizer/movie.rb