redcrumbs 0.2.3 → 0.2.4

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.
@@ -6,12 +6,12 @@ module Redcrumbs
6
6
  if !self.stored_subject.blank?
7
7
  subject_from_storage
8
8
  elsif subject_type && subject_id
9
- self._subject ||= full_subject
9
+ full_subject
10
10
  end
11
11
  end
12
12
 
13
13
  def full_subject
14
- subject_type.classify.constantize.find(subject_id)
14
+ self._subject ||= subject_type.classify.constantize.find(subject_id)
15
15
  end
16
16
 
17
17
  def subject_from_storage
@@ -24,7 +24,7 @@ module Redcrumbs
24
24
  if !self.stored_creator.blank?
25
25
  creator_class.new(self.stored_creator)
26
26
  elsif !self.creator_id.blank?
27
- self._creator ||= full_creator
27
+ full_creator
28
28
  end
29
29
  end
30
30
 
@@ -33,19 +33,19 @@ module Redcrumbs
33
33
  end
34
34
 
35
35
  def full_creator
36
- creator_class.where(Redcrumbs.creator_primary_key => self.creator_id).first
36
+ self._creator = creator_class.where(Redcrumbs.creator_primary_key => self.creator_id).first
37
37
  end
38
38
 
39
39
  def target
40
40
  if !self.stored_target.blank?
41
41
  target_class.new(self.stored_target)
42
42
  elsif !self.target_id.blank?
43
- self._target ||= full_target
43
+ full_target
44
44
  end
45
45
  end
46
46
 
47
47
  def target_class
48
- Redcrumbs.target_class_sym.to_s.classify.constantize
48
+ self._target ||= Redcrumbs.target_class_sym.to_s.classify.constantize
49
49
  end
50
50
 
51
51
  def full_target
@@ -3,6 +3,7 @@ module Redcrumbs
3
3
  extend ActiveSupport::Concern
4
4
 
5
5
  def subject=(subject)
6
+ self._subject = subject
6
7
  self.stored_subject = subject.storeable_attributes
7
8
  self.subject_type = subject.class.to_s
8
9
  self.subject_id = subject.id
@@ -10,6 +11,7 @@ module Redcrumbs
10
11
 
11
12
  def creator=(creator)
12
13
  unless !creator
14
+ self._creator = creator
13
15
  self.stored_creator = creator.attributes.select {|attribute| Redcrumbs.store_creator_attributes.include?(attribute.to_sym)}
14
16
  self.creator_id = creator[Redcrumbs.creator_primary_key]
15
17
  end
@@ -17,6 +19,7 @@ module Redcrumbs
17
19
 
18
20
  def target=(target)
19
21
  unless !target
22
+ self._target = target
20
23
  self.stored_target = target.attributes.select {|attribute| Redcrumbs.store_target_attributes.include?(attribute.to_sym)}
21
24
  self.target_id = target[Redcrumbs.target_primary_key]
22
25
  end
@@ -36,8 +36,8 @@ module Redcrumbs
36
36
 
37
37
  def initialize(params = {})
38
38
  if self.subject = params[:subject]
39
- self.target = self.subject.target if self.subject.respond_to?(:target)
40
- self.creator = self.subject.creator if self.subject.respond_to?(:creator)
39
+ self.target = self.full_subject.target if self.subject.respond_to?(:target)
40
+ self.creator = self.full_subject.creator if self.subject.respond_to?(:creator)
41
41
  end
42
42
  self.modifications = params[:modifications] unless !params[:modifications]
43
43
  end
@@ -1,3 +1,3 @@
1
1
  module Redcrumbs
2
- VERSION = "0.2.3"
2
+ VERSION = "0.2.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redcrumbs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-26 00:00:00.000000000 +01:00
12
+ date: 2012-06-29 00:00:00.000000000 +01:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: data_mapper
17
- requirement: &2152999000 !ruby/object:Gem::Requirement
17
+ requirement: &2168944780 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: 1.2.0
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *2152999000
25
+ version_requirements: *2168944780
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: dm-redis-adapter
28
- requirement: &2152998500 !ruby/object:Gem::Requirement
28
+ requirement: &2168944280 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: 0.6.2
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *2152998500
36
+ version_requirements: *2168944280
37
37
  description: Fast and unobtrusive activity tracking of ActiveRecord models using DataMapper
38
38
  and Redis
39
39
  email: