atm 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/bin/atm CHANGED
@@ -2,42 +2,4 @@
2
2
 
3
3
  require 'atm'
4
4
 
5
- include ATM
6
-
7
- case ARGV.first
8
-
9
- when "c", "console"
10
- ARGV.shift
11
- require 'irb'
12
- require 'irb/completion'
13
- IRB.start
14
-
15
- when "all"
16
- ATM::Task.all.each do |task|
17
- print "#{task.due} #{task.name}\n"
18
- end
19
-
20
- when nil, "now", "today"
21
- tasks = ATM::Task.all
22
-
23
- range_start = Time.new.beginning_of_day
24
- range_end = range_start + 1.day
25
-
26
- tasks.each do |task|
27
- if not task.due or ( range_start <= task.due and task.due < range_end )
28
- due = " "*5
29
- if task.due and task.due != ""
30
- if task.has_due_time
31
- due = task.due.localtime.strftime("%H:%M")
32
- else
33
- due = "today"
34
- end
35
- end
36
- print "#{due} #{task.name}\n"
37
- end
38
- end
39
-
40
- else
41
- print "TODO usage\n"
42
-
43
- end
5
+ ATM::CLI.run 'atm/cli', 'today'
data/lib/atm.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'atm/cli'
1
2
  require 'atm/ext'
2
3
  require 'atm/list'
3
4
  require 'atm/rtm'
@@ -0,0 +1,13 @@
1
+ module ATM
2
+ module CLI
3
+ def CLI.run(basedir, default = nil)
4
+ begin
5
+ command = ARGV.shift || default
6
+ throw LoadError unless /^\w*$/ =~ command
7
+ require basedir + '/' + command
8
+ rescue LoadError, ArgumentError
9
+ require basedir + '/usage'
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,5 @@
1
+ require 'atm'
2
+
3
+ ATM::Task.all.each do |task|
4
+ print "#{task.due} #{task.name}\n"
5
+ end
@@ -0,0 +1,7 @@
1
+ require 'atm'
2
+ require 'irb'
3
+ require 'irb/completion'
4
+
5
+ include ATM
6
+
7
+ IRB.start
@@ -0,0 +1,3 @@
1
+ require 'atm/cli'
2
+
3
+ ATM::CLI.run 'atm/cli/list'
@@ -0,0 +1,10 @@
1
+ require 'atm'
2
+
3
+ name = ARGV.join(' ')
4
+
5
+ if /./ =~ name
6
+ list = ATM::List.new :name => name
7
+ list.save!
8
+ else
9
+ print "Need to specify a name\n"
10
+ end
@@ -0,0 +1 @@
1
+ print "Command not found.\n"
@@ -0,0 +1,20 @@
1
+ require 'atm'
2
+
3
+ tasks = ATM::Task.all
4
+
5
+ range_start = Time.new.beginning_of_day
6
+ range_end = range_start + 1.day
7
+
8
+ tasks.each do |task|
9
+ if not task.due or ( range_start <= task.due and task.due < range_end )
10
+ due = " "*5
11
+ if task.due and task.due != ""
12
+ if task.has_due_time
13
+ due = task.due.localtime.strftime("%H:%M")
14
+ else
15
+ due = "today"
16
+ end
17
+ end
18
+ print "#{due} #{task.name}\n"
19
+ end
20
+ end
@@ -0,0 +1 @@
1
+ print "Command not found.\n"
@@ -2,7 +2,7 @@ require 'atm'
2
2
 
3
3
  module ATM
4
4
  class List
5
- attr_reader :taskseries, :id
5
+ attr_reader :taskseries, :id, :name
6
6
 
7
7
  def List.all
8
8
  lists = RTM.tasks.get_list.tasks.list.in_array
@@ -12,14 +12,28 @@ module ATM
12
12
  end
13
13
 
14
14
  def initialize(obj)
15
+ load_values obj
16
+ end
17
+
18
+ def load_values(obj)
15
19
  obj = Hashie::Mash.new obj
16
20
  @id = obj.id
21
+ @name = obj.name
17
22
  @taskseries = obj.taskseries.in_array.map do |t|
18
23
  t.list = self
19
24
  Taskseries.new t
20
25
  end
21
26
  end
22
27
 
28
+ def save!
29
+ if @id.nil?
30
+ rsp = RTM.lists.add :name => name
31
+ load_values rsp.list
32
+ else
33
+ throw NotImplementedError
34
+ end
35
+ end
36
+
23
37
  def delete!
24
38
  @taskseries.each do |task|
25
39
  taskseries.delete!
@@ -1,3 +1,3 @@
1
1
  module ATM
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: atm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-30 00:00:00.000000000 Z
12
+ date: 2012-07-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: hashie
@@ -43,6 +43,14 @@ files:
43
43
  - atm.gemspec
44
44
  - bin/atm
45
45
  - lib/atm.rb
46
+ - lib/atm/cli.rb
47
+ - lib/atm/cli/all.rb
48
+ - lib/atm/cli/console.rb
49
+ - lib/atm/cli/list.rb
50
+ - lib/atm/cli/list/new.rb
51
+ - lib/atm/cli/list/usage.rb
52
+ - lib/atm/cli/today.rb
53
+ - lib/atm/cli/usage.rb
46
54
  - lib/atm/ext.rb
47
55
  - lib/atm/list.rb
48
56
  - lib/atm/rtm.rb