Files
openfoodnetwork/config/initializers/spree_auth_devise.rb
2017-09-08 23:55:50 +10:00

17 lines
762 B
Ruby

# `spree_auth_devise` gem decorators get loaded in a `to_prepare` callback
# referring to Spree classes that have not been loaded yet
#
# When this initializer is loaded we're sure that those Spree classes have been
# loaded and we load again the `spree_auth_devise` decorators to effectively
# apply them.
#
# Give a look at `if defined?(Spree::Admin::BaseController)` in the following file
# to get an example:
# https://github.com/openfoodfoundation/spree_auth_devise/blob/spree-upgrade-intermediate/app/controllers/spree/admin/admin_controller_decorator.rb#L1
#
# TODO: remove this hack once we get to Spree 3.0
gem_dir = Gem::Specification.find_by_name("spree_auth_devise").gem_dir
Dir.glob(File.join(gem_dir, 'app/**/*_decorator*.rb')) do |c|
load c
end