示例#1
0
        private void btnSendMobile_Click(object sender, EventArgs e)
        {
            string       TemplateCode = "";
            SiteSettings siteSettings = HiContext.Current.SiteSettings;
            MemberInfo   memberInfo   = MemberProcessor.FindMemberByUsername(this.txtUserName.Text.Trim());

            if (memberInfo != null)
            {
                string     code          = HiContext.Current.CreatePhoneCode(6, memberInfo.CellPhone, VerifyCodeType.Digital);
                string     sendretmsg    = "";
                string     TemplateParam = string.Format("{{\"code\":\"{0}\"}}", code);//短信模板变量替换JSON串
                SendStatus sendStatus    = Messenger.SendSMS(memberInfo.CellPhone, TemplateCode, TemplateParam, siteSettings, out sendretmsg);
                if (sendStatus == SendStatus.NoProvider || sendStatus == SendStatus.ConfigError)
                {
                    this.ShowMessage("后台设置错误,请自行联系后台管理员", false, "", 1);
                }
                else
                {
                    switch (sendStatus)
                    {
                    case SendStatus.Fail:
                        this.ShowMessage("发送失败", false, "", 1);
                        break;

                    case SendStatus.Success:
                        this.ShowMessage("发送成功", true, "", 1);
                        break;
                    }
                }
            }
        }
示例#2
0
        private void btnSetPassword_Click(object sender, EventArgs e)
        {
            string     userName   = Globals.StripAllTags(this.txtUserName.Text.Trim());
            MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(userName);
            bool       flag       = false;

            if (string.IsNullOrEmpty(this.txtPassword.Text.Trim()) || string.IsNullOrEmpty(this.txtRePassword.Text.Trim()))
            {
                this.ShowMessage("密码不允许为空!", false, "", 1);
            }
            else if (this.txtPassword.Text.Trim() != this.txtRePassword.Text.Trim())
            {
                this.ShowMessage("两次输入的密码需一致", false, "", 1);
            }
            else if (this.txtPassword.Text.Length < 6 || this.txtPassword.Text.Length > HiConfiguration.GetConfig().PasswordMaxLength)
            {
                this.ShowMessage($"密码的长度只能在{6}和{HiConfiguration.GetConfig().PasswordMaxLength}个字符之间", false, "", 1);
            }
            else if (MemberProcessor.ChangePassword(memberInfo, this.txtPassword.Text))
            {
                Messenger.UserPasswordForgotten(memberInfo, this.txtPassword.Text);
                this.Page.Response.Redirect($"/ForgotPasswordSuccess?UserName={memberInfo.UserName}");
            }
            else
            {
                this.ShowMessage("登录密码修改失败,请重试", false, "", 1);
            }
        }
示例#3
0
        private void btnSendEmail_Click(object sender, EventArgs e)
        {
            SiteSettings siteSettings = HiContext.Current.SiteSettings;
            MemberInfo   memberInfo   = MemberProcessor.FindMemberByUsername(this.txtUserName.Text.Trim());
            string       arg          = HiContext.Current.CreateVerifyCode(6, VerifyCodeType.Digital, "");
            string       body         = $"亲爱的{memberInfo.UserName}:<br>您好!感谢您使用{siteSettings.SiteName}。<br>您正在进行账户基础信息维护,请在校验码输入框中输入:{arg},以完成操作。 <br>注意:此操作可能会修改您的密码、登录邮箱或绑定手机。如非本人操作,请及时登录并修改密码以保证账户安全。(工作人员不会向您索取此校验码,请勿泄漏!) ";
            string       text         = default(string);
            SendStatus   sendStatus   = Messenger.SendMail("验证码", body, memberInfo.Email, siteSettings, out text);

            if (sendStatus == SendStatus.NoProvider || sendStatus == SendStatus.ConfigError)
            {
                this.ShowMessage("后台设置错误,请自行联系后台管理员", false, "", 1);
            }
            else
            {
                switch (sendStatus)
                {
                case SendStatus.Fail:
                    this.ShowMessage("发送失败", false, "", 1);
                    break;

                case SendStatus.Success:
                    this.ShowMessage("发送成功", true, "", 1);
                    break;
                }
            }
        }
        private string lastGetUser(string user_name)
        {
            string     format = "{{\"user_get_response\":{{\"user\":{0}}}}}";
            MemberInfo member = MemberProcessor.FindMemberByUsername(user_name);

            return(string.Format(format, this.ConvertUser(member)));
        }
