class CuentaDigital::Response

Attributes

action[RW]
amount[RW]
barcode_base_64[RW]
barcode_image[RW]
concept[RW]
country[RW]
curr[RW]
date[RW]
due_date[RW]
email_to[RW]
error[RW]
exception[RW]
invoice_url[RW]
ipaddress[RW]
lang[RW]
merchant_id[RW]
merchant_reference[RW]
payment_code_1[RW]
payment_code_10[RW]
payment_code_2[RW]
payment_code_3[RW]
payment_code_4[RW]
payment_code_5[RW]
payment_code_6[RW]
payment_code_7[RW]
payment_code_8[RW]
payment_code_9[RW]
request[RW]
second_amount[RW]
second_due_date[RW]
site[RW]

Public Class Methods

new(params) click to toggle source
# File lib/cuenta_digital/response.rb, line 37
def initialize(params)
  parser = Nori.new(convert_tags_to: proc { |tag| tag.snakecase.to_sym })
  @request = parser.parse(params)[:request]
  @action = @request[:action].gsub(/::/, '/').gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').gsub(/([a-z\d])([A-Z])/,'\1_\2').tr('-', '_').downcase.to_sym
  @merchant_id = @request[:invoice][:merchantid]
  @ipaddress = @request[:invoice][:ipaddress]
  @payment_code_1 = @request[:invoice][:paymentcode1]
  @payment_code_2 = @request[:invoice][:paymentcode2]
  @payment_code_3 = @request[:invoice][:paymentcode3]
  @payment_code_4 = @request[:invoice][:paymentcode4]
  @payment_code_5 = @request[:invoice][:paymentcode5]
  @payment_code_6 = @request[:invoice][:paymentcode6]
  @payment_code_7 = @request[:invoice][:paymentcode7]
  @payment_code_8 = @request[:invoice][:paymentcode8]
  @payment_code_9 = @request[:invoice][:paymentcode9]
  @payment_code_10 = @request[:invoice][:paymentcode10]
  @barcode_image = @request[:invoice][:barcodeimage]
  @barcode_base_64 = @request[:invoice][:barcodebase64]
  @invoice_url = @request[:invoice][:invoiceurl]
  @site = @request[:invoice][:site]
  @merchant_reference = @request[:invoice][:merchantreference]
  @concept = @request[:invoice][:concept]
  @curr = @request[:invoice][:curr]
  @amount = @request[:invoice][:amount]
  @secondamount = @request[:invoice][:secondamount]
  @date = @request[:invoice][:date]
  @due_date = Time.parse(@request[:invoice][:duedate]) rescue nil
  @second_due_date = Time.parse(@request[:invoice][:secondduedate]) rescue nil
  @email_to = @request[:invoice][:emailto]
  @country = @request[:invoice][:country]
  @lang = @request[:invoice][:lang]
rescue => e
  @exception = e
  @error = params
  @action = :error unless @action == :invoice_generated
end

Public Instance Methods

error?() click to toggle source
# File lib/cuenta_digital/response.rb, line 78
def error?
  @action == :error
end
invoice_generated?() click to toggle source
# File lib/cuenta_digital/response.rb, line 74
def invoice_generated?
  @action == :invoice_generated
end