Sha256: 3fd9788f792b5879b322c857982a1feeff936f52fc67ff82ed7a375fde240dbe

Contents?: true

Size: 563 Bytes

Versions: 6

Compression:

Stored size: 563 Bytes

Contents

class Credit < Adjustment
   before_save :inverse_amount

  def calculate_adjustment
    if adjustment_source
      case adjustment_source_type
      when "Coupon"
       calculate_coupon_credit
      else
        super
      end
    end
  end
   
  def inverse_amount
    x = self.amount > 0 ? -1 : 1
    self.amount = self.amount * x
  end
  
  private 
  def calculate_coupon_credit
    return 0 if order.line_items.empty?
    amount = adjustment_source.calculator.compute(order)
    amount = order.item_total if amount > order.item_total
    amount
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
spree-enriquez-0.9.4 app/models/credit.rb
spree-0.9.4 app/models/credit.rb
spree-0.9.3 app/models/credit.rb
spree-0.9.2 app/models/credit.rb
spree-0.9.1 app/models/credit.rb
spree-0.9.0 app/models/credit.rb