effective_logging 3.1.2 → 3.1.7
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 +4 -4
- data/app/controllers/effective/logs_controller.rb +1 -1
- data/lib/effective_logging/active_record_logger.rb +3 -0
- data/lib/effective_logging/active_storage_logger.rb +3 -0
- data/lib/effective_logging/email_logger.rb +18 -9
- data/lib/effective_logging/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c41ed5f5f39a3dc24c63161bf07ea763351a611bee78aceb325c5a09126b5f60
|
4
|
+
data.tar.gz: fb4bc4163aca3521fcf0bfa23a8253950743fd16696224911d8b431dd1f37cf0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 171973db5f9b0be2b3e2e91923df44767ed9cf787c629833370bbfb45ee8d31301edb6e5a2212768825a1742a87bd39a84915045a5badabded05cb66fc86ff1a
|
7
|
+
data.tar.gz: b858a335ca8fc2f780fdfb5c056078ea40a0113d6f19078942a179fb54c690cf3ab9f090ec684a94d7e1d4d51cdf51b4622b2af1a3efc0c38ceccd469c340aca
|
@@ -33,6 +33,9 @@ module EffectiveLogging
|
|
33
33
|
return true if changes.blank? # If you just click save and change nothing, don't log it.
|
34
34
|
|
35
35
|
message = (['Updated'] + changes.map do |attribute, (before, after)|
|
36
|
+
before = "HTML content (#{before.length})" if before.kind_of?(String) && before.include?('<div')
|
37
|
+
after = "HTML content (#{after.length})" if after.kind_of?(String) && after.include?('<div')
|
38
|
+
|
36
39
|
"#{attribute}: #{before.presence || BLANK} → #{after.presence || BLANK}"
|
37
40
|
end).join("\n")
|
38
41
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module EffectiveLogging
|
2
4
|
module ActiveStorageLogger
|
3
5
|
|
@@ -6,6 +8,7 @@ module EffectiveLogging
|
|
6
8
|
|
7
9
|
key = decode_verified_key()
|
8
10
|
return unless key.present?
|
11
|
+
return if (key[:content_type] || '').starts_with?('image')
|
9
12
|
|
10
13
|
blob = ActiveStorage::Blob.where(key: key[:key]).first
|
11
14
|
return unless blob.present?
|
@@ -8,22 +8,31 @@ module EffectiveLogging
|
|
8
8
|
fields = { from: message.from.join(','), to: message.to, subject: message.subject, cc: message.cc, bcc: message.bcc }
|
9
9
|
|
10
10
|
# Add a log header to your mailer to pass some objects or additional things to EffectiveLogger
|
11
|
-
# mail(to: 'admin@example.com', subject: @post.title, log:
|
12
|
-
if message.header['log'].present?
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
# Get rid of the extra header, as it should not be set in the real mail message.
|
11
|
+
# mail(to: 'admin@example.com', subject: @post.title, log: @post)
|
12
|
+
log = if message.header['log'].present?
|
13
|
+
value = message.header['log'].instance_variable_get(:@unparsed_value)
|
14
|
+
value ||= message.header['log'].instance_variable_get(:@value)
|
17
15
|
message.header['log'] = nil
|
16
|
+
value
|
17
|
+
end
|
18
|
+
|
19
|
+
if log.present?
|
20
|
+
if log.kind_of?(ActiveRecord::Base)
|
21
|
+
fields.merge!(associated: log)
|
22
|
+
elsif log.kind_of?(Hash)
|
23
|
+
fields.merge!(log)
|
24
|
+
else
|
25
|
+
raise('log expected an ActiveRecord object or Hash')
|
26
|
+
end
|
18
27
|
end
|
19
28
|
|
20
29
|
# Pass a tenant to your mailer
|
21
30
|
# mail(to: 'admin@example.com', subject: @post.title, tenant: Tenant.current)
|
22
|
-
tenant = if message.header['tenant'].present?
|
31
|
+
tenant = if message.header['tenant'].present? && defined?(Tenant)
|
23
32
|
value = message.header['tenant'].to_s.to_sym # OptionalField, not a String here
|
24
33
|
message.header['tenant'] = nil
|
25
34
|
value
|
26
|
-
end
|
35
|
+
end
|
27
36
|
|
28
37
|
user_klass = "#{tenant.to_s.classify}::User".safe_constantize
|
29
38
|
|
@@ -49,7 +58,7 @@ module EffectiveLogging
|
|
49
58
|
tos.each do |to|
|
50
59
|
user = (user_klass.where(email: to.downcase).first if user_klass.present?)
|
51
60
|
|
52
|
-
user_fields = fields.merge(to: to, user: user
|
61
|
+
user_fields = fields.merge(to: to, user: user)
|
53
62
|
::EffectiveLogger.email("#{message.subject} - #{tos.join(', ')}", user_fields)
|
54
63
|
end
|
55
64
|
|
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: 3.1.
|
4
|
+
version: 3.1.7
|
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: 2021-
|
11
|
+
date: 2021-03-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|