Sha256: e3f4abc55e5810a08141b1853076174468abf37f8197e5947eacc5896337799d

Contents?: true

Size: 1.34 KB

Versions: 3

Compression:

Stored size: 1.34 KB

Contents

# frozen_string_literal: true

module Spree
  module Core
    class Environment
      class Promotions
        class << self
          private

          def promotions_deprecation_message(method)
            "The `Rails.application.config.spree.promotions.#{method}` preference is deprecated and will be removed in Solidus 5.0. " \
            "Use `Spree::Config.promotions.#{method}` instead."
          end
        end

        delegate :rules, :rules=, to: :promotion_config
        deprecate rules: promotions_deprecation_message("rules"), deprecator: Spree.deprecator
        deprecate "rules=": promotions_deprecation_message("rules="), deprecator: Spree.deprecator

        delegate :actions, :actions=, to: :promotion_config
        deprecate actions: promotions_deprecation_message("actions"), deprecator: Spree.deprecator
        deprecate "actions=": promotions_deprecation_message("actions="), deprecator: Spree.deprecator

        delegate :shipping_actions, :shipping_actions=, to: :promotion_config
        deprecate shipping_actions: promotions_deprecation_message("shipping_actions"), deprecator: Spree.deprecator
        deprecate "shipping_actions=": promotions_deprecation_message("shipping_actions="), deprecator: Spree.deprecator

        private

        def promotion_config
          Spree::Config.promotions
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
solidus_core-4.4.2 lib/spree/core/environment/promotions.rb
solidus_core-4.4.1 lib/spree/core/environment/promotions.rb
solidus_core-4.4.0 lib/spree/core/environment/promotions.rb