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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8f9e1486d4c3bf0fc430ed4f50b803e30afba2fe
|
4
|
+
data.tar.gz: 40e598aba305e9829ebf96629c1b18b2cf1cebcb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3c17e821361ed6f77c7cb934c5a39fdb532371128542e567703bd67d8eb3d1257ae4bee524ccbd1bfad4d909f04c421a19a23282f2b1433eb2d48eeac8092b51
|
7
|
+
data.tar.gz: 86e384b5ebff16315ddf1d7cbf7a325f409eacb63926309b69744b85f50a26951bc09e83aa09466ac55be67b513f5be2d3d4be9ea9e3c32975c3476e3765909c
|
@@ -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
|
-
|
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,
|
121
|
+
def log(message, details: {})
|
119
122
|
logger.logged_changes.build(
|
120
123
|
user: EffectiveLogging.current_user,
|
121
|
-
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 }
|