public async Task <ActionResult> OnPostAsync(string returnUrl = null) { ApplicationUser user = await _userManager.GetUserAsync(HttpContext.User); if (user == null) { return(LocalRedirect(Url.Content($"~/Identity/Account/Login/?returnUrl={returnUrl}"))); } returnUrl = returnUrl ?? Url.Content("~/"); if (ModelState.IsValid) { var result = await _verification.CheckVerificationAsync(user.PhoneNumber, Input.Code); if (result.IsValid) { user.Verified = true; await _userManager.UpdateAsync(user); _logger.Log(LogLevel.Information, $"User verified: {user.UserName}"); return(LocalRedirect(Url.Content(returnUrl))); } foreach (var error in result.Errors) { _logger.Log(LogLevel.Information, $"Verification Failed: {error}"); ModelState.AddModelError(string.Empty, error); } } // If we got this far, something failed, redisplay form return(Page()); }
public async Task <ActionResult> OnPostAsync(string returnUrl = null) { ApplicationUser user = await _userManager.GetUserAsync(HttpContext.User); if (user == null) { return(LocalRedirect(Url.Content($"~/Identity/Account/Login/?returnUrl={returnUrl}"))); } returnUrl = returnUrl ?? Url.Content("~/"); if (ModelState.IsValid) { var result = await _verification.CheckVerificationAsync(user.PhoneNumber, Input.Code); if (result.IsValid) { user.Verified = true; await _userManager.UpdateAsync(user); _logger.Log(LogLevel.Information, $"User verified: {user.UserName}"); return(LocalRedirect(Url.Content(returnUrl))); } foreach (var error in result.Errors) { _logger.Log(LogLevel.Information, $"Verification Failed: {error}"); string errorRU = error; if (error == "Wrong code. Try again.") { errorRU = "Неверный код. Попробуйте еще раз."; } if (error == "Max check attempts reached") { errorRU = "Превышено число попыток."; } ModelState.AddModelError(string.Empty, errorRU); } } // If we got this far, something failed, redisplay form return(Page()); }