Sha256: 528ddbca8ae821f027e3f4321e6243945ebef3562bca6191562caba82a423902

Contents?: true

Size: 687 Bytes

Versions: 26

Compression:

Stored size: 687 Bytes

Contents

module Spree
  class Order < Spree::Base
    module Digital
      def digital?
        if line_items.empty?
          false
        else
          line_items.all?(&:digital?)
        end
      end

      def some_digital?
        line_items.any?(&:digital?)
      end

      def digital_line_items
        line_items.select(&:digital?)
      end

      def digital_links
        digital_line_items.map(&:digital_links).flatten
      end

      def create_digital_links
        digital_line_items.each do |line_item|
          line_item.variant.digitals.each do |digital|
            line_item.digital_links.create!(digital: digital)
          end
        end
      end
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
spree_core-4.10.1 app/models/spree/order/digital.rb
spree_core-4.10.0 app/models/spree/order/digital.rb
spree_core-4.9.0 app/models/spree/order/digital.rb
spree_core-4.8.3 app/models/spree/order/digital.rb
spree_core-4.8.2 app/models/spree/order/digital.rb
spree_core-4.7.3 app/models/spree/order/digital.rb
spree_core-4.6.6 app/models/spree/order/digital.rb
spree_core-4.5.5 app/models/spree/order/digital.rb
spree_core-4.4.1 app/models/spree/order/digital.rb
spree_core-4.5.4 app/models/spree/order/digital.rb
spree_core-4.6.5 app/models/spree/order/digital.rb
spree_core-4.7.2 app/models/spree/order/digital.rb
spree_core-4.7.1 app/models/spree/order/digital.rb
spree_core-4.6.4 app/models/spree/order/digital.rb
spree_core-4.7.0 app/models/spree/order/digital.rb
spree_core-4.6.3 app/models/spree/order/digital.rb
spree_core-4.6.2 app/models/spree/order/digital.rb
spree_core-4.6.1 app/models/spree/order/digital.rb
spree_core-4.6.0 app/models/spree/order/digital.rb
spree_core-4.5.3 app/models/spree/order/digital.rb