diff --git a/app/models/spree/user.rb b/app/models/spree/user.rb index ab1ef6ddfc..a2982181e7 100644 --- a/app/models/spree/user.rb +++ b/app/models/spree/user.rb @@ -135,6 +135,10 @@ module Spree spree_orders.incomplete.where(created_by_id: id).order('created_at DESC').first end + def flipper_id + "#{self.class.name};#{id}" + end + protected def password_required? diff --git a/config/initializers/flipper.rb b/config/initializers/flipper.rb new file mode 100644 index 0000000000..f5351b71ab --- /dev/null +++ b/config/initializers/flipper.rb @@ -0,0 +1,16 @@ +require "flipper" +require "flipper/adapters/active_record" + +Flipper.configure do |config| + config.default do + Flipper.new(Flipper::Adapters::ActiveRecord.new) + end +end +Rails.configuration.middleware.use Flipper::Middleware::Memoizer, preload_all: true + +Flipper.register(:admins) { |actor| actor.respond_to?(:admin?) && actor.admin? } + +if !Flipper[:unit_price].exist? + # Unit price default setup, could be overided by admin in the flipper-ui interface + Flipper.enable_group :unit_price, :admins +end