Exemplo n.º 1
0
        /// <summary>
        ///     Update the current users password.
        /// </summary>
        /// <param name="passwordManageVm">Password manage instance.</param>
        /// <returns></returns>
        public StggResult UpdatePassword(PasswordManageVm passwordManageVm)
        {
            var stggResult = new StggResult();
            var user       = AppUserManager.FindById(CurrentUser.Id);

            if (user == null)
            {
                stggResult.AddError("User not found.");
                return(stggResult);
            }

            if (string.Equals(passwordManageVm.OldPassword, passwordManageVm.NewPassword, StringComparison.CurrentCultureIgnoreCase))
            {
                stggResult.AddError("You cannot reuse the same password.");
                return(stggResult);
            }

            var identityResult = AppUserManager.ChangePassword(user.Id, passwordManageVm.OldPassword, passwordManageVm.NewPassword);

            if (!identityResult.Succeeded)
            {
                stggResult.AddError("Failed to change password.");
            }

            return(stggResult);
        }
        public PartialViewResult PasswordManage(PasswordManageVm passwordManageVm)
        {
            if (ModelState.IsValid)
            {
                var stggResult = Managers.UserAccountManager.UpdatePassword(passwordManageVm);
                ModelState.AddModelSummaryError(stggResult.Errors);
            }

            return(PartialView("_PasswordManage", passwordManageVm));
        }