<% Dvbbs.Loadtemplates("") Dvbbs.stats="帖子审核" Dvbbs.Nav If Dvbbs.BoardID=0 Then Dvbbs.Head_var 2,0,"","" Else Dvbbs.Head_var 1,Dvbbs.BoardNode.attributes.getNamedItem("depth").text,"","" End If Dim currentPage,Rs,SQl,i Dim AdminLockTopic Dim p,announceIDRange1,announceIDRange2,tableclass Dim bBoardEmpty bBoardEmpty=False AdminLockTopic=False If (Dvbbs.master or Dvbbs.superboardmaster or Dvbbs.boardmaster) And Cint(Dvbbs.GroupSetting(36))=1 Then AdminLockTopic=True Else AdminLockTopic=False End If If Cint(Dvbbs.GroupSetting(36))=1 And Dvbbs.UserGroupID>3 Then AdminLockTopic=True End If If Dvbbs.FoundUserPer And Cint(Dvbbs.GroupSetting(36))=1 Then AdminLockTopic=true ElseIf Dvbbs.FoundUserPer And Cint(Dvbbs.GroupSetting(36))=0 Then AdminLockTopic=False End If If Not AdminLockTopic Then Response.redirect "showerr.asp?ErrCodes=
  • 您没有在本版面审核帖子的权限。&action=OtherErr" currentPage=request("page") Dim PostTable,ptable PostTable=GetAllPostTable ptable=Dvbbs.Checkstr(Request("posttable")) Dim NowUseBBS NowUseBBS=Dvbbs.NowUseBBS If ptable<>"" Then For i= 0 to UBound(PostTable,2) If LCase(ptable)=LCase(PostTable(1,i)) Then Dvbbs.NowUseBBS=PostTable(1,i) End If Next End If If currentpage="" or not IsNumeric(currentpage) Then currentpage=1 Else currentpage=clng(currentpage) End If If request("action")="freetopic" Then freetopic() ElseIf request("action")="dispaudit" Then View() Else main() End If Dvbbs.activeonline() Dvbbs.footer() Sub main() Dim totalrec,ii,page_count Dim n,pi Dim rs1,sql1 %>
    贴子审核
     请选择论坛:  数据表:

    <% 'BoardXML.documentElement.selectSingleNode(BoardPath&"[@boardid='"&Rs(0)&"']") Dim BoardNode Set Rs=server.createobject("adodb.recordset") If dvbbs.boardid=0 Then sql="select AnnounceID,boardID,UserName,Topic,DateAndTime,RootID,layer,orders,Expression,body,PostUserID,locktopic,parentid from "& Dvbbs.NowUseBBS &" where BoardID=777 Order by AnnounceID Desc" Else sql="select AnnounceID,boardID,UserName,Topic,DateAndTime,RootID,layer,orders,Expression,body,PostUserID,locktopic,parentid from "& Dvbbs.NowUseBBS &" where BoardID=777 And locktopic="&dvbbs.boardid&" Order by AnnounceID Desc" End If If Not IsObject(Conn) Then ConnectionDatabase Rs.Open Sql,Conn,1,1 If rs.eof And rs.bof Then Response.Write "" Else rs.PageSize = cint(Dvbbs.Forum_Setting(11)) rs.AbsolutePage=currentpage page_count=0 totalrec=rs.recordcount Do While Not Rs.Eof and (not page_count = rs.PageSize) page_count=page_count+1 If rs("layer")= 1 Then tableclass="tablebody1" Else tableclass="tablebody2" End If Set BoardNode = GetBoard_info(Rs(11)) Response.Write "" Response.Write "" Response.Write "" Rs.MoveNext Loop End If Rs.Close Set Rs=Nothing If totalrec mod Dvbbs.Forum_Setting(11)=0 Then n= totalrec \ Dvbbs.Forum_Setting(11) Else n= totalrec \ Dvbbs.Forum_Setting(11)+1 End If If currentpage-1 mod 10=0 Then p=(currentpage-1) \ 10 Else p=(currentpage-1) \ 10 End If Dim pagelist,pagelistbit %>
    选项 版面 主 题 作 者
     暂无审核内容
    " Response.Write "" Response.Write "" Response.Write BoardNode.attributes.getNamedItem("boardtype").text Response.Write "" Response.Write " " If Rs("ParentID")>0 Then GetTopic(Rs("RootID")) Response.Write "" If Rs("topic")="" or isnull(rs("topic")) Then If Len(rs("body"))>50 Then Response.Write Dvbbs.htmlencode(replace(left(rs("body"),50),chr(10),"")) Else Response.Write Dvbbs.htmlencode(replace(rs("body"),chr(10),"")) End If Else If len(rs("Topic"))>50 Then Response.Write Dvbbs.htmlencode(left(rs("Topic"),50)) Else Response.Write Dvbbs.htmlencode(rs("Topic")) End If End If Response.Write " ("&rs("dateandtime")&")"& Dvbbs.htmlencode(rs("username")) &"
    选中所有显示帖子  请选择要操作的内容:通过审核 删除帖子 
    页次:<%= currentPage %>/<%= n %>页 每页<%= Dvbbs.Forum_Setting(11) %> 主题数<%= totalrec %>
    分页: <% If currentPage=1 Then Response.Write "9 " Else Response.Write "9 " End If If p*10>0 Then Response.Write "7 " Response.Write "" for ii=p*10+1 to P*10+10 If ii=currentPage Then Response.Write ""+Cstr(ii)+" " Else Response.Write ""+Cstr(ii)+" " End If If ii=n Then exit for Next Response.Write "" If ii8 " If currentPage=n Then Response.Write ": " Else Response.Write ": " End If %> 转到:
    <% End sub Function GetTopic(TopicID) Dim Trs Set Trs=Dvbbs.Execute("Select Title,BoardID From Dv_Topic Where TopicID="&TopicID) If Not(Rs.Eof And Rs.Bof) Then Response.Write "[主题帖:"&Dvbbs.HtmlEncode(Left(Trs(0),16))&"] " Else Response.Write "[未找到相关主题] " End If Set Trs=Nothing End Function Sub freetopic() Dim BoardID If request.form("announceid")="" Then Response.redirect "showerr.asp?ErrCodes=
  • 请指定相关帖子。&action=OtherErr" Dim id,trs,ars Dim FoundID,MyID Dim bbsnum,topicnum,todaynum Dim haveaudit For i=1 to request.form("Announceid").count bbsnum=0 topicnum=0 todaynum=0 BoardId=0 ID=replace(request.form("Announceid")(i),"'","") If Not IsNumeric(ID) Then ID = 0 Else ID = Clng(ID) End If '删除 If request("actiontype")=2 Then Set Rs=Dvbbs.Execute("select rootid from "&Dvbbs.NowUsebbs&" where parentid=0 And Announceid="&id) If not (rs.eof And rs.bof) Then ID=Rs(0) Set Rs=Nothing Dvbbs.Execute("delete from dv_topic where topicid="&ID) Dvbbs.Execute("delete from "&Dvbbs.NowUsebbs&" where rootid="&ID) FoundID=ID Else Dvbbs.Execute("delete from "&Dvbbs.NowUsebbs&" where Announceid="&id) FoundID=0 End If '通过审核 ElseIf cint(request("actiontype"))=1 Then Set Rs=Dvbbs.Execute("select rootid,dateandtime,PostUserID,locktopic from "&Dvbbs.NowUsebbs&" where parentid=0 And Announceid="&id) If not (rs.eof And rs.bof) Then boardID=Rs("locktopic") '如果被审核的是主题帖 bbsnum=bbsnum+1 topicnum=topicnum+1 If datediff("d",rs(1),Now())=0 Then todaynum=todaynum+1 Dvbbs.Execute("update dv_topic set boardid=locktopic,locktopic=0 where topicid="&rs(0)) Dvbbs.Execute("update "&Dvbbs.NowUsebbs&" set boardid=locktopic,locktopic=0 where Announceid="&id) Dvbbs.Execute("update [dv_user] set userpost=userpost+1,userWealth=userWealth+"&Dvbbs.Forum_user(2)&",UserEP=UserEP+"&Dvbbs.Forum_user(7)&",UserCP=UserCP+"&Dvbbs.Forum_user(12)&" where userid="&rs(2)) Else set trs=Dvbbs.Execute("select rootid,dateandtime,PostUserID,locktopic from "&Dvbbs.NowUsebbs&" where Announceid="&id) If not (trs.eof And trs.bof) Then boardID=TRs("locktopic") '更新主题最后回复数据和回复数 bbsnum=bbsnum+1 topicnum=topicnum+1 If datediff("d",trs(1),Now())=0 Then todaynum=todaynum+1 Dvbbs.Execute("update "&Dvbbs.NowUsebbs&" set boardid=locktopic,locktopic=0 where Announceid="&id) Dvbbs.Execute("update [dv_user] set userpost=userpost+1,userWealth=userWealth+"&Dvbbs.Forum_user(2)&",UserEP=UserEP+"&Dvbbs.Forum_user(7)&",UserCP=UserCP+"&Dvbbs.Forum_user(12)&" where userid="&trs(2)) IsEndReply(trs(0)) End If End If End If If BoardId<>0 Then update boardid,bbsnum,topicnum,todaynum End If next Set Rs=Nothing '更新论坛总数据和版面数据 'If CInt(request("actiontype"))=1 Then update Dvbbs.boardid,bbsnum,topicnum,todaynum Dvbbs.Dvbbs_Suc("
  • 帖子操作成功.") End Sub '是否最后回复 Function IsEndReply(TopicID) isEndReply=false Dim trs Dim LastPostInfo,iTotalUseTable Dim LastTopic,body,LastRootid,LastPostTime,LastPostUser Dim LastPost,uploadpic_n,LastPostUserID,LastID,istop set trs=Dvbbs.Execute("select LastPost,PostTable,istop from dv_Topic where Topicid="&Topicid) If not (trs.eof And trs.bof) Then LastPostInfo=split(trs(0),"$") iTotalUseTable=trs(1) istop=trs(2) End If set trs=Dvbbs.Execute("select top 1 topic,body,Announceid,dateandtime,username,PostUserid,rootid from "&iTotalUseTable&" where (Not BoardID In (444,777)) And RootID="&TopicID&" order by Announceid desc") If not(trs.eof And trs.bof) Then body=trs(1) LastRootid=trs(2) LastPostTime=trs(3) LastPostUser=replace(trs(4),"$","") LastTopic=left(replace(body,"$",""),20) LastPostUserID=trs(5) LastID=trs(6) Else LastTopic="无" LastRootid=0 LastPostTime=now() LastPostUser="无" LastPostUserID=0 LastID=0 End If LastPost=LastPostUser & "$" & LastRootid & "$" & LastPostTime & "$" & replace(left(replace(LastTopic,"'",""),20),"$","") & "$" & LastPostInfo(4) & "$" & LastPostUserID & "$" & LastID & "$" & Dvbbs.boardid If istop=0 Then Dvbbs.Execute("update dv_topic set LastPost='"&LastPost&"',child=child+1,LastPostTime='"&LastPostTime&"' where topicid="&TopicID) Else Dvbbs.Execute("update dv_topic set LastPost='"&LastPost&"',child=child+1 where topicid="&TopicID) End If set trs=Nothing End Function '更新论坛总数据和版面数据 Function update(boardid,bbsnum,topicnum,todaynum) Dim lastpost_1,trs Dim LastTopic,LastRootid,LastPostTime,LastPostUser Dim LastPost,uploadpic_n,Lastpostuserid,Lastid Dim UpdateBoardID '本论坛和上级论坛ID Dim BoardNode Set BoardNode=GetBoard_info(BoardID) If BoardNode.attributes.getNamedItem("parentstr").text<>"" Then UpdateBoardID= BoardNode.attributes.getNamedItem("parentstr").text & "," & BoardID Else UpdateBoardID= BoardID End If '版面最后回复数据 set trs=Dvbbs.Execute("select top 1 T.title,b.Announceid,b.dateandtime,b.username,b.postuserid,b.rootid from "&Dvbbs.NowUsebbs&" b inner join Dv_Topic T on b.rootid=T.TopicID where b.boardid="&boardid&" order by b.announceid desc") If not(trs.eof And trs.bof) Then Lasttopic=replace(left(replace(trs(0),"'",""),15),"$","") LastRootid=trs(1) LastPostTime=trs(2) LastPostUser=trs(3) LastPostUserid=trs(4) Lastid=trs(5) Else LastTopic="无" LastRootid=0 LastPostTime=now() LastPostUser="无" LastPostUserid=0 Lastid=0 End If set trs=Nothing LastPost=LastPostUser & "$" & LastRootid & "$" & LastPostTime & "$" & LastTopic & "$" & uploadpic_n & "$" & LastPostUserID & "$" & LastID & "$" & boardid '总版面最后回复数据 set trs=Dvbbs.Execute("select top 1 T.title,b.Announceid,b.dateandtime,b.username,b.postuserid,b.rootid from "&Dvbbs.NowUsebbs&" b inner join Dv_Topic T on b.rootid=T.TopicID order by b.announceid desc") If not(trs.eof And trs.bof) Then Lasttopic=replace(left(replace(trs(0),"'",""),15),"$","") LastRootid=trs(1) LastPostTime=trs(2) LastPostUser=trs(3) LastPostUserid=trs(4) Lastid=trs(5) Else LastTopic="无" LastRootid=0 LastPostTime=now() LastPostUser="无" LastPostUserid=0 Lastid=0 End If LastPost_1=LastPostUser & "$" & LastRootid & "$" & LastPostTime & "$" & LastTopic & "$" & uploadpic_n & "$" & LastPostUserID & "$" & LastID & "$" & boardid Dim SplitUpBoardID,SplitLastPost SplitUpBoardID=split(UpdateBoardID,",") For i=0 to ubound(SplitUpBoardID) set trs=Dvbbs.Execute("select LastPost from dv_board where boardid="&SplitUpBoardID(i)) If not (trs.eof And trs.bof) Then SplitLastPost=split(trs(0),"$") If isnull(SplitLastPost(1)) Then SplitLastPost(1)=0 If ubound(SplitLastPost)=7 And clng(LastRootID)<>clng(SplitLastPost(1)) Then Dvbbs.Execute("update dv_board set LastPost='"&LastPost&"' where boardid="&SplitUpBoardID(i)) End If End If Next Dvbbs.Execute("update dv_board set PostNum=PostNum+"&bbsnum&",TopicNum=TopicNum+"&TopicNum&",TodayNum=TodayNum+"&todaynum&" where boardid in ("&UpdateBoardID&")") Dvbbs.Execute("update dv_setup set Forum_PostNum=Forum_PostNum+"&bbsnum&",Forum_TopicNum=Forum_TopicNum+"&TopicNum&",Forum_TodayNum=Forum_TodayNum+"&todaynum&",Forum_LastPost='"&LastPost_1&"'") Set trs=Nothing '更新缓存数据 Dvbbs.ReloadBoardInfo(UpdateBoardID) Dvbbs.ReloadSetupCache CLng(Dvbbs.CacheData(7,0))+TopicNum,7 Dvbbs.ReloadSetupCache CLng(Dvbbs.CacheData(8,0))+bbsnum,8 Dvbbs.ReloadSetupCache CLng(Dvbbs.CacheData(9,0))+todaynum,9 Dvbbs.ReloadSetupCache LastPost_1,15 End Function Sub View() dim AnnounceID,replyid dim username If request("id")="" Then Response.redirect "showerr.asp?ErrCodes=
  • 请指定所需参数。&action=OtherErr" ElseIf Not IsNumeric(request("id")) Then Response.redirect "showerr.asp?ErrCodes=
  • 请指定所需参数。&action=OtherErr" Else AnnounceID=request("id") End If If request("replyid")="" Then Response.redirect "showerr.asp?ErrCodes=
  • 请指定所需参数。&action=OtherErr" ElseIf Not IsNumeric(request("replyid")) Then Response.redirect "showerr.asp?ErrCodes=
  • 请指定所需参数。&action=OtherErr" Else replyid=request("replyid") End If Set Rs=server.createobject("adodb.recordset") set rs=dvbbs.execute("select posttable from dv_topic where topicid="&announceid) If rs.eof and rs.bof Then Response.redirect "showerr.asp?ErrCodes=
  • 没有找到相关信息&action=OtherErr" end if dim tablename tablename=rs(0) set rs=dvbbs.execute("select * from "&tablename&" where announceid="&replyid) if rs.eof and rs.bof then Response.redirect "showerr.asp?ErrCodes=
  • 没有找到相关信息&action=OtherErr" end if %>
    <%=Dvbbs.htmlencode(rs("topic"))%>

    " target=_blank><%=Dvbbs.htmlencode(rs("username"))%> 发布于 <%=rs("dateandtime")%>


    <% response.Write server.htmlencode(rs("body")) %>
    <% Rs.Close Set Rs = Nothing End Sub Function GetAllPostTable() Dim Rs Set Rs=Dvbbs.Execute("select * from [Dv_TableList]") GetAllPostTable=Rs.GetRows(-1) Set Rs=Nothing End Function Function GetBoard_info(BoardID) Dim Nodelist,node Set Nodelist=Dvbbs.BoardXML.documentElement.getElementsByTagName("board") For Each Node in nodelist If Cstr(BoardId)=Node.attributes.getNamedItem("boardid").text Then Set GetBoard_info=Node Exit For End If Next End Function %>