protected override void ShowPage() { if (config.Enablemall == 0) //未启用交易服务 { AddErrLine("系统未开启交易服务, 当前页面暂时无法访问!"); return; } headerad = ""; footerad = ""; // 如果商品交易日志不正确 if (goodstradelogid <= 0) { AddErrLine("无效的交易日志信息."); return; } goodstradelog = TradeLogs.GetGoodsTradeLogInfo(goodstradelogid); int oldstatus = goodstradelog.Status; if (config.Enablemall == 1) //开启普通模式 { forumid = GoodsCategories.GetCategoriesFid(goodstradelog.Categoryid); forum = Forums.GetForumInfo(forumid); forumname = forum.Name; forumnav = ForumUtils.UpdatePathListExtname(forum.Pathlist.Trim(), config.Extname); } else if (config.Enablemall == 2) //当为高级模式时 { forumid = 0; } ///得到广告列表 ///头部 headerad = Advertisements.GetOneHeaderAd("", forumid); footerad = Advertisements.GetOneFooterAd("", forumid); doublead = Advertisements.GetDoubleAd("", forumid); floatad = Advertisements.GetFloatAd("", forumid); pagetitle = goodstradelog.Subject; navhomemenu = Caches.GetForumListMenuDivCache(usergroupid, userid, config.Extname); if (useradminid != 0) { if (config.Enablemall == 1) //开启普通模式 { ismoder = Moderators.IsModer(useradminid, userid, forumid) ? 1 : 0; } //得到管理组信息 admininfo = AdminGroups.GetAdminGroupInfo(usergroupid); } //验证不通过则返回 if (!IsConditionsValid()) { return; } goodsleavewordlist = GoodsLeaveWords.GetLeaveWordList(goodstradelog.Id); if (goodstradelog.Status == 7 || goodstradelog.Status == 17) { israted = GoodsRates.CanRate(goodstradelog.Id, userid) ? false : true; //如果当前用户已评价过则不允许再评价 } //如果是提交则更新商品交易日志 if (ispost && goodstradelog.Status >= 0) { if (ForumUtils.IsCrossSitePost()) { AddErrLine("您的请求来路不正确,无法提交。如果您安装了某种默认屏蔽来路信息的个人防火墙软件(如 Norton Internet Security),请设置其不要禁止来路信息后再试。"); return; } //当要验证密码时 if (DNTRequest.GetInt("status", -1) > 0 && IsVerifyPassWord(goodstradelog.Status)) { if (Utils.StrIsNullOrEmpty(DNTRequest.GetString("password"))) { AddErrLine("密码不能为空, 请返回填写."); return; } int uid = -1; if (config.Passwordmode == 1) { uid = Users.CheckDvBbsPassword(base.username, DNTRequest.GetString("password")); } else { uid = Users.CheckPassword(username, DNTRequest.GetString("password"), true); } if (uid < 0) { AddErrLine("您输入的密码不正确, 不能修改订单状态, 请返回修改."); return; } //当验证密码正确后,则发送相应留言 Goodsleavewordinfo goodsleavewordinfo = new Goodsleavewordinfo(); goodsleavewordinfo.Ip = DNTRequest.GetIP(); goodsleavewordinfo.Goodsid = goodstradelog.Goodsid; goodsleavewordinfo.Tradelogid = goodstradelog.Id; goodsleavewordinfo.Uid = userid; goodsleavewordinfo.Username = username; goodsleavewordinfo.Message = DNTRequest.GetString("message"); goodsleavewordinfo.Isbuyer = buyerleaveword; GoodsLeaveWords.CreateLeaveWord(goodsleavewordinfo, goodsinfo.Selleruid); } goodstradelog.Status = DNTRequest.GetInt("status", -1); if (goodstradelog.Status == 0) { //当为买家时 if (isbuyer) { goodstradelog.Quality = goodsinfo.Quality; goodstradelog.Categoryid = goodsinfo.Categoryid; goodstradelog.Tax = 0; goodstradelog.Locus = goodsinfo.Locus; goodstradelog.Seller = goodsinfo.Seller; goodstradelog.Sellerid = goodsinfo.Selleruid; goodstradelog.Selleraccount = goodsinfo.Account; goodstradelog.Buyerid = userid; goodstradelog.Buyer = username; goodstradelog.Buyercontact = DNTRequest.GetString("buyercontact"); goodstradelog.Buyercredit = 0; goodstradelog.Buyermsg = DNTRequest.GetString("buyermsg"); goodstradelog.Lastupdate = DateTime.Now; goodstradelog.Buyername = DNTRequest.GetString("buyername"); goodstradelog.Buyerzip = DNTRequest.GetString("buyerzip"); goodstradelog.Buyerphone = DNTRequest.GetString("buyerphone"); goodstradelog.Buyermobile = DNTRequest.GetString("buyermobile"); goodstradelog.Transport = goodsinfo.Transport; goodstradelog.Baseprice = goodsinfo.Costprice; goodstradelog.Discount = goodsinfo.Discount; goodstradelog.Ratestatus = 0; goodstradelog.Message = ""; } if (isseller) //当为卖家时 { goodstradelog.Transportfee = DNTRequest.GetInt("fee", 0); } } if (TradeLogs.UpdateTradeLog(goodstradelog, oldstatus, true)) { SetUrl("offlinetrade.aspx?goodstradelogid=" + goodstradelogid); SetMetaRefresh(); AddMsgLine("交易单已更新, 现在转入交易单页面<br />(<a href=\"" + "offlinetrade.aspx?goodstradelogid=" + goodstradelogid + "\">如果您的浏览器没有自动跳转, 请点击这里</a>)<br />"); } } }
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); } }