Kerberos: Add properly translated error codes
Error codes were hard coded to English so far. This CL uses i18n
translated strings.
BUG=chromium:952238
TEST=Tested by manually changing error codes in Javascript.
Change-Id: I74c81293aafd51bd46c0e5e960ed6b0483808cf3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1608706
Reviewed-by: Steven Bennetts <stevenjb@chromium.org>
Commit-Queue: Lutz Justen <ljusten@chromium.org>
Cr-Commit-Position: refs/heads/master@{#662080}
diff --git a/chrome/app/settings_strings.grdp b/chrome/app/settings_strings.grdp
index 2d5880aa..978f568 100644
--- a/chrome/app/settings_strings.grdp
+++ b/chrome/app/settings_strings.grdp
@@ -1638,7 +1638,28 @@
<message name="IDS_SETTINGS_KERBEROS_PASSWORD" desc="Title for the input that lets users specify their password for a Kerberos account.">
Password
</message>
- <message name="IDS_SETTINGS_KERBEROS_GENERAL_ERROR_MESSAGE" desc="Fallback error message displayed in the Add Kerberos.">
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_NETWORK_PROBLEM" desc="Error message displayed in the Add Kerberos Account dialog when the user has no network connection or enters a bad realm.">
+ Network problem or bad realm
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_USERNAME_INVALID" desc="Error message displayed in the Add Kerberos Account dialog when the user enters a badly formatted username.">
+ Username invalid (should be user@realm.com)
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_USERNAME_UNKNOWN" desc="Error message displayed in the Add Kerberos Account dialog when the user enters a username that is not known to the Kerberos realm.">
+ Username not known to server
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_CONTACTING_SERVER" desc="Error message displayed in the Add Kerberos Account dialog when the OS is not able to contact the server for the given realm.">
+ Contacting server for realm failed
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_PASSWORD_INVALID" desc="Error message displayed in the Add Kerberos Account dialog when the user enters the wrong password.">
+ Password invalid
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_PASSWORD_EXPIRED" desc="Error message displayed in the Add Kerberos Account dialog when the user's password is expired.">
+ Password expired
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_KDC_ENC_TYPE" desc="Error message displayed in the Add Kerberos Account dialog when the KDC does not support the encryption types specified in the Kerberos configuration (KDC = Key Distribution Center, part of Kerberos infrastructure).">
+ KDC does not support encryption type
+ </message>
+ <message name="IDS_SETTINGS_KERBEROS_ERROR_GENERAL" desc="Fallback error message displayed in the Add Kerberos dialog.">
Oops! Something went wrong (error code <ph name="ERROR_CODE">$1<ex>123</ex></ph>).
</message>
</if>
diff --git a/chrome/browser/resources/settings/people_page/kerberos_add_account_dialog.js b/chrome/browser/resources/settings/people_page/kerberos_add_account_dialog.js
index 2b139099..df260a3 100644
--- a/chrome/browser/resources/settings/people_page/kerberos_add_account_dialog.js
+++ b/chrome/browser/resources/settings/people_page/kerberos_add_account_dialog.js
@@ -105,36 +105,35 @@
this.passwordErrorText_ = '';
switch (error) {
- // TODO(ljusten): Proper errors
case settings.KerberosErrorType.kNone:
break;
case settings.KerberosErrorType.kNetworkProblem:
- this.generalErrorText_ = 'Network problem or bad realm';
+ this.generalErrorText_ = this.i18n('kerberosErrorNetworkProblem');
break;
case settings.KerberosErrorType.kParsePrincipalFailed:
- this.usernameErrorText_ = 'Username invalid (should be user@realm.com)';
+ this.usernameErrorText_ = this.i18n('kerberosErrorUsernameInvalid');
break;
case settings.KerberosErrorType.kBadPrincipal:
- this.usernameErrorText_ = 'Username not known to server';
+ this.usernameErrorText_ = this.i18n('kerberosErrorUsernameUnknown');
break;
case settings.KerberosErrorType.kContactingKdcFailed:
- this.usernameErrorText_ = 'Contacting server for realm failed';
+ this.usernameErrorText_ = this.i18n('kerberosErrorContactingServer');
break;
case settings.KerberosErrorType.kBadPassword:
- this.passwordErrorText_ = 'Password invalid';
+ this.passwordErrorText_ = this.i18n('kerberosErrorPasswordInvalid');
break;
case settings.KerberosErrorType.kPasswordExpired:
- this.passwordErrorText_ = 'Password expired';
+ this.passwordErrorText_ = this.i18n('kerberosErrorPasswordExpired');
break;
case settings.KerberosErrorType.kKdcDoesNotSupportEncryptionType:
- this.generalErrorText_ = 'KDC does not support encryption type';
+ this.generalErrorText_ = this.i18n('kerberosErrorKdcEncType');
break;
default:
- this.generalErrorText_ = this.i18nDynamic(
- this.locale, 'kerberosGeneralErrorMessage', String(error));
+ this.generalErrorText_ =
+ this.i18n('kerberosErrorGeneral', String(error));
}
},
diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
index 179d032..a2f4b55a 100644
--- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
+++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc
@@ -1702,8 +1702,20 @@
{"addKerberosAccount", IDS_SETTINGS_ADD_KERBEROS_ACCOUNT},
{"kerberosUsername", IDS_SETTINGS_KERBEROS_USERNAME},
{"kerberosPassword", IDS_SETTINGS_KERBEROS_PASSWORD},
- {"kerberosGeneralErrorMessage",
- IDS_SETTINGS_KERBEROS_GENERAL_ERROR_MESSAGE},
+ {"kerberosErrorNetworkProblem",
+ IDS_SETTINGS_KERBEROS_ERROR_NETWORK_PROBLEM},
+ {"kerberosErrorUsernameInvalid",
+ IDS_SETTINGS_KERBEROS_ERROR_USERNAME_INVALID},
+ {"kerberosErrorUsernameUnknown",
+ IDS_SETTINGS_KERBEROS_ERROR_USERNAME_UNKNOWN},
+ {"kerberosErrorContactingServer",
+ IDS_SETTINGS_KERBEROS_ERROR_CONTACTING_SERVER},
+ {"kerberosErrorPasswordInvalid",
+ IDS_SETTINGS_KERBEROS_ERROR_PASSWORD_INVALID},
+ {"kerberosErrorPasswordExpired",
+ IDS_SETTINGS_KERBEROS_ERROR_PASSWORD_EXPIRED},
+ {"kerberosErrorKdcEncType", IDS_SETTINGS_KERBEROS_ERROR_KDC_ENC_TYPE},
+ {"kerberosErrorGeneral", IDS_SETTINGS_KERBEROS_ERROR_GENERAL},
{"lockScreenAddFingerprint",
IDS_SETTINGS_PEOPLE_LOCK_SCREEN_ADD_FINGERPRINT_BUTTON},
{"lockScreenChangePinButton",