📄 admin_batch.asp
字号:
Function Topic_Batch_Move
Dim ID,Newboard,Trs,ChildNum
Dim F_announceID,SplitUpBoardID
ChildNum=0
If Request.form("newboard")="" or isnull(Request.form("newboard")) or not isnumeric(Request.form("newboard")) Then
Response.redirect "showerr.asp?ErrCodes=<li>如果您是批量转移帖子请选择相关论坛。&action=OtherErr"
Exit Function
ElseIf Cint(Request.form("newboard"))=Cint(Dvbbs.BoardID) Then
Response.redirect "showerr.asp?ErrCodes=<li>请不要选择相同的论坛进行转移操作。&action=OtherErr"
Exit Function
Else
newboard=Request.form("newboard")
End If
For i=1 To Request.Form("Announceid").Count
Id=Replace(Request.Form("Announceid")(i),"'","")
ID=CLng(ID)
Set Rs=Dvbbs.Execute("Select PostTable,Isbest,Child,IsTop from dv_Topic Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
If Not(Rs.Eof And Rs.Bof) Then
If Rs("IsTop")=0 Then
TotalUseTable=Rs(0)
ChildNum=ChildNum + Rs(2)
Dvbbs.Execute("Update "&TotalUseTable&" Set BoardID="&Newboard&" Where BoardID="&Dvbbs.BoardID&" And RootID=" & ID)
Dvbbs.Execute("update dv_Topic Set BoardID="&Newboard&" Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
If Rs(1)=1 Then
Dvbbs.Execute("update dv_Besttopic Set BoardID="&Newboard&" Where BoardID="&Dvbbs.BoardID&" And RootID=" & ID)
End If
'shinzeal加入批量移动上传文件数据
F_announceID=ID & "|"
Dvbbs.Execute("update DV_Upfile set F_boardid="&Newboard&" where F_boardid="&Dvbbs.Boardid&" and F_announceID like '"& F_announceID&"%'")
'shinzeal加入批量移动上传文件数据结束
End If
End If
Next
'更新版面和总数据
Set Rs=Dvbbs.Execute("Select ParentStr from dv_Board Where BoardID="&Dvbbs.BoardID)
UpdateBoardID=Rs(0) & "," & Dvbbs.BoardID
Del_Math_Forum_Count ChildNum,i-1
UpdateBoardID = Split(UpdateBoardID,",")
For i = 0 To Ubound(UpdateBoardID)
Dvbbs.ReloadBoardInfo(UpdateBoardID(i))
Next
Set Rs=Dvbbs.Execute("Select ParentStr from dv_Board Where BoardID="&Newboard)
UpdateBoardID=Rs(0) & "," & Newboard
Add_Math_Forum_Count ChildNum,i
SplitUpBoardID = Split(UpdateBoardID,",")
For i = 0 To Ubound(SplitUpBoardID)
Dvbbs.ReloadBoardInfo(SplitUpBoardID(i))
Next
Dvbbs.Name="setup"
Dvbbs.ReloadSetup
LastCount(Dvbbs.BoardID)
Math_Forum_Today(Dvbbs.BoardID)
Dvbbs.ReloadBoardInfo(Dvbbs.BoardID)
LastCount(Newboard)
Math_Forum_Today(Newboard)
Dvbbs.ReloadBoardInfo(Newboard)
SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) Values ("&ID&","&Dvbbs.BoardID&",'More','"&Dvbbs.Membername&"','批量移动','"&IP&"',3)"
Dvbbs.Execute(SQL)
sucmsg="<li>帖子批量移动成功。<li>您的操作信息已经记录在案。"
Dvbbs.Dvbbs_suc(sucmsg)
Set Rs=Nothing
End Function
Function Topic_Batch_Istop
Dim ID
For I=1 To Request.Form("Announceid").Count
ID=replace(Request.form("Announceid")(i),"'","")
ID=CLng(ID)
If IsSqlDataBase=1 Then
Dvbbs.Execute("update dv_Topic Set Istop=1,LastPostTime=Dateadd(day,100,LastPostTime) Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
else
Dvbbs.Execute("update dv_Topic Set Istop=1,LastPostTime=Dateadd('d',100,LastPostTime) Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
end if
Next
SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) Values ("&ID&","&Dvbbs.BoardID&",'More','"&Dvbbs.Membername&"','批量固顶','"&IP&"',4)"
Dvbbs.Execute(SQL)
sucmsg="<li>帖子批量固顶成功。<li>您的操作信息已经记录在案。"
Dvbbs.ReloadBoardInfo(Dvbbs.BoardID)
Dvbbs.Dvbbs_suc(sucmsg)
End Function
Function Topic_Batch_Isbest
Dim ID
For I=1 To Request.Form("Announceid").Count
ID=replace(Request.form("Announceid")(i),"'","")
ID=CLng(ID)
Set Rs=Dvbbs.Execute("Select PostTable from dv_Topic Where BoardID="&Dvbbs.BoardID&" And TopicID="&ID)
TotalUseTable=Rs(0)
Set Rs=Dvbbs.Execute("Select Top 1 * From "&TotalUseTable&" Where RootID="&ID&" Order By AnnounceID")
If Not (Rs.Eof And Rs.Bof) Then
SQL="insert into Dv_bestTopic (Title,BoardID,Announceid,Rootid,Postusername,Postuserid,Dateandtime,Expression) Values ('"&Dvbbs.Checkstr(Rs("Topic"))&"',"&Rs("BoardID")&","&Rs("Announceid")&","&Rs("Rootid")&",'"&Dvbbs.Checkstr(Rs("Username"))&"',"&Rs("Postuserid")&",'"&Rs("Dateandtime")&"','"&Rs("Expression")&"')"
Dvbbs.Execute(SQL)
Dvbbs.Execute("Update "&TotalUseTable&" Set Isbest=1 Where AnnounceID=" & Rs("AnnounceID"))
Dvbbs.Execute("update dv_Topic Set Isbest=1 Where TopicID="&ID)
End If
Next
SQL="insert into Dv_Log (L_AnnounceID,L_BoardID,L_ToUser,L_UserName,L_Content,L_IP,l_type) values ("&ID&","&Dvbbs.BoardID&",'more','"&Dvbbs.Membername&"','批量精华','"&IP&"',3)"
Dvbbs.Execute(SQL)
sucmsg="<li>帖子批量精华成功。<li>您的操作信息已经记录在案。"
Dvbbs.Dvbbs_suc(sucmsg)
Set Rs=Nothing
End Function
'更新指定论坛信息
Function LastCount(BoardID)
Dim LastTopic,body,LastRootid,LastPostTime,LastPostUser
Dim LastPost,uploadpic_n,Lastpostuserid,Lastid
Set Rs=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(Rs.Eof And Rs.Bof) Then
Lasttopic=replace(left(Rs(0),15),"$","")
LastRootid=Rs(1)
LastPostTime=Rs(2)
LastPostUser=Rs(3)
LastPostUserid=Rs(4)
Lastid=Rs(5)
Else
LastTopic="无"
LastRootid=0
LastPostTime=now()
LastPostUser="无"
LastPostUserid=0
Lastid=0
End If
Set Rs=Nothing
LastPost=LastPostUser & "$" & LastRootid & "$" & LastPostTime & "$" & LastTopic & "$" & uploadpic_n & "$" & LastPostUserID & "$" & LastID & "$" & BoardID
Dim SplitUpBoardID,SplitLastPost
SplitUpBoardID=Split(UpdateBoardID,",")
For i=0 to Ubound(SplitUpBoardID)
Set Rs=Dvbbs.Execute("Select LastPost from dv_Board Where BoardID="&SplitUpBoardID(i))
If Not (Rs.Eof And Rs.Bof) Then
SplitLastPost=Split(Rs(0),"$")
If SplitLastPost(1)="" or 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))
Dvbbs.ReloadBoardInfo(SplitUpBoardID(i))
End If
End If
Next
Set Rs=Nothing
End Function
Function Del_Math_Forum_Count(TopicNum,BBSNUM)
Dvbbs.Execute("Update dv_setup Set Forum_postNum=Forum_postNum-"&TopicNum&",Forum_TopicNum=Forum_TopicNum-"&BBSNUM&"")
Dvbbs.Execute("update dv_Board Set postnum=postnum-"&TopicNum&",topicnum=topicnum-"&BBSNUM&" Where BoardID In ("&UpdateBoardID&")")
End Function
Function Add_Math_Forum_Count(TopicNum,BBSNUM)
Dvbbs.Execute("Update dv_setup Set Forum_postNum=Forum_postNum+"&TopicNum&",Forum_TopicNum=Forum_topicNum+"&BBSNUM&"")
Dvbbs.Execute("update dv_Board Set postnum=postnum+"&TopicNum&",topicnum=topicnum+"&BBSNUM&" Where BoardID In ("&UpdateBoardID&")")
End Function
'今日帖子
Function Math_Forum_Today(BoardID)
Dim MathForumToday
if IsSqlDataBase=1 then
Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where BoardID="&BoardID&" And Datediff(d,Dateandtime,"&SqlNowString&")=0")
else
Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where BoardID="&BoardID&" And Datediff('d',Dateandtime,"&SqlNowString&")=0")
end if
MathForumToday=Rs(0)
Set Rs=Nothing
If Isnull(MathForumToday) Then MathForumToday=0
Dvbbs.Execute("update dv_Board Set Todaynum="&MathForumToday&" Where Boardid="&BoardID)
if IsSqlDataBase=1 then
Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where (Not BoardID in (444,777)) And Datediff(d,Dateandtime,"&SqlNowString&")=0")
else
Set Rs=Dvbbs.Execute("Select Count(*) From "&dvbbs.NowUseBBS&" Where (Not BoardID in (444,777)) And Datediff('d',Dateandtime,"&SqlNowString&")=0")
end if
MathForumToday=Rs(0)
Set Rs=Nothing
If Isnull(MathForumToday) Then MathForumToday=0
Dvbbs.Execute("Update dv_setup Set Forum_Todaynum="&MathForumToday)
End Function
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -