class ActivePayment::Models::Sales
Attributes
sales[RW]
Public Class Methods
new(sales = [])
click to toggle source
# File lib/active_payment/models/sales.rb, line 8 def initialize(sales = []) @sales = sales end
Public Instance Methods
amount()
click to toggle source
# File lib/active_payment/models/sales.rb, line 12 def amount @sales.map(&:amount).inject(0, &:+) end
amount_in_cents()
click to toggle source
# File lib/active_payment/models/sales.rb, line 16 def amount_in_cents @sales.map(&:amount_in_cents).inject(0, &:+) end
currency()
click to toggle source
# File lib/active_payment/models/sales.rb, line 30 def currency @sales.first.currency end
each() { |sale| ... }
click to toggle source
# File lib/active_payment/models/sales.rb, line 53 def each @sales.each do |sale| yield sale end end
paypal_hash()
click to toggle source
# File lib/active_payment/models/sales.rb, line 44 def paypal_hash paypal_hash = [] @sales.each do |sale| paypal_hash << sale.paypal_hash end paypal_hash end
paypal_recipients()
click to toggle source
# File lib/active_payment/models/sales.rb, line 59 def paypal_recipients recipients = [] @sales.each do |sale| recipients << sale.paypal_recipient if sale.amount > 0 end recipients end
total_shipping()
click to toggle source
# File lib/active_payment/models/sales.rb, line 20 def total_shipping total_shipping = 0 @sales.each do |sale| total_shipping += sale.shipping if sale.shipping end total_shipping end
total_tax()
click to toggle source
# File lib/active_payment/models/sales.rb, line 34 def total_tax total_tax = 0 @sales.each do |sale| total_tax += sale.tax if sale.tax end total_tax end
Private Instance Methods
items_data()
click to toggle source
# File lib/active_payment/models/sales.rb, line 71 def items_data data = [] @sales.each do |sale| data << { name: sale.description, item_count: 1, item_price: sale.amount, price: sale.amount } end data end