示例#1
0
        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);
        }
示例#2
0
 public ActionResult ChangePassword(int id)
 {
     Utente utente = ur.GetById(id);
     var password = new DettaglioPasswordView() { userId = id};
     return View(password);
 }