module Spree::DisableNegativePaymentModeAndSetBalanceAbility
Public Class Methods
included(klass)
click to toggle source
# File lib/spree/disable_negative_payment_mode_and_set_balance_ability.rb, line 3 def self.included(klass) klass.class_eval do attr_accessor :disable_negative_payment_mode validates :payment_mode, :inclusion => { :in => klass::PAYMENT_MODE.values }, :unless => :disable_negative_payment_mode validates :payment_mode, :inclusion => { :in => klass::PAYMENT_MODE.values.select { |value| value >= 0 } }, :if => :disable_negative_payment_mode before_validation :set_balance, :on => :create end end
Public Instance Methods
set_balance()
click to toggle source
# File lib/spree/disable_negative_payment_mode_and_set_balance_ability.rb, line 14 def set_balance self.balance = user.store_credits_total + effective_amount if user && amount end