rails_admin 1.0.0.rc → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rails_admin might be problematic. Click here for more details.

Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -2
  3. data/README.md +1 -14
  4. data/app/assets/javascripts/rails_admin/ra.filtering-multiselect.js +15 -10
  5. data/app/assets/javascripts/rails_admin/ra.filtering-select.js +205 -110
  6. data/app/assets/javascripts/rails_admin/ra.remote-form.js +1 -4
  7. data/app/controllers/rails_admin/application_controller.rb +5 -5
  8. data/app/controllers/rails_admin/main_controller.rb +2 -2
  9. data/app/helpers/rails_admin/application_helper.rb +2 -2
  10. data/app/helpers/rails_admin/form_builder.rb +9 -2
  11. data/app/helpers/rails_admin/main_helper.rb +1 -1
  12. data/app/views/layouts/rails_admin/application.html.haml +1 -0
  13. data/app/views/rails_admin/main/_delete_notice.html.haml +14 -9
  14. data/app/views/rails_admin/main/index.html.haml +2 -2
  15. data/config/initializers/active_record_extensions.rb +2 -2
  16. data/config/locales/rails_admin.en.yml +1 -0
  17. data/lib/rails_admin/abstract_model.rb +6 -7
  18. data/lib/rails_admin/adapters/active_record.rb +30 -11
  19. data/lib/rails_admin/adapters/mongoid.rb +2 -2
  20. data/lib/rails_admin/adapters/mongoid/association.rb +2 -2
  21. data/lib/rails_admin/adapters/mongoid/extension.rb +1 -1
  22. data/lib/rails_admin/adapters/mongoid/property.rb +1 -1
  23. data/lib/rails_admin/bootstrap-sass.rb +1 -3
  24. data/lib/rails_admin/bootstrap-sass/compass_functions.rb +1 -1
  25. data/lib/rails_admin/config.rb +12 -8
  26. data/lib/rails_admin/config/actions.rb +1 -1
  27. data/lib/rails_admin/config/actions/base.rb +3 -4
  28. data/lib/rails_admin/config/actions/bulk_delete.rb +1 -3
  29. data/lib/rails_admin/config/actions/index.rb +3 -5
  30. data/lib/rails_admin/config/configurable.rb +4 -6
  31. data/lib/rails_admin/config/fields/association.rb +1 -1
  32. data/lib/rails_admin/config/fields/base.rb +15 -26
  33. data/lib/rails_admin/config/fields/factories/carrierwave.rb +1 -1
  34. data/lib/rails_admin/config/fields/types.rb +1 -1
  35. data/lib/rails_admin/config/fields/types/active_record_enum.rb +17 -2
  36. data/lib/rails_admin/config/fields/types/file_upload.rb +1 -1
  37. data/lib/rails_admin/config/fields/types/has_many_association.rb +1 -1
  38. data/lib/rails_admin/config/fields/types/polymorphic_association.rb +1 -1
  39. data/lib/rails_admin/config/fields/types/string.rb +6 -5
  40. data/lib/rails_admin/config/fields/types/text.rb +3 -3
  41. data/lib/rails_admin/config/hideable.rb +1 -1
  42. data/lib/rails_admin/config/inspectable.rb +39 -0
  43. data/lib/rails_admin/config/model.rb +4 -17
  44. data/lib/rails_admin/config/sections/base.rb +4 -17
  45. data/lib/rails_admin/engine.rb +3 -2
  46. data/lib/rails_admin/extension.rb +4 -4
  47. data/lib/rails_admin/extensions/paper_trail/auditing_adapter.rb +10 -2
  48. data/lib/rails_admin/extensions/pundit/authorization_adapter.rb +11 -1
  49. data/lib/rails_admin/support/datetime.rb +1 -1
  50. data/lib/rails_admin/version.rb +1 -1
  51. metadata +7 -6
@@ -1,9 +1,9 @@
1
1
 
2
2
  module RailsAdmin
3
- EXTENSIONS = []
4
- AUTHORIZATION_ADAPTERS = {}
5
- AUDITING_ADAPTERS = {}
6
- CONFIGURATION_ADAPTERS = {}
3
+ EXTENSIONS = [] # rubocop:disable MutableConstant
4
+ AUTHORIZATION_ADAPTERS = {} # rubocop:disable MutableConstant
5
+ AUDITING_ADAPTERS = {} # rubocop:disable MutableConstant
6
+ CONFIGURATION_ADAPTERS = {} # rubocop:disable MutableConstant
7
7
 
8
8
  # Extend RailsAdmin
9
9
  #
