Beispiel #1
0
        public ActionResult ResetPassword(int userID, int code)
        {
            var model = new ID_CodeViewModel()
            {
                Code = code,
                ID   = userID
            };

            return(View(model));
        }
Beispiel #2
0
        public ActionResult ResetPasswordSent(ID_CodeViewModel model)
        {
            var user  = _user.GetUserByIDAndCode(model.ID);
            var pass  = model.Password;
            int?codex = _coderepo.GetCodeValue(model.ID);  // id is userid

            if (model.Code == codex && user.User_Id == model.ID)
            {
                //set new password and reset the code
                var crypto    = new SimpleCrypto.PBKDF2();
                var encrpPass = crypto.Compute(pass);
                user.Password     = encrpPass;
                user.PasswordSalt = crypto.Salt;
                var random = new Random();
                user.Code.CodeValue = random.Next(10000, int.MaxValue);
                _user.SaveChanges();
            }
            else
            {
                return(RedirectToAction("ResetPasswordSent", "User"));
            }
            return(RedirectToAction("LogIn", "User"));
        }