示例#1
0
            /// <summary>
            ///     Veirfy Email
            /// </summary>
            /// <param name="expireMiniutes"></param>
            /// <param name="daoFactory"></param>
            /// <returns></returns>
            public virtual EmailVerifier VerifyEmail(int expireMiniutes, IMemberShipFactory daoFactory)
            {
                var dao    = daoFactory.CreateEmailVerifierDao();
                var result = new EmailVerifier(User, expireMiniutes, VerifyType.Email);

                dao.SaveOrUpdate(result);
                EmailVerified = false;
                return(result);
            }
示例#2
0
        public ActionResult VerifyEmail(string id, string token)
        {
            EmailVerifier userToken = _factory.CreateEmailVerifierDao().Get(id);

            try
            {
                if (userToken == null)
                {
                    return(View("~/Views/HttpErrors/404.cshtml"));
                }
                var verifyEmailModel = new VerifyEmailModel(userToken);
                return(View(verifyEmailModel.Verify(OrnamentContext.MemberShip.CurrentUser(), token, _factory)));
            }
            finally
            {
                if (userToken != null)
                {
                    _factory.CreateEmailVerifierDao().SaveOrUpdate(userToken);
                }
            }
        }
        /// <summary>
        /// </summary>
        /// <param name="token"></param>
        /// <param name="daoFactory"></param>
        /// <returns></returns>
        /// <exception cref="EmailSecurityTimeoutException">User Token is Timeout</exception>
        public virtual VerifyResult Verify(string token, IMemberShipFactory daoFactory)
        {
            VerifyResult re = Verify(token);

            if (re == VerifyResult.Success)
            {
                this.Account.Contact.EmailVerified = true;
                daoFactory.CreateUserDao().SaveOrUpdate(this.Account);
            }
            daoFactory.CreateEmailVerifierDao().SaveOrUpdate(this);

            return(re);
        }
            public virtual EmailVerifier ResetPassword(IMemberShipFactory daoFactory, int expireMiniutes)
            {
                if (daoFactory == null)
                {
                    throw new ArgumentNullException("daoFactory");
                }
                if (expireMiniutes <= 0)
                {
                    expireMiniutes = 30;
                }
                var result = new EmailVerifier(User, expireMiniutes, VerifyType.ResetPassword);

                daoFactory.CreateEmailVerifierDao().SaveOrUpdate(result);
                return(result);
            }
示例#5
0
        public VerifyResult Save(IMemberShipFactory factory)
        {
            EmailVerifier userToken = factory.CreateEmailVerifierDao().Get(Id);

            if (userToken == null)
            {
                return(VerifyResult.NotFoundTokenId);
            }
            if (userToken.Verify(TokenId, factory) == VerifyResult.Success)
            {
                userToken.Account.Security.ChangePassword(PasswordModel.NewPassword);
                factory.CreateUserDao().Update(userToken.Account);
                return(VerifyResult.Success);
            }
            return(VerifyResult.Failed);
        }
        public VerifyResult Save(IMemberShipFactory factory)
        {
            EmailVerifier userToken = factory.CreateEmailVerifierDao().Get(Id);

            if (userToken == null)
            {
                return VerifyResult.NotFoundTokenId;
            }
            if (userToken.Verify(TokenId, factory) == VerifyResult.Success)
            {
                userToken.Account.Security.ChangePassword(PasswordModel.NewPassword);
                factory.CreateUserDao().Update(userToken.Account);
                return VerifyResult.Success;
            }
            return VerifyResult.Failed;
        }