Skip to content

Commit

Permalink
Allow paper_trail up though version 15
Browse files Browse the repository at this point in the history
  • Loading branch information
jcoyne authored and thatbudakguy committed Jan 10, 2024
1 parent a904a45 commit 140b56d
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 5 deletions.
2 changes: 1 addition & 1 deletion blacklight-spotlight.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ these collections.)
s.add_dependency 'oauth2'
s.add_dependency 'openseadragon'
s.add_dependency 'ostruct', '!= 0.3.0', '!= 0.3.1', '!= 0.3.2'
s.add_dependency 'paper_trail', '>= 11.0', '< 13'
s.add_dependency 'paper_trail', '>= 11.0', '< 16'
s.add_dependency 'rails', '>= 6.1', '< 8'
s.add_dependency 'redcarpet', '>= 2.0.1', '< 4'
s.add_dependency 'riiif', '~> 2.0'
Expand Down
21 changes: 17 additions & 4 deletions lib/spotlight/engine.rb
Original file line number Diff line number Diff line change
Expand Up @@ -334,10 +334,23 @@ def self.call(template, source = nil)
config.assign_default_roles_to_first_user = true

config.exhibit_roles = %w[admin curator viewer]

if ActiveRecord.respond_to?(:yaml_column_permitted_classes) || ActiveRecord::Base.respond_to?(:yaml_column_permitted_classes)
config.active_record.yaml_column_permitted_classes ||= []
config.active_record.yaml_column_permitted_classes += [Symbol, ActiveSupport::HashWithIndifferentAccess]
# PaperTrail serializes objects to YAML, so we need to permit these classes to be deserialized
if ActiveRecord.respond_to?(:yaml_column_permitted_classes)
# Rails >= 7.0
ActiveRecord.yaml_column_permitted_classes ||= []
ActiveRecord.yaml_column_permitted_classes += [Symbol,
ActiveSupport::HashWithIndifferentAccess,
ActiveSupport::TimeWithZone,
ActiveSupport::TimeZone,
Time]
elsif ActiveRecord::Base.respond_to?(:yaml_column_permitted_classes)
# Rails 6.1
ActiveRecord::Base.yaml_column_permitted_classes ||= []
ActiveRecord::Base.yaml_column_permitted_classes += [Symbol,
ActiveSupport::HashWithIndifferentAccess,
ActiveSupport::TimeWithZone,
ActiveSupport::TimeZone,
Time]
end
end
# rubocop:enable Metrics/ClassLength
Expand Down

0 comments on commit 140b56d

Please sign in to comment.