| Index: components/autofill/core/browser/validation.h
|
| diff --git a/components/autofill/core/browser/validation.h b/components/autofill/core/browser/validation.h
|
| index 93a52e59b4f560d1d984fff0d0ebd5f5a5186409..5905b842b3ea1e1e0073df3c91f5eead0b41d4ba 100644
|
| --- a/components/autofill/core/browser/validation.h
|
| +++ b/components/autofill/core/browser/validation.h
|
| @@ -15,10 +15,19 @@ class Time;
|
|
|
| namespace autofill {
|
|
|
| +class CreditCard;
|
| +
|
| // Constants for the length of a CVC.
|
| static const size_t GENERAL_CVC_LENGTH = 3;
|
| static const size_t AMEX_CVC_LENGTH = 4;
|
|
|
| +// Used to express the completion status of a credit card.
|
| +typedef uint32_t CreditCardCompletionStatus;
|
| +static const CreditCardCompletionStatus CREDIT_CARD_COMPLETE = 0;
|
| +static const CreditCardCompletionStatus CREDIT_CARD_EXPIRED = 1 << 0;
|
| +static const CreditCardCompletionStatus CREDIT_CARD_NO_CARDHOLDER = 1 << 1;
|
| +static const CreditCardCompletionStatus CREDIT_CARD_NO_NUMBER = 1 << 2;
|
| +
|
| // Returns true if |year| and |month| describe a date later than |now|.
|
| // |year| must have 4 digits.
|
| bool IsValidCreditCardExpirationDate(int year,
|
| @@ -42,6 +51,18 @@ bool IsValidCreditCardNumberForBasicCardNetworks(
|
| const std::set<std::string>& supported_basic_card_networks,
|
| base::string16* error_message);
|
|
|
| +// Returns the credit card's completion status. If equal to
|
| +// CREDIT_CARD_COMPLETE, then the card is ready to be used for Payment Request.
|
| +// TODO(crbug.com/709776): Check for billing address association.
|
| +CreditCardCompletionStatus GetCompletionStatusForCard(
|
| + const CreditCard& credit_card,
|
| + const std::string& app_locale);
|
| +
|
| +// Return the message to be displayed to the user, indicating what's missing
|
| +// to make the credit card complete for payment. If more than one thing is
|
| +// missing, the message will be a generic "more information required".
|
| +base::string16 GetCompletionMessageForCard(CreditCardCompletionStatus status);
|
| +
|
| // Returns true if |text| looks like a valid e-mail address.
|
| bool IsValidEmailAddress(const base::string16& text);
|
|
|
|
|