示例#5
0
        private void btnSendToRank_Click(object sender, EventArgs e)
        {
            IList <MessageBoxInfo> list = new List <MessageBoxInfo>();

            if (this.rdoName.Checked && !string.IsNullOrEmpty(this.txtMemberNames.Text.Trim()))
            {
                string   text  = this.txtMemberNames.Text.Trim().Replace("\r\n", "\n");
                string[] array = text.Replace("\n", "*").Split('*');
                for (int i = 0; i < array.Length; i++)
                {
                    MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(array[i]);
                    if (memberInfo != null)
                    {
                        MessageBoxInfo messageBoxInfo = new MessageBoxInfo();
                        messageBoxInfo.Accepter = array[i];
                        messageBoxInfo.Sernder  = "admin";
                        messageBoxInfo.Title    = this.MessageTitle;
                        messageBoxInfo.Content  = this.Content;
                        list.Add(messageBoxInfo);
                    }
                }
                if (list.Count > 0)
                {
                    NoticeHelper.SendMessageToMember(list);
                    this.ShowMsg($"成功给{list.Count}个用户发送了消息.", true, "SendMessageSelectUser.aspx");
                }
                else
                {
                    this.ShowMsg("没有要发送的对象", true, "SendMessageSelectUser.aspx");
                }
            }
            if (this.rdoRank.Checked)
            {
                IList <string> membersByRank = NoticeHelper.GetMembersByRank(this.rankList.SelectedValue);
                foreach (string item in membersByRank)
                {
                    MessageBoxInfo messageBoxInfo2 = new MessageBoxInfo();
                    messageBoxInfo2.Accepter = item;
                    messageBoxInfo2.Sernder  = "admin";
                    messageBoxInfo2.Title    = this.MessageTitle;
                    messageBoxInfo2.Content  = this.Content;
                    list.Add(messageBoxInfo2);
                }
                if (list.Count > 0)
                {
                    NoticeHelper.SendMessageToMember(list);
                    this.ShowMsg($"成功给{list.Count}个用户发送了消息.", true, "SendMessageSelectUser.aspx");
                }
                else
                {
                    this.ShowMsg("没有要发送的对象", true, "SendMessageSelectUser.aspx");
                }
            }
        }
示例#6
0
        private void btnCheckAnswer_Click(object sender, EventArgs e)
        {
            string     userName   = Globals.StripAllTags(this.txtUserName.Text.Trim());
            MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(userName);

            if (memberInfo.PasswordAnswer == this.txtUserAnswer.Text.Trim())
            {
                this.panelShow("InputPassword");
            }
            else
            {
                this.litAnswerMessage.Visible = true;
            }
        }
        private bool CheckAddUserParameters(UserParam parameter, out string result)
        {
            if (!OpenApiHelper.CheckSystemParameters(parameter.app_key, parameter.timestamp, parameter.sign, out result))
            {
                return(false);
            }
            parameter.user_name = DataHelper.CleanSearchString(parameter.user_name);
            if (string.IsNullOrWhiteSpace(parameter.user_name))
            {
                result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "user_name");
                return(false);
            }
            if (MemberProcessor.FindMemberByUsername(parameter.user_name) != null)
            {
                result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "user_name");
                return(false);
            }
            Regex regex  = new Regex("^\\w+((-\\w+)|(\\.\\w+))*\\@[A-Za-z0-9]+((\\.|-)[A-Za-z0-9]+)*\\.[A-Za-z0-9]+$", RegexOptions.Compiled);
            Regex regex2 = new Regex("^0?(13|15|18|14|17)[0-9]{9}$", RegexOptions.Compiled);

            if (!string.IsNullOrWhiteSpace(parameter.email))
            {
                if (!regex.IsMatch(parameter.email))
                {
                    result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "email");
                    return(false);
                }
                if (MemberProcessor.FindMemberByEmail(parameter.email) != null)
                {
                    result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "email");
                    return(false);
                }
            }
            if (!string.IsNullOrWhiteSpace(parameter.mobile))
            {
                if (!regex2.IsMatch(parameter.mobile))
                {
                    result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "mobile");
                    return(false);
                }
                if (MemberProcessor.FindMemberByCellphone(parameter.mobile) != null)
                {
                    result = OpenApiErrorMessage.ShowErrorMsg((Enum)(object)OpenApiErrorCode.Parameters_Format_Error, "mobile");
                    return(false);
                }
            }
            return(true);
        }
示例#8
0
        private void btnCheckMobile_Click(object sender, EventArgs e)
        {
            string     msg        = "";
            MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(this.txtUserName.Text.Trim());

            if (memberInfo != null)
            {
                if (this.txtMobileValid.Text.Length == 0)
                {
                    this.ShowMessage("请输入验证码", false, "", 1);
                }
                else if (!HiContext.Current.CheckPhoneVerifyCode(this.txtMobileValid.Text.ToNullString().ToLower().Trim(), memberInfo.CellPhone, out msg))
                {
                    this.ShowMessage(msg, false, "", 1);
                }
                else
                {
                    this.panelShow("InputPassword");
                }
            }
        }
示例#9
0
        protected void SkipWeiXinOpenId()
        {
            MemberInfo memberInfo = new MemberInfo();

            if (HiContext.Current.ReferralUserId > 0)
            {
                memberInfo.ReferralUserId = HiContext.Current.ReferralUserId;
            }
            memberInfo.UnionId = this.Parameters["CurrentOpenId"].ToNullString();
            memberInfo.GradeId = MemberProcessor.GetDefaultMemberGrade();
            HttpCookie httpCookie = HttpContext.Current.Request.Cookies["NickName"];

            if (httpCookie != null)
            {
                memberInfo.UserName = Globals.StripAllTags(HttpUtility.UrlDecode(httpCookie.Value).Trim());
            }
            memberInfo.NickName = this.hidNickName.Value;
            if (string.IsNullOrEmpty(memberInfo.UserName))
            {
                memberInfo.UserName = "******" + this.GenerateUsername(8);
            }
            if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
            {
                memberInfo.UserName = "******" + this.GenerateUsername(8);
                if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                {
                    memberInfo.UserName = this.GenerateUsername();
                    if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                    {
                        this.ShowMessage("为您创建随机账户时失败,请重试。", false, "", 1);
                        return;
                    }
                }
            }
            string pass = this.GeneratePassword();
            string text = "Open";

            pass = (memberInfo.Password = Users.EncodePassword(pass, text));
            memberInfo.PasswordSalt     = text;
            memberInfo.RegisteredSource = 1;
            memberInfo.CreateDate       = DateTime.Now;
            memberInfo.IsLogined        = false;
            memberInfo.IsQuickLogin     = false;
            int num = MemberProcessor.CreateMember(memberInfo);

            if (num <= 0)
            {
                this.ShowMessage("为您创建账户时失败,请重试。", false, "", 1);
            }
            else
            {
                int num2 = 0;
                memberInfo.UserId = num;
                SiteSettings masterSettings = SettingsManager.GetMasterSettings();
                if (masterSettings.IsOpenGiftCoupons)
                {
                    string[] array = masterSettings.GiftCouponList.Split(',');
                    foreach (string obj in array)
                    {
                        if (obj.ToInt(0) > 0 && CouponHelper.AddCouponItemInfo(memberInfo, obj.ToInt(0)) == CouponActionStatus.Success)
                        {
                            num2++;
                        }
                    }
                }
                memberInfo.UserName = MemberHelper.GetUserName(memberInfo.UserId);
                MemberHelper.Update(memberInfo, true);
                HiContext.Current.User = memberInfo;
                this.SetLoginState(memberInfo, num2);
            }
        }
示例#10
0
        protected void SkipAlipayOpenId()
        {
            MemberInfo memberInfo = new MemberInfo();

            if (HiContext.Current.ReferralUserId > 0)
            {
                memberInfo.ReferralUserId = HiContext.Current.ReferralUserId;
            }
            memberInfo.GradeId  = MemberProcessor.GetDefaultMemberGrade();
            memberInfo.UserName = (string.IsNullOrEmpty(Globals.StripAllTags(this.Parameters["real_name"])) ? string.Empty : Globals.StripAllTags(this.Parameters["real_name"]).Trim());
            memberInfo.NickName = this.hidNickName.Value;
            if (string.IsNullOrEmpty(memberInfo.UserName))
            {
                memberInfo.UserName = "******" + Globals.StripAllTags(this.Parameters["user_id"]);
            }
            if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
            {
                memberInfo.UserName = this.GenerateUsername(8);
                if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                {
                    memberInfo.UserName = this.GenerateUsername();
                    if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                    {
                        this.ShowMessage("为您创建随机账户时失败,请重试。", false, "", 1);
                        return;
                    }
                }
            }
            memberInfo.Email = Globals.StripAllTags(this.Parameters["email"]);
            string pass = this.GeneratePassword();
            string text = "Open";

            pass = (memberInfo.Password = Users.EncodePassword(pass, text));
            memberInfo.PasswordSalt     = text;
            memberInfo.RegisteredSource = 1;
            memberInfo.CreateDate       = DateTime.Now;
            int num = MemberProcessor.CreateMember(memberInfo);

            if (num <= 0)
            {
                this.ShowMessage("为您创建账户时失败,请重试。", false, "", 1);
            }
            else
            {
                int num2 = 0;
                memberInfo.UserId = num;
                SiteSettings masterSettings = SettingsManager.GetMasterSettings();
                if (masterSettings.IsOpenGiftCoupons)
                {
                    string[] array = masterSettings.GiftCouponList.Split(',');
                    foreach (string obj in array)
                    {
                        if (obj.ToInt(0) > 0 && CouponHelper.AddCouponItemInfo(memberInfo, obj.ToInt(0)) == CouponActionStatus.Success)
                        {
                            num2++;
                        }
                    }
                }
                memberInfo.UserName = MemberHelper.GetUserName(memberInfo.UserId);
                MemberHelper.Update(memberInfo, true);
                HiContext.Current.User = memberInfo;
                this.SetLoginState(memberInfo, num2);
            }
        }
示例#11
0
        private void btnCheckUserName_Click(object sender, EventArgs e)
        {
            string pattern = "[\\u4e00-\\u9fa5a-zA-Z0-9]+[\\u4e00-\\u9fa5_a-zA-Z0-9]*";
            Regex  regex   = new Regex(pattern);
            string text    = Globals.StripAllTags(this.txtUserName.Text.Trim());

            if (!regex.IsMatch(text) || text.Length < 2 || text.Length > 50)
            {
                this.ShowMessage("用户名不能为空,必须以汉字或是字母开头,且在2-50个字符之间", false, "", 1);
            }
            else if (this.txtUserName.Text.Contains(","))
            {
                this.ShowMessage("用户名不能包含逗号", false, "", 1);
            }
            else
            {
                MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(text);
                if (memberInfo != null)
                {
                    this.hidUserName.Value = text;
                    if (this.dropType.SelectedIndex == 0)
                    {
                        if (!string.IsNullOrEmpty(memberInfo.PasswordQuestion))
                        {
                            if (this.litUserQuestion != null)
                            {
                                this.litUserQuestion.Text = memberInfo.PasswordQuestion.ToString();
                            }
                            this.panelShow("InputAnswer");
                        }
                        else
                        {
                            this.ShowMessage("您没有设置密保问题,无法通过密保问题找回密码,请通过其他方式找回密码或是联系管理员修改密码", false, "", 1);
                        }
                    }
                    else if (this.dropType.SelectedIndex == 1)
                    {
                        if (!string.IsNullOrEmpty(memberInfo.CellPhone) && memberInfo.CellPhone.Length >= 11)
                        {
                            if (this.litMobile != null && Regex.IsMatch(memberInfo.CellPhone, "^(13|14|15|18)\\d{9}$") && memberInfo.CellPhone.Length == 11)
                            {
                                this.litMobile.Text = memberInfo.CellPhone.Substring(0, 3) + "****" + memberInfo.CellPhone.Substring(7);
                            }
                            this.panelShow("CellPhone");
                        }
                        else
                        {
                            this.ShowMessage("您没有设置手机号码或者手机号码设置错误,无法通过手机号码找回密码,请通过其他方式找回密码或是联系管理员修改密码", false, "", 1);
                        }
                    }
                    else if (this.dropType.SelectedIndex == 2)
                    {
                        if (!string.IsNullOrEmpty(memberInfo.Email))
                        {
                            if (this.litEmail != null)
                            {
                                this.litEmail.Text = memberInfo.Email;
                            }
                            this.panelShow("Email");
                        }
                        else
                        {
                            this.ShowMessage("没有设置电子邮箱", false, "", 1);
                        }
                    }
                }
                else
                {
                    this.ShowMessage("该用户不存在", false, "", 1);
                }
            }
        }
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            string     value = this.txtcellphone.Value;
            MemberInfo user  = HiContext.Current.User;

            if (HiContext.Current.User.CellPhone != value && HiContext.Current.User.UserName != value)
            {
                MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(value);
                if (MemberProcessor.IsUseCellphone(value) || (memberInfo != null && memberInfo.UserName == value))
                {
                    this.ShowMessage("当前手机已被其他用户使用不能验证!", false, "", 1);
                    return;
                }
            }
            if (string.IsNullOrEmpty(value))
            {
                this.ShowMessage("手机号码不允许为空!", false, "", 1);
            }
            else if (!Regex.IsMatch(value, "^(13|14|15|17|18)\\d{9}$"))
            {
                this.ShowMessage("手机号码格式不正确!", false, "", 1);
            }
            else if (string.IsNullOrEmpty(this.txtcode.Value))
            {
                this.ShowMessage("验证码不允许为空!", false, "", 1);
            }
            else
            {
                object obj = HiCache.Get($"DataCache-PhoneCode-{value}");
                if (obj == null)
                {
                    this.ShowMessage("验证码错误!", false, "", 1);
                }
                else if (this.txtcode.Value.ToNullString().ToLower().Trim() != obj.ToNullString().ToLower().Trim())
                {
                    this.ShowMessage("验证码输入错误!", false, "", 1);
                }
                else
                {
                    MemberInfo user2 = Users.GetUser(HiContext.Current.UserId);
                    if (user2 == null)
                    {
                        this.ShowMessage("请您先登录!", false, "", 1);
                    }
                    else
                    {
                        if (user2.UserName.IndexOf("YSC_") >= 0 || user2.UserName == user2.CellPhone)
                        {
                            user2.UserName = value;
                        }
                        user2.CellPhone             = value;
                        user2.CellPhoneVerification = true;
                        if (MemberProcessor.UpdateMember(user2))
                        {
                            HiCache.Remove($"DataCache-PhoneCode-{value}");
                            this.Page.Response.Redirect("VerificationSuccess.aspx");
                        }
                        else
                        {
                            this.ShowMessage("发送验证码失败", false, "", 1);
                        }
                    }
                }
            }
        }
示例#13
0
        protected int SkipWeixinOpenId(string openId, string weixinNickName, string unionId, string headimgurl, string ReferralUserId, bool isSubscribe)
        {
            int        num        = 1;
            MemberInfo memberInfo = MemberProcessor.GetMemberByOpenId("hishop.plugins.openid.weixin", openId);
            bool       flag       = false;

            if (memberInfo == null)
            {
                memberInfo = MemberProcessor.GetMemberByUnionId(unionId);
                flag       = true;
            }
            SiteSettings     masterSettings     = SettingsManager.GetMasterSettings();
            ShoppingCartInfo cookieShoppingCart = ShoppingCartProcessor.GetCookieShoppingCart();
            bool             flag2 = false;

            if (memberInfo != null)
            {
                num = 2;
                if (memberInfo.IsSubscribe != isSubscribe)
                {
                    memberInfo.IsSubscribe = isSubscribe;
                    flag2 = true;
                }
                bool flag3 = MemberProcessor.IsBindedWeixin(memberInfo.UserId, "hishop.plugins.openid.weixin");
                memberInfo.Picture = headimgurl;
                if (!string.IsNullOrEmpty(unionId) && memberInfo.UnionId != unionId && !flag)
                {
                    memberInfo.UnionId = unionId;
                    flag2 = true;
                }
                if (flag)
                {
                    if (!flag3)
                    {
                        MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdInfo();
                        memberOpenIdInfo.UserId     = memberInfo.UserId;
                        memberOpenIdInfo.OpenIdType = "hishop.plugins.openid.weixin";
                        memberOpenIdInfo.OpenId     = openId;
                        MemberProcessor.AddMemberOpenId(memberOpenIdInfo);
                        memberInfo.IsQuickLogin = true;
                        flag2 = true;
                    }
                    else
                    {
                        MemberOpenIdInfo memberOpenIdInfo2 = new MemberOpenIdInfo();
                        memberOpenIdInfo2.UserId     = memberInfo.UserId;
                        memberOpenIdInfo2.OpenIdType = "hishop.plugins.openid.weixin";
                        memberOpenIdInfo2.OpenId     = openId;
                        MemberProcessor.UpdateMemberOpenId(memberOpenIdInfo2);
                    }
                }
                if (flag2)
                {
                    MemberProcessor.UpdateMember(memberInfo);
                }
                Users.SetCurrentUser(memberInfo.UserId, 30, true, false);
                HiContext.Current.User = memberInfo;
                if (cookieShoppingCart != null)
                {
                    ShoppingCartProcessor.ConvertShoppingCartToDataBase(cookieShoppingCart);
                    ShoppingCartProcessor.ClearCookieShoppingCart();
                }
                if (!string.IsNullOrEmpty(openId))
                {
                    HttpCookie httpCookie = new HttpCookie("openId");
                    httpCookie.HttpOnly = true;
                    httpCookie.Value    = openId;
                    httpCookie.Expires  = DateTime.MaxValue;
                    HttpContext.Current.Response.Cookies.Add(httpCookie);
                }
                lock (this.lockCopyRedEnvelope)
                {
                    this.CopyRedEnvelope(openId, memberInfo);
                }
                return(num);
            }
            memberInfo             = new MemberInfo();
            memberInfo.Picture     = headimgurl;
            memberInfo.IsSubscribe = isSubscribe;
            int num2 = 0;

            if (ReferralUserId.ToInt(0) > 0)
            {
                memberInfo.ReferralUserId = ReferralUserId.ToInt(0);
            }
            MemberWXReferralInfo wXReferral = VShopHelper.GetWXReferral(openId.Trim());

            if (wXReferral != null)
            {
                VShopHelper.DeleteWXReferral(openId.Trim());
            }
            memberInfo.GradeId = MemberProcessor.GetDefaultMemberGrade();
            if (!string.IsNullOrEmpty(weixinNickName))
            {
                MemberInfo memberInfo2 = memberInfo;
                MemberInfo memberInfo3 = memberInfo;
                string     text3       = memberInfo2.UserName = (memberInfo3.NickName = HttpUtility.UrlDecode(weixinNickName));
            }
            if (string.IsNullOrEmpty(memberInfo.UserName))
            {
                memberInfo.UserName = "******" + this.GenerateUsername(8);
            }
            if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
            {
                memberInfo.UserName = "******" + this.GenerateUsername(9);
                if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                {
                    memberInfo.UserName = this.GenerateUsername();
                    if (MemberProcessor.FindMemberByUsername(memberInfo.UserName) != null)
                    {
                        num = -1;
                    }
                }
            }
            if (num == 1)
            {
                string text4 = this.GeneratePassword();
                string text5 = "Open";
                string text6 = text4;
                text4 = (memberInfo.Password = Users.EncodePassword(text4, text5));
                memberInfo.PasswordSalt     = text5;
                memberInfo.RegisteredSource = 3;
                memberInfo.CreateDate       = DateTime.Now;
                memberInfo.IsQuickLogin     = true;
                memberInfo.IsLogined        = true;
                memberInfo.UnionId          = unionId;
                num2 = MemberProcessor.CreateMember(memberInfo);
                if (num2 <= 0)
                {
                    num = -1;
                }
            }
            if (num == 1)
            {
                memberInfo.UserId   = num2;
                memberInfo.UserName = MemberHelper.GetUserName(memberInfo.UserId);
                MemberHelper.Update(memberInfo, true);
                Users.SetCurrentUser(memberInfo.UserId, 30, false, false);
                HiContext.Current.User = memberInfo;
                if (cookieShoppingCart != null)
                {
                    ShoppingCartProcessor.ConvertShoppingCartToDataBase(cookieShoppingCart);
                    ShoppingCartProcessor.ClearCookieShoppingCart();
                }
                if (!string.IsNullOrEmpty(openId))
                {
                    MemberOpenIdInfo memberOpenIdInfo3 = new MemberOpenIdInfo();
                    memberOpenIdInfo3.UserId     = memberInfo.UserId;
                    memberOpenIdInfo3.OpenIdType = "hishop.plugins.openid.weixin";
                    memberOpenIdInfo3.OpenId     = openId;
                    if (MemberProcessor.GetMemberByOpenId(memberOpenIdInfo3.OpenIdType, openId) == null)
                    {
                        MemberProcessor.AddMemberOpenId(memberOpenIdInfo3);
                    }
                    if (!string.IsNullOrEmpty(openId))
                    {
                        HttpCookie httpCookie2 = new HttpCookie("openId");
                        httpCookie2.HttpOnly = true;
                        httpCookie2.Value    = openId;
                        httpCookie2.Expires  = DateTime.MaxValue;
                        HttpContext.Current.Response.Cookies.Add(httpCookie2);
                    }
                    lock (this.lockCopyRedEnvelope)
                    {
                        this.CopyRedEnvelope(openId, memberInfo);
                    }
                }
            }
            return(num);
        }
