Index: chrome/browser/dom_ui/options/autofill_options_handler.cc |
diff --git a/chrome/browser/dom_ui/options/autofill_options_handler.cc b/chrome/browser/dom_ui/options/autofill_options_handler.cc |
index 4ab22e45ff13dc1f9d3c6d554c27ec3c4cbabdba..41f7e56aa14f21d141dd0c43d10dc112a9cee016 100644 |
--- a/chrome/browser/dom_ui/options/autofill_options_handler.cc |
+++ b/chrome/browser/dom_ui/options/autofill_options_handler.cc |
@@ -11,6 +11,7 @@ |
#include "base/string_number_conversions.h" |
#include "base/utf_string_conversions.h" |
#include "base/values.h" |
+#include "chrome/browser/autofill/autofill_country.h" |
#include "chrome/browser/autofill/autofill_profile.h" |
#include "chrome/browser/autofill/credit_card.h" |
#include "chrome/browser/dom_ui/web_ui_util.h" |
@@ -46,6 +47,26 @@ int CreditCardTypeToResourceID(const string16& type16) { |
return 0; |
} |
+// Returns a dictionary that maps country codes to data for the country. |
+DictionaryValue* GetCountryData() { |
+ std::vector<AutoFillCountry> countries; |
+ AutoFillCountry::GetAvailableCountries(&countries); |
+ |
+ DictionaryValue* country_data = new DictionaryValue(); |
+ for (size_t i = 0; i < countries.size(); ++i) { |
+ const AutoFillCountry& country = countries[i]; |
+ |
+ DictionaryValue* details = new DictionaryValue(); |
+ details->SetString("name", country.name()); |
+ details->SetString("postalCodeLabel", country.postal_code_label()); |
+ details->SetString("stateLabel", country.state_label()); |
+ |
+ country_data->Set(country.country_code(), details); |
+ } |
+ |
+ return country_data; |
+} |
+ |
} // namespace |
AutoFillOptionsHandler::AutoFillOptionsHandler() |
@@ -137,6 +158,8 @@ void AutoFillOptionsHandler::SetAddressOverlayStrings( |
l10n_util::GetStringUTF16(IDS_AUTOFILL_EDIT_ADDRESS_CAPTION)); |
localized_strings->SetString("fullNameLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_FULL_NAME)); |
+ localized_strings->SetString("country-label", |
dhollowa
2011/02/17 00:55:28
As discussed... country should follow other addres
Ilya Sherman
2011/02/17 23:09:11
Done.
|
+ l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_COUNTRY)); |
localized_strings->SetString("companyNameLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_COMPANY_NAME)); |
localized_strings->SetString("addrLine1Label", |
@@ -145,20 +168,16 @@ void AutoFillOptionsHandler::SetAddressOverlayStrings( |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_ADDRESS_LINE_2)); |
localized_strings->SetString("cityLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_CITY)); |
- localized_strings->SetString("stateLabel", |
- l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_STATE)); |
- localized_strings->SetString("zipCodeLabel", |
- l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_ZIP_CODE)); |
- localized_strings->SetString("countryLabel", |
- l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_COUNTRY)); |
- localized_strings->SetString("countryLabel", |
- l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_COUNTRY)); |
localized_strings->SetString("phoneLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_PHONE)); |
localized_strings->SetString("faxLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_FAX)); |
localized_strings->SetString("emailLabel", |
l10n_util::GetStringUTF16(IDS_AUTOFILL_DIALOG_EMAIL)); |
+ |
+ std::string default_country_code = AutoFillCountry::DefaultCountryCode(); |
+ localized_strings->SetString("defaultCountryCode", default_country_code); |
+ localized_strings->Set("autofillCountryData", GetCountryData()); |
} |
void AutoFillOptionsHandler::SetCreditCardOverlayStrings( |
@@ -254,6 +273,8 @@ void AutoFillOptionsHandler::LoadAddressEditor(const ListValue* args) { |
address.SetString("guid", profile->guid()); |
address.SetString("fullName", |
profile->GetFieldText(AutoFillType(NAME_FULL))); |
+ address.SetString("country", |
+ profile->CountryCode()); |
address.SetString("companyName", |
profile->GetFieldText(AutoFillType(COMPANY_NAME))); |
address.SetString("addrLine1", |
@@ -264,10 +285,8 @@ void AutoFillOptionsHandler::LoadAddressEditor(const ListValue* args) { |
profile->GetFieldText(AutoFillType(ADDRESS_HOME_CITY))); |
address.SetString("state", |
profile->GetFieldText(AutoFillType(ADDRESS_HOME_STATE))); |
- address.SetString("zipCode", |
+ address.SetString("postal-code", |
profile->GetFieldText(AutoFillType(ADDRESS_HOME_ZIP))); |
- address.SetString("country", |
- profile->GetFieldText(AutoFillType(ADDRESS_HOME_COUNTRY))); |
address.SetString( |
"phone", |
profile->GetFieldText(AutoFillType(PHONE_HOME_WHOLE_NUMBER))); |
@@ -332,23 +351,24 @@ void AutoFillOptionsHandler::SetAddress(const ListValue* args) { |
AutoFillProfile profile(guid); |
+ std::string country_code; |
string16 value; |
if (args->GetString(1, &value)) |
profile.SetInfo(AutoFillType(NAME_FULL), value); |
- if (args->GetString(2, &value)) |
- profile.SetInfo(AutoFillType(COMPANY_NAME), value); |
+ if (args->GetString(2, &country_code)) |
+ profile.SetCountryCode(country_code); |
if (args->GetString(3, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_LINE1), value); |
+ profile.SetInfo(AutoFillType(COMPANY_NAME), value); |
if (args->GetString(4, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_LINE2), value); |
+ profile.SetInfo(AutoFillType(ADDRESS_HOME_LINE1), value); |
if (args->GetString(5, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_CITY), value); |
+ profile.SetInfo(AutoFillType(ADDRESS_HOME_LINE2), value); |
if (args->GetString(6, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_STATE), value); |
+ profile.SetInfo(AutoFillType(ADDRESS_HOME_CITY), value); |
if (args->GetString(7, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_ZIP), value); |
+ profile.SetInfo(AutoFillType(ADDRESS_HOME_STATE), value); |
if (args->GetString(8, &value)) |
- profile.SetInfo(AutoFillType(ADDRESS_HOME_COUNTRY), value); |
+ profile.SetInfo(AutoFillType(ADDRESS_HOME_ZIP), value); |
if (args->GetString(9, &value)) |
profile.SetInfo(AutoFillType(PHONE_HOME_WHOLE_NUMBER), value); |
if (args->GetString(10, &value)) |