carazel 0.1.1 → 0.2.0
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/VERSION +1 -1
- data/carazel.gemspec +2 -2
- data/lib/carazel.rb +68 -15
- metadata +5 -5
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.2.0
|
data/carazel.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{carazel}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Matt Mueller"]
|
12
|
-
s.date = %q{2010-10-
|
12
|
+
s.date = %q{2010-10-29}
|
13
13
|
s.description = %q{"Nothing to see here"}
|
14
14
|
s.email = %q{muellermr@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
data/lib/carazel.rb
CHANGED
@@ -6,6 +6,8 @@ class Carazel
|
|
6
6
|
include HTTParty
|
7
7
|
base_uri 'dispatcher.carazel.com'
|
8
8
|
|
9
|
+
#Find and show users
|
10
|
+
|
9
11
|
def users
|
10
12
|
results = self.class.get('/users')
|
11
13
|
Hashie::Mash.new(results).users
|
@@ -16,34 +18,85 @@ class Carazel
|
|
16
18
|
Hashie::Mash.new(results).users rescue results
|
17
19
|
end
|
18
20
|
|
19
|
-
|
20
|
-
|
21
|
+
#Find and show rewards as well as a given user's rewards
|
22
|
+
|
23
|
+
def rewards(type=nil)
|
24
|
+
if type.nil?
|
25
|
+
results = self.class.get("/rewards/search")
|
26
|
+
else
|
27
|
+
results = self.class.get("/rewards/search?type=type")
|
28
|
+
end
|
29
|
+
results.collect{|r| Hashie::Mash.new(r['reward'])}
|
30
|
+
end
|
31
|
+
|
32
|
+
def reward(id, reward_type)
|
33
|
+
results = self.class.get("/rewards/show?id=#{id}&reward_type=#{reward_type}")
|
34
|
+
Hashie::Mash.new(results.first['reward'])
|
35
|
+
end
|
36
|
+
|
37
|
+
def user_rewards(id, reward_type=nil)
|
38
|
+
query = self.build_query_string([['id=',id],['reward_type=',reward_type]])
|
39
|
+
results = self.class.get("/users/rewards?#{query}").first
|
21
40
|
Hashie::Mash.new(results).rewards rescue results
|
22
41
|
end
|
23
42
|
|
43
|
+
|
44
|
+
#Find and show places
|
45
|
+
|
24
46
|
def place(id)
|
25
47
|
results = self.class.get("/places/show?id=#{id}")
|
26
48
|
Hashie::Mash.new(results.first['place']) rescue results
|
27
49
|
end
|
28
50
|
|
29
|
-
def places(lat,lon,
|
30
|
-
|
31
|
-
|
51
|
+
def places(lat,lon,term=nil)
|
52
|
+
query = self.build_query_string([['lat=',lat],['lon=',lon],['query=',term]])
|
53
|
+
results = self.class.get("/places/search?#{query}").collect{|r| Hashie::Mash.new(r['place'])}
|
54
|
+
end
|
55
|
+
|
56
|
+
#Find and show activities as well as a given user's activities
|
57
|
+
|
58
|
+
def activities(type=nil, limit=nil)
|
59
|
+
if type.nil? && limit.nil?
|
60
|
+
results = self.class.get("/activities/search")
|
32
61
|
else
|
33
|
-
|
62
|
+
query = self.build_query_string([['type=',type],['limit=',limit]])
|
63
|
+
results = self.class.get("/activities/search?#{query}")
|
34
64
|
end
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
65
|
+
activities = results.collect{|r| Hashie::Mash.new(r['activity'])}
|
66
|
+
end
|
67
|
+
|
68
|
+
def activity(id)
|
69
|
+
results = self.class.get("/activities/show?id=#{id}")
|
70
|
+
Hashie::Mash.new(results.first['activity'])
|
41
71
|
end
|
42
72
|
|
43
|
-
def
|
44
|
-
|
73
|
+
def user_activities(id, since, activity_type=nil)
|
74
|
+
query = self.build_query_string([['id=',id],['since=',since],['activity_type=',activity_type]])
|
75
|
+
results = self.class.get("/users/activities?#{query}")
|
45
76
|
Hashie::Mash.new(results[0]).activities rescue results
|
46
77
|
end
|
47
|
-
|
78
|
+
|
79
|
+
#Find and show lbs checkins as well as a given user's lbs checkins
|
80
|
+
|
81
|
+
def checkins(id=nil, since=nil, offset=nil)
|
82
|
+
query = self.build_query_string([['user_id=',id],['since=',since],['offset=',offset]])
|
83
|
+
results = self.class.get("/lbs_checkins/search?#{query}").collect{|r| Hashie::Mash.new(r['lbs_checkin'])}
|
84
|
+
end
|
85
|
+
|
86
|
+
def checkin(id)
|
87
|
+
results = self.class.get("/lbs_checkins/show?id=#{id}")
|
88
|
+
Hashie::Mash.new(results.first['lbs_checkin'])
|
89
|
+
end
|
90
|
+
|
91
|
+
def user_checkins(id, since=nil, offset=nil)
|
92
|
+
query = self.build_query_string([['user_id=',id],['since=',since],['offset=',offset]])
|
93
|
+
results = self.class.get("/lbs_checkins/search?#{query}").collect{|r| Hashie::Mash.new(r['lbs_checkin'])}
|
94
|
+
end
|
95
|
+
|
96
|
+
#Build query string for queries with multiple combinations of values
|
97
|
+
|
98
|
+
def build_query_string(variables)
|
99
|
+
variables.reject{|v| v[1].nil?}.collect{|r| r.join('')}.join('&')
|
100
|
+
end
|
48
101
|
end
|
49
102
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: carazel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 23
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 2
|
9
|
+
- 0
|
10
|
+
version: 0.2.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Matt Mueller
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-10-
|
18
|
+
date: 2010-10-29 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|