Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2269)

Unified Diff: chrome/browser/autofill/credit_card.cc

Issue 12052059: requestAutocomplete - more elaborate suggestion labels (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: isherman review Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/autofill/credit_card.h ('k') | chrome/browser/ui/autofill/autofill_dialog_controller.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/autofill/credit_card.cc
diff --git a/chrome/browser/autofill/credit_card.cc b/chrome/browser/autofill/credit_card.cc
index 66d8105efef326142fb1436a0385e465c3345b43..7b1e986c2155fa72507c859c6ed7f05228dd649b 100644
--- a/chrome/browser/autofill/credit_card.cc
+++ b/chrome/browser/autofill/credit_card.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/autofill/validation.h"
#include "chrome/common/form_field_data.h"
#include "grit/generated_resources.h"
+#include "grit/webkit_resources.h"
#include "third_party/icu/public/common/unicode/uloc.h"
#include "third_party/icu/public/i18n/unicode/dtfmtsym.h"
#include "ui/base/l10n/l10n_util.h"
@@ -71,7 +72,7 @@ std::string GetCreditCardType(const string16& number) {
break;
case 14:
- if (first_three_digits >= 300 && first_three_digits <=305)
+ if (first_three_digits >= 300 && first_three_digits <= 305)
return kDinersCard;
if (first_digit == 36)
@@ -117,34 +118,6 @@ std::string GetCreditCardType(const string16& number) {
return kGenericCard;
}
-string16 GetCreditCardTypeDisplayName(const std::string& card_type) {
- if (card_type == kAmericanExpressCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_AMEX);
-
- if (card_type == kDinersCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_DINERS);
-
- if (card_type == kDiscoverCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_DISCOVER);
-
- if (card_type == kJCBCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_JCB);
-
- if (card_type == kMasterCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_MASTERCARD);
-
- if (card_type == kSoloCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_SOLO);
-
- if (card_type == kVisaCard)
- return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_VISA);
-
- // If you hit this DCHECK, the above list of cases needs to be updated to
- // include a new card.
- DCHECK_EQ(kGenericCard, card_type);
- return string16();
-}
-
bool ConvertYear(const string16& year, int* num) {
// If the |year| is empty, clear the stored value.
if (year.empty()) {
@@ -277,7 +250,7 @@ string16 CreditCard::GetRawInfo(AutofillFieldType type) const {
}
case CREDIT_CARD_TYPE:
- return GetCreditCardTypeDisplayName(type_);
+ return TypeForDisplay();
case CREDIT_CARD_NUMBER:
return number_;
@@ -436,6 +409,63 @@ string16 CreditCard::LastFourDigits() const {
return number.substr(number.size() - kNumLastDigits, kNumLastDigits);
}
+string16 CreditCard::TypeForDisplay() const {
+ if (type_ == kAmericanExpressCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_AMEX);
+ if (type_ == kDinersCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_DINERS);
+ if (type_ == kDiscoverCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_DISCOVER);
+ if (type_ == kJCBCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_JCB);
+ if (type_ == kMasterCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_MASTERCARD);
+ if (type_ == kSoloCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_SOLO);
+ if (type_ == kVisaCard)
+ return l10n_util::GetStringUTF16(IDS_AUTOFILL_CC_VISA);
+
+ // If you hit this DCHECK, the above list of cases needs to be updated to
+ // include a new card.
+ DCHECK_EQ(kGenericCard, type_);
+ return string16();
+}
+
+string16 CreditCard::TypeAndLastFourDigits() const {
+ string16 type = TypeForDisplay();
+ // TODO(estade): type may be empty, we probably want to return
+ // "Card - 1234" or something in that case.
+
+ string16 digits = LastFourDigits();
+ if (digits.empty())
+ return type;
+
+ // TODO(estade): i18n.
+ return type + ASCIIToUTF16(" - ") + digits;
+}
+
+int CreditCard::IconResourceId() const {
+ if (type_ == kAmericanExpressCard)
+ return IDR_AUTOFILL_CC_AMEX;
+ if (type_ == kDinersCard)
+ return IDR_AUTOFILL_CC_DINERS;
+ if (type_ == kDiscoverCard)
+ return IDR_AUTOFILL_CC_DISCOVER;
+ if (type_ == kJCBCard)
+ return IDR_AUTOFILL_CC_JCB;
+ if (type_ == kMasterCard)
+ return IDR_AUTOFILL_CC_MASTERCARD;
+ if (type_ == kSoloCard)
+ return IDR_AUTOFILL_CC_SOLO;
+ if (type_ == kVisaCard)
+ return IDR_AUTOFILL_CC_VISA;
+
+ // If you hit this DCHECK, the above list of cases needs to be updated to
+ // include a new card.
+ DCHECK_EQ(kGenericCard, type_);
+ return IDR_AUTOFILL_CC_GENERIC;
+}
+
void CreditCard::operator=(const CreditCard& credit_card) {
if (this == &credit_card)
return;
« no previous file with comments | « chrome/browser/autofill/credit_card.h ('k') | chrome/browser/ui/autofill/autofill_dialog_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698