📄 board.asp
字号:
End If
If Doorders > 0 Or Uporders > 0 Then
Response.Write "<input type=hidden name=""editID"" value=""" & Sql(5,Bn) & """> <input type=submit name=Submit value=修改 class=button>"
End If
End If
Response.Write "</td></tr></form>"
Uporders = 0
Doorders = 0
Next
Response.Write "</table>"
End If
%>
</td>
</tr>
</table>
<%
End Sub
'N级分类移动 2004-10-18 Dv.Yz
Sub Updateboardorders()
Dim Orders, tRs, Parentid
Dim Uporders, Doorders
Dim Frontorders, Nextorders, Lastorders
Dim Rootid, Depth, Child, Parentstr, Rs, SQL
If Not Isnumeric(Request("EditID")) Then
Response.Write "非法的参数!"
Exit Sub
End If
If Request("Uporders") <> "" And Not Cint(Request("Uporders")) = 0 Then
If Not Isnumeric(Request("Uporders")) Then
Response.Write "非法的参数!"
Exit Sub
Elseif Cint(Request("Uporders")) = 0 Then
Response.Write "请选择要提升的数字!"
Exit Sub
End If
Uporders = Cint(Request("Uporders"))
'向上移动
Set Rs = Dvbbs.Execute("SELECT Orders, Rootid, Depth, ParentID, Child, ParentStr FROM Dv_Board WHERE Boardid = " & Request("EditID"))
Orders = Rs(0)
Rootid = Rs(1)
Depth = Rs(2)
Parentid = Rs(3)
Child = Rs(4)
ParentStr = Rs(5) & "," & Request("EditID")
Set Rs = Nothing
'取Lastorders值
Sql = "SELECT Top 1 Orders FROM Dv_Board WHERE Rootid = " & Rootid & " ORDER BY Orders DESC"
Set Rs = Dvbbs.Execute(Sql)
Lastorders = Rs(0)
Set Rs = Nothing
'取取移动结属ORDERS值
If Child > 0 Then
Sql = "SELECT COUNT(*) FROM Dv_Board WHERE ParentStr LIKE '%" & ParentStr & "%' AND Rootid = " & Rootid
Set Rs = Dvbbs.Execute(Sql)
Nextorders = Orders + Rs(0)
Else
Nextorders = Orders
End If
Doorders = Nextorders
Set Rs = Nothing
'取同级版面往上的版面ORDERS值
Sql = "SELECT Top " & Uporders & " Orders FROM Dv_Board WHERE Rootid = " & Rootid & " AND Depth = " & Depth & " AND ParentID = " & Parentid & " AND Orders < " & Orders & " ORDER BY Orders Desc"
Set Rs = Dvbbs.Execute(Sql)
If Rs.Eof And Rs.Bof Then
Frontorders = 0
Else
Sql = Rs.GetRows(-1)
Frontorders = Sql(0,Ubound(Sql,2))
End If
'一次更新Orders
Sql = "UPDATE Dv_Board SET Orders = Orders + " & Doorders & " WHERE Rootid = " & Rootid & " AND (Orders >= " & Frontorders & " AND Orders < " & Orders & " OR Orders > " & Nextorders & ")"
' Response.Write Sql
Dvbbs.Execute(Sql)
Elseif Request("Doorders") <> "" Then
If Not Isnumeric(Request("Doorders")) Then
Response.Write "非法的参数!"
Exit Sub
Elseif Cint(Request("doorders")) = 0 Then
Response.Write "请选择要下降的数字!"
Exit Sub
End If
Uporders = Cint(Request("doorders"))
'向下移动
Set Rs = Dvbbs.Execute("SELECT Orders, Rootid, Depth, ParentID, Child, ParentStr FROM Dv_Board WHERE Boardid = " & Request("EditID"))
Orders = Rs(0)
Rootid = Rs(1)
Depth = Rs(2)
Parentid = Rs(3)
Child = Rs(4)
ParentStr = Rs(5) & "," & Request("EditID")
Set Rs = Nothing
'取Lastorders值
Sql = "SELECT Top 1 Orders FROM Dv_Board WHERE Rootid = " & Rootid & " ORDER BY Orders DESC"
Set Rs = Dvbbs.Execute(Sql)
Lastorders = Rs(0)
Set Rs = Nothing
'取取移动结属ORDERS值
If Child > 0 Then
Sql = "SELECT COUNT(*) FROM Dv_Board WHERE ParentStr LIKE '%" & ParentStr & "%' AND Rootid = " & Rootid
Set Rs = Dvbbs.Execute(Sql)
Nextorders = Orders + Rs(0)
Else
Nextorders = Orders
End If
Set Rs = Nothing
'取同级版面移下后上一个版面ORDERS值
Sql = "SELECT Top " & Uporders + 1 & " Orders, Child, ParentStr, BoardID FROM Dv_Board WHERE Rootid = " & Rootid & " AND Depth = " & Depth & " AND ParentID = " & Parentid & " AND Orders > " & Orders & " ORDER BY Orders"
Set Rs = Dvbbs.Execute(Sql)
If Rs.Eof And Rs.Bof Then
Frontorders = Lastorders
Else
Sql = Rs.GetRows(-1)
Frontorders = Sql(0,Ubound(Sql,2)) - 1
If Not Ubound(Sql,2) = Uporders Then
If Sql(1,Ubound(Sql,2)) > 0 Then
ParentStr = Sql(2,Ubound(Sql,2)) & "," & Sql(3,Ubound(Sql,2))
Set Rs = Dvbbs.Execute("SELECT COUNT(*) FROM Dv_Board WHERE ParentStr LIKE '%" & ParentStr & "%' AND Rootid = " & Rootid)
Frontorders = Sql(0,Ubound(Sql,2)) + Rs(0)
Else
Frontorders = Sql(0,Ubound(Sql,2))
End If
End If
End If
Doorders = Frontorders
'一次更新Orders
Sql = "UPDATE Dv_Board SET Orders = Orders + " & Doorders & " WHERE Rootid = " & Rootid & " AND Orders >= " & Orders & " AND Orders <= " & Nextorders & " OR Orders > " & Frontorders
' Response.Write Sql
Dvbbs.Execute(Sql)
End If
CheckAndFixBoard 0,1
RestoreBoardCache()
Response.Redirect "board.asp?action=boardorders"
End Sub
Sub Addmaster(s,o,n)
Dim Arr, Pw, Oarr
Dim Classname, Titlepic, Rs, Sql, i
Set Rs = Dvbbs.Execute("SELECT Usertitle, GroupPic FROM Dv_UserGroups WHERE Usergroupid = 3")
If Not (Rs.Eof And Rs.Bof) Then
Classname = Rs(0)
Titlepic = Rs(1)
End If
Randomize
Pw = Cint(Rnd * 9000) + 1000
Arr = Split(s,"|")
Oarr = Split(o,"|")
Set Rs = Server.Createobject("Adodb.Recordset")
For i = 0 To Ubound(Arr)
Sql = "SELECT * FROM [Dv_User] WHERE Username = '" & Arr(i) & "'"
Rs.Open Sql,Conn,1,3
If Rs.Eof And Rs.Bof Then
Rs.Addnew
Rs("Username") = Arr(i)
Rs("Userpassword") = Md5(Pw,16)
Rs("Userclass") = Classname
Rs("UserGroupID") = 3
Rs("Titlepic") = Titlepic
Rs("UserWealth") = 100
Rs("Userep") = 30
Rs("Usercp") = 30
Rs("Userisbest") = 0
Rs("Userdel") = 0
Rs("Userpower") = 0
Rs("Lockuser") = 0
'加入更详细资料使登录与显示资料不会出错。
Rs("UserSex") = 1
Rs("UserEmail") = Arr(i) & "@aspsky.net"
Rs("UserFace") = "Images/userface/image1.gif"
Rs("UserWidth") = 32
Rs("UserHeight") = 32
Rs("UserIM") = "||||||||||||||||||"
Rs("UserFav") = "陌生人,我的好友,黑名单"
Rs("LastLogin") = Now()
Rs("JoinDate") = Now()
Rs("Userpost") = 0
Rs("Usertopic") = 0
Rs.Update
Str = Str & "你添加了以下用户:<b>" & Arr(i) & "</b> 密码:<b>" & Pw & "</b><br><br>"
Dvbbs.Execute("UPDATE Dv_Setup SET Forum_Usernum = Forum_Usernum + 1, Forum_Lastuser = '" & Arr(i) & "'")
Else
'修正添加版主不改变等级的错误 2005-3-7 Dv.Yz
If Rs("UserGroupID") > 3 Then
Rs("Userclass") = Classname
Rs("UserGroupID") = 3
Rs("Titlepic") = Titlepic
Rs.Update
End If
End If
Rs.Close
Next
'判断原版主在其他版面是否还担任版主,如没有担任则撤换该用户职位。
If n = 1 Then
Dim Iboardmaster
Dim UserGrade, Article
Iboardmaster = False
For i = 0 To Ubound(Oarr)
Set Rs = Dvbbs.Execute("SELECT Boardmaster FROM Dv_Board")
Do While Not Rs.Eof
If Instr("|" & Trim(Rs("Boardmaster")) & "|","|" & Trim(Oarr(i)) & "|") > 0 Then
Iboardmaster = True
Exit Do
End If
Rs.Movenext
Loop
If Not Iboardmaster Then
Set Rs = Dvbbs.Execute("SELECT Userid, UserGroupID, UserPost FROM [Dv_User] WHERE Username = '" & Trim(Oarr(i)) & "'")
If Not (Rs.Eof And Rs.Bof) Then
If Rs(1) > 2 Then
If Not Isnumeric(Rs(2)) Or Rs(2) = "" Then
Article = 0
Else
Article = Cstr(Rs(2))
End If
'取对应注册会员的等级
Set UserGrade = Dvbbs.Execute("SELECT TOP 1 Usertitle, Grouppic,UserGroupID FROM Dv_Usergroups WHERE Minarticle <= " & Article & " AND NOT MinArticle = -1 AND ParentGID = 4 ORDER BY MinArticle DESC")
If Not (UserGrade.Eof And UserGrade.Bof) Then
Dvbbs.Execute("UPDATE [Dv_User] SET UserGroupID = 10, Titlepic = '" & UserGrade(1) & "', Userclass = '" & UserGrade(0) & "' WHERE Userid = " & Rs(0))
End If
UserGrade.Close:Set UserGrade = Nothing
End If
End If
End If
Iboardmaster = False
Next
End If
Set Rs = Nothing
End Sub
Rem 分版面用户权限设置 重写2004-5-2 Dvbbs.YangZheng
Sub BoardPerMission()
Dim iUserGroupID(100), UserTitle(100),iParentID(100)
Dim Trs, Ars, k, ii
Dim Bn,Sql
Set Trs = Dvbbs.Execute("SELECT Usertitle,Usergroupid,ParentGID FROM Dv_UserGroups WHERE Not ParentGID=0 ORDER BY ParentGID,UserGroupId")
If Not (Trs.Eof And Trs.Bof) Then
Sql = Trs.GetRows(-1)
Trs.Close:Set Trs = Nothing
For ii = 0 To Ubound(Sql,2)
UserTitle(ii) = Sql(0,ii)
iUserGroupID(ii) = Sql(1,ii)
iParentID(ii) = Sql(2,ii)
Next
End If
%>
<table width="100%" border="0" cellspacing="1" cellpadding="3" align="center">
<tr>
<th style="text-align:center;">编辑论坛权限</th>
</tr>
<tr>
<td class=td1>
①您可以设置不同用户组在不同论坛内的权限,红色表示为该论坛该用户组使用的是用户定义属性<BR>
②该权限不能继承,比如您设置了一个包含下级论坛的版面,那么只对您设置的版面生效而不对其下属论坛生效<BR>
③如果您想设置生效,必须在设置页面<B>选择自定义设置</B>,选择了自定义设置后,这里设置的权限将<B>优先</B>于用户组设置,比如用户组默认不能管理帖子,而这里设置了该用户组可管理帖子,那么该用户组在这个版面就可以管理帖子
</td>
</tr>
</table><BR>
<table width="100%" cellspacing="1" cellpadding="1" align="center">
<tr>
<th width="35%">论坛版面
</th>
<th width="35%">设置用户组权限
</th>
</tr>
<%
Dim Percount,Rs,i
Sql = "SELECT Depth, Child, Parentid, BoardType, Boardid,IsGroupSetting FROM Dv_Board ORDER BY Rootid, Orders"
Set Rs = Dvbbs.Execute(Sql)
If Not (Rs.Eof And Rs.Bof) Then
Sql = Rs.GetRows(-1)
Set Rs = Nothing
For Bn = 0 To Ubound(Sql,2)
Response.Write "<tr><td height=25 width=40% class=td1>"
If Sql(0,Bn) > 0 Then
For i = 1 To Sql(0,Bn)
Response.Write " "
Next
End If
If Sql(1,Bn) > 0 Then
Response.Write "<img src=../skins/default/plus.gif>"
Else
Response.Write "<img src=../skins/default/nofollow.gif>"
End If
If Sql(2,Bn) = 0 Then
Response.Write "<b>"
End If
Response.Write Sql(3,Bn)
If Sql(1,Bn) > 0 Then
Response.Write "(" & Sql(1,Bn) & ")"
End If
'Percount = Dvbbs.Execute("SELECT COUNT(*) FROM Dv_BoardPermission WHERE Boardid = " & Sql(4,Bn))(0)
%>
</td>
<FORM METHOD=POST ACTION="?action=editpermission">
<td width=60% class="td1">
<select name="groupid" size=1>
<%
Dim hasc
For k = 0 To ii-1
Response.Write "<option value=""" & iUserGroupID(k) & """>" & SysGroupName(iParentID(k)) & UserTitle(k)
If Sql(5,Bn)<>"" Then
Set Ars = Dvbbs.Execute("SELECT Pid FROM Dv_BoardPerMission WHERE BoardID = " & Sql(4,Bn) & " AND GroupID = " & iUserGroupID(k))
If Not Ars.Eof Then
Response.Write "(自定义)"
hasc=1
End If
End If
Response.Write "</option>"
Next
Response.Write "</select><input type=hidden value="
Response.Write Sql(4,Bn)
Response.Write " name=reboardid><input type=submit name=submit value=设置 class=button>"
If hasc=1 Then
Response.Write "(有自定义版面)"
End If
Response.Write "</td></FORM></tr>"
Next
End If
Response.Write "</table><BR><BR>"
Set Ars = Nothing
Set Trs = Nothing
End Sub
Sub editpermission()
if not isnumeric(request("groupid")) Or request("groupid")="" Or request("reBoardID")="" Or not isnumeric(request("reBoardID")) then
response.write "错误的参数,请返回分版面权限设置首页选择正确的设置!"
exit sub
end if
if request("groupaction")="yes" then
dim GroupSetting,rspid,SaveGroupid,NewGroupid
Dim IsGroupSetting,MyIsGroupSetting
Dim Sql,i,k
Dim UpdateStr,OldStr,NewStr
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -