public ActionResult ForgotPassword(ForgotPassword model) { if (ModelState.ContainsKey("NewPassword")) ModelState["NewPassword"].Errors.Clear(); if (ModelState.IsValid) { string EmailAddress = model.EmailAddress.ToString(); User user = _userService.RegistrantUser(EmailAddress); if (user != null) { ForgotPwd ForgotPassword = EmailClient.SendResetEmail(EmailAddress, "OMSTeam"); if (ForgotPassword != null) { using (var OrderMangtDB = new OrderMgntEntities()) { // var userDetails = OrderMangtDB.ForgotPwds.ToList().Where(x => x.ResetURL.Equals(OMS)).FirstOrDefault(); OrderMangtDB.ForgotPwds.Add(ForgotPassword); OrderMangtDB.SaveChanges(); ForgotPassword objForgotPassword = new Models.ForgotPassword(); objForgotPassword.EmailAddress = ForgotPassword.UserID; objForgotPassword.Msgtype = 0; return PartialView("_EmailConfirmation", objForgotPassword); } } } else { ViewBag.EmailNotExistMessage = "User with this Email does not exist."; return View("ForgotPassword"); } } return View("ForgotPassword"); }
public ActionResult UpdatePassword(ForgotPassword objForgotPassword) { if (ModelState.ContainsKey("EmailAddress")) ModelState["EmailAddress"].Errors.Clear(); objForgotPassword.Msgtype = 2; if (ModelState.IsValid) { using (var OrderMangtDB = new OrderMgntEntities()) { var userDetails = OrderMangtDB.Users.ToList().Where(x => x.EmailAddress.Equals(objForgotPassword.UserID)).FirstOrDefault(); var ForgotPwds = OrderMangtDB.ForgotPwds.ToList().Where(x => x.UserID.Equals(objForgotPassword.UserID)).FirstOrDefault(); if (userDetails != null) { userDetails.Password = Cryptography.Encrypt(objForgotPassword.NewPassword); ForgotPwds.Isused = true; OrderMangtDB.SaveChanges(); // Update the entity in the database objForgotPassword.Msgtype = 3; } } } return PartialView("_EmailConfirmation", objForgotPassword); }
public ActionResult ResetPassword(string OMS) { using (var OrderMangtDB = new OrderMgntEntities()) { var userDetails = OrderMangtDB.ForgotPwds.ToList().Where(x => x.ResetURL.Equals(OMS)).FirstOrDefault(); ForgotPassword objForgotPassword = new Models.ForgotPassword(); if (userDetails.Isused.HasValue) { if ((bool)userDetails.Isused) { objForgotPassword.Msgtype = 1; objForgotPassword.ErrorMsg = "This link has been already used. Return to 'log in' page and click forgot password to generate another link."; } else { objForgotPassword.Msgtype = 2; objForgotPassword.UserID = userDetails.UserID.ToString(); return PartialView("_EmailConfirmation", objForgotPassword); } } return PartialView("_EmailConfirmation", objForgotPassword); } }