effective_logging 3.0.5 → 3.0.10
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/README.md +6 -1
- data/app/datatables/effective_log_changes_datatable.rb +2 -1
- data/app/models/effective/log.rb +4 -0
- data/lib/effective_logging/active_record_logger.rb +5 -4
- data/lib/effective_logging/engine.rb +4 -4
- data/lib/effective_logging/set_current_user.rb +1 -1
- data/lib/effective_logging/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ced9c07cb086b859429b90b1ccbac95ae8e201b775bcd583b3d289004289094d
|
4
|
+
data.tar.gz: 7411b720f373bc75ad92be98649481daefc15755d972835909e65d272d243b40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: caef27d98294627b0a21fa7d6dee8ab0d08d86e8297eddcbfcc403724bbfb75ca79b317192ee96ef744704e88fd03a04b41a913289c7a6e1c92753a140640a38
|
7
|
+
data.tar.gz: 579cabf40e8107f4a44c23da05e87c7d6887c4e7604b265475a8a4ae6769f99ce421e3e358df70f1d56935e06724254ceebec651cf8a41f5935811d44ad5cff2
|
data/README.md
CHANGED
@@ -197,6 +197,12 @@ This logging includes the resource's base attributes, all autosaved associations
|
|
197
197
|
|
198
198
|
It will recurse through all accepts_nested_attributes has_many's and handle any number of child objects.
|
199
199
|
|
200
|
+
Add to your application controller:
|
201
|
+
|
202
|
+
```
|
203
|
+
around_action :set_effective_logging_current_user
|
204
|
+
```
|
205
|
+
|
200
206
|
Add to your model:
|
201
207
|
|
202
208
|
```ruby
|
@@ -371,4 +377,3 @@ MIT License. Copyright [Code and Effect Inc.](http://www.codeandeffect.com/)
|
|
371
377
|
4. Push to the branch (`git push origin my-new-feature`)
|
372
378
|
5. Bonus points for test coverage
|
373
379
|
6. Create new Pull Request
|
374
|
-
|
@@ -21,7 +21,8 @@ class EffectiveLogChangesDatatable < Effective::Datatable
|
|
21
21
|
end
|
22
22
|
|
23
23
|
end.search do |collection, term, column, sql_column|
|
24
|
-
|
24
|
+
ilike = effective_resource.ilike
|
25
|
+
collection.where("associated_type #{ilike} ? OR associated_to_s #{ilike} ? OR message #{ilike} ?", "%#{term}%", "%#{term}%", "%#{term}%")
|
25
26
|
end
|
26
27
|
|
27
28
|
col :details, visible: false, sort: false do |log|
|
data/app/models/effective/log.rb
CHANGED
@@ -43,6 +43,10 @@ module Effective
|
|
43
43
|
"Log #{id}"
|
44
44
|
end
|
45
45
|
|
46
|
+
def associated_to_s=(value)
|
47
|
+
super(value.to_s[0...255].presence) # Take only first 255 characters
|
48
|
+
end
|
49
|
+
|
46
50
|
def log(message, status = EffectiveLogging.statuses.first, options = {})
|
47
51
|
EffectiveLogger.log(message, status, (options || {}).merge(parent: self))
|
48
52
|
end
|
@@ -5,16 +5,17 @@ module EffectiveLogging
|
|
5
5
|
BLANK = "''"
|
6
6
|
BLACKLIST = [:updated_at, :created_at, :encrypted_password, :status_steps] # Don't log changes or attributes
|
7
7
|
|
8
|
-
|
8
|
+
# to, prefix, only, except
|
9
|
+
def initialize(object, args = {})
|
9
10
|
@object = object
|
10
11
|
@resource = Effective::Resource.new(object)
|
11
12
|
|
12
13
|
# Validate changes_to value
|
13
|
-
if to.present? && !@resource.belong_tos.map(&:name).include?(to)
|
14
|
-
raise ArgumentError.new("unable to find existing belongs_to relationship matching #{to}. Expected a symbol matching a belongs_to.")
|
14
|
+
if args[:to].present? && !@resource.belong_tos.map(&:name).include?(args[:to])
|
15
|
+
raise ArgumentError.new("unable to find existing belongs_to relationship matching #{args[:to]}. Expected a symbol matching a belongs_to.")
|
15
16
|
end
|
16
17
|
|
17
|
-
@options = { to: to, prefix: prefix, only: only, except: Array(except) + BLACKLIST }.compact
|
18
|
+
@options = { to: args[:to], prefix: args[:prefix], only: args[:only], except: Array(args[:except]) + BLACKLIST }.compact
|
18
19
|
end
|
19
20
|
|
20
21
|
# Effective::Log.where(message: 'Deleted').where('details ILIKE ?', '%lab_test_id: 263%')
|
@@ -1,11 +1,13 @@
|
|
1
1
|
require 'effective_logging/active_record_logger'
|
2
|
+
require 'effective_logging/email_logger'
|
3
|
+
require 'effective_logging/log_page_views'
|
4
|
+
require 'effective_logging/set_current_user'
|
5
|
+
require 'effective_logging/user_logger'
|
2
6
|
|
3
7
|
module EffectiveLogging
|
4
8
|
class Engine < ::Rails::Engine
|
5
9
|
engine_name 'effective_logging'
|
6
10
|
|
7
|
-
config.autoload_paths += Dir["#{config.root}/lib/"]
|
8
|
-
|
9
11
|
# Set up our default configuration options.
|
10
12
|
initializer "effective_logging.defaults", :before => :load_config_initializers do |app|
|
11
13
|
eval File.read("#{config.root}/config/effective_logging.rb")
|
@@ -14,7 +16,6 @@ module EffectiveLogging
|
|
14
16
|
# Automatically Log Emails
|
15
17
|
initializer 'effective_logging.emails' do |app|
|
16
18
|
if EffectiveLogging.email_enabled == true
|
17
|
-
require 'effective_logging/email_logger'
|
18
19
|
ActionMailer::Base.register_interceptor(EffectiveLogging::EmailLogger)
|
19
20
|
end
|
20
21
|
end
|
@@ -30,7 +31,6 @@ module EffectiveLogging
|
|
30
31
|
initializer 'effective_logging.log_changes_action_controller' do |app|
|
31
32
|
Rails.application.config.to_prepare do
|
32
33
|
ActiveSupport.on_load :action_controller do
|
33
|
-
require 'effective_logging/set_current_user'
|
34
34
|
ActionController::Base.include(EffectiveLogging::SetCurrentUser::ActionController)
|
35
35
|
end
|
36
36
|
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: 3.0.
|
4
|
+
version: 3.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Code and Effect
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -123,7 +123,7 @@ homepage: https://github.com/code-and-effect/effective_logging
|
|
123
123
|
licenses:
|
124
124
|
- MIT
|
125
125
|
metadata: {}
|
126
|
-
post_install_message:
|
126
|
+
post_install_message:
|
127
127
|
rdoc_options: []
|
128
128
|
require_paths:
|
129
129
|
- lib
|
@@ -138,8 +138,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: '0'
|
140
140
|
requirements: []
|
141
|
-
rubygems_version: 3.
|
142
|
-
signing_key:
|
141
|
+
rubygems_version: 3.1.2
|
142
|
+
signing_key:
|
143
143
|
specification_version: 4
|
144
144
|
summary: Automatically log all sent emails, user logins, and page views. This also
|
145
145
|
will log custom events from Ruby and JavaScript.
|