📄 admin_class.asp
字号:
response.write "<form action='"&FileName&"&Action=DownOrder' method='post'><td width='150'>"
response.write "<select name=MoveNum size=1><option value=0>向下移动</option>"
for i=1 to iCount-j
response.write "<option value="&i&">"&i&"</option>"
next
response.write "</select>"
response.write "<input type=hidden name=ClassID value="&rsClass("ClassID")&">"
response.write "<input type=hidden name=cRootID value="&rsClass("RootID")&"> <input type=submit name=Submit value=修改>"
response.write "</td></form>"
else
response.write "<td width='150'> </td>"
end if
%>
<td> </td>
</tr>
<%
j=j+1
rsClass.movenext
loop
%>
</table>
<%
rsClass.close : set rsClass=Nothing
end sub
sub OrderN()
dim sqlClass,rsClass,iCount,trs,UpMoveNum,DownMoveNum
sqlClass="select * From Cl_Class where ChannelID="&ChannelID&" order by RootID,OrderID"
set rsClass=server.CreateObject("adodb.recordset")
OpenConn : rsClass.open sqlClass,Conn,1,1
%>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" class="border">
<tr class="title">
<td height="22" colspan="4" align="center"><strong>N 级 栏 目 排 序</strong></td>
</tr>
<%
do while not rsClass.eof
%>
<tr class="tdbg" onMouseOut="this.className='tdbg'" onMouseOver="this.className='tdbg2'">
<td width="300">
<%
for i=1 to rsClass("Depth")
response.write " "
next
if rsClass("Child")>0 then
response.write "<img src='../images/Tree/folder4.gif' width='15' height='15' valign='abvmiddle'>"
else
response.write "<img src='../images/Tree/folder3.gif' width='15' height='15' valign='abvmiddle'>"
end if
if rsClass("ParentID")=0 then
response.write "<b>"
end if
response.write rsClass("ClassName")
if rsClass("Child")>0 then
response.write "(" & rsClass("Child") & ")"
end if
%></td>
<%
if rsClass("ParentID")>0 then '如果不是一级栏目,则算出相同深度的栏目数目,得到该栏目在相同深度的栏目中所处位置(之上或者之下的栏目数)
'所能提升最大幅度应为For i=1 to 该版之上的版面数
set trs=Cl.Execute("select count(ClassID) From Cl_Class where ChannelID="&ChannelID&" and ParentID="&rsClass("ParentID")&" and OrderID<"&rsClass("OrderID")&"")
UpMoveNum=trs(0)
if IsNull(UpMoveNum) then UpMoveNum=0
if UpMoveNum>0 then
response.write "<form action='"&FileName&"&Action=UpOrderN' method='post'><td width='150'>"
response.write "<select name=MoveNum size=1><option value=0>向上移动</option>"
for i=1 to UpMoveNum
response.write "<option value="&i&">"&i&"</option>"
next
response.write "</select>"
response.write "<input type=hidden name=ClassID value="&rsClass("ClassID")&"> <input type=submit name=Submit value=修改>"
response.write "</td></form>"
else
response.write "<td width='150'> </td>"
end if
trs.close
'所能降低最大幅度应为For i=1 to 该版之下的版面数
set trs=Cl.Execute("select count(ClassID) From Cl_Class where ChannelID="&ChannelID&" and ParentID="&rsClass("ParentID")&" and orderID>"&rsClass("orderID")&"")
DownMoveNum=trs(0)
if IsNull(DownMoveNum) then DownMoveNum=0
if DownMoveNum>0 then
response.write "<form action='"&FileName&"&Action=DownOrderN' method='post'><td width='150'>"
response.write "<select name=MoveNum size=1><option value=0>向下移动</option>"
for i=1 to DownMoveNum
response.write "<option value="&i&">"&i&"</option>"
next
response.write "</select>"
response.write "<input type=hidden name=ClassID value="&rsClass("ClassID")&"> <input type=submit name=Submit value=修改>"
response.write "</td></form>"
else
response.write "<td width='150'> </td>"
end if
trs.close
else
response.write "<td colspan=2> </td>"
end if
%>
<td> </td>
</tr>
<%
UpMoveNum=0
DownMoveNum=0
rsClass.movenext
loop
%>
</table>
<%
rsClass.close : set rsClass=Nothing
end sub
sub Reset()
%>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" class="border">
<tr class="title">
<td height="22" colspan="3" align="center"><strong>复 位 所 有 栏 目</strong></td>
</tr>
<tr class="tdbg">
<td align="center">
<form name="form1" method="post" action="<%=FileName%>&Action=SaveReset">
<table width="80%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="150"><font color="#FF0000"><strong>注意:</strong></font><br />
如果选择复位所有栏目,则所有栏目都将作为一级栏目,这时您需要重新对各个栏目进行归属的基本设置。不要轻易使用该功能,仅在做出了错误的设置而无法复原栏目之间的关系和排序的时候使用。
</td>
</tr>
</table>
<input type="submit" name="Submit" value="复位所有栏目"> <input name="Cancel" type="button" id="Cancel" value=" 取 消 " onClick="window.location.href='<%=FileName%>'" style="cursor:hand;">
</form></td>
</tr>
</table>
<%
end sub
sub Unite()
%>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" class="border">
<tr class="title">
<td height="22" colspan="3" align="center"><strong>栏 目 合 并</strong></td>
</tr>
<tr class="tdbg">
<td height="100"><form name="myform" method="post" action="<%=FileName%>" onSubmit="return ConfirmUnite();">
将栏目
<select name="ClassID" id="ClassID">
<%=ShowClass_Option(ChannelID,0,0,1)%>
</select>
合并到
<select name="TargetClassID" id="TargetClassID">
<%=ShowClass_Option(ChannelID,0,0,1)%>
</select>
<br /> <br />
<input name="Action" type="hidden" id="Action" value="SaveUnite">
<input type="submit" name="Submit" value=" 合并栏目 " style="cursor:hand;">
<input name="Cancel" type="button" id="Cancel" value=" 取 消 " onClick="window.location.href='<%=FileName%>'" style="cursor:hand;">
</form>
</td>
</tr>
<tr class="tdbg">
<td height="60"><strong>注意事项:</strong><br />
所有操作不可逆,请慎重操作!!!<br />
不能在同一个栏目内进行操作,不能将一个栏目合并到其下属栏目中。目标栏目中不能含有子栏目。<br />
合并后您所指定的栏目(或者包括其下属栏目)将被删除,所有数据将转移到目标栏目中。</td>
</tr>
</table>
<script language="JavaScript" type="text/JavaScript">
function ConfirmUnite()
{
if (document.myform.ClassID.value==document.myform.TargetClassID.value)
{
alert("请不要在相同栏目内进行操作!");
document.myform.TargetClassID.focus();
return false;
}
if (document.myform.TargetClassID.value=="")
{
alert("目标栏目不能指定为含有子栏目的栏目!");
document.myform.TargetClassID.focus();
return false;
}
}
</script>
<%
end sub
sub SaveAdd()
dim ClassID,ClassName,ClassDir,ParentDir,IsElite,ShowOnTop,Readme,ClassMaster,ClassPicUrl,PrevOrderID
dim trs,CommentGroup,CommentIsChk,AddIsChk,AddPoint,MaxLimit
dim RootID,ParentDepth,ParentPath,ParentStr,ParentName,MaxClassID,MaxRootID
dim PrevID,NextID,Child,DisabledAdd,VipUser
Dim IsOuter,LinkUrl,ProjectID,TemplateID,CssID
ClassName = Trim(request("ClassName"))
ClassDir = Trim(request("ClassDir"))
IsElite = Trim(request("IsElite"))
ShowOnTop = Trim(request("ShowOnTop"))
CommentIsChk = Trim(request("CommentIsChk"))
AddIsChk = Trim(request("AddIsChk"))
Readme = Trim(request("Readme"))
ClassMaster = Trim(request("ClassMaster"))
'ClassPicUrl = Trim(request("ClassPicUrl"))
BrowsePurview = Cl.GetClng(request("BrowsePurview"))
CommentGroup = Trim(request("CommentGroup"))
AddPoint = Cl.GetClng(request("AddPoint"))
MaxLimit = Cl.GetClng(request("MaxLimit"))
IsOuter = Cl.GetClng(request("IsOuter"))
LinkUrl = Trim(request("LinkUrl"))
DisabledAdd = Cl.GetClng(request("DisabledAdd"))
VipUser = Trim(request("VipUser"))
ProjectID = Cl.GetClng(request("ProjectID"))
TemplateID = Cl.GetClng(request("TemplateID"))
CssID = Cl.GetClng(request("CssID"))
if Not IsNull(VipUser) then VipUser = Replace(VipUser,VbCrlf,"|")
if ClassName="" then
Cl.ShowErr("<br /><li>栏目名称不能为空!</li>")
end if
if IsOuter=0 then
if ClassDir="" then
Cl.ShowErr("<br /><li>栏目目录不能为空!</li>")
end if
else
IsOuter=1
if LinkUrl="" then
Cl.ShowErr("<br /><li>栏目链接地址不能为空!</li>")
end if
end if
set rs = Cl.Execute("select Max(ClassID) From Cl_Class")
MaxClassID=rs(0)
if IsNull(MaxClassID) Then MaxClassID=0
rs.close : set rs = Nothing
ClassID=MaxClassID+1
if IsOuter=1 then ClassDir="Class"&ClassID
set rs=Cl.Execute("select max(RootID) From Cl_Class where ChannelID="&ChannelID&" and Depth=0")
MaxRootID=rs(0)
if IsNull(MaxRootID) Then MaxRootID=0
rs.close : set rs = Nothing
RootID=MaxRootID+1
if ParentID>0 then
Set Rs = Cl.Execute("select * From Cl_Class where ChannelID="&ChannelID&" and ClassID=" & ParentID)
if rs.bof and rs.eof then
rs.close : set rs=Nothing
Cl.ShowErr("<br /><li>所属栏目已经被删除!</li>")
else
if rs("IsOuter")=1 then
rs.close : set rs=Nothing
Cl.ShowErr("<br /><li>不能在外部栏目内添加内部栏目!</li>")
end if
end If
RootID = rs("RootID")
ParentName = rs("ClassName")
ParentDepth = rs("Depth")
ParentPath = rs("ParentPath")
Child = rs("Child")
ParentPath = ParentPath & "," & ParentID '得到此栏目的父级栏目路径
ParentDir = rs("ParentDir") & rs("ClassDir") & "/" '得到此栏目的父级栏目目录
PrevOrderID = rs("OrderID")
if Child>0 then
Dim rsPrevOrderID
'得到与本栏目同级的最后一个栏目的OrderID
Set rsPrevOrderID = Cl.Execute("select Max(OrderID) From Cl_Class where ChannelID="&ChannelID&" and ParentID=" & ParentID)
PrevOrderID = rsPrevOrderID(0)
rsPrevOrderID.close : Set rsPrevOrderID = Nothing
set trs = Cl.Execute("select ClassID from Cl_Class where ChannelID="&ChannelID&" and ParentID=" & ParentID & " and OrderID=" & PrevOrderID)
If Not trs.eof then
PrevID = trs(0)
End if
trs.close : Set trs = Nothing
'得到同一父栏目但比本栏目级数大的子栏目的最大OrderID,如果比前一个值大,则改用这个值。
set rsPrevOrderID=Cl.Execute("select Max(OrderID) From Cl_Class where ChannelID="&ChannelID&" and ParentPath like '" & ParentPath & ",%'")
if Not IsNull(rsPrevOrderID(0)) then
if rsPrevOrderID(0)>PrevOrderID then
PrevOrderID = rsPrevOrderID(0)
end if
end if
rsPrevOrderID.close : Set rsPrevOrderID = Nothing
else
PrevID = 0
end if
rs.close : Set Rs = Nothing
else
if MaxRootID>0 then
set trs=Cl.Execute("select ClassID from Cl_Class where ChannelID="&ChannelID&" and RootID=" & MaxRootID & " and Depth=0")
If Not trs.eof then
PrevID = trs(0)
End if
trs.close : Set trs = Nothing
else
PrevID = 0
end if
PrevOrderID = 0
ParentPath = "0"
ParentDir = "/"
RootID = RootID+1
end if
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -