Class: AdvancedBilling::CardType

Inherits:
Object
  • Object
show all
Defined in:
lib/advanced_billing/models/card_type.rb

Overview

The type of card used.

Constant Summary collapse

CARD_TYPE =
[
  # TODO: Write general description for VISA
  VISA = 'visa'.freeze,

  # TODO: Write general description for MASTER
  MASTER = 'master'.freeze,

  # TODO: Write general description for ELO
  ELO = 'elo'.freeze,

  # TODO: Write general description for CABAL
  CABAL = 'cabal'.freeze,

  # TODO: Write general description for ALELO
  ALELO = 'alelo'.freeze,

  # TODO: Write general description for DISCOVER
  DISCOVER = 'discover'.freeze,

  # TODO: Write general description for AMERICAN_EXPRESS
  AMERICAN_EXPRESS = 'american_express'.freeze,

  # TODO: Write general description for NARANJA
  NARANJA = 'naranja'.freeze,

  # TODO: Write general description for DINERS_CLUB
  DINERS_CLUB = 'diners_club'.freeze,

  # TODO: Write general description for JCB
  JCB = 'jcb'.freeze,

  # TODO: Write general description for DANKORT
  DANKORT = 'dankort'.freeze,

  # TODO: Write general description for MAESTRO
  MAESTRO = 'maestro'.freeze,

  # TODO: Write general description for MAESTRO_NO_LUHN
  MAESTRO_NO_LUHN = 'maestro_no_luhn'.freeze,

  # TODO: Write general description for FORBRUGSFORENINGEN
  FORBRUGSFORENINGEN = 'forbrugsforeningen'.freeze,

  # TODO: Write general description for SODEXO
  SODEXO = 'sodexo'.freeze,

  # TODO: Write general description for ALIA
  ALIA = 'alia'.freeze,

  # TODO: Write general description for VR
  VR = 'vr'.freeze,

  # TODO: Write general description for UNIONPAY
  UNIONPAY = 'unionpay'.freeze,

  # TODO: Write general description for CARNET
  CARNET = 'carnet'.freeze,

  # TODO: Write general description for CARTES_BANCAIRES
  CARTES_BANCAIRES = 'cartes_bancaires'.freeze,

  # TODO: Write general description for OLIMPICA
  OLIMPICA = 'olimpica'.freeze,

  # TODO: Write general description for CREDITEL
  CREDITEL = 'creditel'.freeze,

  # TODO: Write general description for CONFIABLE
  CONFIABLE = 'confiable'.freeze,

  # TODO: Write general description for SYNCHRONY
  SYNCHRONY = 'synchrony'.freeze,

  # TODO: Write general description for ROUTEX
  ROUTEX = 'routex'.freeze,

  # TODO: Write general description for MADA
  MADA = 'mada'.freeze,

  # TODO: Write general description for BP_PLUS
  BP_PLUS = 'bp_plus'.freeze,

  # TODO: Write general description for PASSCARD
  PASSCARD = 'passcard'.freeze,

  # TODO: Write general description for EDENRED
  EDENRED = 'edenred'.freeze,

  # TODO: Write general description for ANDA
  ANDA = 'anda'.freeze,

  # TODO: Write general description for TARJETAD
  TARJETAD = 'tarjeta-d'.freeze,

  # TODO: Write general description for HIPERCARD
  HIPERCARD = 'hipercard'.freeze,

  # TODO: Write general description for BOGUS
  BOGUS = 'bogus'.freeze,

  # TODO: Write general description for SWITCH
  SWITCH = 'switch'.freeze,

  # TODO: Write general description for SOLO
  SOLO = 'solo'.freeze,

  # TODO: Write general description for LASER
  LASER = 'laser'.freeze
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = VISA) ⇒ Object



125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
# File 'lib/advanced_billing/models/card_type.rb', line 125

def self.from_value(value, default_value = VISA)
  return default_value if value.nil?

  str = value.to_s.strip

  case str.downcase
  when 'visa' then VISA
  when 'master' then MASTER
  when 'elo' then ELO
  when 'cabal' then CABAL
  when 'alelo' then ALELO
  when 'discover' then DISCOVER
  when 'american_express' then AMERICAN_EXPRESS
  when 'naranja' then NARANJA
  when 'diners_club' then DINERS_CLUB
  when 'jcb' then JCB
  when 'dankort' then DANKORT
  when 'maestro' then MAESTRO
  when 'maestro_no_luhn' then MAESTRO_NO_LUHN
  when 'forbrugsforeningen' then FORBRUGSFORENINGEN
  when 'sodexo' then SODEXO
  when 'alia' then ALIA
  when 'vr' then VR
  when 'unionpay' then UNIONPAY
  when 'carnet' then CARNET
  when 'cartes_bancaires' then CARTES_BANCAIRES
  when 'olimpica' then OLIMPICA
  when 'creditel' then CREDITEL
  when 'confiable' then CONFIABLE
  when 'synchrony' then SYNCHRONY
  when 'routex' then ROUTEX
  when 'mada' then MADA
  when 'bp_plus' then BP_PLUS
  when 'passcard' then PASSCARD
  when 'edenred' then EDENRED
  when 'anda' then ANDA
  when 'tarjetad' then TARJETAD
  when 'hipercard' then HIPERCARD
  when 'bogus' then BOGUS
  when 'switch' then SWITCH
  when 'solo' then SOLO
  when 'laser' then LASER
  else
    default_value
  end
end

.validate(value) ⇒ Object



119
120
121
122
123
# File 'lib/advanced_billing/models/card_type.rb', line 119

def self.validate(value)
  return false if value.nil?

  CARD_TYPE.include?(value)
end