private Account CheckLogin(LoginModel login)
        {
            var acc = PasswordEncryptManager.Login(login.Username, login.Password);

            if (CheckLoginAndAuthentication(acc))
            {
                return(acc);
            }

            return(null);
        }
        public ActionResult ChangePassword(ChangePasswordModel register)
        {
            if (ModelState.IsValid)
            {
                //var id = XT.Web.External.AuthenticationManager.Id;
                var     accountService = IoCConfig.Service <IAccountService>();
                Account acc            = null;
                if (XT.Web.External.AuthenticationManager.Account_HasSetPassword)
                {
                    acc = PasswordEncryptManager.Login(XT.Web.External.AuthenticationManager.Account_Username, register.OldPassword);
                }
                else
                {
                    acc = accountService.FindById(XT.Web.External.AuthenticationManager.Id);
                }

                if (!CheckAccount(acc))
                {
                    return(View(register));
                }

                acc.Account_Password = PasswordEncryptManager.EncryptPassword(register.NewPassword);
                acc.HasSetPassword   = true;

                acc = accountService.Update(acc);

                if (acc != null)
                {
                    SetLoginAuthentication(acc);
                    SetSuccess("Thay đổi mật khẩu thành công!");
                }
                else
                {
                    SetCustomError("Thay đổi thất bại! Vui lòng thực hiện lại");
                }
            }

            return(View(register));
        }