Sha256: e4cd5cab21de789e2b8dfe72fe172c0cbb484dcc6730aa7fa38800e490702880

Contents?: true

Size: 549 Bytes

Versions: 10

Compression:

Stored size: 549 Bytes

Contents

module Spree
  module UserPaymentSource
    extend ActiveSupport::Concern

    included do
      has_many :credit_cards, class_name: 'Spree::CreditCard', foreign_key: :user_id
      def default_credit_card
        credit_cards.default.first
      end

      def payment_sources
        credit_cards.with_payment_profile.not_expired.where(payment_method: Spree::PaymentMethod.active)
      end

      def drop_payment_source(source)
        gateway = source.payment_method
        gateway.disable_customer_profile(source)
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
spree_core-4.2.7 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.6 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.5 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.4 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.3.1 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.3 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.2 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.1 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.0 app/models/concerns/spree/user_payment_source.rb
spree_core-4.2.0.rc5 app/models/concerns/spree/user_payment_source.rb