diff --git a/Signal/src/view controllers/CodeVerificationViewController.m b/Signal/src/view controllers/CodeVerificationViewController.m index 095fffaae..4f80500f9 100644 --- a/Signal/src/view controllers/CodeVerificationViewController.m +++ b/Signal/src/view controllers/CodeVerificationViewController.m @@ -11,6 +11,7 @@ #import #import #import +#import #import NS_ASSUME_NONNULL_BEGIN @@ -269,10 +270,21 @@ NSString *const kCompletedRegistrationSegue = @"CompletedRegistration"; - (void)presentAlertWithVerificationError:(NSError *)error { - UIAlertController *alertController = [UIAlertController - alertControllerWithTitle:NSLocalizedString(@"REGISTRATION_VERIFICATION_FAILED_TITLE", @"Alert view title") - message:error.localizedDescription - preferredStyle:UIAlertControllerStyleAlert]; + UIAlertController *alertController; + // In the case of the "rate limiting" error, we want to show the + // "recovery suggestion", not the error's "description." + if ([error.domain isEqualToString:TSNetworkManagerDomain] && + error.code == 413) { + alertController = [UIAlertController alertControllerWithTitle:NSLocalizedString(@"REGISTRATION_VERIFICATION_FAILED_TITLE", + @"Alert view title") + message:error.localizedRecoverySuggestion + preferredStyle:UIAlertControllerStyleAlert]; + } else { + alertController = [UIAlertController alertControllerWithTitle:NSLocalizedString(@"REGISTRATION_VERIFICATION_FAILED_TITLE", + @"Alert view title") + message:error.localizedDescription + preferredStyle:UIAlertControllerStyleAlert]; + } UIAlertAction *dismissAction = [UIAlertAction actionWithTitle:NSLocalizedString(@"DISMISS_BUTTON_TEXT", nil) style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) { diff --git a/Signal/translations/en.lproj/Localizable.strings b/Signal/translations/en.lproj/Localizable.strings index 7556810f4..2c13c6b34 100644 --- a/Signal/translations/en.lproj/Localizable.strings +++ b/Signal/translations/en.lproj/Localizable.strings @@ -649,7 +649,7 @@ "REGISTER_FAILED_TRY_AGAIN" = "Try again"; /* No comment provided by engineer. */ -"REGISTER_RATE_LIMITING_BODY" = "The server is currently rate-limiting signups, please try again later."; +"REGISTER_RATE_LIMITING_BODY" = "You have tried too often. Please wait a minute before trying again."; /* No comment provided by engineer. */ "REGISTERED_NUMBER_TEXT" = "Registered Number";