Ejemplo n.º 1
0
 private void btnLogin_Click(object sender, System.EventArgs e)
 {
     if (!Hidistro.Membership.Context.HiContext.Current.CheckVerifyCode(this.txtCode.Text.Trim()))
     {
         this.ShowMessage("验证码不正确", false);
     }
     else
     {
         Hidistro.Membership.Core.IUser user = Hidistro.Membership.Context.Users.GetUser(0, this.txtUserName.Text, false, true);
         if (user == null || user.IsAnonymous || user.UserRole != Hidistro.Membership.Core.Enums.UserRole.Distributor)
         {
             this.ShowMessage("无效的用户信息", false);
         }
         else
         {
             Hidistro.Membership.Context.Distributor distributor = user as Hidistro.Membership.Context.Distributor;
             distributor.Password = this.txtPassword.Text;
             if (Hidistro.Membership.Context.HiContext.Current.SiteSettings.IsDistributorSettings && user.UserId != Hidistro.Membership.Context.HiContext.Current.SiteSettings.UserId.Value)
             {
                 this.ShowMessage("分销商只能在自己的站点或主站上登录", false);
             }
             else
             {
                 Hidistro.Membership.Core.Enums.LoginUserStatus loginUserStatus = SubsiteStoreHelper.ValidLogin(distributor);
                 if (loginUserStatus == Hidistro.Membership.Core.Enums.LoginUserStatus.Success)
                 {
                     System.Web.HttpCookie authCookie = System.Web.Security.FormsAuthentication.GetAuthCookie(distributor.Username, false);
                     Hidistro.Membership.Core.IUserCookie userCookie = distributor.GetUserCookie();
                     userCookie.WriteCookie(authCookie, 30, false);
                     this.Page.Response.Cookies["hishopLoginStatus"].Value = "true";
                     Hidistro.Membership.Context.HiContext.Current.User    = distributor;
                     distributor.OnLogin();
                     Hidistro.Membership.Context.SiteSettings siteSettings = Hidistro.Membership.Context.SettingsManager.GetSiteSettings(Hidistro.Membership.Context.HiContext.Current.User.UserId);
                     if (siteSettings == null)
                     {
                         this.Page.Response.Redirect("nositedefault.aspx", true);
                     }
                     else
                     {
                         this.Page.Response.Redirect("default.aspx", true);
                     }
                 }
                 else
                 {
                     if (loginUserStatus == Hidistro.Membership.Core.Enums.LoginUserStatus.AccountPending)
                     {
                         this.ShowMessage("用户账号还没有通过审核", false);
                     }
                     else
                     {
                         if (loginUserStatus == Hidistro.Membership.Core.Enums.LoginUserStatus.AccountLockedOut)
                         {
                             this.ShowMessage("用户账号已被锁定,暂时不能登录系统", false);
                         }
                         else
                         {
                             if (loginUserStatus == Hidistro.Membership.Core.Enums.LoginUserStatus.InvalidCredentials)
                             {
                                 this.ShowMessage("用户名或密码错误", false);
                             }
                             else
                             {
                                 this.ShowMessage("登录失败,未知错误", false);
                             }
                         }
                     }
                 }
             }
         }
     }
 }