paper_trail-rails 0.3.0 → 0.4.0
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/Changelog.md +7 -0
- data/Readme.md +1 -0
- data/lib/paper_trail/rails/configuration.rb +6 -2
- data/lib/paper_trail/rails/console.rb +2 -2
- data/lib/paper_trail/rails/general.rb +13 -5
- data/lib/paper_trail/rails/version.rb +1 -1
- data/paper_trail-rails.gemspec +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: 46c7ec10c6ff25dde513b4bbc0201aa897d8d6dab53eb68403704c687ba67050
|
4
|
+
data.tar.gz: 75825da982f15ad55fec3e28bd233d2553f4b80f70c5ec37e5f2ce64d0730bd2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2e4b492d8a3015449bedfe712c97a66d30fa3157a4b62a45d6e65d91c89044adc5ad384b8fe3258ad1ca9a8b306f764c8ffac9fd327ff5bca9d794b8a7b4235
|
7
|
+
data.tar.gz: d5878b0446630d09ade880658c9b8a4cedfca0c79c3af55d420d989a852f6f8acd5f28b8dca313aae79d433d040113a05e2e4e4648c9bdc77172fa281d212864
|
data/Changelog.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
## 0.4.0 (2020-04-23)
|
2
|
+
- Allow user to be selected by index in addition to id
|
3
|
+
- Add config.select_user_inspect
|
4
|
+
- Fix: Remove .default_order which may not be defined. Included as config example instead.
|
5
|
+
- Fix: Replace respond.id with respond_to?(:id)
|
6
|
+
- Fix: Should use require_user rather than require_reason
|
7
|
+
|
1
8
|
## 0.3.0 (2019-09-16)
|
2
9
|
- Fix: When running db:migrate:redo, command got recorded as "rails db:migrate:redo VERSION=2019…"
|
3
10
|
instead of as "rails db:migrate: MigrationName (up)" as intended.
|
data/Readme.md
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# PaperTrail::Rails
|
2
2
|
|
3
3
|
[![Gem Version][1]][2]
|
4
|
+
[](https://rdoc.info/github/TylerRick/paper_trail-rails/master)
|
4
5
|
|
5
6
|
An extension to [PaperTrail](https://github.com/paper-trail-gem/paper_trail)
|
6
7
|
that adds some useful automatic integrations with Rails:
|
@@ -4,18 +4,22 @@ module PaperTrail
|
|
4
4
|
def initialize
|
5
5
|
config = self
|
6
6
|
|
7
|
+
#config.user_model = User
|
7
8
|
config.select_user_filter = :itself
|
9
|
+
config.select_user_inspect = :inspect
|
8
10
|
config.select_user_other_allowed_values = ['system', 'admin']
|
9
11
|
config.source_location_filter = ->(line) { !line.match /paper_trail/ }
|
10
12
|
end
|
11
13
|
|
12
14
|
# Filter proc to use to show a list of users in select_user helper. For example:
|
13
|
-
# ->(users) { users.admins
|
15
|
+
# ->(users) { users.admins.default_order }
|
14
16
|
# or
|
15
|
-
# ->(users) { users.none
|
17
|
+
# ->(users) { users.none }
|
16
18
|
# Can be also be a symbol or anything that responds to to_proc.
|
17
19
|
attr_accessor :select_user_filter
|
18
20
|
|
21
|
+
attr_accessor :select_user_inspect
|
22
|
+
|
19
23
|
attr_accessor :select_user_other_allowed_values
|
20
24
|
|
21
25
|
attr_accessor :source_location_filter
|
@@ -73,10 +73,10 @@ module PaperTrail
|
|
73
73
|
user = config.console.user_for_test.(User.all)
|
74
74
|
else
|
75
75
|
puts "Before you make any changes... We need to know who is making the changes, to store in the PaperTrail version history."
|
76
|
-
user = PaperTrail::Rails.select_user(required: config.console.
|
76
|
+
user = PaperTrail::Rails.select_user(required: config.console.require_user)
|
77
77
|
puts "Thank you, #{user}! Have a wonderful time!" if user
|
78
78
|
end
|
79
|
-
user.
|
79
|
+
user.respond_to?(:id) ? user.id : user
|
80
80
|
end
|
81
81
|
)
|
82
82
|
|
@@ -4,11 +4,15 @@ module PaperTrail
|
|
4
4
|
module Rails
|
5
5
|
module General
|
6
6
|
class << self
|
7
|
-
def select_user(filter: :itself, other_allowed_values: [], prompt: 'Please enter a User id', required: true)
|
7
|
+
def select_user(filter: :itself, other_allowed_values: [], prompt: '"Please enter the index of one of the users above, or a valid User id', required: true)
|
8
|
+
config = PaperTrail::Rails.config
|
9
|
+
|
10
|
+
user_options = nil
|
8
11
|
User.logger.silence do
|
9
|
-
puts '
|
10
|
-
filter.to_proc.(User.all)
|
11
|
-
|
12
|
+
puts 'index. user'
|
13
|
+
user_options = filter.to_proc.(User.all)
|
14
|
+
user_options.each.with_index do |user, i|
|
15
|
+
puts "%2s. %s" % [i + 1, user.inspect]
|
12
16
|
end
|
13
17
|
end
|
14
18
|
|
@@ -20,7 +24,11 @@ module PaperTrail
|
|
20
24
|
when *other_allowed_values
|
21
25
|
user = input
|
22
26
|
else
|
23
|
-
|
27
|
+
if (i = Integer(input) rescue nil)
|
28
|
+
user = user_options[i - 1] || (User.find(input) rescue nil)
|
29
|
+
else # allow for non-numeric ids like uuids
|
30
|
+
user = User.find(input) rescue nil
|
31
|
+
end
|
24
32
|
end
|
25
33
|
break unless required
|
26
34
|
end
|
data/paper_trail-rails.gemspec
CHANGED
@@ -30,6 +30,6 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.add_dependency "rails"
|
31
31
|
|
32
32
|
spec.add_development_dependency "bundler", "~> 2.0"
|
33
|
-
spec.add_development_dependency
|
33
|
+
spec.add_development_dependency 'rake', '>= 12.3.3'
|
34
34
|
spec.add_development_dependency "rspec", "~> 3.0"
|
35
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paper_trail-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Rick
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-04-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: paper_trail
|
@@ -56,16 +56,16 @@ dependencies:
|
|
56
56
|
name: rake
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 12.3.3
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 12.3.3
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rspec
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|