⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class_action.asp

📁 后台目录:qwbAdmin/Login.asp 登陆用户名:admin 登陆密码:admin
💻 ASP
📖 第 1 页 / 共 2 页
字号:
<% Option Explicit %>
<!--#include file="../../FS_Inc/Const.asp" -->
<!--#include file="../../FS_Inc/Function.asp"-->
<!--#include file="../../FS_InterFace/MF_Function.asp" -->
<!--#include file="../../FS_InterFace/NS_Function.asp" -->
<!--#include file="lib/cls_main.asp" -->
<%'CopyRight (c) 2006 Fooun Inc. Code by Simpwind.Xie
Dim Conn,User_Conn,strShowErr
MF_Default_Conn
MF_User_Conn
'session判断
MF_Session_TF 
'权限判断
'Call MF_Check_Pop_TF("NS_Class_000001")
'得到会员组列表
dim Fs_news
set Fs_news = new Cls_News
Fs_News.GetSysParam()
If Not Fs_news.IsSelfRefer Then response.write "非法提交数据":Response.end
if Request.Form("actionType") = "xml" then
	Response.Write("生成xml")
	Response.end
Elseif Request.Form("actionType") = "html" then
	Response.Write("生成html")
	Response.end
End if
if Request("Action") = "makeXML" then
	if not Get_SubPop_TF("","NS022","NS","class") then Err_Show
	dim cid
	cid=NoSqlHack(Replace(Request("Cid")," ",""))
	if trim(cid)=empty then
			strShowErr = "<li>请选择栏目</li>"
			Response.Redirect("lib/Error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
			Response.end
	end if
	Response.Redirect "Class_makerss.asp?cid="& cid &""
	Response.end
End if
'---2007-02-06 By Ken ---批量删除栏目-------
If Request.Form("Action") = "DelClass" then
	Dim NewsConfigTF,DleClassObj,VRootStr,Str_DelClassID
	Dim DelClassIDStr,DelNum,DelXmlStr,DelAllClassIDStr
	Dim Arr_Num,Arr_i,Class_i,Class_Num
	Dim ArrC_Num,ArrC_i,CheckTopClassRs
	'---获取删除栏目的id
	DelClassIDStr = Request.Form("Cid")
	'---获取系统参数,是直接删除还是删除到回收站中
	NewsConfigTF = fs_news.ReycleTF
	'---取得系统的虚拟目录
	If G_VIRTUAL_ROOT_DIR <> "" Then
		VRootStr = "/" & G_VIRTUAL_ROOT_DIR
	Else
		VRootStr = ""
	End If
	'---如果删除栏目id为空返回错误
	If DelClassIDStr = "" Then
		strShowErr = "<li><font color=""#ff0000"">没有选择要删除的栏目</font></li>"
		Response.Redirect("lib/Error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
		Response.end
	Else
		'---对需要删除的栏目id进行格式化
		If Instr(DelClassIDStr,",") > 0 Then
			DelClassIDStr = Replace(Replace(DelClassIDStr," ,",","),", ",",")
			Class_Num = Split(DelClassIDStr,",")
			For Class_i = LBound(Class_Num) To UBound(Class_Num)
				Set CheckTopClassRs = Conn.ExeCute("Select ParentID,ClassID From FS_NS_NewsClass Where ClassID = '" & Class_Num(Class_i) & "' And ReycleTF = 0 Order By OrderID Desc,ID Desc")
				If CheckTopClassRs(0) <> "0" Then
					If InStrTopIDTF(Class_Num(Class_i),DelClassIDStr) = True Then
						DelClassIDStr = Replace(DelClassIDStr,"," & Class_Num(Class_i),"")
					End If
				End If
				CheckTopClassRs.CLose : Set CheckTopClassRs = Nothing	
			Next
			Str_DelClassID = DelClassIDStr
			ArrC_Num = Split(Str_DelClassID,",")
			For ArrC_i = LBound(ArrC_Num) To Ubound(ArrC_Num)
				DelAllClassIDStr = DelAllClassIDStr & "," & GetAllChildRenClassID(ArrC_Num(ArrC_i))
			Next
		Else
			DelAllClassIDStr = GetAllChildRenClassID(DelClassIDStr)
		End If
		If Left(DelAllClassIDStr,1) = "," Then
			DelAllClassIDStr = Right(DelAllClassIDStr,Len(DelAllClassIDStr) - 1)
		End If
		If Instr(DelAllClassIDStr,",") > 0 Then
			Arr_Num = Split(DelAllClassIDStr,",")
			DelNum = Clng(Ubound(Arr_Num) + 1)
		Else
			Arr_Num = 0
			DelNum = 1
		End If		
		'---如果为彻底删除
		If NewsConfigTF = 0 Then
			On Error Resume Next
			'---物理删除所选栏目已生成的静态文件
			Set DleClassObj = Conn.ExeCute("Select SavePath,ClassEName,IsURL From Fs_Ns_NewsClass Where ClassID In(" & DelAllClassIDStr & ")")
			While Not DleClassObj.Eof
				If Cint(DleClassObj(2)) = 0 Then
					If DleClassObj(0) = "/" Then
						fso_DeleteFolder("/" & DleClassObj(1))
					Else
						fso_DeleteFolder(VRootStr & DleClassObj(0) & "/" & DleClassObj(1))
					End If
				End IF	
				DleClassObj.MoveNext		
			Wend
			'---从数据库中删除所选栏目
			Conn.ExeCute("Delete From Fs_Ns_NewsClass Where ClassID In(" & DelAllClassIDStr & ")")
			Conn.ExeCute("Delete From Fs_Ns_News Where ClassID In(" & DelAllClassIDStr & ")")
			'---同时更新xml文件
			If Arr_Num = 0 Then
				DelXmlStr = fso_DeleteFile("../../FS_InterFace/xml/NS/" & Replace(DelAllClassIDStr,"'","") & ".xml")
			Else
				For Arr_i = LBound(Arr_Num) To UBound(Arr_Num)
					DelXmlStr = fso_DeleteFile("../../FS_InterFace/xml/NS/" & Replace(Arr_Num(Arr_i),"'","") & ".xml")
				Next
			End If	
			Call Makexml("0")
			If DelXmlStr = True Then
				DelXmlStr = "同时更新了xml文件"
			Else
				DelXmlStr = "同时更新了xml文件。状态:更新不成功.可能是您的目录不支持写入权限"
			End If
			If Error.Number = 0 Then
				'---将操作写入系统管理日志
				Call MF_Insert_oper_Log("删除栏目","删除栏目ClassID:"& Replace(DelAllClassIDStr,"'","") &"及子类栏目,同时删除了此栏目下的所有信息,彻底删除",now,session("admin_name"),"NS")
				'---删除成功返回结果
				strShowErr = "<li><font color=""#ff0000"">删除成功</font></li><li>所选栏目(共<strong style=""color:#FF0000"">" & DelNum & "</strong>个)已彻底删除</li><li>" & DelXmlStr & "</li>"
				Response.Redirect("lib/Success.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=../Class_Manage.asp")
				Response.end
			Else
				Error.Clear
				'---删除失败返回结果
				strShowErr = "<li><font color=""#ff0000"">发生错误,部分栏目删除失败</font></li>"
				Response.Redirect("lib/Error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
				Response.end
			End If	
		Else  '---如果删除到回收站
			On Error Resume Next
			Conn.ExeCute("Update Fs_Ns_NewsClass Set ReycleTF = 1 Where ClassID In(" & DelAllClassIDStr & ")")
			Conn.ExeCute("Update Fs_Ns_News Set ReycleTF = 1 Where ClassID In(" & DelAllClassIDStr & ")")
			'---同时更新xml文件
			If Arr_Num = 0 Then
				DelXmlStr = fso_DeleteFile("../../FS_InterFace/xml/NS/" & Replace(DelAllClassIDStr,"'","") & ".xml")
			Else
				For Arr_i = LBound(Arr_Num) To UBound(Arr_Num)
					DelXmlStr = fso_DeleteFile("../../FS_InterFace/xml/NS/" & Replace(Arr_Num(Arr_i),"'","") & ".xml")
				Next
			End If	
			Call Makexml("0")
			If DelXmlStr = True Then
				DelXmlStr = "同时更新了xml文件"
			Else
				DelXmlStr = "同时更新了xml文件。状态:更新不成功.可能是您的目录不支持写入权限"
			End If
			If Error.Number = 0 Then
				'---将操作写入系统管理日志
				Call MF_Insert_oper_Log("删除栏目","删除栏目ClassID:"& Replace(DelAllClassIDStr,"'","") &"及子类栏目,同时删除了此栏目下的所有信息,删除到回收站",now,session("admin_name"),"NS")
				'---删除成功返回结果
				strShowErr = "<li><font color=""#ff0000"">删除成功</font></li><li>所选栏目(共<strong style=""color:#FF0000"">" & DelNum & "</strong>个)已放入回收站,可以从回收站中恢复</li><li>" & DelXmlStr & "</li>"
				Response.Redirect("lib/Success.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=../Class_Manage.asp")
				Response.end
			Else
				Error.Clear
				'---删除失败返回结果
				strShowErr = "<li><font color=""#ff0000"">发生错误,部分栏目删除失败</font></li>"
				Response.Redirect("lib/Error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
				Response.end
			End If
		End If	
	End If
End If

Function InStrTopIDTF(ClassID,InStrID)
	Dim GetTopIDRs,StrID,ArrIDNum,Arr_i,InstrNum
	Set GetTopIDRs = Conn.ExeCute("Select ParentID,ClassID From FS_NS_NewsClass Where ClassID = '" & ClassID & "' And ReycleTF = 0 Order By OrderID Desc,ID Desc")
	If Not GetTopIDRs.Eof Then
		Do While GetTopIDRs(0) <> "0"
			Set GetTopIDRs = Conn.ExeCute("Select ParentID,ClassID From FS_NS_NewsClass Where ClassID = '" & GetTopIDRs(0) & "' And ReycleTF = 0 Order By OrderID Desc,ID Desc")
			StrID = StrID & "," & GetTopIDRs(1)
		Loop
	End If
	GetTopIDRs.Close : Set GetTopIDRs = Nothing
	StrID = Replace(Replace(StrID," ,",","),", ",",")
	If Left(StrID,1) = "," Then
		StrID = Right(StrID,Len(StrID) - 1)
	End If
	If Instr(StrID,",") > 0 Then
		ArrIDNum = Split(StrID,",")
		For Arr_i = LBound(ArrIDNum) To UBound(ArrIDNum)
			InstrNum = Clng(InstrNum + Instr(InStrID,ArrIDNum(Arr_i)))
		Next
	Else
		InstrNum = Instr(InStrID,StrID)
	End If	
	If InstrNum > 0 Then
		InStrTopIDTF = True
	Else
		InStrTopIDTF = False
	End If
End Function
%> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>栏目管理___Powered by foosun Inc.</title>
<link href="../images/skin/Css_<%=Session("Admin_Style_Num")%>/<%=Session("Admin_Style_Num")%>.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  <tr class="hback"> 
    <td class="xingmu">栏目管理<a href="../../help?Lable=NS_Class_Action" target="_blank" style="cursor:help;'" class="sd"><img src="../Images/_help.gif" border="0"></a></td>
  </tr>
  <tr> 
    <td height="18" class="hback"><div align="left"><a href="Class_Manage.asp">管理首页</a>┆<a href="Class_add.asp?ClassID=&Action=add">添加根栏目</a>┆<a href="Class_Action.asp?Action=one">一级栏目排序</a>┆<a href="Class_Action.asp?Action=n">N级栏目排序</a>┆<a href="Class_Action.asp?Action=reset"   onClick="{if(confirm('确认复位所有栏目?\n\n如果选择确定,所有的栏目将设置为一级分类!!')){return true;}return false;}">复位所有栏目</a>┆<a href="Class_Action.asp?Action=unite">栏目合并</a>┆<a href="Class_Action.asp?Action=allmove">栏目转移</a>┆<a href="Class_Action.asp?Action=clearClass"  onClick="{if(confirm('确认清空所有栏目里的数据吗?\n\n如果选择确定,所有的栏目的新闻将被放到回收站中!!')){return true;}return false;}">删除所有栏目</a> 
        <a href="../../help?Lable=NS_Class_Action_1" target="_blank" style="cursor:help;'" class="sd"><img src="../Images/_help.gif" border="0"></a></div></td>
  </tr>
</table>
<%
Dim str_Action,obj_news_rs,obj_news_rs_1,isUrlStr
str_Action = Request("Action")
Select Case str_Action
		Case "one"
			Call OrderOne()
		Case "n"
			Call OrderN()
		Case "Order_one"
			Call UpdateOrderID()
		Case "Order_n"
			Call UpdateOrderIDN()
		Case "del"
			Call delclass()
		Case "reset"
			Call resetClass()
		Case "unite"
			Call Classunite()
		Case "Saveunite"
			Call Saveunite()
		Case "allmove"
			Call allmove()
		Case "clearClass"
			Call clearClass()
		Case "clear"
			Call one_clear()
		Case "SaveAllmove"
			Call allmove_save()
End Select
Sub OrderOne()
%>
<table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  <tr class="hback"> 
    <td height="22" class="xingmu">栏目名称</td>
    <td height="22" class="xingmu"><div align="center">ID</div></td>
    <td class="xingmu"><div align="center">操作</div></td>
  </tr>
  <%
	Set obj_news_rs = server.CreateObject(G_FS_RS)
	obj_news_rs.Open "Select Orderid,id,ClassID,ParentID,ClassName from FS_NS_NewsClass where Parentid  = '0' Order by Orderid desc,ID desc",Conn,1,3
	Do while Not obj_news_rs.eof 
	%>
  <form name="ClassForm" method="post" action="Class_Action.asp">
    <tr class="hback"> 
      <td width="39%" height="31" class="hback"><img src="images/%2B.gif" width="15" height="15"> 
        <% = obj_news_rs("ClassName") %> </td>
      <td width="21%" class="hback"><div align="center"> 
          <% = obj_news_rs("ID") %>
        </div></td>
      <td width="40%" class="hback"><div align="center"> 
          <input name="OrderID" type="text" id="OrderID" value="<% = obj_news_rs("OrderID") %>" size="4" maxlength="3">
          <input name="ClassID" type="hidden" id="ClassID" value="<% = obj_news_rs("ClassID") %>">
          <input name="Action" type="hidden" id="ClassID" value="Order_one">
          <input type="submit" name="Submit" value="更新权重(排列序号)">
        </div></td>
    </tr>
  </form>
  <%
		obj_news_rs.MoveNext
	loop
%>
</table>
<table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  <tr>
    <td class="hback">说明:权重(排列序号)数字越大排得越靠前.如果权重(排列序号)数字相同,就根据ID来排列</td>
  </tr>
</table>
<%
obj_news_rs.close
set obj_news_rs =nothing
End Sub
Sub OrderN()
%>
<table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  <tr class="hback"> 
    <td height="22" class="xingmu">栏目名称</td>
    <td height="22" class="xingmu"><div align="center">ID</div></td>
    <td class="xingmu"><div align="center">操作</div></td>
  </tr>
  <%
	Set obj_news_rs = server.CreateObject(G_FS_RS)
	obj_news_rs.Open "Select Orderid,id,ClassID,ParentID,ClassName from FS_NS_NewsClass where Parentid  = '0' Order by Orderid desc,ID desc",Conn,1,3
	Do while Not obj_news_rs.eof 
	%>
    <tr class="hback"> 
      
    <td width="39%" height="28" class="hback"><img src="images/%2B.gif" width="15" height="15"> 
      <% = obj_news_rs("ClassName") %> </td>
      <td width="21%" class="hback"><div align="center"> 
          <% = obj_news_rs("ID") %>
        </div></td>
      <td width="40%" class="hback"><div align="center"> </div></td>
    </tr>
  <%
  		Response.Write(Fs_news.GetChildNewsList_order(obj_news_rs("ClassID"),""))
		obj_news_rs.MoveNext
loop
%>
</table>
<table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  <tr>
    <td class="hback">说明:权重(排列序号)数字越大排得越靠前.如果权重(排列序号)数字相同,就根据ID来排列</td>
  </tr>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -