📄 admin_class.asp
字号:
Founderr = True
Exit Sub
ElseIf CInt(Request("uporders")) = 0 Then
ErrMsg = ErrMsg & "<li>请选择要提升的数字!</li>"
Founderr = True
Exit Sub
End If
Set Rs = NewAsp.Execute("SELECT ParentID,orders,ParentStr,child FROM NC_Classify WHERE ChannelID = "& ChannelID &" And classid=" & NewAsp.ChkNumeric(Request("editID")))
ParentID = Rs(0)
orders = Rs(1)
ParentStr = Rs(2) & "," & NewAsp.ChkNumeric(Request("editID"))
Child = Rs(3)
i = 0
If Child > 0 Then
Set Rs = NewAsp.Execute("SELECT COUNT(*) FROM NC_Classify WHERE ChannelID="& ChannelID &" And ParentStr like '%" & ParentStr & "%'")
oldorders = Rs(0)
Else
oldorders = 0
End If
Set Rs = NewAsp.Execute("SELECT classid,orders,child,ParentStr FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentID=" & ParentID & " and orders<" & orders & " ORDER BY orders desc")
Do While Not Rs.EOF
i = i + 1
If CInt(Request("uporders")) >= i Then
If Rs(2) > 0 Then
ii = 0
Set trs = NewAsp.Execute("SELECT classid,orders FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentStr like '%" & Rs(3) & "," & Rs(0) & "%' ORDER BY orders")
If Not (tRs.EOF And tRs.BOF) Then
Do While Not tRs.EOF
ii = ii + 1
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & orders & "+" & oldorders & "+" & ii & " WHERE ChannelID = "& ChannelID &" And classid=" & trs(0))
trs.movenext
Loop
End If
End If
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & orders & "+" & oldorders & " WHERE ChannelID = "& ChannelID &" And classid=" & Rs(0))
If CInt(Request("uporders")) = i Then uporders = Rs(1)
End If
orders = Rs(1)
Rs.movenext
Loop
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & uporders & " WHERE ChannelID = "& ChannelID &" And classid=" & NewAsp.ChkNumeric(Request("editID")))
If Child > 0 Then
i = uporders
Set Rs = NewAsp.Execute("SELECT classid FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentStr like '%" & ParentStr & "%' ORDER BY orders")
Do While Not Rs.EOF
i = i + 1
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & i & " WHERE ChannelID = "& ChannelID &" And classid=" & Rs(0))
Rs.movenext
Loop
End If
Set Rs = Nothing
Set trs = Nothing
ElseIf Request("doorders") <> "" Then
If Not IsNumeric(Request("doorders")) Then
ErrMsg = ErrMsg & "<li>非法的参数!</li>"
Founderr = True
Exit Sub
ElseIf CInt(Request("doorders")) = 0 Then
ErrMsg = ErrMsg & "<li>请选择要下降的数字!</li>"
Founderr = True
Exit Sub
End If
Set Rs = NewAsp.Execute("SELECT ParentID,orders,ParentStr,child FROM NC_Classify WHERE ChannelID = "& ChannelID &" And classid=" & Request("editID"))
ParentID = Rs(0)
orders = Rs(1)
ParentStr = Rs(2) & "," & NewAsp.ChkNumeric(Request("editID"))
Child = Rs(3)
i = 0
If Child > 0 Then
Set Rs = NewAsp.Execute("SELECT COUNT(*) FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentStr like '%" & ParentStr & "%'")
oldorders = Rs(0)
Else
oldorders = 0
End If
Set Rs = NewAsp.Execute("SELECT classid,orders,child,ParentStr FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentID=" & ParentID & " and orders>" & orders & " ORDER BY orders")
Response.Write "<li>"&ChannelID&" 错误参数!</li>"
Do While Not Rs.EOF
i = i + 1
If CInt(Request("doorders")) >= i Then
If Rs(2) > 0 Then
ii = 0
Set trs = NewAsp.Execute("SELECT classid,orders FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentStr like '%" & Rs(3) & "," & Rs(0) & "%' ORDER BY orders")
If Not (tRs.EOF And tRs.BOF) Then
Do While Not tRs.EOF
ii = ii + 1
NewAsp.Execute ("UPDATE NC_Classify set orders=" & orders & "+" & ii & " WHERE ChannelID = "& ChannelID &" And classid=" & trs(0))
trs.movenext
Loop
End If
End If
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & orders & " WHERE ChannelID = "& ChannelID &" And classid=" & Rs(0))
If CInt(Request("doorders")) = i Then doorders = Rs(1)
End If
orders = Rs(1)
Rs.movenext
Loop
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & doorders & " WHERE ChannelID = "& ChannelID &" And classid=" & NewAsp.ChkNumeric(Request("editID")))
If Child > 0 Then
i = doorders
Set Rs = NewAsp.Execute("SELECT classid FROM NC_Classify WHERE ChannelID = "& ChannelID &" And ParentStr like '%" & ParentStr & "%' ORDER BY orders")
Do While Not Rs.EOF
i = i + 1
NewAsp.Execute ("UPDATE NC_Classify SET orders=" & i & " WHERE ChannelID = "& ChannelID &" And classid=" & Rs(0))
Rs.movenext
Loop
End If
End If
Set Rs = Nothing
Set trs = Nothing
Call RemoveCache
Response.redirect "?action=classorders&ChannelID=" & ChannelID
Response.End
End Sub
Sub RestoreClass()
Dim Rs,i
i = 0
Set Rs = NewAsp.Execute("SELECT classid FROM NC_Classify WHERE ChannelID="& ChannelID &" ORDER BY rootid,orders")
Do While Not Rs.EOF
i = i + 1
NewAsp.Execute ("UPDATE NC_Classify SET rootid=" & i & ",depth=0,orders=0,ParentID=0,ParentStr='0',child=0, ChildStr='"&Rs(0)&"' WHERE ChannelID = "& ChannelID &" And classid=" & Rs(0))
Rs.movenext
Loop
Set Rs = Nothing
Call RemoveCache
Succeed("<li>复位成功,请返回做分类归属设置。</li>")
End Sub
Sub RemoveCache()
Application(NewAsp.CacheName &"_classlist_" & ChannelID)=Null
Application(NewAsp.CacheName &"_ChildID_" & ChannelID)=Null
'NewAsp.DelCache "classmenu_"&ChannelID
RemoveAppCache "classmenu_"&ChannelID
RemoveLabelCache NewAsp.modules
End Sub
'******************************************************************************'
'BY 春天
Private Sub addbyspring()
%>
<table width="100%" border="0" align="center" cellpadding="3" cellspacing="1" class="TableBorder">
<tr>
<th colspan="2">批量添加<%=NewAsp.ModuleName%>分类</th>
</tr>
<form name=myform method="POST" action="?action=savebyspring">
<input type="hidden" name="ChannelID" value="<%=ChannelID%>">
<tr>
<td width="20%" class="TableRow2"><strong><font color="red">名称|目录|注释</font></strong></td>
<td width="80%" class="TableRow1">
<p><font color=red>注:每个栏目名用“回车”分隔,格式:名称|目录|注释 如 春天|spring|春天出品</font></p>
<p><font color=red>不添加项请用-1代替,否则系统会出错 如 名称|目录|-1</font></p>
<p><font color=red><br>
一级分类相对于此频道目录,N级分类相对于上级分类目录,可以是多级目录,如:html/asp请认真填写。</font>
<textarea name="Content" rows="15" style="width:99%"></textarea>
</p></td>
</tr>
<tr>
<td class="TableRow2"><strong>所属分类:</strong></td>
<td class="TableRow1">
<script language="javascript">
function CreateAjax()
{
var XMLHttp;
try
{
XMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
try
{
XMLHttp = new XMLHttpRequest();
}
catch(e)
{
XMLHttp = false;
}
}
return XMLHttp;
}
function dedir(ChannelID)
{
var va = document.getElementById("spring").value;
_xmlhttp = CreateAjax();
var url = 'admin_class.asp?action=edit&ChannelID='+ChannelID+'&editid='+va+'&n='+Math.random()+'';
if(_xmlhttp)
{
var dig = document.getElementById("dedir");
_xmlhttp.open('GET',url,true);
_xmlhttp.onreadystatechange=function()
{
if(_xmlhttp.readyState == 4)
{
if(_xmlhttp.status == 200 )
{
var ResponseText = unescape(_xmlhttp.responseText);
var Res = ResponseText.split("\"> <font color=\"red\">相对于此频道目录")
var Ree = Res[0].split("<input type=\"text\" name=\"ClassDir\" size=\"15\" value=\"")
{
if (Ree[1]==undefined)
{dig.innerHTML="做为一级分类"}
else
{dig.innerHTML="当前分类的目录为‘"+Ree[1]+"’";}
}
}
else
{
alert("服务器返回错误!");
}
}
}
_xmlhttp.send(null);
}
else
{
alert("您的浏览器不支持或未启用 XMLHttp!");
}
}
</script>
<% Dim Rs1,SQL
Response.Write " <select name=""class"" id=""spring"" onchange=""dedir('"&ChannelID&"')"">"
Response.Write "<option value=""0"">做为一级分类</option>"
SQL = "SELECT classid,depth,ClassName FROM NC_Classify WHERE ChannelID = "& ChannelID &" ORDER BY rootid,orders"
Set Rs1 = NewAsp.Execute(SQL)
Do While Not Rs1.EOF
Response.Write "<option value=""" & Rs1("classid") & """ "
If Request("editid") <> "" And CLng(Request("editid")) = Rs1("classid") Then Response.Write "selected"
Response.Write ">"
If Rs1("depth") = 1 Then Response.Write " ├ "
If Rs1("depth") > 1 Then
For i = 2 To Rs1("depth")
Response.Write " │"
Next
Response.Write " ├ "
End If
Response.Write Rs1("ClassName") & "</option>" & vbCrLf
Rs1.movenext
Loop
Response.Write "</select>"
Rs1.Close
Set Rs1 = Nothing
%>
<span id="dedir"></span>
</td>
</tr>
<tr>
<td class="TableRow2"><strong>连接目标:</strong></td>
<td class="TableRow1">
<input type="radio" value="0" checked name="LinkTarget"> 本窗口打开
<input type="radio" name="LinkTarget" value="1"> 新窗口打开</td>
</tr>
<tr id=ClassSetting2 style="display:">
<td class="TableRow2"><strong>用户组:</strong></td>
<td class="TableRow1">
<select name="UserGroup" size="1">
<% Dim Rs
Set Rs = NewAsp.Execute("SELECT GroupName,Grades FROM NC_UserGroup ORDER BY Groupid")
Do While Not Rs.EOF
Response.Write Chr(9) & Chr(9) & "<option value=""" & Rs("Grades") & """"
If Rs("Grades") = 0 Then Response.Write " selected"
Response.Write ">"
Response.Write Rs("GroupName")
Response.Write "</option>" & vbCrLf
Rs.movenext
Loop
Set Rs = Nothing
%> </select> </td>
</tr>
<tr>
<td class="TableRow2"> </td>
<td class="TableRow1">
<p align="center"><input type="button" onclick="javascript:history.go(-1)" value="返回上一页" name="B1" class=Button>
<input type="submit" value="保存设置" name="B2" class=Button></td>
</tr>
</form>
</table>
<%
End Sub
Private Sub savebyspring()
Dim classid,rootid,ParentID,depth,orders
Dim Maxrootid,ParentStr,ChildStr,neworders
Dim TData,ClassName,ClassDir,Readme
Dim SQL,rs,i
ParentID=Request("class")
TData=Request("Content")
'保存添加分类信息
CheckSavebyspring
If Founderr = True Then Exit Sub
If ParentID <> "0" Then
SQL = "SELECT rootid,classid,depth,orders,ParentStr,TurnLink,HtmlFileDir FROM NC_Classify WHERE ChannelID = "& ChannelID &" And classid=" & ParentID
Set Rs = Newasp.Execute (SQL)
rootid = Rs(0)
ParentID = Rs(1)
depth = Rs(2)
orders = Rs(3)
If depth + 1 > 20 Then
ErrMsg = "<li>本系统限制最多只能有20级子分类</li>"
Founderr = True
Exit Sub
End If
If Rs("TurnLink") = 1 Then
ErrMsg = "<li>该分类是外部连接,您不能指定该分类作为所属分类</li
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -