public ActionResult ChangePassword(PasswordChanger obj) { try { user user = db.users.Where((x) => x.id == obj.userId).First(); string dbHash = user.password_hash; user.password_hash = obj.oldPass; AccountChecker check = new AccountChecker(user); if (dbHash.Equals(check.CreateMD5Hash())) { if (obj.NewPass.Equals(obj.confirm)) { user.password_hash = obj.NewPass; check = new AccountChecker(user); if (dbHash.Equals(check.CreateMD5Hash())) { ViewBag.Error = "Cтарый и новый пароль совпадают"; return(View(obj)); } else { user.salt = check.GenerateSalt(); check = new AccountChecker(user); user.password_hash = check.CreateMD5Hash(); db.SaveChanges(); ViewBag.Error = "Пароль изменен"; return(View(obj)); } } else { ViewBag.Error = "Новый пароль и подтверждение не совпадают"; return(View(obj)); } } else { ViewBag.Error = "Cтарые пароли не совпадают"; return(View(obj)); } } catch (Exception) { ViewBag.Error = "Случилась ошибка при обработке запроса"; return(View(obj)); } }
public ActionResult Index(user user) { if (user.email != null && user.password_hash != null && !user.email.Equals(String.Empty) && !user.password_hash.Equals(String.Empty)) { Regex reg = new Regex(@"^[-a-zA-Z0-9][-.a-zA-Z0-9]*@[-.a-zA-Z0-9]+(\.[-.a-zA-Z0-9]+)*"); AccountChecker checker = new AccountChecker(user); if ((ViewBag.ErrorMessage = checker.CheckData(reg.Match(user.email).Success)) == null) { user = checker.GetUser(); checker.db.SaveChanges(); Session.Clear(); Session["user"] = user; Session.Timeout = 10000; return(RedirectToAction("Login", "Account")); } } return(View()); }
public ActionResult Register(user u) { if (u.email == null || u.first_name == null || u.last_name == null || u.login == null || u.password_hash == null || u.confirm_password == null) { ViewBag.Error = "Не все поля заполнены"; return(View()); } AccountChecker ac = new AccountChecker(u); if ((ViewBag.Error = ac.CheckEmail(false)) == null) { u.salt = ac.GenerateSalt(); u.password_hash = ac.CreateMD5Hash(); db.users.Add(u); db.SaveChanges(); return(RedirectToAction("Thanks")); } return(View()); }