private void SkipWinxinOpenId(string userName, string openId) { string generateId = Globals.GetGenerateId(); MemberInfo memberInfo = new MemberInfo(); memberInfo.GradeId = MemberProcessor.GetDefaultMemberGrade(); memberInfo.UserName = userName; memberInfo.SessionId = generateId; memberInfo.Password = generateId; string text2 = memberInfo.PasswordSalt = "Open"; memberInfo.RealName = string.Empty; memberInfo.Address = string.Empty; int num = MemberProcessor.CreateMember(memberInfo); if (num == 0) { memberInfo.UserName = "******" + generateId; memberInfo.Password = generateId; MemberProcessor.CreateMember(memberInfo); } MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdInfo(); memberOpenIdInfo.UserId = num; memberOpenIdInfo.OpenIdType = "hishop.plugins.openid.weixin"; memberOpenIdInfo.OpenId = openId; if (MemberProcessor.GetMemberByOpenId(memberOpenIdInfo.OpenIdType, memberOpenIdInfo.OpenId) == null) { MemberProcessor.AddMemberOpenId(memberOpenIdInfo); } Users.SetCurrentUser(num, 30, true, false); HiContext.Current.User = memberInfo; }
private void SetLoginState(MemberInfo member) { string text = this.parameters["HIGW"]; string openId = this.parameters["CurrentOpenId"]; MemberOpenIdInfo memberOpenId = MemberProcessor.GetMemberOpenId(text, openId); if (memberOpenId == null) { memberOpenId = new MemberOpenIdInfo(); memberOpenId.UserId = member.UserId; memberOpenId.OpenIdType = text; memberOpenId.OpenId = openId; MemberProcessor.AddMemberOpenId(memberOpenId); } Users.SetCurrentUser(member.UserId, 30, false, false); HiContext.Current.User = member; ShoppingCartInfo cookieShoppingCart = ShoppingCartProcessor.GetCookieShoppingCart(); if (cookieShoppingCart != null) { ShoppingCartProcessor.ConvertShoppingCartToDataBase(cookieShoppingCart); ShoppingCartProcessor.ClearCookieShoppingCart(); } if (!string.IsNullOrEmpty(this.parameters["token"])) { HttpCookie httpCookie = new HttpCookie("Token_" + HiContext.Current.UserId.ToString()); httpCookie.HttpOnly = true; httpCookie.Expires = DateTime.Now.AddMinutes(30.0); httpCookie.Value = this.parameters["token"]; HttpContext.Current.Response.Cookies.Add(httpCookie); } if (!string.IsNullOrEmpty(this.parameters["target_url"])) { this.Page.Response.Redirect(this.parameters["target_url"], true); } this.Page.Response.Redirect("/"); }
private void SetLoginState(MemberInfo member, int iSendCouponCount = 0) { string text = Globals.StripAllTags(this.Parameters["CurrentOpenId"]); if (!string.IsNullOrEmpty(text)) { MemberOpenIdInfo memberOpenIdInfo = MemberProcessor.GetMemberOpenIdInfo(member.UserId, this.openIdType); if (memberOpenIdInfo != null && memberOpenIdInfo.OpenId != text) { this.ShowMessage("该账号已被绑定,请绑定其他帐号。", false, "", 1); return; } MemberOpenIdInfo memberOpenId = MemberProcessor.GetMemberOpenId(this.openIdType, text); if (memberOpenId == null) { memberOpenId = new MemberOpenIdInfo(); memberOpenId.UserId = member.UserId; memberOpenId.OpenIdType = this.openIdType; memberOpenId.OpenId = text; try { MemberProcessor.AddMemberOpenId(memberOpenId); } catch (Exception ex) { NameValueCollection param = new NameValueCollection { this.Page.Request.QueryString, this.Page.Request.Form }; Globals.WriteExceptionLog_Page(ex, param, "AddMemberOpenId"); } } } Users.SetCurrentUser(member.UserId, 0, true, true); HiContext.Current.User = member; ShoppingCartInfo cookieShoppingCart = ShoppingCartProcessor.GetCookieShoppingCart(); if (cookieShoppingCart != null) { ShoppingCartProcessor.ConvertShoppingCartToDataBase(cookieShoppingCart); ShoppingCartProcessor.ClearCookieShoppingCart(); } if (!string.IsNullOrEmpty(this.Parameters["token"])) { HttpCookie httpCookie = new HttpCookie("Token_" + member.UserId); httpCookie.HttpOnly = true; httpCookie.Expires = DateTime.Now.AddMinutes(30.0); httpCookie.Value = this.Parameters["token"]; HttpContext.Current.Response.Cookies.Add(httpCookie); } if (!string.IsNullOrEmpty(this.Parameters["target_url"])) { this.Page.Response.Redirect(this.Parameters["target_url"], true); } string text2 = this.Parameters["HITO"]; string text3 = this.Parameters["target_url"].ToNullString(); if (string.IsNullOrEmpty(text3)) { text3 = "/Default"; } if (iSendCouponCount > 0) { this.ShowMessage("恭喜您注册成功," + iSendCouponCount + " 张优惠券已经放入您的账户,可在会员中心我的优惠券中进行查看", true, text3, 1); } else { this.ShowMessage("恭喜您注册/登录成功", true, text3, 1); } }
private void btnBindingLogin_Click(object sender, EventArgs e) { string text = Globals.StripAllTags(this.Parameters["CurrentOpenId"].ToNullString()); string text2 = Globals.StripAllTags(base.GetParameter("HIGW", false).ToNullString().Replace("_", ".")); if (this.Page.IsValid) { string text3 = Globals.StripAllTags(this.txtBindUserName.Text.Trim()); if (string.IsNullOrEmpty(text3)) { this.ShowMessage("用户名不能为空", false, "", 1); } else { MemberInfo memberInfo = MemberProcessor.ValidLogin(text3, this.txtBindPassword.Text); if (memberInfo != null) { if (!string.IsNullOrEmpty(memberInfo.UnionId) && text2.ToLower() == "hishop.plugins.openid.weixin.weixinservice" && memberInfo.UnionId != text) { this.ShowMessage("该用户已存在信任登录绑定关系,请选择其它帐号", false, "", 1); } else { MemberInfo memberByOpenId = MemberProcessor.GetMemberByOpenId(text2, text); if (memberByOpenId != null && memberByOpenId.UserId != memberInfo.UserId) { this.ShowMessage("该用户已存在信任登录绑定关系,请选择其它帐号", false, "", 1); } else { if (string.IsNullOrEmpty(memberInfo.NickName)) { memberInfo.NickName = this.hidNickName.Value; MemberProcessor.UpdateMember(memberInfo); } Users.SetCurrentUser(memberInfo.UserId, 0, true, true); HiContext.Current.User = memberInfo; ShoppingCartInfo cookieShoppingCart = ShoppingCartProcessor.GetCookieShoppingCart(); if (cookieShoppingCart != null) { ShoppingCartProcessor.ConvertShoppingCartToDataBase(cookieShoppingCart); ShoppingCartProcessor.ClearCookieShoppingCart(); } if (!string.IsNullOrEmpty(text2) && !string.IsNullOrEmpty(text)) { if (text2.ToLower() == "hishop.plugins.openid.weixin.weixinservice" && MemberProcessor.GetMemberByUnionId(text) == null) { memberInfo.UnionId = text; MemberProcessor.UpdateMember(memberInfo); } MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdInfo(); memberOpenIdInfo.UserId = memberInfo.UserId; memberOpenIdInfo.OpenIdType = text2; memberOpenIdInfo.OpenId = text; if (MemberProcessor.GetMemberByOpenId(memberOpenIdInfo.OpenIdType, memberOpenIdInfo.OpenId) == null) { MemberProcessor.AddMemberOpenId(memberOpenIdInfo); } } this.SetLoginState(memberInfo, 0); } } } else { this.ShowMessage("用户名或密码不正确", false, "", 1); } } } }
public bool HasLogin(string OpenId, string unionId, bool isSubscirbe) { if (Users.UserIsLogout()) { return(false); } MemberInfo memberInfo = null; bool flag = false; memberInfo = MemberProcessor.GetMemberByOpenId("hishop.plugins.openid.weixin", OpenId); if (memberInfo == null && !string.IsNullOrEmpty(unionId)) { memberInfo = MemberProcessor.GetMemberByUnionId(unionId); if (memberInfo != null) { flag = true; if (!memberInfo.IsLogined) { return(false); } } } if (memberInfo != null) { if (memberInfo.IsQuickLogin && !memberInfo.IsLogined) { return(false); } memberInfo.IsSubscribe = isSubscirbe; if (!flag && !string.IsNullOrEmpty(unionId)) { memberInfo.UnionId = unionId; MemberProcessor.UpdateMember(memberInfo); } if (flag) { memberInfo.IsLogined = true; MemberProcessor.UpdateMember(memberInfo); MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdDao().GetMemberOpenIdInfo(memberInfo.UserId, "hishop.plugins.openid.weixin"); if (memberOpenIdInfo == null) { MemberOpenIdInfo memberOpenIdInfo2 = new MemberOpenIdInfo(); memberOpenIdInfo2.UserId = memberInfo.UserId; memberOpenIdInfo2.OpenIdType = "hishop.plugins.openid.weixin"; memberOpenIdInfo2.OpenId = OpenId; MemberProcessor.AddMemberOpenId(memberOpenIdInfo2); } else if (memberOpenIdInfo.OpenId != OpenId && !memberInfo.IsQuickLogin) { memberOpenIdInfo.OpenId = OpenId; MemberProcessor.UpdateMemberOpenId(memberOpenIdInfo); } } Users.SetCurrentUser(memberInfo.UserId, 30, true, false); HiContext.Current.User = memberInfo; HiContext.Current.UserId = memberInfo.UserId; lock (this.lockCopyRedEnvelope) { this.CopyRedEnvelope(OpenId, memberInfo); } return(true); } return(false); }
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); }
protected override void AttachChildControls() { this.hidIsAuth = (HtmlInputHidden)this.FindControl("hid_IsAuth"); this.hidAuthMsg = (HtmlInputHidden)this.FindControl("hid_AuthMsg"); this.hidOpenIdType = (HtmlInputHidden)this.FindControl("hid_OpenIdType"); this.hidOpenId = (HtmlInputHidden)this.FindControl("hid_OpenId"); this.hidToken = (HtmlInputHidden)this.FindControl("hid_Token"); this.hidRealName = (HtmlInputHidden)this.FindControl("hid_RealName"); this.hidUserId = (HtmlInputHidden)this.FindControl("hid_UserId"); this.hidEmail = (HtmlInputHidden)this.FindControl("hid_Email"); this.openId = this.Page.Request.QueryString["openId"].ToNullString(); this.hidOpenIdType.Value = "hishop.plugins.openid.weixin"; this.client = (HtmlInputHidden)this.FindControl("client"); this.hid_OpenIdINUsers = (HtmlInputHidden)this.FindControl("hid_OpenIdINUsers"); this.client.Value = base.ClientType.ToString().ToLower(); this.smsenable = (HiddenField)this.FindControl("smsenable"); this.emailenable = (HiddenField)this.FindControl("emailenable"); this.txtUserName = (HtmlInputText)this.FindControl("txtUserName"); this.txtRegisterUserName = (HtmlInputText)this.FindControl("txtRegisterUserName"); this.forgetPassword = (HtmlAnchor)this.FindControl("forgetPassword"); this.hidUnionId = (HtmlInputHidden)this.FindControl("hid_UnionId"); this.hid_WxOpenIdBindUsers = (HtmlInputHidden)this.FindControl("hid_WxOpenIdBindUsers"); this.divRealName = (HtmlGenericControl)this.FindControl("divRealName"); this.divBirthday = (HtmlGenericControl)this.FindControl("divBirthday"); this.hidIsNeedValidateEmail = (HiddenField)this.FindControl("hidIsNeedValidateEmail"); this.divSex = (HtmlGenericControl)this.FindControl("divSex"); this.labNickName = (Label)this.FindControl("labNickName"); this.labNickName1 = (Label)this.FindControl("labNickName1"); this.labNickName2 = (Label)this.FindControl("labNickName2"); this.userPicture = (HtmlImage)this.FindControl("userPicture"); this.hid_QuickLoginIsForceBindingMobbile = (HtmlInputHidden)this.FindControl("hid_QuickLoginIsForceBindingMobbile"); SiteSettings masterSettings = SettingsManager.GetMasterSettings(); this.hid_QuickLoginIsForceBindingMobbile.Value = (masterSettings.QuickLoginIsForceBindingMobbile ? "true" : "false"); this.hidIsNeedValidateEmail.Value = (masterSettings.IsNeedValidEmail ? "1" : "0"); this.hidIsOpenGeetest = (HiddenField)this.FindControl("hidIsOpenGeetest"); this.hidUnionId.Value = this.Page.Request.QueryString["UnionId"].ToNullString(); this.hidIsOpenGeetest.Value = (masterSettings.IsOpenGeetest ? "1" : "0"); this.hid_IsValidationService = (HtmlInputHidden)this.FindControl("hid_IsValidationService"); this.hidRealName.Value = this.Page.Request.QueryString["nickName"].ToNullString(); this.labNickName.Text = this.hidRealName.Value; this.labNickName1.Text = this.hidRealName.Value; this.labNickName2.Text = this.hidRealName.Value; string text = this.Page.Request.QueryString["headimage"].ToNullString(); if (string.IsNullOrEmpty(text)) { text = "/Templates/common/images/headerimg.png"; } this.userPicture.Src = text; this.hid_IsValidationService.Value = masterSettings.IsValidationService.ToNullString(); if (masterSettings.RegistExtendInfo.Contains("RealName")) { this.divRealName.Visible = true; } if (masterSettings.RegistExtendInfo.Contains("Sex")) { this.divSex.Visible = true; } if (masterSettings.RegistExtendInfo.Contains("Birthday")) { this.divBirthday.Visible = true; } if (masterSettings.IsSurportEmail && masterSettings.IsSurportPhone && masterSettings.SMSEnabled && !string.IsNullOrEmpty(masterSettings.SMSSettings)) { this.smsenable.Value = "true"; this.emailenable.Value = "true"; this.txtUserName.Attributes.Add("placeholder", "请输入用户名/邮箱/手机"); this.txtRegisterUserName.Attributes.Add("placeholder", "邮箱/手机"); this.forgetPassword.Visible = true; } else if (!masterSettings.IsSurportEmail && (!masterSettings.IsSurportPhone || !masterSettings.SMSEnabled || string.IsNullOrEmpty(masterSettings.SMSSettings))) { this.smsenable.Value = "false"; this.emailenable.Value = "true"; this.txtUserName.Attributes.Add("placeholder", "请输入用户名/邮箱"); this.txtRegisterUserName.Attributes.Add("placeholder", "邮箱"); } else if (masterSettings.IsSurportEmail && (!masterSettings.IsSurportPhone || !masterSettings.SMSEnabled || string.IsNullOrEmpty(masterSettings.SMSSettings))) { this.smsenable.Value = "false"; this.emailenable.Value = "true"; this.txtUserName.Attributes.Add("placeholder", "请输入用户名/邮箱"); this.txtRegisterUserName.Attributes.Add("placeholder", "邮箱"); } else if (!masterSettings.IsSurportEmail && masterSettings.IsSurportPhone && masterSettings.SMSEnabled && !string.IsNullOrEmpty(masterSettings.SMSSettings)) { this.smsenable.Value = "true"; this.emailenable.Value = "false"; this.txtUserName.Attributes.Add("placeholder", "请输入用户名/手机"); this.txtRegisterUserName.Attributes.Add("placeholder", "手机"); } if (string.IsNullOrEmpty(this.openId)) { this.openId = this.Page.Request.QueryString["OpenID"]; } MemberInfo memberInfo = null; this.fastlogin = (HtmlGenericControl)this.FindControl("fastlogin"); if (this.fastlogin != null) { this.fastlogin.Visible = false; } this.fastlogin0 = (HtmlGenericControl)this.FindControl("fastlogin0"); if (this.fastlogin0 != null) { this.fastlogin0.Visible = false; } if (!string.IsNullOrEmpty(this.openId)) { memberInfo = MemberProcessor.GetMemberByOpenId("hishop.plugins.openid.weixin", this.openId); if (memberInfo?.IsQuickLogin ?? false) { this.hid_OpenIdINUsers.Value = "true"; } if (memberInfo != null) { this.hid_WxOpenIdBindUsers.Value = "true"; } if (memberInfo == null || (memberInfo.IsQuickLogin && !memberInfo.IsLogined)) { memberInfo = null; this.hidIsAuth.Value = "false"; this.hidOpenId.Value = this.openId; this.hidRealName.Value = this.Page.Request.QueryString["nickName"].ToNullString(); } } MemberInfo user = HiContext.Current.User; if (user.UserId != 0) { if ((from item in user.MemberOpenIds where item.OpenIdType.ToLower() == "hishop.plugins.openid.weixin" select item).Count() == 0 && memberInfo == null && !string.IsNullOrEmpty(this.openId)) { MemberOpenIdInfo memberOpenIdInfo = new MemberOpenIdInfo(); memberOpenIdInfo.UserId = user.UserId; memberOpenIdInfo.OpenIdType = "hishop.plugins.openid.weixin"; memberOpenIdInfo.OpenId = this.openId; MemberProcessor.AddMemberOpenId(memberOpenIdInfo); } memberInfo = user; } if (memberInfo != null) { Users.SetCurrentUser(memberInfo.UserId, 365, true, false); this.Page.Response.Redirect("/Vshop/MemberCenter.aspx"); } PageTitle.AddSiteNameTitle("登录"); }