public async Task <IActionResult> SendNewCode(SendNewCodeVM Input) { if (ModelState.IsValid) { Input.PhoneNumber = Input.PhoneNumber.PersianToEnglish(); var user = await _userManager.FindByNameAsync(Input.PhoneNumber); if (user != null) { var code = await _userManager.GenerateChangePhoneNumberTokenAsync(user, user.PhoneNumber); var res = /*await _smsSender.SendPattern(user.PhoneNumber, code, "activate");*/ "ok"; if (res.Equals("ok")) { TempData["Code"] = code; _memoryCache.Set("PhoneNumber", user.PhoneNumber, new MemoryCacheEntryOptions { Priority = CacheItemPriority.High, SlidingExpiration = TimeSpan.FromMinutes(20) }); ViewData["PhoneNumber"] = Input.PhoneNumber; return(RedirectToAction("ConfirmPhoneNumber")); } } } TempData["msg"] = "درخواست شما غیر مجاز است. |danger"; return(View()); }
public async Task <IActionResult> ForgotPassword(SendNewCodeVM Input) { if (ModelState.IsValid) { Input.PhoneNumber = Input.PhoneNumber.PersianToEnglish(); var user = await _userManager.FindByNameAsync(Input.PhoneNumber); if (user == null || !(await _userManager.IsPhoneNumberConfirmedAsync(user))) { // Don't reveal that the user does not exist or is not confirmed return(RedirectToAction("ResetPassword")); } var code = await _userManager.GeneratePasswordResetTokenAsync(user); var res = /*await _smsSender.SendPattern(user.PhoneNumber, code, "reset")*/ "ok"; if (res.Equals("ok")) { TempData["Code"] = code; return(RedirectToAction("ResetPassword")); } // For more information on how to enable account confirmation and password reset please // visit https://go.microsoft.com/fwlink/?LinkID=532713 //var callbackUrl = Url.Page( // "/Account/ResetPassword", // pageHandler: null, // values: new { code }, // protocol: Request.Scheme); //await _emailSender.SendEmailAsync( // Input.PhoneNumber, // "Reset Password", // $"Please reset your password by <a href='{HtmlEncoder.Default.Encode(callbackUrl)}'>clicking here</a>."); } return(View()); }