Sha256: 60c4471786a8c6ddb414abc5af92329d22f63245b825763fa8c44fad6ac35cbc

Contents?: true

Size: 1006 Bytes

Versions: 2

Compression:

Stored size: 1006 Bytes

Contents

# frozen_string_literal: true

require 'spree/core'
require 'solidus_support'

module SolidusVolumePricing
  class Engine < Rails::Engine
    include SolidusSupport::EngineExtensions

    isolate_namespace ::Spree

    engine_name 'solidus_volume_pricing'

    initializer 'solidus_volume_pricing.preferences', before: 'spree.environment' do
      ::Spree::AppConfiguration.class_eval do
        preference :use_master_variant_volume_pricing, :boolean, default: false
      end
    end

    def self.activate
      Dir.glob(File.join(File.dirname(__FILE__), '../../app/**/*_decorator*.rb')).sort.each do |c|
        Rails.configuration.cache_classes ? require(c) : load(c)
        Rails.autoloaders.main.ignore(c) if Rails.autoloaders.zeitwerk_enabled?
      end
      ::Spree::BackendConfiguration::CONFIGURATION_TABS << :volume_price_models
    end

    config.to_prepare(&method(:activate).to_proc)

    # use rspec for tests
    config.generators do |g|
      g.test_framework :rspec
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
solidus_volume_pricing-1.2.0 lib/solidus_volume_pricing/engine.rb
solidus_volume_pricing-1.1.1 lib/solidus_volume_pricing/engine.rb