Class_makerss.asp
上传用户:jisenq
上传日期:2014-06-29
资源大小:7216k
文件大小:12k
源码类别:

数据库编程

开发平台:

ASP/ASPX

  1. <% Option Explicit %>
  2. <!--#include file="../../FS_Inc/Const.asp" -->
  3. <!--#include file="../../FS_Inc/Function.asp"-->
  4. <!--#include file="../../FS_InterFace/MF_Function.asp" -->
  5. <!--#include file="../../FS_InterFace/NS_Function.asp" -->
  6. <!--#include file="lib/cls_main.asp" -->
  7. <%'CopyRight (c) 2006 Fooun Inc. Code by Simpwind.Xie
  8. Dim Conn,User_Conn,strShowErr,Fs_news,obj_mf_sys_obj,MF_Domain,MF_Site_Name,tmp_c_path
  9. MF_Default_Conn
  10. MF_User_Conn
  11. 'session判断
  12. MF_Session_TF 
  13. '权限判断
  14. set Fs_news = new Cls_News
  15. Fs_News.GetSysParam()
  16. set obj_mf_sys_obj = Conn.execute("select top 1 MF_Domain,MF_Site_Name from FS_MF_Config")
  17. if obj_mf_sys_obj.eof then
  18. strShowErr = "<li>找不到主系统配置信息!</li>"
  19. Response.Redirect("lib/error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
  20. Response.end
  21. else
  22. MF_Domain = obj_mf_sys_obj("MF_Domain")
  23. MF_Site_Name = obj_mf_sys_obj("MF_Site_Name")
  24. end if
  25. obj_mf_sys_obj.close:set obj_mf_sys_obj = nothing
  26. tmp_c_path =MF_Domain &"/"&G_VIRTUAL_ROOT_DIR
  27. 'If Not Fs_news.IsSelfRefer Then response.write "非法提交数据":Response.end
  28. dim Classid,signxml
  29. Classid = NoSqlHack(Request.QueryString("cid"))
  30. signxml = NoSqlHack(Request.QueryString("signxml"))
  31. %> 
  32. <html>
  33. <head>
  34. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  35. <title>栏目管理___Powered by foosun Inc.</title>
  36. <link href="../images/skin/Css_<%=Session("Admin_Style_Num")%>/<%=Session("Admin_Style_Num")%>.css" rel="stylesheet" type="text/css">
  37. <style>
  38. .RefreshLen{
  39. height: 20px;
  40. width: 400px;
  41. border: 1px solid #104a7b;
  42. text-align: left;
  43. MARGIN-top:50px;
  44. margin-bottom: 5px;
  45. }
  46. </style>
  47. </head>
  48. <body>
  49. <table width="98%" border="0" align="center" cellpadding="5" cellspacing="1" class="table">
  50.   <tr class="hback"> 
  51.     <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>
  52.   </tr>
  53.   <tr> 
  54.     <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('确认复位所有栏目?nn如果选择确定,所有的栏目将设置为一级分类!!')){return true;}return false;}">复位所有栏目</a>┆<a href="Class_Action.asp?Action=unite">栏目合并</a>┆<a href="Class_Action.asp?Action=allmove">栏目转移</a> 
  55.         ┆ <a href="Class_Action.asp?Action=clearClass"  onClick="{if(confirm('确认清空所有栏目里的数据吗?nn如果选择确定,所有的栏目的下载将被放到回收站中!!')){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>
  56.   </tr>
  57. </table>
  58. <%
  59. '待修正加入RSS参数
  60. Server.ScriptTimeOut=999999999
  61. Dim ArrClassid,tmp_k,i,savepath,obj_classxml_rs,obj_news_rs,p1,xml_c_list,obj_class_rs,i_k,class_tmp
  62. dim obj_all_rs,xml_c_all_list
  63. savepath = Replace(""&G_VIRTUAL_ROOT_DIR&"xml","\","")
  64. if signxml="one" then
  65. set obj_news_rs = Server.CreateObject(G_FS_RS)
  66. obj_news_rs.open "select  top "& Fs_news.rssNumber&" id,newsid,newstitle,content,addtime,author From FS_NS_News where classid='"&classid&"' and isdraft=0 and isRecyle=0 and isLock=0 order by PopId desc,id desc",conn,1,3
  67. set class_tmp = conn.execute("select ClassName,ClassEName,SavePath,IsURL,[Domain],FileExtName from FS_DS_Class where Classid='"& Classid &"'")
  68. if class_tmp("IsURL")=1 then
  69. strShowErr = "<li>外部拦目不能生成!</li>"
  70. Response.Redirect("lib/Success.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
  71. Response.end
  72. end if
  73. call headxml(xml_c_list,class_tmp("ClassName"),class_tmp("ClassEName"),class_tmp("SavePath"),class_tmp("Domain"),class_tmp("FileExtName"))
  74. class_tmp.close:set class_tmp =nothing
  75. if not obj_news_rs.eof then
  76. do while not obj_news_rs.eof
  77. xml_c_list =  xml_c_list & "<item>"& chr(13) & chr(10)
  78. xml_c_list =  xml_c_list & " <title>"& obj_news_rs("NewsTitle")&"</title>"& chr(13) & chr(10)
  79. xml_c_list =  xml_c_list & " <link>"& obj_news_rs("NewsID")&"</link>"& chr(13) & chr(10)
  80. if trim(obj_news_rs("Content"))<>empty  or not isnull(trim(obj_news_rs("Content"))) then
  81. xml_c_list =  xml_c_list & " <description><![CDATA["& GotTopic(obj_news_rs("Content"),Fs_news.rssContentNumber)&"]]></description>"& chr(13) & chr(10)
  82. else
  83. xml_c_list =  xml_c_list & " <description><![CDATA[无内容]]></description>"& chr(13) & chr(10)
  84. end if
  85. xml_c_list =  xml_c_list & " <pubDate>"& obj_news_rs("addtime")&"</pubDate>"& chr(13) & chr(10)
  86. xml_c_list =  xml_c_list & " <author>"& obj_news_rs("Author")&"</author>"& chr(13) & chr(10)
  87. xml_c_list =  xml_c_list & "</item>"& chr(13) & chr(10)
  88. obj_news_rs.movenext
  89. loop
  90. xml_c_list =  xml_c_list & "</channel>"& chr(13) & chr(10)
  91. xml_c_list =  xml_c_list & "</rss>"& chr(13) & chr(10)
  92. call SaveFile(xml_c_list,Classid,"xml",savepath,"DS")
  93. strShowErr = "<li>Xml生成成功!</li>"
  94. else
  95. strShowErr = "<li>Xml失败,没有符合条件的下载!</li>"
  96. end if
  97. obj_news_rs.close:set obj_news_rs=nothing
  98. call newslist()
  99. Response.Redirect("lib/Success.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
  100. Response.end
  101. else
  102. if instr(Classid,",")=0 then 
  103. strShowErr = "<li>批量生成xml至少选择2项</li>"
  104. Response.Redirect("lib/error.asp?ErrCodes="&Server.URLEncode(strShowErr)&"&ErrorUrl=")
  105. Response.end
  106. else
  107. call Allxml()
  108. call newslist()
  109. end if
  110. end if
  111. sub Allxml()
  112. ArrClassid =split(Classid,",")
  113. p1=UBound(ArrClassid)
  114. response.Write("<div style=""text-align: center;"">")
  115. response.Write("<div class=""RefreshLen""><div class=""xingmu"" id=""RefreshLen""></div></div><span id=""result_str""></span><br><br>")
  116. i=0
  117. i_k=0
  118. for  tmp_k = 0 to UBound(ArrClassid)
  119. set obj_class_rs = conn.execute("select classename,classname from FS_DS_Class where classid='"& ArrClassid(tmp_k) &"'")
  120. if obj_class_rs.eof then
  121. i=i+1
  122. else
  123. set obj_news_rs = Server.CreateObject(G_FS_RS)
  124. obj_news_rs.open "select  top "& Fs_news.rssNumber&" id,newsid,newstitle,content,addtime,author From FS_NS_News where classid='"&ArrClassid(tmp_k) &"' and isdraft=0 and isRecyle=0 and isLock=0 order by PopId desc,id desc",conn,1,3
  125. set class_tmp = conn.execute("select ClassName,ClassEName,SavePath,[Domain],FileExtName from FS_DS_Class where Classid='"& ArrClassid(tmp_k) &"'")
  126. call headxml(xml_c_list,class_tmp("ClassName"),class_tmp("ClassEName"),class_tmp("SavePath"),class_tmp("Domain"),class_tmp("FileExtName"))
  127. class_tmp.close:set class_tmp =nothing
  128. if i = p1 then
  129. Response.Write "<script>RefreshLen.style.width ="""&int(i/p1*100)&"%"";RefreshLen.innerHTML=""&nbsp;<font color=black>"&int(i/p1*100)&"%</font>"";result_str.innerHTML=""当前栏目:"&obj_class_rs("classname")&"<br><span class=tx>生成完毕....ok!!共:"& i+1 &"个,生成了"& i_k &"个&nbsp;&nbsp;&nbsp;未生成原因:栏目下找不到符合条件的RSS聚合下载</span>"";</script>" & VbCrLf
  130. else
  131. Response.Write "<script>RefreshLen.style.width ="""&int(i/p1*100)&"%"";RefreshLen.innerHTML=""&nbsp;<font color=black>"&int(i/p1*100)&"%</font>"";result_str.innerHTML=""当前栏目:"&obj_class_rs("classname")&""";</script>" & VbCrLf
  132. end if
  133. Response.Flush
  134. if not obj_news_rs.eof then
  135. do while not obj_news_rs.eof
  136. xml_c_list =  xml_c_list & "<item>"& chr(13) & chr(10)
  137. xml_c_list =  xml_c_list & " <title>"& obj_news_rs("NewsTitle")&"</title>"& chr(13) & chr(10)
  138. xml_c_list =  xml_c_list & " <link>"& obj_news_rs("NewsID")&"</link>"& chr(13) & chr(10)
  139. if trim(obj_news_rs("Content"))<>empty  or not isnull(trim(obj_news_rs("Content"))) then
  140. xml_c_list =  xml_c_list & " <description><![CDATA["& GotTopic(obj_news_rs("Content"),Fs_news.rssContentNumber)&"]]></description>"& chr(13) & chr(10)
  141. else
  142. xml_c_list =  xml_c_list & " <description><![CDATA[无内容]]></description>"& chr(13) & chr(10)
  143. end if
  144. xml_c_list =  xml_c_list & " <pubDate>"& obj_news_rs("addtime")&"</pubDate>"& chr(13) & chr(10)
  145. xml_c_list =  xml_c_list & " <author>"& obj_news_rs("Author")&"</author>"& chr(13) & chr(10)
  146. xml_c_list =  xml_c_list & "</item>"& chr(13) & chr(10)
  147. obj_news_rs.movenext
  148. loop
  149. xml_c_list =  xml_c_list & "</channel>"& chr(13) & chr(10)
  150. xml_c_list =  xml_c_list & "</rss>"& chr(13) & chr(10)
  151. call SaveFile(xml_c_list,ArrClassid(tmp_k),"xml",savepath,"DS")
  152. set obj_news_rs=nothing
  153. i_k = i_k + 1
  154. end  if
  155. i=i+1
  156. end if
  157. next
  158. response.Write("</div>")
  159. End sub
  160. sub newslist()
  161. set obj_all_rs = Server.CreateObject(G_FS_RS)
  162. obj_all_rs.open "select  top "& Fs_news.rssNumber&" id,newsid,newstitle,content,addtime,author From FS_NS_News where isdraft=0 and isRecyle=0 and isLock=0 order by PopId desc,id desc",conn,1,3
  163. if not obj_all_rs.eof then
  164. set class_tmp = conn.execute("select ClassName,ClassEName,SavePath,[Domain],FileExtName from FS_DS_Class where Classid='"& Classid &"'")
  165. xml_c_all_list = "<?xml version=""1.0"" encoding=""gb2312""?>" & chr(13) & chr(10)
  166. xml_c_all_list =  xml_c_all_list & "<rss version=""2.0"">"& chr(13) & chr(10)
  167. xml_c_all_list =  xml_c_all_list & "<channel>"& chr(13) & chr(10)
  168. xml_c_all_list =  xml_c_all_list & "<title>"& Fs_news.siteName &"</title>"& chr(13) & chr(10)
  169. xml_c_all_list =  xml_c_all_list & "<image>"& chr(13) & chr(10)
  170. xml_c_all_list =  xml_c_all_list & " <title>"& Fs_news.siteName &"</title>"& chr(13) & chr(10)
  171. xml_c_all_list =  xml_c_all_list & " <link>http://" & Replace(tmp_c_path &Fs_news.RSSPIC,"//","/") &"</link>"& chr(13) & chr(10)
  172. xml_c_all_list =  xml_c_all_list & " <url>http://" & Replace(tmp_c_path &Fs_news.RSSPIC,"//","/") &"</url>"& chr(13) & chr(10)
  173. xml_c_all_list =  xml_c_all_list & "</image>"& chr(13) & chr(10)
  174. xml_c_all_list =  xml_c_all_list & "<description>"& Fs_news.rssdescript&"</description>"& chr(13) & chr(10)
  175. class_tmp.close:set class_tmp =nothing
  176. do while not obj_all_rs.eof
  177. xml_c_all_list =  xml_c_all_list & "<item>"& chr(13) & chr(10)
  178. xml_c_all_list =  xml_c_all_list & " <title>"& obj_all_rs("NewsTitle")&"</title>"& chr(13) & chr(10)
  179. xml_c_all_list =  xml_c_all_list & " <link>"& obj_all_rs("NewsID")&"</link>"& chr(13) & chr(10)
  180. if trim(obj_all_rs("Content"))<>empty  or not isnull(trim(obj_all_rs("Content"))) then
  181. xml_c_all_list =  xml_c_all_list & " <description><![CDATA["& GotTopic(obj_all_rs("Content"),Fs_news.rssContentNumber)&"]]></description>"& chr(13) & chr(10)
  182. else
  183. xml_c_all_list =  xml_c_all_list & " <description><![CDATA[无内容]]></description>"& chr(13) & chr(10)
  184. end if
  185. xml_c_all_list =  xml_c_all_list & " <pubDate>"& obj_all_rs("addtime")&"</pubDate>"& chr(13) & chr(10)
  186. xml_c_all_list =  xml_c_all_list & " <author>"& obj_all_rs("Author")&"</author>"& chr(13) & chr(10)
  187. xml_c_all_list =  xml_c_all_list & "</item>"& chr(13) & chr(10)
  188. obj_all_rs.movenext
  189. loop
  190. xml_c_all_list =  xml_c_all_list & "</channel>"& chr(13) & chr(10)
  191. xml_c_all_list =  xml_c_all_list & "</rss>"& chr(13) & chr(10)
  192. DIM savepath1
  193. call SaveFile(xml_c_all_list,"now","xml",savepath,"DS")
  194. end if
  195. obj_all_rs.close:set obj_all_rs= nothing
  196. end sub
  197. function headxml(f_char,f_className,f_classeName,f_SavePath,f_Domain,f_FileExtName)
  198. f_char = "<?xml version=""1.0"" encoding=""gb2312""?>" & chr(13) & chr(10)
  199. f_char =  f_char & "<rss version=""2.0"">"& chr(13) & chr(10)
  200. f_char =  f_char & "<channel>"& chr(13) & chr(10)
  201. f_char =  f_char & "<title>"& Fs_news.siteName &"</title>"& chr(13) & chr(10)
  202. f_char =  f_char & "<image>"& chr(13) & chr(10)
  203. f_char =  f_char & " <title>"& Fs_news.siteName &"</title>"& chr(13) & chr(10)
  204. f_char =  f_char & " <link>"& f_classeName &"</link>"& chr(13) & chr(10)
  205. f_char =  f_char & " <url>http://"&Replace(tmp_c_path &Fs_news.RSSPIC,"//","/")&"</url>"& chr(13) & chr(10)
  206. f_char =  f_char & "</image>"& chr(13) & chr(10)
  207. f_char =  f_char & "<description>"& Fs_news.rssdescript&"</description>"& chr(13) & chr(10)
  208. headxml = f_char
  209. end function
  210. %>
  211. </body>
  212. </html>
  213. <%
  214. set Fs_news = nothing
  215. %>