Sha256: d08f60e6a08e312a4792983c843b99e93ca91ca1c148ff030cb9e069ebbaf572
Contents?: true
Size: 959 Bytes
Versions: 5
Compression:
Stored size: 959 Bytes
Contents
require 'todo-txt/list' require 'redpomo/task' module Redpomo class TaskList < Array def self.find(task_number) list = TaskList.new(Config.todo_path) list.find(task_number) end def self.pull_from_trackers! list = TaskList.new(Config.todo_path) list.pull_from_trackers! end def initialize(path) @path = path File.read(path).split("\n").each do |line| push Task.new(self, line) end end def find(task_number) slice(task_number.to_i - 1) end def remove!(task) delete(task) write! end def pull_from_trackers! issue_tasks = Tracker.all.map(&:issues).flatten.map(&:to_task) delete_if do |task| task.tracker.present? end self << issue_tasks self.flatten! write! end def write! File.open(@path, 'w') do |file| file.write map(&:orig).join("\n") + "\n" end end end end
Version data entries
5 entries across 5 versions & 1 rubygems