Sha256: 19df7f3703747900571abb9d5fa94882cb66e4289034f5faae38f52bb8de8a5f

Contents?: true

Size: 989 Bytes

Versions: 4

Compression:

Stored size: 989 Bytes

Contents

module Pay
  module Receipts
    def filename
      "receipt-#{created_at.strftime('%Y-%m-%d')}.pdf"
    end

    def product
      Pay.application_name
    end

    # Must return a file object
    def receipt
      receipt_pdf.render
    end

    def receipt_pdf
      ::Receipts::Receipt.new(
        id: id,
        product: product,
        company: {
          name:    Pay.business_name,
          address: Pay.business_address,
          email:   Pay.support_email,
        },
        line_items: line_items
      )
    end

    def line_items
      line_items = [
        ["Date",           created_at.to_s],
        ["Account Billed", "#{owner.name} (#{owner.email})"],
        ["Product",        product],
        ["Amount",         ActionController::Base.helpers.number_to_currency(amount / 100.0)],
        ["Charged to",     charged_to],
      ]
      line_items << ["Additional Info", owner.extra_billing_info] if owner.extra_billing_info?
      line_items
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pay-1.0.2 lib/pay/receipts.rb
pay-1.0.1 lib/pay/receipts.rb
pay-1.0.0 lib/pay/receipts.rb
pay-1.0.0.rc3 lib/pay/receipts.rb