public IActionResult Forget_Password_Confirm(ForgetPasswordViewModel2 model, string PhoneNumber) { ViewBag.Ban1 = db.Banners.FirstOrDefault(p => p.NameBanner == "banner1"); ViewBag.Ban2 = db.Banners.FirstOrDefault(p => p.NameBanner == "banner2"); ViewBag.Ban3 = db.Banners.FirstOrDefault(p => p.NameBanner == "banner3"); ViewBag.Ban4 = db.Banners.FirstOrDefault(p => p.NameBanner == "banner4"); ViewBag.Ban5 = db.Banners.FirstOrDefault(p => p.NameBanner == "banner5"); model.PhoneNumber = PhoneNumber; return(View(model)); }
public async Task <IActionResult> Forget_Password_Confirm(ForgetPasswordViewModel2 model, int koo) { if (ModelState.IsValid) { var user = _userManager.Users.FirstOrDefault(p => p.PhoneNumber == model.PhoneNumber); if (user != null) { var smsnumber = db.SmsCodes.FirstOrDefault(p => p.NewPhoneNumber == model.PhoneNumber); if (smsnumber != null) { if (model.SmsCode == smsnumber.SMSCode) { var _passwordValidator = HttpContext.RequestServices.GetService(typeof(IPasswordValidator <User>)) as IPasswordValidator <User>; var _passwordHasher = HttpContext.RequestServices.GetService(typeof(IPasswordHasher <User>)) as IPasswordHasher <User>; IdentityResult result = await _passwordValidator.ValidateAsync(_userManager, user, model.Password); if (result.Succeeded) { user.PasswordHash = _passwordHasher.HashPassword(user, model.Password); await _userManager.UpdateAsync(user); db.SmsCodes.Remove(smsnumber); await db.SaveChangesAsync(); return(RedirectToAction("Login", "Account")); } else { foreach (var error in result.Errors) { ModelState.AddModelError("", "Error"); } } } ModelState.AddModelError("", "Код подтверждения но совподает..."); } ModelState.AddModelError("", "Введите номер занова..."); } ModelState.AddModelError("", "Пользователь с таким номером не существует..."); } return(View(model)); }