effective_logging 1.7.0 → 1.7.1

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: ad0a757a423a0d5b68a2d92bb665772c2e5ca8c0
4
- data.tar.gz: 8d779cd00a570d021e4685dd2c3c6ab4235f97bc
3
+ metadata.gz: 8f9e1486d4c3bf0fc430ed4f50b803e30afba2fe
4
+ data.tar.gz: 40e598aba305e9829ebf96629c1b18b2cf1cebcb
5
5
  SHA512:
6
- metadata.gz: 722d36f2d30fe97be38fb6af0f4d0bde3e27595ebbc25cfe17de3c1805127984dec04e5af9692805639d6dc5e64588700c612c2814f0fdd9b88fd1bc752fd0cb
7
- data.tar.gz: 27bf043f29c30a5e71b4ae0e458cc8b1526ce3875879709ddd244681ca9150eb835d732b1db7ac8987640274e5f9ffb6f7333754360c368069b864ebbbe51d10
6
+ metadata.gz: 3c17e821361ed6f77c7cb934c5a39fdb532371128542e567703bd67d8eb3d1257ae4bee524ccbd1bfad4d909f04c421a19a23282f2b1433eb2d48eeac8092b51
7
+ data.tar.gz: 86e384b5ebff16315ddf1d7cbf7a325f409eacb63926309b69744b85f50a26951bc09e83aa09466ac55be67b513f5be2d3d4be9ea9e3c32975c3476e3765909c
@@ -29,7 +29,7 @@
29
29
  %strong User:
30
30
   
31
31
  = (log.user.to_s.starts_with?('#<User:0x') ? (log.user.email rescue log.user) : log.user)
32
- - if log.associated.present?
32
+ - if (log.associated.present? rescue false)
33
33
  %br
34
34
  %strong Regarding:
35
35
  &nbsp;
@@ -6,12 +6,15 @@ module EffectiveLogging
6
6
 
7
7
  def initialize(resource, options = {})
8
8
  raise ArgumentError.new('options must be a Hash') unless options.kind_of?(Hash)
9
- raise ArgumentError.new('logger must respond to logged_changes') unless (options[:logger] || resource).respond_to?(:logged_changes)
10
9
 
11
10
  @resource = resource
12
11
  @logger = options.delete(:logger) || resource
13
12
  @depth = options.delete(:depth) || 0
14
13
  @options = options
14
+
15
+ unless @logger.respond_to?(:logged_changes) || @logger.respond_to?(:trash)
16
+ raise ArgumentError.new('logger must respond to logged_changes or trash')
17
+ end
15
18
  end
16
19
 
17
20
  # execute! is called when we recurse, otherwise the following methods are best called individually
@@ -27,7 +30,7 @@ module EffectiveLogging
27
30
 
28
31
  # before_destroy
29
32
  def trashed!
30
- log((resource.to_s rescue ''), status: EffectiveLogging.trashable_status, details: applicable(attributes))
33
+ log_trash((resource.to_s rescue ''), details: applicable(attributes))
31
34
  end
32
35
 
33
36
  # before_destroy
@@ -115,10 +118,19 @@ module EffectiveLogging
115
118
 
116
119
  private
117
120
 
118
- def log(message, status: EffectiveLogging.log_changes_status, details: {})
121
+ def log(message, details: {})
119
122
  logger.logged_changes.build(
120
123
  user: EffectiveLogging.current_user,
121
- status: status,
124
+ status: EffectiveLogging.log_changes_status,
125
+ message: "#{"\t" * depth}#{options[:prefix]}#{message}",
126
+ details: details
127
+ ).tap { |log| log.save }
128
+ end
129
+
130
+ def log_trash(message, details: {})
131
+ logger.build_trash(
132
+ user: EffectiveLogging.current_user,
133
+ status: EffectiveLogging.trashable_status,
122
134
  message: "#{"\t" * depth}#{options[:prefix]}#{message}",
123
135
  details: details
124
136
  ).tap { |log| log.save }
@@ -1,3 +1,3 @@
1
1
  module EffectiveLogging
2
- VERSION = '1.7.0'.freeze
2
+ VERSION = '1.7.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_logging
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect