effective_logging 1.10.10 → 1.10.11

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 36b5a7ee3912d627929363f7ec120d03bf76c2be
4
- data.tar.gz: 23ff0c91d1e0722891f90d1c4e634f51b8e7211d
3
+ metadata.gz: fbbfbe91d61687d687bec5a337dc552ffbf03487
4
+ data.tar.gz: 6f5e24fd9cef93e38076cea14f5f713ff1cf6874
5
5
  SHA512:
6
- metadata.gz: 28905e79a34fd949c5675a5b1f6c27979a9bb7d40172c41f4c012201d26a7786627577b6b415338b9f798394085a2c0a69a905f6786ffe09d9de82c1242f7205
7
- data.tar.gz: ffeb205f6b400ba6e6c6b2fbb1bff92ef8454a453c7ed56549229d7abb39a8549c61ec6616d5abf65beb5ef3fe06c9cfe5da7472957f44f4fefbd942673a8321
6
+ metadata.gz: 1848b493da8d7b38b0725908fd820d3c26a0c15d0a7ed4d03957b413e0cd59f666592f77bb13cdca6daa44d46ea0ab51662e6def9d1af33b61415635929a6e30
7
+ data.tar.gz: f2cd75738f9dbf511a7a11c5bdce5f4fe9697071b356914bfc4e9838be7cc5b83ab3bfe1d82f21dad5fa4ea08414cb54e5c40e8b7d92a8f0f3615598da118ce9
@@ -20,7 +20,7 @@ module ActsAsLoggable
20
20
  @acts_as_loggable_new_record = new_record?
21
21
 
22
22
  unless @acts_as_loggable_new_record
23
- @acts_as_loggable_update_record = EffectiveLogging::ActiveRecordLogger.new(self, log_changes_options).changed!
23
+ @acts_as_loggable_update_record = EffectiveLogging::ActiveRecordLogger.new(self, log_changes_options).execute!
24
24
  end
25
25
 
26
26
  block.call
@@ -1,4 +1,4 @@
1
- class CreateEffectiveLogging < ActiveRecord::Migration
1
+ class CreateEffectiveLogging < ActiveRecord::Migration[4.2]
2
2
  def self.up
3
3
  create_table <%= @logs_table_name %> do |t|
4
4
  t.integer :parent_id
@@ -9,6 +9,7 @@ module EffectiveLogging
9
9
 
10
10
  @object = object
11
11
  @resource = Effective::Resource.new(object)
12
+ @logged = false # If work was done
12
13
 
13
14
  @logger = options.delete(:logger) || object
14
15
  @depth = options.delete(:depth) || 0
@@ -26,6 +27,9 @@ module EffectiveLogging
26
27
  else
27
28
  changed!
28
29
  end
30
+ log_nested_resources!
31
+
32
+ @logged
29
33
  end
30
34
 
31
35
  # before_destroy
@@ -43,7 +47,8 @@ module EffectiveLogging
43
47
  log('Updated', details: applicable(resource.instance_attributes))
44
48
  end
45
49
 
46
- # before_save
50
+ private
51
+
47
52
  def changed!
48
53
  applicable(resource.instance_changes).each do |attribute, (before, after)|
49
54
  next if before == nil && after == ''.freeze
@@ -62,21 +67,19 @@ module EffectiveLogging
62
67
 
63
68
  log("#{attribute}: #{before.presence || BLANK} &rarr; #{after.presence || BLANK}", details: { attribute: attribute, before: before, after: after })
64
69
  end
70
+ end
65
71
 
72
+ def log_nested_resources!
66
73
  # Log changes on all accepts_as_nested_parameters has_many associations
67
74
  resource.nested_resources.each do |association|
68
75
  title = association.name.to_s.singularize.titleize
69
76
 
70
77
  Array(object.send(association.name)).each_with_index do |child, index|
71
- @logged ||= ActiveRecordLogger.new(child, options.merge(logger: logger, depth: (depth + 1), prefix: "#{title} #{index} - #{child} - ")).execute!
78
+ @logged = true if ActiveRecordLogger.new(child, options.merge(logger: logger, depth: depth+1, prefix: "#{title} #{index} - #{child} - ")).execute!
72
79
  end
73
80
  end
74
-
75
- @logged == true
76
81
  end
77
82
 
78
- private
79
-
80
83
  def log(message, details: {})
81
84
  @logged = true
82
85
 
@@ -1,3 +1,3 @@
1
1
  module EffectiveLogging
2
- VERSION = '1.10.10'.freeze
2
+ VERSION = '1.10.11'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_logging
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.10
4
+ version: 1.10.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-05-23 00:00:00.000000000 Z
11
+ date: 2017-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails