Sha256: 012cb3b1cbd97b51afea3a1c2c244670f7ce76df71fea85db05d69fcbfa14a81

Contents?: true

Size: 452 Bytes

Versions: 41

Compression:

Stored size: 452 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 && 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

41 entries across 41 versions & 2 rubygems

Version Path
spree_core-3.4.6 app/models/spree/promotion_handler/page.rb
spree_core-3.6.6 app/models/spree/promotion_handler/page.rb
spree_core-3.6.5 app/models/spree/promotion_handler/page.rb
spree_core-3.6.4 app/models/spree/promotion_handler/page.rb
spree_core-3.6.3 app/models/spree/promotion_handler/page.rb
spree_core-3.6.2 app/models/spree/promotion_handler/page.rb
spree_core-3.6.1 app/models/spree/promotion_handler/page.rb
spree_core-3.6.0 app/models/spree/promotion_handler/page.rb
spree_core-3.5.0 app/models/spree/promotion_handler/page.rb
spree_core-3.6.0.rc1 app/models/spree/promotion_handler/page.rb
spree_core-3.5.0.rc2 app/models/spree/promotion_handler/page.rb
spree_core-3.5.0.rc1 app/models/spree/promotion_handler/page.rb
spree_core-3.4.5 app/models/spree/promotion_handler/page.rb
spree_core-3.4.4 app/models/spree/promotion_handler/page.rb
spree_core-3.4.3 app/models/spree/promotion_handler/page.rb
solidus_core-2.1.1 app/models/spree/promotion_handler/page.rb
solidus_core-2.0.3 app/models/spree/promotion_handler/page.rb
solidus_core-1.4.2 app/models/spree/promotion_handler/page.rb
solidus_core-1.3.2 app/models/spree/promotion_handler/page.rb
spree_core-3.4.2 app/models/spree/promotion_handler/page.rb