Ejemplo n.º 1
0
        public ActionResult ChangePass()
        {
            /*
             * User change password
             */
            try
            {
                // get current logon user
                User logonUser = db.Users.Where(u => u.UserId == User.UserId).FirstOrDefault();
                if (logonUser == null)
                {
                    return(RedirectToAction("Logout", "User"));
                }

                // create user change password view model
                ChangeUserPassViewModel model = new ChangeUserPassViewModel();
                model.UserId   = logonUser.UserId;
                model.UserName = logonUser.Username;

                return(View(model));
            }
            catch (ArgumentNullException ex)
            {
                return(RedirectToAction("ErrorMessage", "Admin",
                                        new RouteValueDictionary(
                                            new { message = ex.Message })));
            }
        }
Ejemplo n.º 2
0
        public ActionResult ChangePass(ChangeUserPassViewModel model)
        {
            /*
             * User submitted data to change password
             */
            try
            {
                // is model valid?
                if (ModelState.IsValid == false)
                {
                    ModelState.AddModelError(string.Empty, "Thông tin đổi mật khẩu không hợp lệ");
                    return(View(model));
                }

                // get current user info
                User userInfo = db.Users.Where(u => u.UserId == model.UserId).FirstOrDefault();
                if (userInfo == null)
                {
                    return(RedirectToAction("Logout", "User"));
                }

                // update user's password
                SaltedHash sh = new SaltedHash(model.Password);
                userInfo.Salt     = sh.Salt;
                userInfo.Password = sh.Hash;

                db.SaveChanges();

                return(RedirectToAction("Index", "Admin"));
            }
            catch (ArgumentNullException ex)
            {
                return(RedirectToAction("ErrorMessage", "Admin",
                                        new RouteValueDictionary(
                                            new { message = ex.Message })));
            }
        }