protected override void ShowPage() { if (config.Enablemall == 0) //未启用交易服务 { AddErrLine("系统未开启交易服务, 当前页面暂时无法访问!"); return; } int uid = DNTRequest.GetInt("uid", 0); if (uid <= 0) { AddErrLine("无效的用户id."); return; } userinfo = Users.GetUserInfo(uid); if (userinfo != null) { joindate = Convert.ToDateTime(userinfo.Joindate).ToString("yyyy-MM-dd"); } sb_usercredit = GoodsUserCredits.GetUserCreditJsonData(uid); creditrulesjsondata = GoodsUserCredits.GetCreditRulesJsonData().ToString(); }
protected override void ShowPage() { if (config.Enablemall == 0) //未启用交易服务 { AddErrLine("系统未开启交易服务, 当前页面暂时无法访问!"); return; } else { goodscategoryfid = Discuz.Mall.GoodsCategories.GetGoodsCategoryWithFid(); } headerad = ""; footerad = ""; floatad = ""; disablepostctrl = 0; // 如果商品ID无效 if (goodsid == -1) { AddErrLine("无效的商品ID"); return; } goodsinfo = Goods.GetGoodsInfo(goodsid); if (goodsinfo == null || goodsinfo.Closed > 1) { AddErrLine("不存在的商品ID"); headerad = Advertisements.GetOneHeaderAd("", 0); footerad = Advertisements.GetOneFooterAd("", 0); floatad = Advertisements.GetFloatAd("", 0); return; } UserInfo userinfo = Users.GetUserInfo(goodsinfo.Selleruid); if (userinfo != null) { joindate = Convert.ToDateTime(userinfo.Joindate).ToString("yyyy-MM-dd"); } sb_usercredit = GoodsUserCredits.GetUserCreditJsonData(goodsinfo.Selleruid); creditrulesjsondata = GoodsUserCredits.GetCreditRulesJsonData().ToString(); if (config.Enablemall == 1) //开启普通模式 { forumid = GoodsCategories.GetCategoriesFid(goodsinfo.Categoryid); forum = Forums.GetForumInfo(forumid); if (forum == null) { AddErrLine("当前商品所属分类未绑定相应版块"); return; } forumname = forum.Name; forumnav = ForumUtils.UpdatePathListExtname(forum.Pathlist.Trim(), config.Extname); ///得到广告列表 ///头部 headerad = Advertisements.GetOneHeaderAd("", forumid); footerad = Advertisements.GetOneFooterAd("", forumid); doublead = Advertisements.GetDoubleAd("", forumid); floatad = Advertisements.GetFloatAd("", forumid); // 检查是否具有版主的身份 if (useradminid != 0) { ismoder = Moderators.IsModer(useradminid, userid, forumid) ? 1 : 0; //得到管理组信息 admininfo = AdminGroups.GetAdminGroupInfo(usergroupid); if (admininfo != null) { disablepostctrl = admininfo.Disablepostctrl; } } } goodscategoryinfo = GoodsCategories.GetGoodsCategoryInfoById(goodsinfo.Categoryid); pagetitle = goodsinfo.Title; navhomemenu = Caches.GetForumListMenuDivCache(usergroupid, userid, config.Extname); //验证不通过则返回 if (!IsConditionsValid()) { return; } //编辑器状态 StringBuilder sb = new StringBuilder("var Allowhtml=1;\r\n"); parseurloff = 0; bbcodeoff = 1; if (config.Enablemall == 1) //开启普通模式 { smileyoff = 1 - forum.Allowsmilies; if (forum.Allowbbcode == 1 && usergroupinfo.Allowcusbbcode == 1) { bbcodeoff = 0; } allowimg = forum.Allowimgcode; } else if (config.Enablemall == 2) //当为高级模式时 { if (usergroupinfo.Allowcusbbcode == 1) { bbcodeoff = 0; } allowimg = 1; } sb.Append("var Allowsmilies=" + (1 - smileyoff) + ";\r\n"); sb.Append("var Allowbbcode=" + (1 - bbcodeoff) + ";\r\n"); usesig = ForumUtils.GetCookie("sigstatus") == "0" ? 0 : 1; sb.Append("var Allowimgcode=" + allowimg + ";\r\n"); AddScript(sb.ToString()); if (config.Enablemall == 2) { recommendgoodslist = Goods.GetGoodsRecommendList(goodsinfo.Selleruid, 6, 1, DbProvider.GetInstance().GetGoodsIdCondition((int)MallUtils.OperaCode.NoEuqal, goodsinfo.Goodsid)); } smilietypes = Caches.GetSmilieTypesCache(); if (newpmcount > 0) { pmlist = PrivateMessages.GetPrivateMessageListForIndex(userid, 5, 1, 1); showpmhint = Convert.ToInt32(Users.GetShortUserInfo(userid).Newsletter) > 4; } // 得到pptradelog设置 pptradelog = Utils.StrToInt(ForumUtils.GetCookie("ppp"), config.Ppp); if (pptradelog <= 0) { pptradelog = config.Ppp; } //快速发帖广告 if (config.Enablemall == 1) //开启普通模式 { quickeditorad = Advertisements.GetQuickEditorAD("", forumid); } //更新页面Meta中的Description项, 提高SEO友好性 string metadescritpion = Utils.RemoveHtml(goodsinfo.Message); metadescritpion = metadescritpion.Length > 100 ? metadescritpion.Substring(0, 100) : metadescritpion; UpdateMetaInfo(config.Seokeywords, metadescritpion, config.Seohead); GoodspramsInfo goodspramsInfo = new GoodspramsInfo(); goodspramsInfo.Goodsid = goodsinfo.Goodsid; if (config.Enablemall == 1) //开启普通模式 { goodspramsInfo.Fid = forum.Fid; goodspramsInfo.Jammer = forum.Jammer; goodspramsInfo.Getattachperm = forum.Getattachperm; goodspramsInfo.Showimages = forum.Allowimgcode; } else if (config.Enablemall == 2) //当为高级模式时 { goodspramsInfo.Jammer = 0; goodspramsInfo.Getattachperm = ""; goodspramsInfo.Showimages = 1; } goodspramsInfo.Pageindex = pageid; goodspramsInfo.Usergroupid = usergroupid; goodspramsInfo.Attachimgpost = config.Attachimgpost; goodspramsInfo.Showattachmentpath = config.Showattachmentpath; goodspramsInfo.Hide = 0; goodspramsInfo.Price = 0; goodspramsInfo.Usergroupreadaccess = usergroupinfo.Readaccess; if (ismoder == 1) { goodspramsInfo.Usergroupreadaccess = int.MaxValue; } goodspramsInfo.CurrentUserid = userid; goodspramsInfo.Smiliesinfo = Smilies.GetSmiliesListWithInfo(); goodspramsInfo.Customeditorbuttoninfo = Editors.GetCustomEditButtonListWithInfo(); goodspramsInfo.Smiliesmax = config.Smiliesmax; goodspramsInfo.Bbcodemode = config.Bbcodemode; goodspramsInfo.CurrentUserGroup = usergroupinfo; goodspramsInfo.Sdetail = goodsinfo.Message; goodspramsInfo.Smileyoff = goodsinfo.Smileyoff; goodspramsInfo.Bbcodeoff = goodsinfo.Bbcodeoff; goodspramsInfo.Parseurloff = goodsinfo.Parseurloff; goodspramsInfo.Allowhtml = 1; goodspramsInfo.Sdetail = goodsinfo.Message; message = Goods.MessgeTranfer(goodspramsInfo, GoodsAttachments.GetGoodsAttachmentsByGoodsid(goodsinfo.Goodsid)); forumlistboxoptions = Caches.GetForumListBoxOptionsCache(); tradecount = TradeLogs.GetGoodsTradeLogCount(goodsid); leavewordcount = GoodsLeaveWords.GetGoodsLeaveWordCount(goodsid); pptradelog = 16; ForumUtils.WriteCookie("referer", string.Format(base.ShowGoodsAspxRewrite(goodsinfo.Goodsid))); if (config.Enablemall == 1) //开启普通模式 { ForumUtils.UpdateVisitedForumsOptions(forumid); } visitedforumsoptions = ForumUtils.GetVisitedForumsOptions(config.Visitedforums); //删除留言 if (DNTRequest.GetInt("deleteleaveword", 0) == 1) { isdeleteop = true; int leavewordid = DNTRequest.GetInt("leavewordid", 0); if (leavewordid <= 0) { AddErrLine("您要删除的留言已被删除, 现在转入商品页面"); return; } if (GoodsLeaveWords.DeleteLeaveWordById(leavewordid, userid, goodsinfo.Selleruid, useradminid)) { SetUrl(base.ShowGoodsAspxRewrite(goodsinfo.Goodsid)); SetMetaRefresh(); AddMsgLine("该留言已被删除, 现在转入商品页面<br />(<a href=\"" + base.ShowGoodsAspxRewrite(goodsinfo.Goodsid) + "\">如果您的浏览器没有自动跳转, 请点击这里</a>)<br />"); return; } else { AddErrLine("您的用户身份无效删除该留言, 现在转入商品页面"); return; } } //删除商品 if (DNTRequest.GetInt("deletegoods", 0) == 1) { isdeleteop = true; //是否为卖家或版主 if (Goods.IsSeller(goodsinfo.Goodsid.ToString(), userid) || ismoder == 1) { Goods.DeleteGoods(goodsinfo.Goodsid.ToString(), false); SetUrl(this.ShowGoodsListAspxRewrite(goodsinfo.Categoryid, 1)); SetMetaRefresh(); AddMsgLine("操作成功. <br />(<a href=\"" + this.ShowGoodsListAspxRewrite(goodsinfo.Categoryid, 1) + "\">点击这里返回</a>)<br />"); return; } else { AddErrLine("你不是当前商品的卖家或版主,因此无法删除该商品"); return; } } //如果是提交 if (ispost) { //如果不是提交... if (ForumUtils.IsCrossSitePost()) { AddErrLine("您的请求来路不正确,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。"); return; } if (DNTRequest.GetString("postleaveword") == "add") { //当验证密码正确后,则发送相应留言 Goodsleavewordinfo goodsleavewordinfo = new Goodsleavewordinfo(); goodsleavewordinfo.Ip = DNTRequest.GetIP(); goodsleavewordinfo.Goodsid = goodsinfo.Goodsid; goodsleavewordinfo.Tradelogid = 0; goodsleavewordinfo.Uid = userid; goodsleavewordinfo.Username = username; goodsleavewordinfo.Message = DNTRequest.GetString("message"); goodsleavewordinfo.Isbuyer = goodsinfo.Selleruid != userid ? 1 : 0; if (GoodsLeaveWords.CreateLeaveWord(goodsleavewordinfo, goodsinfo.Selleruid, DNTRequest.GetString("sendnotice") == "on" ? true : false) > 0) { SetUrl(base.ShowGoodsAspxRewrite(goodsinfo.Goodsid)); SetMetaRefresh(); AddMsgLine("您的留言已发布, 现在转入商品页面<br />(<a href=\"" + base.ShowGoodsAspxRewrite(goodsinfo.Goodsid) + "\">如果您的浏览器没有自动跳转, 请点击这里</a>)<br />"); } } else { //当验证密码正确后,则发送相应留言 Goodsleavewordinfo goodsleavewordinfo = GoodsLeaveWords.GetGoodsLeaveWordById(DNTRequest.GetInt("leavewordid", 0)); if (goodsleavewordinfo != null && goodsleavewordinfo.Id > 0) { goodsleavewordinfo.Ip = DNTRequest.GetIP(); goodsleavewordinfo.Uid = userid; goodsleavewordinfo.Username = username; goodsleavewordinfo.Message = DNTRequest.GetString("message"); goodsleavewordinfo.Postdatetime = DateTime.Now; if (GoodsLeaveWords.UpdateLeaveWord(goodsleavewordinfo)) { SetUrl(base.ShowGoodsAspxRewrite(goodsinfo.Goodsid)); SetMetaRefresh(); AddMsgLine("留言更新成功, 现在转入商品页面<br />(<a href=\"" + base.ShowGoodsAspxRewrite(goodsinfo.Goodsid) + "\">如果您的浏览器没有自动跳转, 请点击这里</a>)<br />"); } } else { AddErrLine("当前留言不存在或已被删除"); return; } } } else { goodsinfo.Viewcount += 1; //浏览量加1 Goods.UpdateGoods(goodsinfo); } }