示例#14
0
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            string value = this.txtemail.Value;

            if (string.IsNullOrEmpty(value))
            {
                this.ShowMessage("邮箱不允许为空!", false, "", 1);
            }
            else if (value.Length > 256 || !Regex.IsMatch(value, "([a-zA-Z\\.0-9_-])+@([a-zA-Z0-9_-])+((\\.[a-zA-Z0-9_-]{2,4}){1,2})"))
            {
                this.ShowMessage("请输入正确的邮箱账号", false, "", 1);
            }
            else if (string.IsNullOrEmpty(this.txtcode.Value))
            {
                this.ShowMessage("验证码不允许为空!", false, "", 1);
            }
            else
            {
                object obj = HiCache.Get($"DataCache-EmailCode-{value}");
                if (obj == null)
                {
                    this.ShowMessage("验证码错误!", false, "", 1);
                }
                else if (this.txtcode.Value.ToLower() != obj.ToString().ToLower())
                {
                    this.ShowMessage("验证码输入错误!", false, "", 1);
                }
                else
                {
                    MemberInfo user = HiContext.Current.User;
                    if (user.Email != value.Trim() && user.UserName != value.Trim())
                    {
                        MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(value.Trim());
                        if (Users.MemberEmailIsExist(value.Trim()) || (memberInfo != null && memberInfo.UserName == value.Trim()))
                        {
                            this.ShowMessage("该邮箱已被其它用户使用了,请更换其它邮箱!", false, "", 1);
                            return;
                        }
                        user.EmailVerification = false;
                    }
                    MemberInfo user2 = Users.GetUser(HiContext.Current.UserId);
                    if (user2 == null)
                    {
                        this.ShowMessage("请您先登录!", false, "", 1);
                    }
                    else
                    {
                        if (user2.UserName.IndexOf("YSC_") >= 0 || user2.UserName == user2.Email)
                        {
                            user2.UserName = value;
                        }
                        user2.Email             = value;
                        user2.EmailVerification = true;
                        if (MemberProcessor.UpdateMember(user2))
                        {
                            HiCache.Remove($"DataCache-EmailCode-{value}");
                            this.Page.Response.Redirect("VerificationSuccess.aspx?type=1");
                        }
                        else
                        {
                            this.ShowMessage("发送验证码失败", false, "", 1);
                        }
                    }
                }
            }
        }
