diff --git a/lib/ui/app/sms_verification.dart b/lib/ui/app/sms_verification.dart index 6a99109a4..72198f7a6 100644 --- a/lib/ui/app/sms_verification.dart +++ b/lib/ui/app/sms_verification.dart @@ -260,15 +260,20 @@ class _UserSmsVerificationState extends State { final state = store.state; final localization = AppLocalization.of(context); final credentials = store.state.credentials; - final url = formatApiUrl(kReleaseMode ? kAppProductionUrl : kAppStagingUrl); final navigator = Navigator.of(context); + var url = formatApiUrl(kReleaseMode ? kAppProductionUrl : kAppStagingUrl); + url = '$url/sms_reset/confirm'; + if (widget.email == null) { + url += '?validate_only=true'; + } + setState(() { _isLoading = true; }); _webClient - .post('$url/sms_reset/confirm', credentials.token, + .post(url, credentials.token, data: json.encode({ 'code': _code, 'email': widget.email ?? state.user.email, @@ -280,7 +285,9 @@ class _UserSmsVerificationState extends State { if (navigator.canPop()) { navigator.pop(); } - showToast(localization.verifiedPhoneNumber); + showToast(widget.email == null + ? localization.verifiedPhoneNumber + : localization.disabledTwoFactor); store.dispatch(RefreshData()); }).catchError((dynamic error) { setState(() { diff --git a/lib/ui/auth/login_view.dart b/lib/ui/auth/login_view.dart index 925351599..03e97ed0e 100644 --- a/lib/ui/auth/login_view.dart +++ b/lib/ui/auth/login_view.dart @@ -266,6 +266,8 @@ class _LoginState extends State { if (_loginType == LOGIN_TYPE_EMAIL) { if (_disable2FA) { _buttonController.reset(); + _disable2FA = false; + _recoverPassword = false; showDialog( context: context, builder: (BuildContext context) => UserSmsVerification(