Sha256: 2eff92948130cba37e01d551a751f7d75d795804dc8105defa8892d13f61bcf9

Contents?: true

Size: 548 Bytes

Versions: 9

Compression:

Stored size: 548 Bytes

Contents

class Calculator::FlatPercentItemTotal < Calculator
  preference :flat_percent, :decimal, :default => 0

  def self.description
    I18n.t("flat_percent")
  end

  def self.register
    super                                
    Coupon.register_calculator(self)
    ShippingMethod.register_calculator(self)
    ShippingRate.register_calculator(self)
  end

  def compute(line_items)
    return if line_items.nil?
    item_total = line_items.inject(0) {|amount, li| amount + li.total } 
    item_total * self.preferred_flat_percent / 100.0
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
spree-0.11.4 app/models/calculator/flat_percent_item_total.rb
spree-0.11.3 app/models/calculator/flat_percent_item_total.rb
spree-0.11.2 app/models/calculator/flat_percent_item_total.rb
spree-0.11.1 app/models/calculator/flat_percent_item_total.rb
spree-0.11.0 app/models/calculator/flat_percent_item_total.rb
spree-0.10.2 app/models/calculator/flat_percent_item_total.rb
spree-0.10.1 app/models/calculator/flat_percent_item_total.rb
spree-0.10.0 app/models/calculator/flat_percent_item_total.rb
spree-0.10.0.beta app/models/calculator/flat_percent_item_total.rb