Sha256: 7d094b0152473ed1cd906534758d166106c6ec902be110a68a28d7818817c853

Contents?: true

Size: 440 Bytes

Versions: 69

Compression:

Stored size: 440 Bytes

Contents

module Spree
  module PromotionHandler
    class Page
      attr_reader :order, :path

      def initialize(order, path)
        @order = order
        @path = path.gsub(/\A\//, '')
      end

      def activate
        if promotion&.eligible?(order)
          promotion.activate(order: order)
        end
      end

      private

      def promotion
        @promotion ||= Promotion.active.find_by(path: path)
      end
    end
  end
end

Version data entries

69 entries across 69 versions & 1 rubygems

Version Path
spree_core-4.0.9 app/models/spree/promotion_handler/page.rb
spree_core-4.1.15 app/models/spree/promotion_handler/page.rb
spree_core-4.2.7 app/models/spree/promotion_handler/page.rb
spree_core-4.2.6 app/models/spree/promotion_handler/page.rb
spree_core-4.2.5 app/models/spree/promotion_handler/page.rb
spree_core-4.1.14 app/models/spree/promotion_handler/page.rb
spree_core-4.0.8 app/models/spree/promotion_handler/page.rb
spree_core-4.2.4 app/models/spree/promotion_handler/page.rb
spree_core-3.7.14.1 app/models/spree/promotion_handler/page.rb
spree_core-4.2.3.1 app/models/spree/promotion_handler/page.rb
spree_core-4.1.13.1 app/models/spree/promotion_handler/page.rb
spree_core-4.0.7.1 app/models/spree/promotion_handler/page.rb
spree_core-4.2.3 app/models/spree/promotion_handler/page.rb
spree_core-4.2.2 app/models/spree/promotion_handler/page.rb
spree_core-4.2.1 app/models/spree/promotion_handler/page.rb
spree_core-4.0.7 app/models/spree/promotion_handler/page.rb
spree_core-3.7.14 app/models/spree/promotion_handler/page.rb
spree_core-4.2.0 app/models/spree/promotion_handler/page.rb
spree_core-4.2.0.rc5 app/models/spree/promotion_handler/page.rb
spree_core-4.2.0.rc4 app/models/spree/promotion_handler/page.rb