class MyMoip::CreditCard

Constants

AVAILABLE_LOGOS

Attributes

card_number[RW]
expiration_date[RW]
owner_birthday[RW]
owner_cpf[RW]
owner_name[RW]
owner_phone[RW]
perform_extra_validation[RW]
security_code[RW]

Public Class Methods

new(attrs) click to toggle source
# File lib/mymoip/credit_card.rb, line 24
def initialize(attrs)
  attrs.each do |attr, value|
    public_send(:"#{attr}=", value)
  end
end

Public Instance Methods

logo=(value) click to toggle source
# File lib/mymoip/credit_card.rb, line 30
def logo=(value)
  value = value.to_sym unless value.nil?
  @logo = value
end
owner_birthday=(value) click to toggle source
# File lib/mymoip/credit_card.rb, line 35
def owner_birthday=(value)
  value = Date.parse(value.to_s) unless value.nil?
  rescue ArgumentError; ensure
    @owner_birthday = value
end
owner_cpf=(value) click to toggle source
# File lib/mymoip/credit_card.rb, line 56
def owner_cpf=(value)
  unless value.nil?
    # Removes dashes and dots
    value.gsub!(/\-|\./, '')
  end
  @owner_cpf = value
end
owner_phone=(value) click to toggle source
# File lib/mymoip/credit_card.rb, line 41
def owner_phone=(value)
  unless value.nil?
    # Removes non-digits
    value.gsub!(/\D*/, '')
    # Removes zeros in the beginning
    value.gsub!(/\A0*/, '')
  end
  @owner_phone = value
end
owner_rg=(value) click to toggle source
# File lib/mymoip/credit_card.rb, line 51
def owner_rg=(value)
  warn "[DEPRECATION] `owner_rg` is deprecated. Please use `owner_cpf` instead."
  self.owner_cpf = value
end

Private Instance Methods

owner_birthday_format() click to toggle source
# File lib/mymoip/credit_card.rb, line 67
def owner_birthday_format
  Date.parse(owner_birthday.to_s) unless owner_birthday.nil?
rescue ArgumentError
  errors.add(:owner_birthday)
end