ruby-wunderlist 0.1 → 0.2.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/wunderlist/list.rb +33 -7
  2. metadata +12 -12
@@ -22,7 +22,39 @@
22
22
  # SOFTWARE.
23
23
 
24
24
  module Wunderlist
25
- class List
25
+ class FilterableList
26
+ attr_accessor :tasks
27
+
28
+ def initialize(tasks = [])
29
+ @tasks = tasks
30
+ end
31
+
32
+ def today
33
+ FilterableList.new(tasks.clone.keep_if do |t|
34
+ t.date == Date.today && !t.done
35
+ end)
36
+ end
37
+
38
+ def priority
39
+ FilterableList.new(tasks.clone.keep_if do |t|
40
+ t.important && !t.done
41
+ end)
42
+ end
43
+
44
+ def done
45
+ FilterableList.new(tasks.clone.keep_if do |t|
46
+ t.done == true
47
+ end)
48
+ end
49
+
50
+ def overdue
51
+ FilterableList.new(tasks.clone.keep_if do |t|
52
+ t.date && t.date < Date.today && !t.done
53
+ end)
54
+ end
55
+ end
56
+
57
+ class List < FilterableList
26
58
  attr_accessor :id, :name, :inbox, :shared, :api
27
59
 
28
60
  def initialize(name = nil, inbox = nil, api = nil)
@@ -40,12 +72,6 @@ module Wunderlist
40
72
  Wunderlist::Task.new(name, date, self, @api).save
41
73
  end
42
74
 
43
- def today
44
- tasks.clone.keep_if do |t|
45
- t.date == Date.today
46
- end
47
- end
48
-
49
75
  def save(api = nil)
50
76
  @api ||= api
51
77
  @api.save(self)
metadata CHANGED
@@ -1,19 +1,19 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-wunderlist
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.1'
5
- prerelease:
4
+ version: 0.2.pre
5
+ prerelease: 4
6
6
  platform: ruby
7
7
  authors:
8
8
  - Fritz Grimpen
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-10-24 00:00:00.000000000 Z
12
+ date: 2011-11-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
16
- requirement: &71670180 !ruby/object:Gem::Requirement
16
+ requirement: &73021500 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *71670180
24
+ version_requirements: *73021500
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: nokogiri
27
- requirement: &74262110 !ruby/object:Gem::Requirement
27
+ requirement: &73021260 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,17 +32,17 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *74262110
35
+ version_requirements: *73021260
36
36
  description:
37
37
  email: fritz+wunderlist@grimpen.net
38
38
  executables: []
39
39
  extensions: []
40
40
  extra_rdoc_files: []
41
41
  files:
42
- - lib/wunderlist/list.rb
43
- - lib/wunderlist/task.rb
44
- - lib/wunderlist/api.rb
45
42
  - lib/wunderlist.rb
43
+ - lib/wunderlist/api.rb
44
+ - lib/wunderlist/task.rb
45
+ - lib/wunderlist/list.rb
46
46
  homepage: http://grimpen.net/wunderlist
47
47
  licenses:
48
48
  - MIT
@@ -59,9 +59,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
59
59
  required_rubygems_version: !ruby/object:Gem::Requirement
60
60
  none: false
61
61
  requirements:
62
- - - ! '>='
62
+ - - ! '>'
63
63
  - !ruby/object:Gem::Version
64
- version: '0'
64
+ version: 1.3.1
65
65
  requirements: []
66
66
  rubyforge_project:
67
67
  rubygems_version: 1.8.10