public_activity 0.5.1.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -88,6 +88,7 @@ module PublicActivity
88
88
  :recipient => options[:recipient],
89
89
  :parameters => options[:params]
90
90
  )
91
+ reset_activity_instance_options
91
92
  end
92
93
  end
93
94
 
@@ -106,12 +107,10 @@ module PublicActivity
106
107
  # key
107
108
  options = args.extract_options!
108
109
  action = (args.first || options[:action]).try(:to_s)
109
- if action.nil? and !options.has_key?(:key)
110
- raise NoKeyProvided, "No key provided for #{self.class.name}"
111
- end
112
- key = (options[:key] ||
113
- self.activity_key ||
114
- (self.class.name.parameterize('_') + "." + action.to_s)).to_s
110
+
111
+ key = extract_key(action, options)
112
+
113
+ raise NoKeyProvided, "No key provided for #{self.class.name}" unless key
115
114
 
116
115
  # user responsible for the activity
117
116
  owner = PublicActivity.resolve_value(self,
@@ -140,5 +139,22 @@ module PublicActivity
140
139
  :params => params
141
140
  }
142
141
  end
142
+
143
+ def extract_key(action, options)
144
+ (options[:key] ||
145
+ self.activity_key ||
146
+ ((self.class.name.underscore + "." + action.to_s) if action)).try(:to_s)
147
+ end
148
+
149
+ # Resets all instance options on the object
150
+ # triggered by a successful #create_activity, should not be
151
+ # called from any other place, or from application code.
152
+ # @private
153
+ def reset_activity_instance_options
154
+ @activity_params = {}
155
+ @activity_key = nil
156
+ @activity_owner = nil
157
+ @activity_recipient = nil
158
+ end
143
159
  end
144
160
  end
@@ -1,4 +1,4 @@
1
1
  module PublicActivity
2
2
  # A constant with gem's version
3
- VERSION = '0.5.1.1'
3
+ VERSION = '0.5.2'
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: public_activity
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1.1
4
+ version: 0.5.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-12-15 00:00:00.000000000 Z
13
+ date: 2012-12-22 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activerecord