Sha256: d70481a9618ef43c9ce97adab380cf7070aaef22748966bb755d8220c187fa5e

Contents?: true

Size: 1.1 KB

Versions: 78

Compression:

Stored size: 1.1 KB

Contents

module Spree
  module UserAddress
    extend ActiveSupport::Concern

    included do
      belongs_to :bill_address, foreign_key: :bill_address_id, class_name: 'Spree::Address'
      alias_attribute :billing_address, :bill_address

      belongs_to :ship_address, foreign_key: :ship_address_id, class_name: 'Spree::Address'
      alias_attribute :shipping_address, :ship_address

      accepts_nested_attributes_for :ship_address, :bill_address

      def persist_order_address(order)
        b_address = self.bill_address || self.build_bill_address
        b_address.attributes = order.bill_address.attributes.except('id', 'updated_at', 'created_at')
        b_address.save
        self.update_attributes(bill_address_id: b_address.id)

        # May not be present if delivery step has been removed
        if order.ship_address
          s_address = self.ship_address || self.build_ship_address
          s_address.attributes = order.ship_address.attributes.except('id', 'updated_at', 'created_at')
          s_address.save
          self.update_attributes(ship_address_id: s_address.id)
        end
      end
    end
  end
end

Version data entries

78 entries across 78 versions & 3 rubygems

Version Path
goca-spree-core-3.1.14.rails.5.0.1 app/models/concerns/spree/user_address.rb
goca-spree-core-3.1.14.rails.5.0 app/models/concerns/spree/user_address.rb
goca-spree-core-3.1.15.rails.5.0 app/models/concerns/spree/user_address.rb
goca-spree-core-3.1.15.pre.rails.pre.5.0 app/models/concerns/spree/user_address.rb
spree_core-3.2.9 app/models/concerns/spree/user_address.rb
spree_core-3.1.14 app/models/concerns/spree/user_address.rb
spree_core-3.2.8 app/models/concerns/spree/user_address.rb
spree_core-3.1.13 app/models/concerns/spree/user_address.rb
spree_core-3.2.7 app/models/concerns/spree/user_address.rb
spree_core-3.1.12 app/models/concerns/spree/user_address.rb
solidus_core-1.0.7 app/models/concerns/spree/user_address.rb
spree_core-3.2.6 app/models/concerns/spree/user_address.rb
spree_core-3.1.11 app/models/concerns/spree/user_address.rb
spree_core-3.1.10 app/models/concerns/spree/user_address.rb
spree_core-3.2.5 app/models/concerns/spree/user_address.rb
spree_core-3.1.9 app/models/concerns/spree/user_address.rb
spree_core-3.2.4 app/models/concerns/spree/user_address.rb
spree_core-3.1.8 app/models/concerns/spree/user_address.rb
spree_core-3.1.7 app/models/concerns/spree/user_address.rb
spree_core-3.2.3 app/models/concerns/spree/user_address.rb