@@ -36,10 +36,18 @@ module RailsAdmin
36
36
  item: :item_id,
37
37
  created_at: :created_at,
38
38
  message: :event,
39
- }
39
+ }.freeze
40
+
41
+ def self.setup
42
+ raise('PaperTrail not found') unless defined?(::PaperTrail)
43
+ RailsAdmin::ApplicationController.class_eval do
44
+ def user_for_paper_trail
45
+ _current_user.try(:id) || _current_user
46
+ end
47
+ end
48
+ end
40
49
 
41
50
  def initialize(controller, user_class = 'User', version_class = '::Version')
42
- fail('PaperTrail not found') unless defined?(PaperTrail)
43
51
  @controller = controller
44
52
  @controller.send(:set_paper_trail_whodunnit) if @controller
45
53
  begin
@@ -5,6 +5,13 @@ module RailsAdmin
5
5
  # You can create another adapter for different authorization behavior, just be certain it
6
6
  # responds to each of the public methods here.
7
7
  class AuthorizationAdapter
8
+ # This method is called first time only and used for setup
9
+ def self.setup
10
+ RailsAdmin::ApplicationController.class_eval do
11
+ include ::Pundit
12
+ end unless RailsAdmin::ApplicationController.ancestors.include? 'Pundit'
13
+ end
14
+
8
15
  # See the +authorize_with+ config method for where the initialization happens.
9
16
  def initialize(controller)
10
17
  @controller = controller
@@ -17,7 +24,10 @@ module RailsAdmin
17
24
  # instance if it is available.
18
25
  def authorize(action, abstract_model = nil, model_object = nil)
19
26
  record = model_object || abstract_model && abstract_model.model
20
- fail ::Pundit::NotAuthorizedError.new("not allowed to #{action} this #{record}") unless policy(record).send(action_for_pundit(action)) if action
27
+ if action && !policy(record).send(action_for_pundit(action))
28
+ raise ::Pundit::NotAuthorizedError.new("not allowed to #{action} this #{record}")
29
+ end
30
+ @controller.instance_variable_set(:@_pundit_policy_authorized, true)
21
31
  end
22
32
 
23
33
  # This method is called primarily from the view to determine whether the given user
@@ -23,7 +23,7 @@ module RailsAdmin
23
23
  '%S' => 'ss', # Second of the minute (00..60)
24
24
  '%Y' => 'YYYY', # Year with century
25
25
  '%y' => 'YY', # Year without a century (00..99)
26
- }
26
+ }.freeze
27
27
 
28
28
  class << self
29
29
  include RailsAdmin::Support::I18n
@@ -3,7 +3,7 @@ module RailsAdmin
3
3
  MAJOR = 1
4
4
  MINOR = 0
5
5
  PATCH = 0
6
- PRE = 'rc'
6
+ PRE = nil
7
7
 
8
8
  class << self
9
9
  # @return [String]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.rc
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Michaels-Ober
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2016-07-18 00:00:00.000000000 Z
15
+ date: 2016-09-19 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: builder
@@ -178,14 +178,14 @@ dependencies:
178
178
  requirements:
179
179
  - - "~>"
180
180
  - !ruby/object:Gem::Version
181
- version: '1.0'
181
+ version: '1.3'
182
182
  type: :runtime
183
183
  prerelease: false
184
184
  version_requirements: !ruby/object:Gem::Requirement
185
185
  requirements:
186
186
  - - "~>"
187
187
  - !ruby/object:Gem::Version
188
- version: '1.0'
188
+ version: '1.3'
189
189
  - !ruby/object:Gem::Dependency
190
190
  name: sass-rails
191
191
  requirement: !ruby/object:Gem::Requirement
@@ -534,6 +534,7 @@ files:
534
534
  - lib/rails_admin/config/has_fields.rb
535
535
  - lib/rails_admin/config/has_groups.rb
536
536
  - lib/rails_admin/config/hideable.rb
537
+ - lib/rails_admin/config/inspectable.rb
537
538
  - lib/rails_admin/config/lazy_model.rb
538
539
  - lib/rails_admin/config/model.rb
539
540
  - lib/rails_admin/config/proxyable.rb
@@ -586,9 +587,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
586
587
  version: 2.1.0
587
588
  required_rubygems_version: !ruby/object:Gem::Requirement
588
589
  requirements:
589
- - - ">"
590
+ - - ">="
590
591
  - !ruby/object:Gem::Version
591
- version: 1.3.1
592
+ version: 1.8.11
592
593
  requirements: []
593
594
  rubyforge_project:
594
595
  rubygems_version: 2.5.1