Sha256: 8f1b5e33efd1a406a8e52f65a2456763945dd2ebfbe2f2db64ff4b1996e948ff

Contents?: true

Size: 1.46 KB

Versions: 11

Compression:

Stored size: 1.46 KB

Contents

require 'colorize'

require 'task_manager/version'

require 'task_manager/task'

require 'task_manager/task_file'
require 'task_manager/new_task_file'
require 'task_manager/current_task_file'
require 'task_manager/done_task_file'

require 'task_manager/format'

require 'task_manager/cli'

module TaskManager
  def self.add(name, score = 0)
    task = NewTaskFile.new.add(Task.new(name, score))
    print('Added new task:'.colorize(:light_cyan))
    print_task(task)
  end

  def self.pick(id)
    task = NewTaskFile.new.pick(id)
    CurrentTaskFile.new.add(task)
    print('Picked task:'.colorize(:light_cyan))
    print_task(task)
  end

  def self.current
    task = CurrentTaskFile.new.current
    print('Current task:'.colorize(:light_cyan))
    print_task(task)
  end

  def self.finish
    task = CurrentTaskFile.new.pick
    DoneTaskFile.new.add(task)
    print('Finished task:'.colorize(:light_green))
    print_task(task)
  end

  def self.stats
    print('Waiting tasks:'.colorize(:light_cyan))
    NewTaskFile.new.all.each do |task|
      print_task(task)
    end
    print('')

    print('Current task:'.colorize(:light_cyan))
    CurrentTaskFile.new.all.each do |task|
      print_task(task)
    end
    print('')

    print('Done tasks:'.colorize(:light_cyan))
    DoneTaskFile.new.all.each do |task|
      print_task(task)
    end
  end

  private

  def self.print(sentence)
    $stdout.puts sentence
  end

  def self.print_task(task)
    Format.new(task).print_output
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
task_manager2-0.0.11 lib/task_manager.rb
task_manager2-0.0.10 lib/task_manager.rb
task_manager2-0.0.9 lib/task_manager.rb
task_manager2-0.0.8 lib/task_manager.rb
task_manager2-0.0.7 lib/task_manager.rb
task_manager2-0.0.6 lib/task_manager.rb
task_manager2-0.0.5 lib/task_manager.rb
task_manager2-0.0.4 lib/task_manager.rb
task_manager2-0.0.3 lib/task_manager.rb
task_manager2-0.0.2 lib/task_manager.rb
task_manager2-0.0.1 lib/task_manager.rb