public ActionResult ChangePassword(DettaglioPasswordView dettaglioPassword, int id) { if (ModelState.IsValid) { Utente utente = ur.GetById(id); var chrypto = new CryptoHelper(); if (utente.Password.Equals(chrypto.cryptPassword(dettaglioPassword.Password))) { var newPassword = dettaglioPassword.newPassword; var repeatNewPassword = dettaglioPassword.repeatNewPassword; if (newPassword.Equals(repeatNewPassword)) { utente.Password = chrypto.cryptPassword(newPassword); ur.Save(utente); MailHelper mh = new MailHelper(); //mh.SendChangedPasswordEmail(utente.Agenzia.Email); return RedirectToAction("List"); } else //questo non può mai succedere perchè c'è la validazione sul modello... ModelState.AddModelError(String.Empty, "Le password inserite non corrispondono!"); } else//questo non dovrebbe mai succedere perchè c'è la validazione Remote sul modello... ModelState.AddModelError(String.Empty, "La password attuale non corrisponde con quella inserita!"); } return View(dettaglioPassword); }
public ActionResult ChangePassword(int id) { Utente utente = ur.GetById(id); var password = new DettaglioPasswordView() { userId = id}; return View(password); }