Sha256: 090c0b123255bb2215472441ba590b7cbebb5dda9dade1ee3d84c3521ee02c59

Contents?: true

Size: 1.46 KB

Versions: 1

Compression:

Stored size: 1.46 KB

Contents

#!/usr/bin/env ruby

require 'media/runner/version'
require 'rubygems'
require 'media/runner/printer'
require 'media/runner/episode'
require 'media/runner/movie'
require 'media/runner/app/args_sanitizer'
require 'media/runner/app/file_check'
require 'media/runner/app/media_paths'
require 'media/runner/app/vlc_check'

module Media
  class Run
    include ArgsSanitizer

    def start
      require 'commander/import'
      program :version, Media::Runner::VERSION
      program :description, 'Media Runner'

      command :series do |c|
        c.syntax = 'media-runner series [options]'
        c.summary = 'run an episode of a certain series'
        c.description = 'You can pass the an episode number and a series and run it with VLC.'
        c.example 'Run episode 1 of season 1 of Game of Thrones', 'media-runner series gameofthrones 101'
        c.action do |args|
          attributes = sanitize_series_args(args)
          episode = Episode.new(attributes[:series], attributes[:title])
          episode.run
        end
      end

      command :movie do |c|
        c.syntax = 'media-runner movie MOVIENAME'
        c.summary = 'run a movie'
        c.description = 'You can pass the name of a movie and run it with VLC.'
        c.example 'Run The Great Gatsby', 'media-runner movie thegreatgatsby'
        c.action do |args|
          attributes = sanitize_movie_args(args)
          movie = Movie.new(attributes[:title])
          movie.run
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
media-runner-1.0.3 lib/media/runner.rb