effective_logging 1.10.16 → 1.10.17

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fcaff27699ddd3c334777ddd01aedcf1c2d5bc9f
4
- data.tar.gz: 67b5881b597afefe2a8e8898431ecaa69b1c72a7
3
+ metadata.gz: 475fe3148755e9dacb3aaa3660f7a6759fd93e7e
4
+ data.tar.gz: 4193fd43358816ef6993e0cf5252e132558a8c30
5
5
  SHA512:
6
- metadata.gz: 6b5bb0f1e5b0a5c9a66b683585788868d9d3bac8443445dd48f58bb196f959f465c581c7b96714c5d50df55b19009c8904d960d7da2046df9712b0cc531b571c
7
- data.tar.gz: d48f46e7133f5dfb3a5b90de83a576d098f100c182a5c7c9a88682beed2598da19d859957f89cd0ddaca66612689aee07c395ee6e6b61dabfbb82a830f7e278e
6
+ metadata.gz: bb7409ef961e609c81dfcb7944996dd2ac3036fc165cfc75d72131b07401a60eabaf3ca2c21f2d145ad27e34bc9029ea2752947491bd53e3e2b855fed66c628f
7
+ data.tar.gz: b9265d6b45d7dafe9c59f850466fbe08885f2665fca31bdca5f82e13ee0d06cc5abcb14892bfef1501a36a69a78e6ee299c06da6b38ccbb058cd86e2fa866f20
@@ -17,9 +17,6 @@ module Effective
17
17
  log.status = (EffectiveLogging.statuses.include?(log_params[:status]) ? log_params[:status] : 'info')
18
18
  log.user = (current_user rescue nil)
19
19
 
20
- #log.parent = options.delete(:parent)
21
- #log.associated = options.delete(:associated)
22
-
23
20
  count = -1
24
21
  Array((JSON.parse(log_params[:details]) rescue [])).flatten(1).each do |obj|
25
22
  if obj.kind_of?(Hash)
@@ -29,12 +26,15 @@ module Effective
29
26
  end
30
27
  end
31
28
 
32
- log.details[:referrer] = request.referrer
29
+ # Match the referrer
30
+ log.details[:ip] ||= request.ip
31
+ log.details[:referrer] ||= request.referrer
32
+ log.details[:user_agent] ||= request.user_agent
33
33
 
34
34
  log.save
35
35
  end
36
36
 
37
- render :text => "ok", :status => :ok
37
+ render text: 'ok', status: :ok
38
38
  end
39
39
 
40
40
  # This is the User index event
@@ -42,7 +42,7 @@ module EffectiveLoggingHelper
42
42
 
43
43
  open = value.index('<!DOCTYPE html') || value.index('<html')
44
44
  close = value.rindex('</html>') if open.present?
45
- return format_resource_value(value) unless (open.present? && close.present?)
45
+ return format_log_details_resource_value(value) unless (open.present? && close.present?)
46
46
 
47
47
  before = value[0...open]
48
48
  after = value[(close+7)..-1]
@@ -60,4 +60,11 @@ module EffectiveLoggingHelper
60
60
  ].compact.join.html_safe
61
61
  end
62
62
 
63
+ def format_log_details_resource_value(value)
64
+ @format_resource_tags ||= ActionView::Base.sanitized_allowed_tags.to_a + ['table', 'thead', 'tbody', 'tfoot', 'tr', 'td', 'th']
65
+ @format_resource_atts ||= ActionView::Base.sanitized_allowed_attributes.to_a + ['colspan', 'rowspan']
66
+
67
+ simple_format(sanitize(value.to_s, tags: @format_resource_tags, attributes: @format_resource_atts), {}, sanitize: false)
68
+ end
69
+
63
70
  end
@@ -28,6 +28,14 @@ class EffectiveLogger
28
28
  log.associated_to_s ||= (log.associated.to_s rescue nil)
29
29
  end
30
30
 
31
+ if options[:request].present? && options[:request].respond_to?(:referrer)
32
+ request = options.delete(:request)
33
+
34
+ options[:ip] ||= request.ip
35
+ options[:referrer] ||= request.referrer
36
+ options[:user_agent] ||= request.user_agent
37
+ end
38
+
31
39
  log.details = options.delete_if { |k, v| v.blank? } if options.kind_of?(Hash)
32
40
 
33
41
  log.save
@@ -53,10 +53,9 @@ module EffectiveLogging
53
53
  ::EffectiveLogger.view(
54
54
  "#{request.request_method} #{request.path}",
55
55
  user: user,
56
- params: request.filtered_parameters.reject { |k, v| (k == 'controller' || k == 'action') },
57
56
  format: (request.format.to_s == 'text/html' ? nil : request.format.to_s),
58
- referrer: request.referrer,
59
- user_agent: request.user_agent
57
+ params: request.filtered_parameters.reject { |k, v| (k == 'controller' || k == 'action') },
58
+ request: request
60
59
  )
61
60
  end
62
61
  end
@@ -6,9 +6,7 @@ module EffectiveLogging
6
6
  ::EffectiveLogger.sign_in('Sign in',
7
7
  user: user,
8
8
  associated: user,
9
- ip: warden.request.ip.presence,
10
- referrer: warden.request.referrer,
11
- user_agent: warden.request.user_agent
9
+ request: warden.request
12
10
  )
13
11
  end
14
12
  end
@@ -19,9 +17,7 @@ module EffectiveLogging
19
17
  ::EffectiveLogger.sign_in('Sign in',
20
18
  user: user,
21
19
  associated: user,
22
- ip: warden.request.ip.presence,
23
- referrer: warden.request.referrer,
24
- user_agent: warden.request.user_agent,
20
+ request: warden.request,
25
21
  notes: 'after password reset'
26
22
  )
27
23
  end
@@ -1,3 +1,3 @@
1
1
  module EffectiveLogging
2
- VERSION = '1.10.16'.freeze
2
+ VERSION = '1.10.17'.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.10.16
4
+ version: 1.10.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect