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

数据库编程

开发平台:

ASP/ASPX

  1. <%
  2. Function Refresh(f_Type,f_ID)
  3. Dim f_Array,f_Sql_Head,f_Sql
  4. f_Array = Split(f_Type,"_")
  5. if UBound(f_Array) = 1 then
  6. f_Sql_Head = Get_Search_Sql_Head(f_Array(0),f_Array(1))
  7. if InStr(1,f_Array(1),"special",1) = 0 then
  8. f_Sql = f_Sql_Head & " And A.ID=" & f_ID
  9. else
  10. f_Sql = f_Sql_Head & " And A.specialID=" & f_ID
  11. end if
  12. Refresh = Refresh_One_Record(f_Sql,false)
  13. else
  14. Refresh = False
  15. end if
  16. End Function
  17. Function Get_Search_Sql_Head(f_Sys_ID,f_Refresh_Type)
  18. Select Case f_Sys_ID
  19. Case "NS"
  20. If f_Refresh_Type = "news" then
  21. Get_Search_Sql_Head = "Select Top 1 0 as RefreshFileSaveType,'NS_news' as PageType,A.ID as OnlyID,A.isPop as RefreshisPop,A.NewsID as RefreshID,A.Templet as RefreshTemplet,A.SaveNewsPath as RefreshSavePath,A.FileName as RefreshFileName,A.FileExtName as RefreshFileExtName,B.SavePath as SaveClassPath,B.ClassEName,B.ClassName as ClassCName from FS_NS_News as A,FS_NS_NewsClass as B where A.ClassID=B.ClassID and A.isURL=0 and A.isdraft=0 and A.isRecyle=0 and A.isLock=0"
  22. ElseIf f_Refresh_Type = "class" then
  23. Get_Search_Sql_Head = "Select Top 1 A.FileSaveType as RefreshFileSaveType,'NS_class' as PageType,A.ID as OnlyID,0 as RefreshisPop,Templet as RefreshTemplet,ClassID as RefreshID,SavePath as SaveClassPath,'' as RefreshSavePath,ClassEName,'index' as RefreshFileName,FileExtName as RefreshFileExtName from FS_NS_NewsClass as A where 1=1"
  24. ElseIf f_Refresh_Type = "special" then
  25. Get_Search_Sql_Head = "Select Top 1 3 as RefreshFileSaveType,'NS_special' as PageType,A.specialID as OnlyID,0 as RefreshisPop,Templet as RefreshTemplet,specialID as RefreshID,Savepath as SaveClassPath,'' as RefreshSavePath,SpecialEName as ClassEName,'index' as RefreshFileName,ExtName as RefreshFileExtName from FS_NS_Special as A where 1=1"
  26. else
  27. Get_Search_Sql_Head = ""
  28. end if
  29. Case "MS"
  30. If f_Refresh_Type = "product" then
  31. Get_Search_Sql_Head = "Select Top 1 0 as RefreshFileSaveType,'MS_news' as PageType,A.ID as OnlyID,0 as RefreshisPop,A.ID as RefreshID,A.TempletFile as RefreshTemplet,A.SavePath as RefreshSavePath,A.FileName as RefreshFileName,A.FileExtName as RefreshFileExtName,B.SavePath as SaveClassPath,B.ClassEName,B.ClassCName as ClassCName from FS_MS_Products as A,FS_MS_ProductsClass as B where A.ClassID=B.ClassID "
  32. ElseIf f_Refresh_Type = "class" then
  33. Get_Search_Sql_Head = "Select Top 1 A.FileSaveType as RefreshFileSaveType,'MS_class' as PageType,A.ID as OnlyID,0 as RefreshisPop,ID as RefreshID,ProductsTemplet as RefreshTemplet,'' as RefreshSavePath,'index' as RefreshFileName,FileExtName as RefreshFileExtName,SavePath as SaveClassPath,ClassEName,ClassCName from FS_MS_ProductsClass as A where 1=1 "
  34. ElseIf f_Refresh_Type = "special" then
  35. Get_Search_Sql_Head = "Select Top 1 3 as RefreshFileSaveType,'MS_special' as PageType,A.specialID as OnlyID,0 as RefreshisPop,specialID as RefreshID,SpecialTemplet as RefreshTemplet,'' as RefreshSavePath,'index' as RefreshFileName,FileExtName as RefreshFileExtName,Savepath as SaveClassPath,SpecialEName as ClassEName,SpecialCName as ClassCName from FS_MS_Special as A where 1=1 "
  36. else
  37. Get_Search_Sql_Head = ""
  38. End if
  39. Case "DS"
  40. If f_Refresh_Type = "download" Then
  41. Get_Search_Sql_Head = "Select Top 1 0 as RefreshFileSaveType,'DS_news' as PageType,A.ID as OnlyID,0 as RefreshisPop,A.DownLoadID as RefreshID,A.NewsTemplet as RefreshTemplet,A.SavePath as RefreshSavePath,A.FileName as RefreshFileName,A.FileExtName as RefreshFileExtName,B.SavePath as SaveClassPath,B.ClassEName,B.ClassName as ClassCName from FS_DS_List as A,FS_DS_Class as B where A.ClassID=B.ClassID "
  42. ElseIf f_Refresh_Type = "class" Then
  43. Get_Search_Sql_Head = "Select Top 1 A.FileSaveType as RefreshFileSaveType,'DS_class' as PageType,A.ID as OnlyID,0 as RefreshisPop,ClassID as RefreshID,Templet as RefreshTemplet,'' as RefreshSavePath,'index' as RefreshFileName,FileExtName as RefreshFileExtName,SavePath as SaveClassPath,ClassEName,ClassName as ClassCName from FS_DS_Class as A where 1=1 "
  44. Else
  45. Get_Search_Sql_Head = ""
  46. End If
  47. Case Else
  48. Get_Search_Sql_Head = ""
  49. End Select
  50. End Function
  51. Function Refresh_One_Record(f_Refresh_Sql,IsCookies)
  52. Dim f_RS,f_SYS_ROOT_DIR,f_Templet,f_Phy_Templet,f_File_Content,f_HTML_Save_Phy_Path_Str,f_Check_Phy_Path_Str,f_HTML_Save_Path_Str
  53. Dim f_PAGES_DICT_OBJ,f_MORE_PAGES_DICT_ITEMS_OBJ,f_MORE_PAGES_DICT_KEYS_OBJ,f_FSO_OBJ,f_FILE_OBJ,f_FILE_STREAM_OBJ
  54. Dim f_HTML_File_Save_Path_Str,f_HTML_File_Save_Phy_Path_Str,f_i,f_More_Page_Link_Str,f_More_Page_Array,f_Temf_File_Content
  55. Dim f_PLACE_OBJ,f_Temp_More_Page_Link_Str,Str_Page_Style,Str_File_Name
  56. Dim patrn(1),strng
  57. patrn(0)="</head>"
  58. patrn(1)="<body"
  59. strng=Get_JS_CopyRight("NewsId")
  60. if G_VIRTUAL_ROOT_DIR = "" then
  61. f_SYS_ROOT_DIR = ""
  62. else
  63. f_SYS_ROOT_DIR = "/" & G_VIRTUAL_ROOT_DIR
  64. end if
  65. Set f_RS = Conn.Execute(f_Refresh_Sql)
  66. if Not f_RS.Eof then
  67. If IsCookies Then
  68. Response.Cookies("COOKIES_REFRESH_FirstID") = f_RS("OnlyID")
  69. End If
  70. f_Templet = f_SYS_ROOT_DIR & f_RS("RefreshTemplet")
  71. f_Phy_Templet = Server.MapPath(f_Templet)
  72. Set f_FSO_OBJ = Server.CreateObject(G_FS_FSO)
  73. if f_FSO_OBJ.FileExists(f_Phy_Templet) = False then
  74. f_File_Content = "模板不存在,请添加模板后再生成!"
  75. else
  76. Set f_FILE_OBJ = f_FSO_OBJ.GetFile(f_Phy_Templet)
  77. Set f_FILE_STREAM_OBJ = f_FILE_OBJ.OpenAsTextStream(1)
  78. if Not f_FILE_STREAM_OBJ.AtEndOfStream then
  79. f_File_Content = f_FILE_STREAM_OBJ.ReadAll
  80. if f_RS("RefreshisPop") = 1 then f_File_Content = "<span id=""NS_" & f_RS("RefreshID") & """></span>" & vbNewLine & f_File_Content
  81. else
  82. f_File_Content = "模板内容为空"
  83. end if
  84. end if
  85. Set f_FILE_STREAM_OBJ = Nothing
  86. Set f_FILE_OBJ = Nothing
  87. Set f_FSO_OBJ = Nothing
  88. Set f_PAGES_DICT_OBJ = Replace_All_Flag(f_File_Content,f_RS("RefreshID"),f_RS("PageType"))
  89. f_File_Content = f_PAGES_DICT_OBJ.Item("-3")
  90. if f_RS("RefreshFileSaveType") = 2 Or f_RS("RefreshFileSaveType") = 3 then
  91. f_HTML_Save_Path_Str = f_SYS_ROOT_DIR & f_RS("SaveClassPath")
  92. else
  93. f_HTML_Save_Path_Str = f_SYS_ROOT_DIR & f_RS("SaveClassPath") & "/" & f_RS("ClassEName") & f_RS("RefreshSavePath")
  94. end If
  95. f_HTML_Save_Phy_Path_Str = Server.MapPath(f_HTML_Save_Path_Str)
  96. f_Check_Phy_Path_Str = Server.MapPath(f_SYS_ROOT_DIR & f_RS("SaveClassPath"))
  97. CreatePath f_Check_Phy_Path_Str,Server.MapPath("/")
  98. CreatePath f_HTML_Save_Phy_Path_Str,f_Check_Phy_Path_Str
  99. f_MORE_PAGES_DICT_ITEMS_OBJ = f_PAGES_DICT_OBJ.Items
  100. f_MORE_PAGES_DICT_KEYS_OBJ = f_PAGES_DICT_OBJ.Keys
  101. Rem 建立正则对象
  102. Set f_PLACE_OBJ = New RegExp
  103. Rem ============
  104. If f_PAGES_DICT_OBJ.Count <= 3 Then
  105. If f_RS("RefreshFileSaveType") = 1 OR f_RS("RefreshFileSaveType") = 2 Then
  106. f_HTML_File_Save_Path_Str = f_HTML_Save_Path_Str & "/" & f_RS("ClassEName") & "." & f_RS("RefreshFileExtName")
  107. ElseIf f_RS("RefreshFileSaveType") = 3 Then
  108. f_HTML_File_Save_Path_Str = f_HTML_Save_Path_Str & "/Special_" & f_RS("ClassEName") & "." & f_RS("RefreshFileExtName")
  109. Else
  110. f_HTML_File_Save_Path_Str = f_HTML_Save_Path_Str & "/" & f_RS("RefreshFileName") & "." & f_RS("RefreshFileExtName")
  111. End If
  112. f_HTML_File_Save_Path_Str=replace(replace(f_HTML_File_Save_Path_Str,"//","/"),"\","")
  113. f_HTML_File_Save_Phy_Path_Str = Server.MapPath(f_HTML_File_Save_Path_Str)
  114. Rem 加入版权信息和关键JS文件(正则搜索)
  115. f_PLACE_OBJ.Pattern = patrn(0)
  116. f_PLACE_OBJ.IgnoreCase = True
  117. f_PLACE_OBJ.Global = False
  118. f_PLACE_OBJ.Multiline = True
  119. If f_PLACE_OBJ.Test(f_File_Content) Then
  120. f_File_Content=f_PLACE_OBJ.Replace(f_File_Content,patrn(0)&vbNewLine&strng)
  121. Else
  122. f_PLACE_OBJ.Pattern = patrn(1)
  123. If f_PLACE_OBJ.Test(f_File_Content) Then
  124. f_File_Content=f_PLACE_OBJ.Replace(f_File_Content,patrn(1)&vbNewLine&strng)
  125. Else
  126. f_File_Content=strng&vbNewLine&f_File_Content
  127. End If
  128. End If
  129. Rem ===================================
  130. AllSaveFile f_File_Content,f_HTML_File_Save_Path_Str
  131. Else
  132. For f_i = 3 To f_PAGES_DICT_OBJ.Count - 1
  133. f_More_Page_Link_Str = f_PAGES_DICT_OBJ.Item("-1")
  134. If f_RS("RefreshFileSaveType") = 1 OR f_RS("RefreshFileSaveType") = 2 Then
  135. Str_File_Name = "/" & f_RS("ClassEName")
  136. ElseIf f_RS("RefreshFileSaveType") = 3 Then
  137. Str_File_Name = "/Special_" & f_RS("ClassEName")
  138. Else
  139. Str_File_Name = "/" & f_RS("RefreshFileName")
  140. End If
  141. If f_More_Page_Link_Str = "newsmorepage" Then
  142. f_More_Page_Link_Str = Get_More_Page_Link_Str("","","",f_PAGES_DICT_OBJ.Count - 3,f_i - 2,Str_File_Name,f_RS("RefreshFileExtName"))
  143. Else
  144. f_PLACE_OBJ.Pattern = "{Foosun_Page_news}"
  145. f_PLACE_OBJ.IgnoreCase = True
  146. f_PLACE_OBJ.Global = True
  147. f_Temp_More_Page_Link_Str = f_PLACE_OBJ.Replace(f_More_Page_Link_Str,"")
  148. f_PLACE_OBJ.Pattern = "{/Foosun_Page_news}"
  149. f_Temp_More_Page_Link_Str = f_PLACE_OBJ.Replace(f_Temp_More_Page_Link_Str,"")
  150. f_More_Page_Array = Split(f_Temp_More_Page_Link_Str,",")
  151. Str_Page_Style=Split(f_More_Page_Array(1),"|")
  152. If UBound(f_More_Page_Array) < 1 Then
  153. f_More_Page_Link_Str = ""
  154. Else
  155. f_More_Page_Link_Str = Get_More_Page_Link_Str(Trim(f_More_Page_Array(0)),Trim(Str_Page_Style(0)),Trim(Str_Page_Style(1)),f_PAGES_DICT_OBJ.Count - 3,f_i - 2,Str_File_Name,f_RS("RefreshFileExtName"))
  156. End If
  157. End If
  158. f_Temf_File_Content = f_File_Content
  159. f_Temf_File_Content = Replace(f_Temf_File_Content,f_PAGES_DICT_OBJ.Item("-2"),f_MORE_PAGES_DICT_ITEMS_OBJ(f_i) & f_More_Page_Link_Str)
  160. If f_i > 3 Then
  161. Str_File_Name = Str_File_Name & "_" & (f_i - 2)
  162. End If
  163. f_HTML_File_Save_Path_Str = f_HTML_Save_Path_Str & Str_File_Name & "." & f_RS("RefreshFileExtName")
  164. f_HTML_File_Save_Phy_Path_Str = Server.MapPath(f_HTML_File_Save_Path_Str)
  165. Rem 加入版权信息和关键JS文件(正则搜索)
  166. f_PLACE_OBJ.Pattern = patrn(0)
  167. f_PLACE_OBJ.IgnoreCase = True
  168. f_PLACE_OBJ.Global = False
  169. f_PLACE_OBJ.Multiline = True
  170. If f_PLACE_OBJ.Test(f_Temf_File_Content) Then
  171. f_Temf_File_Content=f_PLACE_OBJ.Replace(f_Temf_File_Content,patrn(0)&vbNewLine&strng)
  172. Else
  173. f_PLACE_OBJ.Pattern = patrn(1)
  174. If f_PLACE_OBJ.Test(f_Temf_File_Content) Then
  175. f_Temf_File_Content=f_PLACE_OBJ.Replace(f_Temf_File_Content,patrn(1)&vbNewLine&strng)
  176. Else
  177. f_Temf_File_Content=strng&vbNewLine&f_Temf_File_Content
  178. End If
  179. End If
  180. Rem ===================================
  181. AllSaveFile f_Temf_File_Content,f_HTML_File_Save_Path_Str
  182. Next
  183. end If
  184. Set f_PLACE_OBJ = Nothing
  185. f_PAGES_DICT_OBJ.RemoveAll
  186. Set f_PAGES_DICT_OBJ = Nothing
  187. Refresh_One_Record = True
  188. else
  189. Refresh_One_Record = False
  190. end if
  191. f_RS.Close
  192. Set f_RS = Nothing
  193. End Function
  194. Function Replace_All_Flag(f_File_Cont,f_NewsID,PageType)
  195. Dim f_REG_EX,f_REG_MATCH,f_REG_MATCHS,f_REG_PLACE_OBJ,f_TEST_LABLE_CONT_MATCHS,f_TEST_LABLE_CONT_MATCH,f_MORE_PAGES_DICT_OBJ
  196. Dim f_REG_Head_Str,f_REG_Tailor_Str,f_Match_Str,f_Lable_Cont,f_RERESH_OBJ,f_Sys_ID,f_Lable_Para_Value,f_Raw_Data
  197. Dim f_LABLE_DICT_OBJ,f_Lable,f_DICT_ITEMS_OBJ,f_DICT_KEYS_OBJ,f_i,f_j,f_ARRAY_OBJ,f_More_Pages_Flag_TF,f_NEWS_CONT_REPLACE_FLAG_OBJ
  198. Dim f_DICT_MATCHS,f_Replace_Flag_TF,f_NEWS_CONT_REG_OBJ,f_NEWS_CONT_MATCHS,f_Lable_News_Cont,f_Lable_One_Page_News_Cont,Str_MFFlag
  199. f_More_Pages_Flag_TF = False
  200. f_REG_Head_Str = "{FS400_"
  201. f_REG_Tailor_Str = "}"
  202. Set f_MORE_PAGES_DICT_OBJ = Server.CreateObject(G_FS_DICT)
  203. Set f_LABLE_DICT_OBJ = Server.CreateObject(G_FS_DICT)
  204. Set f_REG_EX = New RegExp
  205. f_REG_EX.Pattern = f_REG_Head_Str & ".*?" & f_REG_Tailor_Str
  206. f_REG_EX.IgnoreCase = True
  207. f_REG_EX.Global = True
  208. Set f_REG_MATCHS = f_REG_EX.Execute(f_File_Cont)
  209. f_Raw_Data = f_File_Cont
  210. For Each f_REG_MATCH in f_REG_MATCHS
  211. f_Match_Str = f_REG_MATCH.Value
  212. f_Lable = f_Match_Str
  213. f_Match_Str = Replace(f_Match_Str,Chr(13) & Chr(10),"")
  214. Set f_REG_PLACE_OBJ = New RegExp
  215. f_REG_PLACE_OBJ.IgnoreCase = True
  216. f_REG_PLACE_OBJ.Global = True
  217. f_Match_Str=Get_Label_Content(f_Match_Str)
  218. f_REG_PLACE_OBJ.Pattern = "{FS:.*}"
  219. Set f_TEST_LABLE_CONT_MATCHS = f_REG_PLACE_OBJ.Execute(f_Match_Str)
  220. if (f_TEST_LABLE_CONT_MATCHS.Count>0) then
  221. for Each f_TEST_LABLE_CONT_MATCH in f_TEST_LABLE_CONT_MATCHS
  222. f_Lable_Para_Value = f_TEST_LABLE_CONT_MATCH.Value
  223. f_Sys_ID = Mid(f_Lable_Para_Value,5,2)
  224. f_Lable_Para_Value = Mid(f_Lable_Para_Value,8,Len(f_Lable_Para_Value) - 8)
  225. Str_MFFlag=False
  226. if Request.Cookies("FoosunSUBCookie")("FoosunSUB" & f_Sys_ID) = "1" then
  227. Select Case f_Sys_ID
  228. Case "NS"
  229. Set f_RERESH_OBJ = New cls_NS
  230. Case "MS"
  231. Set f_RERESH_OBJ = New cls_MS
  232. Case "DS"
  233. Set f_RERESH_OBJ = New cls_DS
  234. Case "ME"
  235. Set f_RERESH_OBJ = New cls_ME
  236. Case "MF"
  237. Set f_RERESH_OBJ = New cls_MF
  238. Str_MFFlag=True
  239. Case "SD"
  240. Set f_RERESH_OBJ = New cls_SD
  241. Case "HS"
  242. Set f_RERESH_OBJ = New cls_HS
  243. Case "AP"
  244. Set f_RERESH_OBJ = New cls_AP
  245. Case Else
  246. Set f_RERESH_OBJ = New cls_Other
  247. End Select
  248. If Str_MFFlag Then
  249. f_Lable_Cont = f_RERESH_OBJ.get_LableChar(f_Lable_Para_Value,f_NewsID,PageType)
  250. Else
  251. f_Lable_Cont = f_RERESH_OBJ.get_LableChar(f_Lable_Para_Value,f_NewsID)
  252. End If
  253. f_Match_Str = Replace(f_Match_Str,f_TEST_LABLE_CONT_MATCH.Value,"{|}"&f_Lable_Cont&"{|}")
  254. End If
  255. Set f_RERESH_OBJ = Nothing
  256. Next
  257. End If
  258. If Not f_LABLE_DICT_OBJ.Exists(f_Lable) Then
  259. f_LABLE_DICT_OBJ.Add f_Lable,f_Match_Str
  260. End If
  261. Set f_REG_PLACE_OBJ = Nothing
  262. Next
  263. f_MORE_PAGES_DICT_OBJ.Add "-3",""
  264. f_DICT_ITEMS_OBJ = f_LABLE_DICT_OBJ.Items
  265. f_DICT_KEYS_OBJ = f_LABLE_DICT_OBJ.Keys
  266. Dim Str_Other,PageNum_Flag
  267. For f_i = 0 To f_LABLE_DICT_OBJ.Count - 1
  268. if Not f_More_Pages_Flag_TF then
  269. f_Replace_Flag_TF = False
  270. Set f_REG_PLACE_OBJ = New RegExp
  271. f_REG_PLACE_OBJ.Pattern = "{foosun_page_news}.*{/foosun_page_news}"
  272. f_REG_PLACE_OBJ.IgnoreCase = True
  273. f_REG_PLACE_OBJ.Global = True
  274. Set f_DICT_MATCHS = f_REG_PLACE_OBJ.Execute(f_DICT_ITEMS_OBJ(f_i))
  275. if (f_DICT_MATCHS.Count>=1) And (f_More_Pages_Flag_TF=False) Then
  276. f_More_Pages_Flag_TF = True
  277. Str_Other=Split(f_DICT_ITEMS_OBJ(f_i),"{|}")
  278. f_ARRAY_OBJ = Split(Str_Other(1),f_DICT_MATCHS(0).Value)
  279. f_MORE_PAGES_DICT_OBJ.Add "-2",f_DICT_KEYS_OBJ(f_i)
  280. f_MORE_PAGES_DICT_OBJ.Add "-1",f_DICT_MATCHS(0).Value
  281. PageNum_Flag=False
  282. for f_j = LBound(f_ARRAY_OBJ) To UBound(f_ARRAY_OBJ)
  283. If Len(f_ARRAY_OBJ(f_j)) > 1 then
  284. If Not f_MORE_PAGES_DICT_OBJ.Exists(f_j) Then
  285. f_MORE_PAGES_DICT_OBJ.Add f_j,f_ARRAY_OBJ(f_j)
  286. PageNum_Flag=True
  287. End If 
  288. end if
  289. Next
  290. If PageNum_Flag Then
  291. f_Raw_Data = Replace(f_Raw_Data,f_DICT_KEYS_OBJ(f_i),Str_Other(0)&f_DICT_KEYS_OBJ(f_i)&Str_Other(2))
  292. End If 
  293. Set Str_Other=Nothing 
  294. f_Replace_Flag_TF = True
  295. Else
  296. f_DICT_ITEMS_OBJ(f_i)=Replace(f_DICT_ITEMS_OBJ(f_i),"{|}","")
  297. End If
  298. f_REG_PLACE_OBJ.Pattern = "[fs:page]"
  299. Set f_DICT_MATCHS = f_REG_PLACE_OBJ.Execute(f_DICT_ITEMS_OBJ(f_i))
  300. Set f_NEWS_CONT_REG_OBJ = New RegExp
  301. f_NEWS_CONT_REG_OBJ.IgnoreCase = True
  302. f_NEWS_CONT_REG_OBJ.Global = True
  303. f_NEWS_CONT_REG_OBJ.Pattern = "[FS:CONTENT_START][^]*[FS:CONTENT_END]"
  304. Set f_NEWS_CONT_MATCHS = f_NEWS_CONT_REG_OBJ.Execute(f_DICT_ITEMS_OBJ(f_i))
  305. if (f_DICT_MATCHS.Count>=1) And (f_More_Pages_Flag_TF=False) And (f_NEWS_CONT_MATCHS.Count=1) then
  306. f_More_Pages_Flag_TF = True
  307. f_MORE_PAGES_DICT_OBJ.Add "-2",f_DICT_KEYS_OBJ(f_i)
  308. f_MORE_PAGES_DICT_OBJ.Add "-1","newsmorepage"
  309. f_Lable_News_Cont = f_NEWS_CONT_MATCHS(0).Value
  310. Set f_NEWS_CONT_REPLACE_FLAG_OBJ = New RegExp
  311. f_NEWS_CONT_REPLACE_FLAG_OBJ.IgnoreCase = True
  312. f_NEWS_CONT_REPLACE_FLAG_OBJ.Global = True
  313. f_NEWS_CONT_REPLACE_FLAG_OBJ.Pattern = "[FS:CONTENT_START]"
  314. f_Lable_News_Cont = f_NEWS_CONT_REPLACE_FLAG_OBJ.Replace(f_Lable_News_Cont,"")
  315. f_NEWS_CONT_REPLACE_FLAG_OBJ.Pattern = "[FS:CONTENT_END]"
  316. f_Lable_News_Cont = f_NEWS_CONT_REPLACE_FLAG_OBJ.Replace(f_Lable_News_Cont,"")
  317. Set f_NEWS_CONT_REPLACE_FLAG_OBJ = Nothing
  318. f_ARRAY_OBJ = Split(f_Lable_News_Cont,f_DICT_MATCHS(0).Value)
  319. PageNum_Flag=False
  320. Str_Other=Split(f_DICT_ITEMS_OBJ(f_i),f_NEWS_CONT_MATCHS(0).Value)
  321. for f_j = LBound(f_ARRAY_OBJ) To UBound(f_ARRAY_OBJ)
  322. if Len(f_ARRAY_OBJ(f_j)) > 1 then
  323. 'f_Lable_One_Page_News_Cont = f_DICT_ITEMS_OBJ(f_i)
  324. 'f_Lable_One_Page_News_Cont = Replace(f_Lable_One_Page_News_Cont,f_NEWS_CONT_MATCHS(0).Value,f_ARRAY_OBJ(f_j))
  325. if Not f_MORE_PAGES_DICT_OBJ.Exists(f_j) Then
  326. 'f_MORE_PAGES_DICT_OBJ.Add f_j,f_Lable_One_Page_News_Cont
  327. f_MORE_PAGES_DICT_OBJ.Add f_j,f_ARRAY_OBJ(f_j)
  328. End If 
  329. PageNum_Flag=True
  330. end if
  331. Next
  332. If PageNum_Flag Then
  333. f_Raw_Data = Replace(f_Raw_Data,f_DICT_KEYS_OBJ(f_i),Str_Other(0)&f_DICT_KEYS_OBJ(f_i)&Str_Other(1))
  334. End If 
  335. Set Str_Other=Nothing 
  336. f_Replace_Flag_TF = True
  337. end if
  338. Set f_NEWS_CONT_REG_OBJ = Nothing
  339. Set f_REG_PLACE_OBJ = Nothing
  340. if Not f_Replace_Flag_TF Then
  341. f_DICT_ITEMS_OBJ(f_i)=Replace(f_DICT_ITEMS_OBJ(f_i),"{|}","")
  342. f_Raw_Data = Replace(f_Raw_Data,f_DICT_KEYS_OBJ(f_i),f_DICT_ITEMS_OBJ(f_i))
  343. End If
  344. Else
  345. f_DICT_ITEMS_OBJ(f_i)=Replace(f_DICT_ITEMS_OBJ(f_i),"{|}","")
  346. f_Raw_Data = Replace(f_Raw_Data,f_DICT_KEYS_OBJ(f_i),f_DICT_ITEMS_OBJ(f_i))
  347. End If
  348. Next
  349. f_MORE_PAGES_DICT_OBJ.Item("-3") = Replace(f_Raw_Data,"{|}","")
  350. f_LABLE_DICT_OBJ.RemoveAll
  351. Set f_LABLE_DICT_OBJ = Nothing
  352. ''Dic_Test(f_DICT_ITEMS_OBJ)
  353. Set Replace_All_Flag = f_MORE_PAGES_DICT_OBJ
  354. Set f_MORE_PAGES_DICT_OBJ = Nothing
  355. End Function
  356. Function Get_More_Page_Link_Str(f_More_Page_Link_Type,f_More_Page_Link_Color,f_More_Page_Css,f_Page_Count,f_More_Page_Index,f_File_Name,f_File_Ext_Name)
  357. Dim f_i,Str_Link,LinkUrl,Str_Style,Str_LinkUrl_Page
  358. Dim str_nonLinkColor,str_toF,str_toP10,str_toP1,str_toN1,str_toN10,str_toL,StartPage,EndPage,I
  359. If f_More_Page_Index>f_Page_Count Then
  360. f_More_Page_Index=f_Page_Count
  361. End If
  362. LinkUrl = "."&f_File_Name
  363. Str_Link=""
  364. If f_More_Page_Link_Type="" Then
  365. f_More_Page_Link_Type=0
  366. End If
  367. If f_More_Page_Link_Color<>"" Then
  368. Str_Style=Str_Style&" style=""color: #"&f_More_Page_Link_Color&";"""
  369. End If
  370. If f_More_Page_Css<>"" Then
  371. Str_Style=Str_Style&" class="""&f_More_Page_Css&""""
  372. End If
  373. If f_Page_Count>1 Then
  374. Select Case f_More_Page_Link_Type
  375. Case 1
  376. If f_More_Page_Index=1 Then
  377. Str_Link=Str_Link&"上一页"
  378. Str_Link=Str_Link&"&nbsp;<a href="""&LinkUrl&"_"&f_More_Page_Index+1&"."&f_File_Ext_Name&""""&Str_Style&">下一页</a>"
  379. ElseIf (f_More_Page_Index+1)>f_Page_Count Then
  380. If f_More_Page_Index-1<2 Then
  381. Str_Link=Str_Link&"<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&">上一页</a>"
  382. Else
  383. Str_Link=Str_Link&"<a href="""&LinkUrl&"_"&f_More_Page_Index-1&"."&f_File_Ext_Name&""""&Str_Style&">上一页</a>"
  384. End If
  385. Str_Link=Str_Link&"&nbsp;下一页"
  386. Else
  387. If f_More_Page_Index-1<2 Then
  388. Str_Link=Str_Link&"<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&">上一页</a>"
  389. Else
  390. Str_Link=Str_Link&"<a href="""&LinkUrl&"_"&f_More_Page_Index-1&"."&f_File_Ext_Name&""""&Str_Style&">上一页</a>"
  391. End If
  392. Str_Link=Str_Link&"&nbsp;<a href="""&LinkUrl&"_"&f_More_Page_Index+1&"."&f_File_Ext_Name&""""&Str_Style&">下一页</a>"
  393. End If
  394. Case 2
  395. Str_Link="共"&f_Page_Count&"页&nbsp;"
  396. For f_i=1 To f_Page_Count
  397. If f_i>1 Then
  398. Str_LinkUrl_Page=LinkUrl&"_"&f_i
  399. Else
  400. Str_LinkUrl_Page=LinkUrl
  401. End If
  402. If f_i= f_More_Page_Index Then
  403. Str_Link=Str_Link&"&nbsp;第"&f_i&"页"
  404. Else
  405. Str_Link=Str_Link&"&nbsp;<a href="""&Str_LinkUrl_Page&"."&f_File_Ext_Name&""""&Str_Style&">第"&f_i&"页</a>"
  406. End If
  407. Next
  408. Case 3
  409. Str_Link="共"&f_Page_Count&"页&nbsp;"
  410. For f_i=1 To f_Page_Count
  411. If f_i>1 Then
  412. Str_LinkUrl_Page=LinkUrl&"_"&f_i
  413. Else
  414. Str_LinkUrl_Page=LinkUrl
  415. End If
  416. If f_i= f_More_Page_Index Then
  417. Str_Link=Str_Link&"&nbsp;"&f_i&""
  418. Else
  419. Str_Link=Str_Link&"&nbsp;<a href="""&Str_LinkUrl_Page&"."&f_File_Ext_Name&""""&Str_Style&">"&f_i&"</a>"
  420. End If
  421. Next
  422. Case Else
  423. str_nonLinkColor="#999999" '非热链接颜色
  424. str_toF="<font face=""webdings"">9</font>"   '第一页
  425. str_toP10="<font face=""webdings"">7</font>" '上十
  426. str_toP1="<font face=""webdings"">3</font>" '上一
  427. str_toN1="<font face=""webdings"">4</font>" '下一
  428. str_toN10="<font face=""webdings"">8</font>" '下十
  429. str_toL="<font face=""webdings"">:</font>" '尾页
  430. Str_Link=""
  431. if f_More_Page_Index=1 then
  432. Str_Link=Str_Link& "<font color="&str_nonLinkColor&" title=""第一页"">"&str_toF&"</font> " &vbNewLine
  433. Else
  434. Str_Link=Str_Link& "<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&" title=""第一页"">"&str_toF&"</a> " &vbNewLine
  435. End If
  436. if f_More_Page_Index<11 then
  437. StartPage = 1
  438. else
  439. If f_More_Page_Index>(fix(f_More_Page_Index / 10) * 10) Then
  440. StartPage = (fix(f_More_Page_Index / 10) * 10)+1
  441. Else
  442. StartPage = ((fix(f_More_Page_Index / 10)-1) * 10)+1
  443. End If
  444. end if
  445. EndPage=StartPage+9
  446. If EndPage>f_Page_Count Then
  447. EndPage=f_Page_Count
  448. End If
  449. If StartPage>10 Then
  450. If (f_More_Page_Index - 10)<2 Then
  451. Str_Link=Str_Link& "<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&" title=""上十页"">"&str_toP10&"</a> "  &vbNewLine
  452. Else
  453. Str_Link=Str_Link& "<a href="""&LinkUrl&"_"&f_More_Page_Index - 10&"."&f_File_Ext_Name&""""&Str_Style&" title=""上十页"">"&str_toP10&"</a> "  &vbNewLine
  454. End If
  455. Else
  456. Str_Link=Str_Link& "<font color="&str_nonLinkColor&" title=""上十页"">"&str_toP10&"</font> "  &vbNewLine
  457. End If
  458. If f_More_Page_Index > 1 Then
  459. If f_More_Page_Index=2 Then
  460. Str_Link=Str_Link& "<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&" title=""上一页"">"&str_toP1&"</a> "  &vbNewLine
  461. Else
  462. Str_Link=Str_Link& "<a href="""&LinkUrl&"_"&f_More_Page_Index - 1&"."&f_File_Ext_Name&""""&Str_Style&" title=""上一页"">"&str_toP1&"</a> "  &vbNewLine
  463. End If
  464. Else
  465. Str_Link=Str_Link& "<font color="&str_nonLinkColor&" title=""上一页"">"&str_toP1&"</font> "  &vbNewLine
  466. End If
  467. For I=StartPage To EndPage
  468. If I=f_More_Page_Index Then
  469. Str_Link=Str_Link& "<b>"&I&"</b>"  &vbNewLine
  470. Else
  471. If I=1 Then
  472. Str_Link=Str_Link& "<a href="""&LinkUrl&"."&f_File_Ext_Name&""""&Str_Style&">" &I& "</a>"  &vbNewLine
  473. Else
  474. Str_Link=Str_Link& "<a href="""&LinkUrl&"_"&I&"."&f_File_Ext_Name&""""&Str_Style&">" &I& "</a>"  &vbNewLine
  475. End If
  476. End If
  477. Next
  478. If f_More_Page_Index < f_Page_Count Then
  479. Str_Link=Str_Link& " <a href="""&LinkUrl&"_"&f_More_Page_Index + 1&"."&f_File_Ext_Name&""""&Str_Style&" title=""下一页"">"&str_toN1&"</a> "  &vbNewLine
  480. Else
  481. Str_Link=Str_Link& "<font color="&str_nonLinkColor&" title=""下一页"">"&str_toN1&"</font> "  &vbNewLine
  482. End If
  483. If EndPage<f_Page_Count Then
  484. If (f_More_Page_Index+10)>f_Page_Count Then
  485. Str_Link=Str_Link& " <a href="""&LinkUrl&"_"&f_Page_Count&"."&f_File_Ext_Name&""""&Str_Style&"  title=""下十页"">"&str_toN10&"</a> "  &vbNewLine
  486. Else
  487. Str_Link=Str_Link& " <a href="""&LinkUrl&"_"&f_More_Page_Index+10&"."&f_File_Ext_Name&""""&Str_Style&"  title=""下十页"">"&str_toN10&"</a> "  &vbNewLine
  488. End If
  489. Else
  490. Str_Link=Str_Link& " <font color="&str_nonLinkColor&"  title=""下十页"">"&str_toN10&"</font> "  &vbNewLine
  491. End If
  492. if f_More_Page_Index<f_Page_Count Then
  493. Str_Link=Str_Link& "<a href="""&LinkUrl&"_"&f_Page_Count&"."&f_File_Ext_Name&""""&Str_Style&" title=""尾页"">"&str_toL&"</a>"  &vbNewLine
  494. Else
  495. Str_Link=Str_Link& "<font color="&str_nonLinkColor&" title=""尾页"">"&str_toL&"</font>"  &vbNewLine
  496. End If
  497. End Select
  498. End If
  499. Get_More_Page_Link_Str="<div>"&Str_Link&"</div>"
  500. End Function
  501. Function Dic_Test(Dic_Obj)
  502. Dim f_Items,f_Keys,f_i
  503. f_Items = Dic_Obj.Items
  504. f_Keys = Dic_Obj.Keys
  505. for f_i = 0 to Dic_Obj.Count - 1
  506. Response.Write(f_Keys(f_i) & "---" & f_Items(f_i) & "<br>")
  507. Next
  508. Response.End
  509. End Function
  510. Sub CreatePath(f_Save_Path_Str,f_Check_Str)
  511. Dim m_FSO_OBJ,f_Str,f_Create_Path,f_Standard_Str,f_Array,f_i,f_Check_Loc
  512. Set m_FSO_OBJ = Server.CreateObject(G_FS_FSO)
  513. If f_Save_Path_Str<>f_Check_Str Then
  514. f_Check_Loc = InStr(1,f_Save_Path_Str,f_Check_Str,1)
  515. If f_Check_Loc <> 0 Then
  516. f_Check_Loc = f_Check_Loc + Len(f_Check_Str)
  517. f_Standard_Str = Right(f_Save_Path_Str,Len(f_Save_Path_Str) - f_Check_Loc)
  518. f_Create_Path = f_Check_Str
  519. f_Array = Split(f_Standard_Str,"")
  520. for f_i = LBound(f_Array) to UBound(f_Array)
  521. if f_Array(f_i) <> "" then
  522. f_Create_Path = f_Create_Path & "" & f_Array(f_i)
  523. if Not m_FSO_OBJ.FolderExists(f_Create_Path) then
  524. m_FSO_OBJ.CreateFolder(f_Create_Path)
  525. end if
  526. end if
  527. Next
  528. End If
  529. End If
  530. Set m_FSO_OBJ = Nothing
  531. End Sub
  532. Sub AllSaveFile(f_File_Content,f_HTML_File_Save_Path_Str)
  533. Select Case Request.Cookies("FoosunMFCookies")("FoosunMFWriteType")
  534. Case "0"
  535. FSOSaveFile f_File_Content,f_HTML_File_Save_Path_Str
  536. Case "1"
  537. SaveFile f_File_Content,f_HTML_File_Save_Path_Str
  538. Case Else
  539. FSOSaveFile f_File_Content,f_HTML_File_Save_Path_Str
  540. End Select
  541. End Sub
  542. Sub SaveFile(f_Content,f_LocalFileName)
  543. Dim f_ADODB_STREAM_OBJ
  544. Set f_ADODB_STREAM_OBJ = Server.CreateObject(G_FS_STREAM)
  545. With f_ADODB_STREAM_OBJ
  546. .Type = 2
  547. .Open
  548. .Charset = "GB2312"
  549. .WriteText f_Content 'Replace(f_Content,WebDomain,"")
  550. .SaveToFile Server.MapPath(f_LocalFileName),2
  551. .Cancel()
  552. .Close()
  553. End With
  554. Set f_ADODB_STREAM_OBJ = Nothing
  555. End Sub
  556. Sub FSOSaveFile(f_Content,f_LocalFileName)
  557. Dim f_FILE_OBJ,f_FILE_PIONTER_OBJ
  558. Set f_FILE_OBJ = Server.CreateObject(G_FS_FSO)
  559. Set f_FILE_PIONTER_OBJ = f_FILE_OBJ.CreateTextFile(Server.MapPath(f_LocalFileName),True)
  560. f_FILE_PIONTER_OBJ.Write f_Content 'Replace(f_Content,Webdomain,"")
  561. f_FILE_PIONTER_OBJ.Close
  562. Set f_FILE_PIONTER_OBJ = Nothing
  563. Set f_FILE_OBJ = Nothing
  564. End Sub
  565. Function Get_JS_CopyRight(f_type)
  566. Get_JS_CopyRight = "<script language=""JavaScript"" src=""http://" & Request.Cookies("FoosunMFCookies")("FoosunMFDomain") & "/FS_Inc/Prototype.js""></script>" & vbNewLine
  567. Get_JS_CopyRight = Get_JS_CopyRight & "<!--Created Page at " & Now() & ",by Foosun.Cn,Foosun Content Management Systeme 4.0.0(FoosunCMS)-->"
  568. End Function
  569. %>