<%@language=vbscript codepage=936 %> <% option explicit response.buffer=true Const PurviewLevel=2 Const CheckChannelID=2 Const PurviewLevel_Article=1 %> <% dim Action,FoundErr,ErrMsg dim rs,sql dim SkinCount,LayoutCount Action=trim(request("Action")) %> 专题管理
专 题 管 理
管理导航: 专题管理首页 | 添加新专题 | 专题排序 | 合并专题
<% if Action="Add" then call AddSpecial() elseif Action="SaveAdd" then call SaveAdd() elseif Action="Modify" then call Modify() elseif Action="SaveModify" then call SaveModify() elseif Action="Del" then call DelSpecial() elseif Action="Clear" then call ClearSpecial() elseif Action="UpOrder" then call UpOrder() elseif Action="DownOrder" then call DownOrder() elseif Action="Unite" then call ShowUniteForm() elseif Action="UniteSpecial" then call UniteSpecial() elseif Action="Order" then call ShowOrder() else call main() end if if FoundErr=True then call WriteErrMsg() end if call CloseConn() sub main() Set rs=Server.CreateObject("Adodb.RecordSet") sql="select * from Special" rs.Open sql,conn,1,1 %>
<%do while not rs.EOF %> <% rs.MoveNext loop %>
专题名称 专题说明 专题浏览权限 添加文章权限 常规操作
" title="点击进入管理此专题的文章"><%=rs("SpecialName")%> <%=dvhtmlencode(rs("ReadMe"))%> <% select case rs("BrowsePurview") case 9999 response.write "游客" case 999 response.write "注册用户" case 99 response.write "收费用户" case 9 response.write "VIP用户" case 5 response.write "管理员" end select%> <% select case rs("AddPurview") case 999 response.write "注册用户" case 99 response.write "收费用户" case 9 response.write "VIP用户" case 5 response.write "管理员" end select%> <% response.write "修改  " response.write "删除  " response.write "清空" %>
<% rs.Close set rs=Nothing end sub sub ShowOrder() dim iCount,i,j Set rs=Server.CreateObject("Adodb.RecordSet") sql="select * from Special" rs.Open sql,conn,1,1 iCount=rs.recordcount j=1 %>
<%do while not rs.EOF %> <% j=j+1 rs.MoveNext loop %>
专 题 排 序
" title="点击进入管理此专题的文章"><%=rs("SpecialName")%>
<% if j>1 then response.write "" response.write "" response.write " " else response.write " " end if %>
<% if iCount>j then response.write "" response.write "" response.write " " else response.write " " end if %>  
<% rs.Close set rs=Nothing end sub sub AddSpecial() %>
添 加 新 专 题
专题名称:  
专题说明
鼠标移至专题名称上时将显示设定的说明文字(不支持HTML)
默认配色模板:
相关模板中包含CSS、颜色、图片等信息
版面设计模板:
相关模板中包含了版面设计的版式等信息,如果是自行添加的设计模板,可能会导致“栏目配色模板”失效。
<%call Admin_ShowLayout_Option(4,0)%>
专题浏览权限:
只有具有相应权限的人才能浏览此专题中的文章。
专题发表文章权限:
只有具有相应权限的人才能在此专题中发表文章。
 
<% end sub sub Modify() dim SpecialID SpecialID=trim(request("SpecialID")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定要修改的专题ID!
  • " exit sub else SpecialID=Clng(SpecialID) end if sql="Select * From Special Where SpecialID=" & SpecialID Set rs=Server.CreateObject("Adodb.RecordSet") rs.open sql,conn,1,3 if rs.bof and rs.EOF then FoundErr=True ErrMsg=ErrMsg & "
  • 找不到指定的专题,可能已经被删除!
  • " else %>
    修 改 专 题
    专题名称: " size="49" maxlength="30"> ">
    专题说明
    鼠标移至专题名称上时将显示设定的说明文字(不支持HTML)
    默认配色模板:
    相关模板中包含CSS、颜色、图片等信息
    版面设计模板:
    相关模板中包含了版面设计的版式等信息,如果是自行添加的设计模板,可能会导致“栏目配色模板”失效。
    <%call Admin_ShowLayout_Option(4,rs("SkinID"))%>
    专题浏览权限:
    只有具有相应权限的人才能浏览此专题中的文章。
    专题发表文章权限:
    只有具有相应权限的人才能在此专题中发表文章。
     
    <% end if rs.close set rs=nothing end sub sub ShowUniteForm() %>
    合 并 专 题
      将专题 合并到

               
    注意事项:
        所有操作不可逆,请慎重操作!!!
        不能在同一个专题内进行操作。
        合并后您所指定的专题将被删除,所有文章将转移到目标专题中。
    <% end sub %> <% sub SaveAdd() dim SpecialName,ReadMe,SkinID,LayoutID,BrowsePurview,AddPurview,rs,mrs,MaxOrderID SpecialName=trim(request.Form("SpecialName")) ReadMe=trim(request("ReadMe")) SkinID=Trim(request("SkinID")) LayoutID=trim(request("LayoutID")) BrowsePurview=trim(request("BrowsePurview")) AddPurview=trim(request("AddPurview")) if SpecialName="" then FoundErr=True ErrMsg=ErrMsg & "
  • 专题名称不能为空!
  • " end if if SkinID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定栏目配色模板
  • " else SkinID=CLng(SkinID) end if if LayoutID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定版面设计模板
  • " else LayoutID=CLng(LayoutID) end if if FoundErr=True then exit sub end if set mrs=conn.execute("select max(OrderID) from Special") MaxOrderID=mrs(0) if isnull(MaxOrderID) then MaxOrderID=0 Set rs=Server.CreateObject("Adodb.RecordSet") rs.open "Select * From Special Where SpecialName='" & SpecialName & "'",conn,1,3 if not (rs.bof and rs.EOF) then FoundErr=True ErrMsg=ErrMsg & "
  • 专题名称已经存在!
  • " rs.close set rs=Nothing exit sub end if rs.addnew rs("OrderID")=MaxOrderID+1 rs("SpecialName")=SpecialName rs("ReadMe")=ReadMe rs("SkinID")=SkinID rs("LayoutID")=LayoutID rs("BrowsePurview")=BrowsePurview rs("AddPurview")=AddPurview rs.update rs.Close set rs=Nothing Response.Redirect "Admin_Special.asp" end sub sub SaveModify() dim SpecialID,SpecialName,ReadMe,SkinID,LayoutID,BrowsePurview,AddPurview SpecialID=trim(request("SpecialID")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定要修改的专题ID!
  • " exit sub else SpecialID=Clng(SpecialID) end if SpecialName=trim(request.Form("SpecialName")) Readme=trim(request("Readme")) SkinID=Trim(request("SkinID")) LayoutID=trim(request("LayoutID")) BrowsePurview=trim(request("BrowsePurview")) AddPurview=trim(request("AddPurview")) if SpecialName="" then FoundErr=True ErrMsg=ErrMsg & "
  • 专题名称不能为空!
  • " end if if SkinID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定栏目配色模板
  • " else SkinID=CLng(SkinID) end if if LayoutID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定版面设计模板
  • " else LayoutID=CLng(LayoutID) end if if FoundErr=True then exit sub end if sql="Select * From Special Where SpecialID=" & SpecialID Set rs=Server.CreateObject("Adodb.RecordSet") rs.open sql,conn,1,3 if rs.bof and rs.EOF then FoundErr=True ErrMsg=ErrMsg & "
  • 找不到指定的专题,可能已经被删除!
  • " rs.close set rs=nothing else rs("SpecialName")=SpecialName rs("ReadMe")=ReadMe rs("SkinID")=SkinID rs("LayoutID")=LayoutID rs("BrowsePurview")=BrowsePurview rs("AddPurview")=AddPurview rs.update rs.close set rs=nothing call CloseConn() Response.Redirect "Admin_Special.asp" end if end sub sub DelSpecial() dim SpecialID SpecialID=trim(request("SpecialID")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定要修改的专题ID!
  • " exit sub else SpecialID=Clng(SpecialID) end if conn.Execute("delete from Special where SpecialID=" & SpecialID) conn.execute("update Article set SpecialID=0 where SpecialID=" & SpecialID) call CloseConn() response.redirect "Admin_Special.asp" end sub sub ClearSpecial() dim SpecialID SpecialID=trim(request("SpecialID")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定要修改的专题ID!
  • " exit sub else SpecialID=Clng(SpecialID) end if conn.execute("update Article set SpecialID=0 where SpecialID=" & SpecialID) call CloseConn() response.redirect "Admin_Special.asp" end sub sub UpOrder() dim SpecialID,sqlOrder,rsOrder,MoveNum,cOrderID,tOrderID,i,rs SpecialID=trim(request("SpecialID")) cOrderID=Trim(request("cOrderID")) MoveNum=trim(request("MoveNum")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 参数不足!
  • " else SpecialID=CLng(SpecialID) end if if cOrderID="" then FoundErr=true ErrMsg=ErrMsg & "
  • 错误参数!
  • " else cOrderID=Cint(cOrderID) end if if MoveNum="" then FoundErr=true ErrMsg=ErrMsg & "
  • 错误参数!
  • " else MoveNum=Cint(MoveNum) if MoveNum=0 then FoundErr=True ErrMsg=ErrMsg & "
  • 请选择要提升的数字!
  • " end if end if if FoundErr=True then exit sub end if dim mrs,MaxOrderID set mrs=conn.execute("select max(OrderID) From Special") MaxOrderID=mrs(0)+1 '先将当前栏目移至最后,包括子栏目 conn.execute("update Special set OrderID=" & MaxOrderID & " where SpecialID=" & SpecialID) '然后将位于当前栏目以上的栏目的OrderID依次加一,范围为要提升的数字 sqlOrder="select * From Special where OrderID<" & cOrderID & " order by OrderID desc" set rsOrder=server.CreateObject("adodb.recordset") rsOrder.open sqlOrder,conn,1,3 if rsOrder.bof and rsOrder.eof then exit sub '如果当前栏目已经在最上面,则无需移动 end if i=1 do while not rsOrder.eof tOrderID=rsOrder("OrderID") '得到要提升位置的OrderID,包括子栏目 conn.execute("update Special set OrderID=OrderID+1 where OrderID=" & tOrderID) i=i+1 if i>MoveNum then exit do end if rsOrder.movenext loop rsOrder.close set rsOrder=nothing '然后再将当前栏目从最后移到相应位置,包括子栏目 conn.execute("update Special set OrderID=" & tOrderID & " where SpecialID=" & SpecialID) call CloseConn() response.redirect "Admin_Special.asp" end sub sub DownOrder() dim SpecialID,sqlOrder,rsOrder,MoveNum,cOrderID,tOrderID,i,rs,PrevID,NextID SpecialID=trim(request("SpecialID")) cOrderID=Trim(request("cOrderID")) MoveNum=trim(request("MoveNum")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 参数不足!
  • " else SpecialID=CLng(SpecialID) end if if cOrderID="" then FoundErr=true ErrMsg=ErrMsg & "
  • 错误参数!
  • " else cOrderID=Cint(cOrderID) end if if MoveNum="" then FoundErr=true ErrMsg=ErrMsg & "
  • 错误参数!
  • " else MoveNum=Cint(MoveNum) if MoveNum=0 then FoundErr=True ErrMsg=ErrMsg & "
  • 请选择要提升的数字!
  • " end if end if if FoundErr=True then exit sub end if dim mrs,MaxOrderID set mrs=conn.execute("select max(OrderID) From Special") MaxOrderID=mrs(0)+1 '先将当前栏目移至最后,包括子栏目 conn.execute("update Special set OrderID=" & MaxOrderID & " where SpecialID=" & SpecialID) '然后将位于当前栏目以下的栏目的OrderID依次减一,范围为要下降的数字 sqlOrder="select * From Special where OrderID>" & cOrderID & " order by OrderID" set rsOrder=server.CreateObject("adodb.recordset") rsOrder.open sqlOrder,conn,1,3 if rsOrder.bof and rsOrder.eof then exit sub '如果当前栏目已经在最下面,则无需移动 end if i=1 do while not rsOrder.eof tOrderID=rsOrder("OrderID") '得到要提升位置的OrderID,包括子栏目 conn.execute("update Special set OrderID=OrderID-1 where OrderID=" & tOrderID) i=i+1 if i>MoveNum then exit do end if rsOrder.movenext loop rsOrder.close set rsOrder=nothing '然后再将当前栏目从最后移到相应位置,包括子栏目 conn.execute("update Special set OrderID=" & tOrderID & " where SpecialID=" & SpecialID) call CloseConn() response.redirect "Admin_Special.asp" end sub sub ShowSpecial() dim rsSpecial set rsSpecial=conn.execute("select SpecialID,SpecialName from Special") if rsSpecial.bof and rsSpecial.eof then response.write "" else do while not rsSpecial.eof response.write "" rsSpecial.movenext loop end if set rsSpecial=nothing end sub sub UniteSpecial() dim SpecialID,TargetSpecialID,SuccessMsg SpecialID=trim(request("SpecialID")) TargetSpecialID=trim(request("TargetSpecialID")) if SpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定要合并的专题!
  • " else SpecialID=CLng(SpecialID) end if if TargetSpecialID="" then FoundErr=True ErrMsg=ErrMsg & "
  • 请指定目标专题!
  • " else TargetSpecialID=CLng(TargetSpecialID) end if if SpecialID=TargetSpecialID then FoundErr=True ErrMsg=ErrMsg & "
  • 请不要在相同专题内进行操作
  • " end if if FoundErr=True then exit sub end if if FoundErr=True then exit sub end if '更新文章所属专题 conn.execute("update Article set SpecialID="&TargetSpecialID&" where SpecialID="&SpecialID) '删除被合并专题及其下属专题 conn.execute("delete from Special where SpecialID="&SpecialID) SuccessMsg="专题合并成功!已经将被合并专题的所有数据转入目标专题中。" call WriteSuccessMsg(SuccessMsg) end sub %>