示例#15
0
        protected void btnEditUser_Click(object sender, EventArgs e)
        {
            MemberInfo user = Users.GetUser(this.userId);

            if (this.txtRealName.Text.Trim().Length > 20 || (this.txtRealName.Text.Trim().Length > 0 && !Regex.IsMatch(this.txtRealName.Text.Trim(), "^[A-Za-z\\u4e00-\\u9fa5]+$")))
            {
                this.ShowMsg("真实姓名限制在20个字符以内,只能由中文或英文组成", false);
            }
            else
            {
                user.GradeId  = this.drpMemberRankList.SelectedValue.Value;
                user.RealName = this.txtRealName.Text.Trim();
                if (this.rsddlRegion.GetSelectedRegionId().HasValue)
                {
                    user.RegionId    = this.rsddlRegion.GetSelectedRegionId().Value;
                    user.TopRegionId = RegionHelper.GetTopRegionId(user.RegionId, true);
                }
                user.Address  = Globals.HtmlEncode(this.txtAddress.Text);
                user.QQ       = this.txtQQ.Text.Trim();
                user.NickName = this.txtMSN.Text.Trim();
                if (this.calBirthday.SelectedDate.HasValue)
                {
                    user.BirthDate = this.calBirthday.SelectedDate.Value;
                }
                if (!string.IsNullOrEmpty(this.txtprivateEmail.Text.Trim()) && user.Email != this.txtprivateEmail.Text.Trim() && user.UserName != this.txtprivateEmail.Text.Trim())
                {
                    MemberInfo memberInfo = MemberProcessor.FindMemberByUsername(this.txtprivateEmail.Text.Trim());
                    if (Users.MemberEmailIsExist(this.txtprivateEmail.Text.Trim()) || (memberInfo != null && memberInfo.UserName == this.txtprivateEmail.Text.Trim()))
                    {
                        this.ShowMsg("邮箱已存在,请重新输入!", false);
                        return;
                    }
                    user.EmailVerification = false;
                }
                user.Email = this.txtprivateEmail.Text.Trim();
                if (!string.IsNullOrEmpty(this.txtCellPhone.Text.Trim()) && user.CellPhone != this.txtCellPhone.Text.Trim() && user.UserName != this.txtCellPhone.Text.Trim())
                {
                    MemberInfo memberInfo2 = MemberProcessor.FindMemberByUsername(this.txtCellPhone.Text.Trim());
                    if (MemberProcessor.IsUseCellphone(this.txtCellPhone.Text.Trim()) || (memberInfo2 != null && memberInfo2.UserName == this.txtCellPhone.Text.Trim()))
                    {
                        this.ShowMsg("手机号码已存在!", false);
                        return;
                    }
                    user.CellPhoneVerification = false;
                }
                user.CellPhone = this.txtCellPhone.Text.Trim();
                user.Gender    = this.gender.SelectedValue;
                string text = this.hidTagId.Value;
                if (string.IsNullOrWhiteSpace(text))
                {
                    text = ",";
                }
                if (text != ",")
                {
                    text = "," + text + ",";
                }
                user.TagIds = text;
                if (MemberHelper.Update(user, false))
                {
                    this.ShowMsg("成功修改了当前会员的个人资料", true);
                }
                else
                {
                    this.ShowMsg("当前会员的个人信息修改失败,请检查您的邮箱是否与其它会员相同了。", false);
                }
            }
        }