示例#1
0
        private bool VerifyUserInternal(string userName, string vCode, bool activate = true)
        {
            FormsService.SignOut();
            bool           result = false;
            MembershipUser user   = MembershipService.GetUser(userName);

            if (user != null)
            {
                if (!user.IsApproved && !user.IsLockedOut && ApproveHasher.IsValidHash(user, vCode))
                {
                    if (activate)
                    {
                        MembershipService.ActivateUser(user);
                    }
                    FormsService.SignIn(userName, false);
                    ClientRepo.ActivateClientForUser((Guid)user.ProviderUserKey);
                    result = true;
                }
            }
            return(result);
        }
示例#2
0
        public ActionResult AcceptInviteation(ChangePasswordModel model)
        {
            MembershipUser user = MembershipService.GetUser(User.Identity.Name);

            if (user != null && !user.IsApproved && ModelState.IsValid)
            {
                bool isSuccess = MembershipService.ResetPassword(User.Identity.Name, model.NewPassword);
                MembershipService.ActivateUser(user);
                if (isSuccess)
                {
                    return(RedirectToAction("ChangePasswordSuccess"));
                }
                else
                {
                    ModelState.AddModelError("", "Новый пароль некорректен.");
                }
            }

            // If we got this far, something failed, redisplay form
            ViewData["PasswordLength"] = MembershipService.MinPasswordLength;
            return(View(model));
        }