getCardType static method

CardType getCardType(
  1. String cardNumber
)

Computes the card type based on the card number

@param cardNumber The credit card number @return CardType The card type, e.g. VISA

Implementation

static CardType getCardType(String cardNumber) {
  String cn = cleanCardNumber(cardNumber);

  if (cn.indexOf("4") == 0) {
    if (_isCardVisaElectron(cn)) {
      return VISA_ELECTRON;
    } else {
      return VISA;
    }
  } else if (_isCardAmex(cn)) {
    return AMEX;
  } else if (_isCardMastercard(cn)) {
    return MASTERCARD;
  } else if (_isCardDiscover(cn)) {
    return DISCOVER;
  } else if (_isCardJCB(cn)) {
    return JCB;
  } else if (_isCardDankort(cn)) {
    return DANKORT;
  } else if (_isCardMaestro(cn)) {
    return MAESTRO;
  } else {
    return OTHER;
  }
}