/// <summary> /// 验证图片 /// </summary> /// <param name="width">图片宽度</param> /// <param name="height">图片高度</param> /// <returns></returns> public ImageResult VerifyImage(int width = 56, int height = 20) { //获得用户唯一标示符sid string sid = ShopUtils.GetSidCookie("web"); //当sid为空时 if (sid == null) { //生成sid sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(sid, "web"); } //生成验证值 string verifyValue = Randoms.CreateRandomValue(4, false).ToLower(); //生成验证图片 RandomImage verifyImage = Randoms.CreateRandomImage(verifyValue, width, height, Color.White, Color.Blue, Color.DarkRed); //将验证值保存到session中 Sessions.SetItem(sid, "verifyCode", verifyValue); //输出验证图片 return(new ImageResult(verifyImage.Image, verifyImage.ContentType)); }
/// <summary> /// 初始化工作上下文 /// </summary> protected void InitWorkContext() { WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); WorkContext.Url = WebHelper.GetUrl(); //获得用户唯一标示符sid WorkContext.SessionId = ShopUtils.GetSidCookie(); if (WorkContext.SessionId.Length == 0) { //生成sessionid WorkContext.SessionId = CommonHelper.GenerateRandomString(); //将sessionid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.SessionId); } User user; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1) //当用户为游客时 { //创建游客 user = new User().CreateGuest(); } else //当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 user = new User().CreateGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } WorkContext.EncryptPwd = encryptPwd; } //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); //当前商城主题 WorkContext.Theme = WorkContext.ShopConfig.PCTheme; //设置图片cdn WorkContext.ImageCDN = WorkContext.ShopConfig.ImageCDN; //设置csscdn WorkContext.CSSCDN = WorkContext.ShopConfig.CSSCDN; //设置脚本cdn WorkContext.ScriptCDN = WorkContext.ShopConfig.ScriptCDN; //搜索词 WorkContext.SearchWord = string.Empty; }
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); this.ValidateRequest = false; WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.RegionInfo = Regions.GetRegionByIP(WorkContext.IP); WorkContext.RegionId = WorkContext.RegionInfo.RegionId; WorkContext.Url = WebHelper.GetUrl(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); //获得用户唯一标示符sid WorkContext.Sid = ShopUtils.GetSidCookie("web"); if (WorkContext.Sid.Length == 0) { //生成sid WorkContext.Sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.Sid, "web"); } }
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.RegionInfo = Regions.GetRegionByIP(WorkContext.IP); WorkContext.RegionId = WorkContext.RegionInfo.RegionId; WorkContext.Url = WebHelper.GetUrl(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); //获得用户唯一标示符sid WorkContext.Sid = ShopUtils.GetSidCookie(); if (WorkContext.Sid.Length == 0) { //生成sid WorkContext.Sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.Sid); } PartUserInfo partUserInfo; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1)//当用户为游客时 { //创建游客 partUserInfo = Users.CreatePartGuest(); } else//当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } else { partUserInfo = Users.GetPartUserByUidAndPwd(uid, ShopUtils.DecryptCookiePassword(encryptPwd)); if (partUserInfo != null) { //发放登陆积分 Credits.SendLoginCredits(ref partUserInfo, DateTime.Now); } else//当会员的账号或密码不正确时,将用户置为游客 { partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } } WorkContext.EncryptPwd = encryptPwd; } //设置用户等级 if (UserRanks.IsBanUserRank(partUserInfo.UserRid) && partUserInfo.LiftBanTime <= DateTime.Now) { UserRankInfo userRankInfo = UserRanks.GetUserRankByCredits(partUserInfo.PayCredits); Users.UpdateUserRankByUid(partUserInfo.Uid, userRankInfo.UserRid); partUserInfo.UserRid = userRankInfo.UserRid; } WorkContext.PartUserInfo = partUserInfo; WorkContext.Uid = partUserInfo.Uid; WorkContext.UserName = partUserInfo.UserName; WorkContext.UserEmail = partUserInfo.Email; WorkContext.UserMobile = partUserInfo.Mobile; WorkContext.Password = partUserInfo.Password; WorkContext.NickName = partUserInfo.NickName; WorkContext.Avatar = partUserInfo.Avatar; WorkContext.UserRid = partUserInfo.UserRid; WorkContext.UserRankInfo = UserRanks.GetUserRankById(partUserInfo.UserRid); WorkContext.UserRTitle = WorkContext.UserRankInfo.Title; //设置用户管理员组 WorkContext.AdminGid = partUserInfo.AdminGid; WorkContext.AdminGroupInfo = AdminGroups.GetAdminGroupById(partUserInfo.AdminGid); WorkContext.AdminGTitle = WorkContext.AdminGroupInfo.Title; //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); }
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); //WorkContext.Region = Regions.GetRegionByIP(WorkContext.IP); //WorkContext.RegionId = WorkContext.Region.Id; WorkContext.Url = WebHelper.GetUrl(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); //获得用户唯一标示符sid WorkContext.Sid = ShopUtils.GetSidCookie(); if (WorkContext.Sid.Length == 0) { //生成sid //WorkContext.Sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.Sid); } User user; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1) //当用户为游客时 { //创建游客 //user = Users.CreatePartGuest(); } else //当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 //user = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } else { //user = Users.GetPartUserByUidAndPwd(uid, ShopUtils.DecryptCookiePassword(encryptPwd)); //if (user != null) //{ // //发放登录积分 // Credits.SendLoginCredits(ref user, DateTime.Now); //} //else//当会员的账号或密码不正确时,将用户置为游客 //{ // user = Users.CreatePartGuest(); // encryptPwd = string.Empty; // ShopUtils.SetUidCookie(-1); // ShopUtils.SetCookiePassword(""); //} } WorkContext.EncryptPwd = encryptPwd; } //设置用户等级 //if (UserRanks.IsBanUserRank(user.UserRid) && user.LiftBanTime <= DateTime.Now) //{ // UserRankInfo userRankInfo = UserRanks.GetUserRankByCredits(user.PayCredits); // Users.UpdateUserRankByUid(user.Uid, userRankInfo.UserRid); // user.UserRid = userRankInfo.UserRid; //} //当用户被禁止访问时重置用户为游客 //if (user.UserRid == 1) //{ // user = Users.CreatePartGuest(); // WorkContext.EncryptPwd = string.Empty; // ShopUtils.SetUidCookie(-1); // ShopUtils.SetCookiePassword(""); //} //WorkContext.user = user; //WorkContext.Uid = user.Uid; //WorkContext.UserName = user.UserName; //WorkContext.UserEmail = user.Email; //WorkContext.UserMobile = user.Mobile; //WorkContext.Password = user.Password; //WorkContext.NickName = user.NickName; //WorkContext.Avatar = user.Avatar; //WorkContext.UserRid = user.UserRid; //WorkContext.UserRankInfo = UserRanks.GetUserRankById(user.UserRid); //WorkContext.UserRTitle = WorkContext.UserRankInfo.Title; ////设置用户管理员组 //WorkContext.AdminGid = user.AdminGid; //WorkContext.AdminGroupInfo = AdminGroups.GetAdminGroupById(user.AdminGid); //WorkContext.AdminGTitle = WorkContext.AdminGroupInfo.Title; //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); //设置图片cdn WorkContext.ImageCDN = WorkContext.ShopConfig.ImageCDN; //设置csscdn WorkContext.CSSCDN = WorkContext.ShopConfig.CSSCDN; //设置脚本cdn WorkContext.ScriptCDN = WorkContext.ShopConfig.ScriptCDN; }
protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); this.ValidateRequest = false; WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.RegionInfo = Regions.GetRegionByIP(WorkContext.IP); WorkContext.RegionId = WorkContext.RegionInfo.RegionId; WorkContext.Url = WebHelper.GetUrl(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); //获得用户唯一标示符sid WorkContext.Sid = ShopUtils.GetSidCookie(); if (WorkContext.Sid.Length == 0) { //生成sid WorkContext.Sid = Sessions.GenerateSid(); //将sid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.Sid); } PartUserInfo partUserInfo; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1)//当用户为游客时 { //创建游客 partUserInfo = Users.CreatePartGuest(); } else//当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } else { partUserInfo = Users.GetPartUserByUidAndPwd(uid, ShopUtils.DecryptCookiePassword(encryptPwd)); if (partUserInfo != null) { //发放登陆积分 Credits.SendLoginCredits(ref partUserInfo, DateTime.Now); } else//当会员的账号或密码不正确时,将用户置为游客 { partUserInfo = Users.CreatePartGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } } WorkContext.EncryptPwd = encryptPwd; } //设置用户等级 if (UserRanks.IsBanUserRank(partUserInfo.UserRid) && partUserInfo.LiftBanTime <= DateTime.Now) { UserRankInfo userRankInfo = UserRanks.GetUserRankByCredits(partUserInfo.PayCredits); Users.UpdateUserRankByUid(partUserInfo.Uid, userRankInfo.UserRid); partUserInfo.UserRid = userRankInfo.UserRid; } WorkContext.PartUserInfo = partUserInfo; WorkContext.Uid = partUserInfo.Uid; WorkContext.UserName = partUserInfo.UserName; WorkContext.UserEmail = partUserInfo.Email; WorkContext.UserMobile = partUserInfo.Mobile; WorkContext.Password = partUserInfo.Password; WorkContext.NickName = partUserInfo.NickName; WorkContext.Avatar = partUserInfo.Avatar; WorkContext.PayCreditName = Credits.PayCreditName; WorkContext.PayCreditCount = partUserInfo.PayCredits; WorkContext.RankCreditName = Credits.RankCreditName; WorkContext.RankCreditCount = partUserInfo.RankCredits; WorkContext.UserRid = partUserInfo.UserRid; WorkContext.UserRankInfo = UserRanks.GetUserRankById(partUserInfo.UserRid); WorkContext.UserRTitle = WorkContext.UserRankInfo.Title; //设置用户管理员组 WorkContext.AdminGid = partUserInfo.AdminGid; WorkContext.AdminGroupInfo = AdminGroups.GetAdminGroupById(partUserInfo.AdminGid); WorkContext.AdminGTitle = WorkContext.AdminGroupInfo.Title; //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); //当前商城主题 WorkContext.Theme = WorkContext.ShopConfig.PCTheme; //设置图片cdn WorkContext.ImageCDN = WorkContext.ShopConfig.ImageCDN; //设置csscdn WorkContext.CSSCDN = WorkContext.ShopConfig.CSSCDN; //设置脚本cdn WorkContext.ScriptCDN = WorkContext.ShopConfig.ScriptCDN; //在线总人数 WorkContext.OnlineUserCount = OnlineUsers.GetOnlineUserCount(); //在线游客数 WorkContext.OnlineGuestCount = OnlineUsers.GetOnlineGuestCount(); //在线会员数 WorkContext.OnlineMemberCount = WorkContext.OnlineUserCount - WorkContext.OnlineGuestCount; //搜索词 WorkContext.SearchWord = string.Empty; //购物车中商品数量 WorkContext.CartProductCount = Carts.GetCartProductCountCookie(); //设置导航列表 WorkContext.NavList = Navs.GetNavList(); //设置友情链接列表 WorkContext.FriendLinkList = FriendLinks.GetFriendLinkList(); //设置帮助列表 WorkContext.HelpList = Helps.GetHelpList(); }
protected async Task InitWorkContext() { WorkContext.IsHttpAjax = WebHelper.IsAjax(); WorkContext.IP = WebHelper.GetIP(); WorkContext.UrlReferrer = WebHelper.GetUrlReferrer(); WorkContext.Url = WebHelper.GetUrl(); var regionDto = await _abpWebApiClient.PostAsync <RegionDto>(WorkContext.Url + webapiUrl + "/Region/Seek", new { ip = WorkContext.IP }); if (regionDto == null) { WorkContext.Region = new Region(); WorkContext.RegionId = -1; } else { WorkContext.Region = regionDto.MapTo <Region>(); WorkContext.RegionId = WorkContext.Region.Id; } //获得用户唯一标示符sid WorkContext.SessionId = ShopUtils.GetSidCookie(); if (WorkContext.SessionId.Length == 0) { //生成sessionid WorkContext.SessionId = CommonHelper.GenerateRandomString(); //将sessionid保存到cookie中 ShopUtils.SetSidCookie(WorkContext.SessionId); } User user; //获得用户id int uid = ShopUtils.GetUidCookie(); if (uid < 1) //当用户为游客时 { //创建游客 user = new User().CreateGuest(); } else //当用户为会员时 { //获得保存在cookie中的密码 string encryptPwd = ShopUtils.GetCookiePassword(); //防止用户密码被篡改为危险字符 if (encryptPwd.Length == 0 || !SecureHelper.IsBase64String(encryptPwd)) { //创建游客 user = new User().CreateGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } else { var userDto = await _abpWebApiClient.PostAsync <UserDto>(WorkContext.Url + webapiUrl + "/User/GetUserByUserIdAndPwdAsync", new { UserId = uid, Password = ShopUtils.DecryptCookiePassword(encryptPwd) }); if (userDto != null) { user = userDto.MapTo <User>(); //发放登录积分 //Credits.SendLoginCredits(ref user, DateTime.Now); } else //当会员的账号或密码不正确时,将用户置为游客 { user = new User().CreateGuest(); encryptPwd = string.Empty; ShopUtils.SetUidCookie(-1); ShopUtils.SetCookiePassword(""); } } WorkContext.EncryptPwd = encryptPwd; } //设置用户等级 //if (UserRanks.IsBanUserRank(user.UserRid) && user.LiftBanTime <= DateTime.Now) //{ // UserRankInfo userRankInfo = UserRanks.GetUserRankByCredits(user.PayCredits); // Users.UpdateUserRankByUid(user.Uid, userRankInfo.UserRid); // user.UserRid = userRankInfo.UserRid; //} //当用户被禁止访问时重置用户为游客 //if (user.UserRid == 1) //{ // user = Users.CreatePartGuest(); // WorkContext.EncryptPwd = string.Empty; // ShopUtils.SetUidCookie(-1); // ShopUtils.SetCookiePassword(""); //} //WorkContext.user = user; //WorkContext.Uid = user.Uid; //WorkContext.UserName = user.UserName; //WorkContext.UserEmail = user.Email; //WorkContext.UserMobile = user.Mobile; //WorkContext.Password = user.Password; //WorkContext.NickName = user.NickName; //WorkContext.Avatar = user.Avatar; //WorkContext.PayCreditName = Credits.PayCreditName; //WorkContext.PayCreditCount = user.PayCredits; //WorkContext.RankCreditName = Credits.RankCreditName; //WorkContext.RankCreditCount = user.RankCredits; //WorkContext.UserRid = user.UserRid; //WorkContext.UserRankInfo = UserRanks.GetUserRankById(user.UserRid); //WorkContext.UserRTitle = WorkContext.UserRankInfo.Title; ////设置用户管理员组 //WorkContext.AdminGid = user.AdminGid; //WorkContext.AdminGroupInfo = AdminGroups.GetAdminGroupById(user.AdminGid); //WorkContext.AdminGTitle = WorkContext.AdminGroupInfo.Title; //设置当前控制器类名 WorkContext.Controller = RouteData.Values["controller"].ToString().ToLower(); //设置当前动作方法名 WorkContext.Action = RouteData.Values["action"].ToString().ToLower(); WorkContext.PageKey = string.Format("/{0}/{1}", WorkContext.Controller, WorkContext.Action); //当前商城主题 WorkContext.Theme = WorkContext.ShopConfig.PCTheme; //设置图片cdn WorkContext.ImageCDN = WorkContext.ShopConfig.ImageCDN; //设置csscdn WorkContext.CSSCDN = WorkContext.ShopConfig.CSSCDN; //设置脚本cdn WorkContext.ScriptCDN = WorkContext.ShopConfig.ScriptCDN; //在线总人数 //WorkContext.OnlineUserCount = OnlineUsers.GetOnlineUserCount(); ////在线游客数 //WorkContext.OnlineGuestCount = OnlineUsers.GetOnlineGuestCount(); //在线会员数 WorkContext.OnlineMemberCount = WorkContext.OnlineUserCount - WorkContext.OnlineGuestCount; //搜索词 WorkContext.SearchWord = string.Empty; //购物车中商品数量 //WorkContext.CartProductCount = Carts.GetCartProductCountCookie(); ////设置导航列表 //WorkContext.NavList = Navs.GetNavList(); ////设置友情链接列表 //WorkContext.FriendLinkList = FriendLinks.GetFriendLinkList(); ////设置帮助列表 //WorkContext.HelpList = Helps.GetHelpList(); }