Exemplo n.º 1
0
        public async Task <ActionResult> changePass(int?id)
        {
            User users = await _userService.GetById(id);

            changePassViewModel ch = new changePassViewModel()
            {
                UserId = users.UserId,
            };

            return(View(ch));
        }
Exemplo n.º 2
0
        public ActionResult ChangePassword()
        {
            string currentUserName        = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
            changePassViewModel ViewModel = new changePassViewModel();
            var getUser = (from records in db.userTables
                           where records.userName == currentUserName
                           select records);

            ViewModel.user = getUser.First();

            return(View(ViewModel));
        }
Exemplo n.º 3
0
        public async Task <ActionResult> changePass(changePassViewModel chang)
        {
            var Qchange = await _userService.GetUserByPassword(chang.UserId, chang.Oldpass);

            if (ModelState.IsValid)
            {
                if (Qchange != null)
                {
                    await _userService.EditPassword(Qchange, chang.pass);

                    Qchange.Password = chang.pass;
                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ModelState.AddModelError("Oldpass", "رمز را به درستی واردنمایید");
                }
            }
            return(View());
        }
Exemplo n.º 4
0
        public ActionResult ChangePassword(changePassViewModel pModel)
        {
            string    userName = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
            bool      valid    = false;
            userTable user     = new userTable();

            //validate old password
            if (string.IsNullOrEmpty(pModel.oldPassInput))
            {
                ModelState.AddModelError("oldPassInput", "Password is Empty");
            }

            if (ModelState.IsValid)
            {
                var getUser = (from records in db.userTables
                               where records.userName == userName
                               select records);
                user  = getUser.FirstOrDefault();
                valid = security.validatePassword(pModel.oldPassInput, user.userPassword);
            }

            if (!valid)
            {
                ModelState.AddModelError("oldPassInput", "Invalid Password");
            }

            if (pModel.newPassInput != pModel.newPassInput2)
            {
                ModelState.AddModelError("newPassInput", "Passwords must match.");
            }
            else if (string.IsNullOrEmpty(pModel.newPassInput2))
            {
                ModelState.AddModelError("newPassInput2", "Password is Empty");
            }

            if (!string.IsNullOrEmpty(pModel.newPassInput))
            {
                string regex = @"(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}";
                Regex  re    = new Regex(regex);
                if (!re.IsMatch(pModel.newPassInput))
                {
                    ModelState.AddModelError("newPassInput", "Invalid password. Password must be at least 8 characters with at least one lowercase, one uppercase letter, and one digit.");
                }
            }
            else
            {
                ModelState.AddModelError("userPasswordFirst", "Password is Empty");
            }

            if (ModelState.IsValid)
            {
                string passHash = security.createHash(pModel.newPassInput2);
                user.userPassword = passHash;
                db.SaveChanges();
                return(RedirectToAction("passwordChanged", "Accounts"));
            }
            pModel.user          = user;
            pModel.user.userName = userName;

            return(View(pModel));
        }