action_tracker 0.1.0.4 → 0.1.0.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ca216a7f089af0698cc33011d093feb69490860c
4
- data.tar.gz: da50b64e31e0ebcfd3c8664070e09c161e7e4c78
3
+ metadata.gz: e0aa0ea9491284d33c73273a8004424199fc0072
4
+ data.tar.gz: 349a3e5e5dce692e4fc60211e2d6a7b62f51e728
5
5
  SHA512:
6
- metadata.gz: 3bf5d2242306b8f9c89e6738fa2aec7ed4c935ff5243b03acae68a6cbe2712f558505e222398f1e12e3fd1e7d9d752ea7fc61161baa8a0bf65b0249ee83783b7
7
- data.tar.gz: af2c98a243dfaaa4b15dfc01eedd6f506671c335bc5184a6101d097f648b08bb640f5bc7efb7c089d402c6789794011943c74226ff021da80f10012ac962476e
6
+ metadata.gz: d22679f53c22c92968a7ceb7027b73609c16c1653106cac6d74932284e60fc0626144339d41294b2220b9818cd19ad66c82578f3fac937141ccb247ad04d5f42
7
+ data.tar.gz: 8df94803bd46acc2a0551a60c88c3854c1dcf0848943913c3d6a53cda684a1c81d80b3ab5566c861d330519add47d214d7ee74260075c1a870ad3232ba8a6a20
@@ -1,15 +1,21 @@
1
1
  module ActionTracker
2
2
  # nodoc
3
3
  class Base
4
- attr_reader :params, :resource
4
+ attr_reader :kontroller, :resource
5
5
 
6
- def initialize(resource, params)
6
+ def initialize(resource, kontroller)
7
7
  @resource = resource
8
- @params = params
8
+ @kontroller = kontroller
9
+ init_instance_variables if kontroller
9
10
  end
10
11
 
11
- def user
12
- @resource
12
+ private
13
+
14
+ def init_instance_variables
15
+ kontroller.instance_variables.each do |instance_var|
16
+ instance_variable_set(instance_var, kontroller.instance_variable_get(instance_var))
17
+ end
13
18
  end
19
+
14
20
  end
15
21
  end
@@ -14,8 +14,7 @@ module ActionTracker
14
14
 
15
15
  def track_event
16
16
  session[:action_tracker] ||= []
17
- output = tracker_params
18
- session[:action_tracker] << output unless output.blank?
17
+ session[:action_tracker] << tracker_params unless tracker_params.blank?
19
18
  end
20
19
 
21
20
  private
@@ -37,14 +36,13 @@ module ActionTracker
37
36
  end
38
37
 
39
38
  def tracker_instance
40
- @tracker_instance ||= Object.const_get(tracker_klass, false).new(resource, params)
39
+ @tracker_instance ||= Object.const_get(tracker_klass, false).new(resource, self)
41
40
  rescue NameError
42
41
  nil
43
42
  end
44
43
 
45
44
  def tracker_params
46
- return nil unless tracker_exists?
47
- tracker_instance.method(action_name).call
45
+ @tracker_params ||= tracker_exists? ? tracker_instance.method(action_name).call : nil
48
46
  end
49
47
 
50
48
  def tracker_exists?
@@ -3,7 +3,7 @@ module ActionTracker
3
3
  # nodoc
4
4
  module Render
5
5
  def track_event
6
- output = session[:action_tracker].to_s
6
+ output = session[:action_tracker].flatten.to_s
7
7
  session[:action_tracker] = nil
8
8
  output
9
9
  end
@@ -1,3 +1,3 @@
1
1
  module ActionTracker
2
- VERSION = "0.1.0.4"
2
+ VERSION = "0.1.0.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: action_tracker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.4
4
+ version: 0.1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - André Taiar
@@ -155,7 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
155
155
  version: '0'
156
156
  requirements: []
157
157
  rubyforge_project:
158
- rubygems_version: 2.4.8
158
+ rubygems_version: 2.4.5
159
159
  signing_key:
160
160
  specification_version: 4
161
161
  summary: Easy way to track actions in your application.