riaction 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,9 @@
1
1
  # CHANGELOG #
2
2
 
3
+ ## 1.2.1 ##
4
+
5
+ * Added rake task to run an event on all records in a class
6
+
3
7
  ## 1.2.0 ##
4
8
 
5
9
  * Added rspec matchers
data/README.md CHANGED
@@ -187,16 +187,21 @@ To see a report of all the profiles declared across your application, run the fo
187
187
 
188
188
  rake riaction:rails:list:profiles
189
189
 
190
- Finally, to process all of the models in your application that declare themselves as profiles and initialize them on IActionable (for instance if you've added IActionable to an existing application with an established user base), run the following:
190
+ To process all of the models in your application that declare themselves as profiles and initialize them on IActionable (for instance if you've added IActionable to an existing application with an established user base), run the following:
191
191
 
192
192
  rake riaction:rails:process:profiles
193
193
 
194
+ To run a specific event on all instances off a class that define that event:
195
+
196
+ rake riaction:rails:process:event['ClassName', :event_name]
197
+
194
198
  ----------------
195
199
 
196
200
  ## IActionable ##
197
201
 
198
202
  [Visit their website!](http://www.iactionable.com)
199
203
 
200
- ## Author ##
204
+ ## Authors ##
201
205
 
202
- Christopher Eberz; chris@chriseberz.com; @zortnac
206
+ Christopher Eberz; chris@chriseberz.com; @zortnac
207
+ Katie Miller; kmiller@elctech.com
@@ -1,3 +1,3 @@
1
1
  module Riaction
2
- VERSION = "1.2.0"
2
+ VERSION = "1.2.1"
3
3
  end
@@ -109,6 +109,36 @@ namespace 'riaction' do
109
109
  end
110
110
  end
111
111
  end
112
+
113
+ desc "Process a specified event on a specified class (requires EVENT_CLASS and EVENT_NAME)"
114
+ task :event => :environment do
115
+ klass_name = ENV['EVENT_CLASS']
116
+ event_symbol = ENV['EVENT_NAME'].to_sym
117
+ begin
118
+ if klass_name.constantize.riaction_events.has_key? event_symbol
119
+ klass_name.constantize.all.each do |record|
120
+ if record.riaction_log_event? event_symbol
121
+ profile_params = record.riaction_event_params[event_symbol][:profile]
122
+ event_params = record.riaction_event_params[event_symbol][:params].stringify_keys
123
+
124
+ IActionable::Api.new.log_event( profile_params[:type].to_s,
125
+ profile_params[:id_type].to_s,
126
+ profile_params[:id].to_s,
127
+ ENV['EVENT_NAME'].to_s,
128
+ event_params )
129
+ puts "Logged #{ENV['EVENT_NAME']} for #{record.id}"
130
+ else
131
+ puts "Event could not be logged for id:#{record.id}"
132
+ end
133
+ end
134
+ else
135
+ puts "'#{ENV['EVENT_NAME']}' is not a valid event"
136
+ end
137
+ rescue NameError => e
138
+ puts e
139
+ end
140
+ end
141
+
112
142
  end
113
143
  end
114
144
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: riaction
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-21 00:00:00.000000000Z
12
+ date: 2012-02-22 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &2160644000 !ruby/object:Gem::Requirement
16
+ requirement: &2160261380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '2.6'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *2160644000
24
+ version_requirements: *2160261380
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: sqlite3
27
- requirement: &2160643540 !ruby/object:Gem::Requirement
27
+ requirement: &2160260960 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2160643540
35
+ version_requirements: *2160260960
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: ruby-debug19
38
- requirement: &2160637060 !ruby/object:Gem::Requirement
38
+ requirement: &2160260500 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2160637060
46
+ version_requirements: *2160260500
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rake
49
- requirement: &2160636500 !ruby/object:Gem::Requirement
49
+ requirement: &2160260080 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *2160636500
57
+ version_requirements: *2160260080
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: activerecord
60
- requirement: &2160635460 !ruby/object:Gem::Requirement
60
+ requirement: &2160259520 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 3.0.0
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *2160635460
68
+ version_requirements: *2160259520
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: activesupport
71
- requirement: &2160634940 !ruby/object:Gem::Requirement
71
+ requirement: &2160258980 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 3.0.0
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *2160634940
79
+ version_requirements: *2160258980
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: resque
82
- requirement: &2160634560 !ruby/object:Gem::Requirement
82
+ requirement: &2160258500 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *2160634560
90
+ version_requirements: *2160258500
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: ruby-iactionable
93
- requirement: &2160633900 !ruby/object:Gem::Requirement
93
+ requirement: &2160257800 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,7 +98,7 @@ dependencies:
98
98
  version: 0.0.2
99
99
  type: :runtime
100
100
  prerelease: false
101
- version_requirements: *2160633900
101
+ version_requirements: *2160257800
102
102
  description: Wrapper for IActionable's restful API and an "acts-as" style interface
103
103
  for models to behave as profiles and drive game events.
104
104
  email: