📄 moderation.asp
字号:
<!-- #include file="Setup.asp" -->
<%
HtmlTop
if CookieUserName=empty then error("您还未<a href=""javascript:BBSXP_Modal.Open('Login.asp',380,170);"">登录</a>论坛")
if BestRole<>1 then error("你的权限不够!")
PermissionManage=1
ThreadID=Request.Form("ThreadID")
if Request_Method = "POST" then
select case Request.Form("Menu_Item")
case "ClearRecycle"
TimeLimit=RequestInt("TimeLimit")
if TimeLimit < 1 then error("只能清空24小时之前的文章")
ThreadGetRow=FetchEmploymentStatusList("select ThreadID from ["&TablePrefix&"Threads] where Visible=2 and DateDiff("&SqlChar&"d"&SqlChar&",lasttime,"&SqlNowString&") > "&TimeLimit&"")
if IsArray(ThreadGetRow) then
for i=0 to ubound(ThreadGetRow,2)
sql="select PostID from ["&TablePrefix&"Posts] where ThreadID="&ThreadGetRow(0,i)&""
Rs.open sql,Conn,1,1
do while not Rs.eof
DelAttachments"Select * from ["&TablePrefix&"PostAttachments] where PostID="&Rs("PostID")&""
Rs.movenext
loop
Rs.Close
next
end if
ThreadGetRow=null
Execute("Delete from ["&TablePrefix&"Threads] where Visible=2 and DateDiff("&SqlChar&"d"&SqlChar&",lasttime,"&SqlNowString&") > "&TimeLimit&"")
succtitle="清空回收站内 "&TimeLimit&" 天以前的主题!"
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
case "Visible"
for each ho in Request.Form("ThreadID")
ho=int(ho)
sql="select * from ["&TablePrefix&"Threads] where ThreadID="&ho&""
Rs.open sql,Conn,1,3
if not Rs.eof and Rs("Visible")<>1 then
if Rs("Visible")=0 then
Rs("HiddenCount")=Rs("HiddenCount")-1
elseif Rs("Visible")=2 then
Rs("DeletedCount")=Rs("DeletedCount")-1
end if
Rs("Visible")=1
Rs("LastTime")=now()
Rs("LastName")=CookieUserName
Rs.update
Execute("update ["&TablePrefix&"Posts] Set Visible=1 where ThreadID="&ho&" and ParentID=0")
end if
Rs.close
next
succtitle="批量审核,主题ID:"&ThreadID&""
case "InVisible"
for each ho in Request.Form("ThreadID")
ho=int(ho)
sql="select * from ["&TablePrefix&"Threads] where ThreadID="&ho&""
Rs.open sql,Conn,1,3
if not Rs.eof and Rs("Visible")<>0 then
if Rs("Visible")=2 then Rs("DeletedCount")=Rs("DeletedCount")-1
Rs("Visible")=0
Rs("HiddenCount")=Rs("HiddenCount")+1
Rs("LastTime")=now()
Rs("LastName")=CookieUserName
Rs.update
Execute("update ["&TablePrefix&"Posts] Set Visible=0 where ThreadID="&ho&" and ParentID=0")
end if
Rs.close
next
succtitle="批量取消审核,主题ID:"&ThreadID&""
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
case "IsLocked"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Execute("update ["&TablePrefix&"Threads] Set IsLocked=1 where ThreadID="&ho&"")
next
succtitle="批量锁定,主题ID:"&ThreadID&""
case "DelIsLocked"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Execute("update ["&TablePrefix&"Threads] Set IsLocked=0 where ThreadID="&ho&"")
next
succtitle="批量解锁,主题ID:"&ThreadID&""
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
case "IsGood"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Rs.open "Select ThreadID,IsGood,PostAuthor From ["&TablePrefix&"Threads] where ThreadID="&ho&"",conn,1,3
if not Rs.eof and Rs("IsGood")=0 then
Rs("IsGood")=1
Rs.update
Execute("update ["&TablePrefix&"Users] Set UserMoney=UserMoney+"&SiteConfig("IntegralAddValuedPost")&",experience=experience+"&SiteConfig("IntegralAddValuedPost")&" where UserName='"&Rs("PostAuthor")&"'")
end if
Rs.close
next
succtitle="批量精华主题,主题ID:"&ThreadID&""
case "DelIsGood"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Rs.open "Select ThreadID,IsGood,PostAuthor From ["&TablePrefix&"Threads] where ThreadID="&ho&"",conn,1,3
if not Rs.eof and Rs("IsGood")=1 then
Rs("IsGood")=0
Rs.update
Execute("update ["&TablePrefix&"Users] Set UserMoney=UserMoney+"&SiteConfig("IntegralDeleteValuedPost")&",experience=experience+"&SiteConfig("IntegralDeleteValuedPost")&" where UserName='"&Rs("PostAuthor")&"'")
end if
Rs.close
next
succtitle="批量取消精华,主题ID:"&ThreadID&""
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
case "DelThread"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Rs.open "Select * From ["&TablePrefix&"Threads] where ThreadID="&ho&"",Conn,1,3
if not Rs.eof and Rs("Visible")<>2 then
if Rs("Visible")=0 then Rs("HiddenCount")=Rs("HiddenCount")-1
Rs("DeletedCount")=Rs("DeletedCount")+1
Rs("Visible")=2
Rs("LastTime")=now()
Rs("LastName")=CookieUserName
Rs.update
Execute("update ["&TablePrefix&"Posts] Set Visible=2 where ThreadID="&ho&" and ParentID=0")
UpForumMostRecent(Rs("ForumID")) '更新版块的最新主题
end if
Rs.close
next
succtitle="批量删除主题,主题ID:"&ThreadID&""
case "UnDelThread"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Rs.open "Select * From ["&TablePrefix&"Threads] where ThreadID="&ho&"",Conn,1,3
if not Rs.eof and Rs("Visible")<>1 then
if Rs("Visible")=0 then Rs("HiddenCount")=Rs("HiddenCount")-1
if Rs("Visible")=2 then Rs("DeletedCount")=Rs("DeletedCount")-1
Rs("Visible")=1
Rs("LastTime")=now()
Rs("LastName")=CookieUserName
Rs.update
Execute("update ["&TablePrefix&"Posts] Set Visible=1 where ThreadID="&ho&" and ParentID=0")
end if
Rs.close
next
succtitle="批量还原主题,主题ID:"&ThreadID&""
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
case "Fix"
for each ho in Request.Form("ThreadID")
ho=int(ho)
UpdateThreadStatic(ho)
next
succtitle="批量修复主题,主题ID:"&ThreadID&""
case "MoveNew"
for each ho in Request.Form("ThreadID")
ho=int(ho)
Execute("update ["&TablePrefix&"Threads] Set LastTime="&SqlNowString&" where ThreadID="&ho&"")
next
succtitle="批量拉前主题,主题ID:"&ThreadID&""
'移动主题
case "MoveThread"
Response.Redirect("MoveThread.asp?ThreadID="&Request.Form("ThreadID"))
case "MoveThreadUp"
AimForumID=RequestInt("AimForumID")
if AimForumID=0 then error("您没有选择要将主题移动哪个论坛")
ThreadIDArray=split(ThreadID,",")
for i=0 to ubound(ThreadIDArray)
ho=int(trim(ThreadIDArray(i)))
Execute("update ["&TablePrefix&"Threads] Set ForumID="&AimForumID&",ThreadTop=0,IsGood=0,IsLocked=0,ThreadStyle='' where ThreadID="&ho&"")
next
succtitle="批量移动主题,主题ID:"&ThreadID&""
case "ThreadVisible"
ThreadIDStr=""
for each ElementName in request.Form
ElementNameArray=split(ElementName,"_")
if ElementNameArray(0)="ThreadID" then
ThreadID=Int(ElementNameArray(1))
Visible=Int(Request.Form(""&ElementName&""))
if Visible>0 then
Rs.open "select * from ["&TablePrefix&"Threads] where ThreadID="&ThreadID&"",Conn,1,3
if not Rs.eof and Rs("Visible")<>Visible then
if Visible=1 then '通过审核
if Rs("Visible")=0 then
Rs("HiddenCount")=Rs("HiddenCount")-1
else
Rs("DeletedCount")=Rs("DeletedCount")-1
end if
elseif Visible=2 then '删除主题
if Rs("Visible")=0 then Rs("HiddenCount")=Rs("HiddenCount")-1
Rs("DeletedCount")=Rs("DeletedCount")+1
end if
Rs("Visible")=Visible
Rs.update
Execute("update ["&TablePrefix&"Posts] Set Visible="&Visible&" where ThreadID="&ThreadID&" and ParentID=0")
ThreadIDStr=ThreadIDStr&","&ThreadID
end if
Rs.Close
end if
end if
next
succtitle="批量操作成功,主题ID:"&ThreadIDStr&""
'''''''''''''''''''''''''''''''''''帖子管理''''''''''''''''''''''''''''''''''
case "PostVisible"
PostIDStr=""
for each FormElementName in request.Form
FormElementNameArray=split(""&FormElementName&"","_")
if FormElementNameArray(0)="ThreadID" then ThreadID=RequestInt(""&FormElementName&"")
for each ElementName in request.Form
ElementNameArray=split(ElementName,"_")
if Ubound(ElementNameArray)>1 then
if ElementNameArray(0)="PostID" and ElementNameArray(1)=""&ThreadID&"" then
PostID=Int(ElementNameArray(2))
Visible=Int(Request.Form(""&ElementName&""))
if Visible>0 then
Rs.open "Select top 1 * from ["&TablePrefix&"Posts] where PostID="&PostID&"",Conn,1,3
if not Rs.eof and Rs("Visible")<>Visible then
Rs("Visible")=Visible
Rs.update
if Rs("ParentID")=0 then Execute("update ["&TablePrefix&"Threads] Set Visible="&Visible&" where ThreadID="&Rs("ThreadID")&"")
PostIDStr=PostIDStr&","&PostID
end if
Rs.close
end if
end if
end if
next
if ThreadID>0 then UpdateThreadStatic(ThreadID)
next
succtitle="批量操作成功,帖子ID:"&PostIDStr&""
case "ClearRecyclePost"
TimeLimit=RequestInt("TimeLimit")
if TimeLimit < 1 then error("只能清空24小时之前的回帖")
ThreadGetRow=FetchEmploymentStatusList("Select ThreadID from ["&TablePrefix&"Threads] where Visible=1 and DeletedCount>0 order by PostTime Desc")
if IsArray(ThreadGetRow) then
for i=0 to ubound(ThreadGetRow,2)
sql="select PostID from ["&TablePrefix&"Posts] where ThreadID="&ThreadGetRow(0,i)&" and ParentID>0 and Visible=2 and DateDiff("&SqlChar&"d"&SqlChar&",PostDate,"&SqlNowString&") > "&TimeLimit&""
Rs.open sql,Conn,1,3
do while not Rs.eof
DelAttachments"Select * from ["&TablePrefix&"PostAttachments] where PostID="&Rs("PostID")&""
Rs.Delete
Rs.Update
Rs.movenext
loop
Rs.Close
UpdateThreadStatic(ThreadGetRow(0,i)) '主题需要更新吗?
next
end if
ThreadGetRow=null
succtitle="清空回收站内 "&TimeLimit&" 天以前的回帖!"
'''''''''''''''''''''''''''''''''''帖子管理 End''''''''''''''''''''''''''''''''''
end select
if succtitle="" then error("无效指令")
Log(""&succtitle&"")
succeed succtitle,""
end if
select case Request("menu")
case "ForumsFix"
Rs.open "select * from ["&TablePrefix&"Forums]",Conn,1,3
do while not Rs.eof
allarticle=Execute("Select count(ThreadID) from ["&TablePrefix&"Threads] where Visible=1 and ForumID="&Rs("ForumID")&"")(0)
if allarticle>0 then
allrearticle=Execute("Select sum(TotalReplies) from ["&TablePrefix&"Threads] where Visible=1 and ForumID="&Rs("ForumID")&"")(0)
else
allrearticle=0
end if
Rs("TotalThreads")=allarticle
Rs("TotalPosts")=allarticle+allrearticle
Rs.update
UpForumMostRecent(Rs("ForumID"))
Rs.movenext
loop
Rs.close
succeed "修复论坛统计数据成功",""
case "Visible"
ForumTitle="等待审核的主题"
ItemValue="ThreadVisible"
Sql=" Visible=0"
ManageThreadPost
case "PostVisible"
ForumTitle="等待审核的帖子"
ItemValue="PostVisible"
Sql=" Visible=1 and HiddenCount>0"
ManageThreadPost
case "Recycle"
ForumTitle="主题回收站"
ItemValue="UnDelThread"
Sql="["&TablePrefix&"Threads] where Visible=2"
ManageThread
case "PostRecycle"
ForumTitle="帖子回收站"
ItemValue="PostVisible"
Sql="where Visible=1 and DeletedCount>0"
PostRecycle
case else
sql="["&TablePrefix&"Threads] where Visible=1"
ForumTitle="主题管理"
ManageThread
end select
Sub CommonBread
%>
<div class="CommonBreadCrumbArea"><%=ClubTree%> → <a href="?menu=<%=Request("menu")%>"><%=ForumTitle%></a></div>
<table border="0" width="100%" align="center">
<tr>
<td align=right>
<select name="menu" onchange="window.location.href='?menu='+this.options[this.selectedIndex].value">
<optgroup label="审核区">
<option value="Visible"<%if Request("menu")="Visible" then Response.Write(" selected")%>>主题审核</option>
<option value="PostVisible"<%if Request("menu")="PostVisible" then Response.Write(" selected")%>>帖子审核</option>
</optgroup>
<optgroup label="回收站">
<option value="Recycle"<%if Request("menu")="Recycle" then Response.Write(" selected")%>>主题回收站</option>
<option value="PostRecycle"<%if Request("menu")="PostRecycle" then Response.Write(" selected")%>>帖子回收站</option>
</optgroup>
</select>
</td>
</tr>
</table>
<%
End Sub
Sub PostRecycle
CommonBread
%>
<table cellspacing="1" cellpadding="5" width="100%" class="CommonListArea">
<tr class="CommonListTitle">
<td colspan="6"><%=ForumTitle%></td>
</tr>
<tr class="CommonListHeader" align="center">
<td>标题</td>
<td>作者</td>
<td>回复</td>
<td>查看</td>
<td>最后更新</td>
</tr>
<%
TotalCount=Execute("Select count(ThreadID) from ["&TablePrefix&"Threads]"&Sql)(0) '获取数据数量
PageSetup=SiteConfig("ThreadsPerPage") '设定每页的显示数量
TotalPage=Abs(Int(TotalCount/PageSetup*(-1))) '总页数
PageCount = RequestInt("PageIndex") '获取当前页
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -