<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> <%option explicit%> <% Dim SqlNowString,SiteSN,Conn,DBPath,CollectDBPath,DataServer,DataUser,DataBaseName,DataBasePsw,ConnStr,CollcetConnStr Const DataBaseType=0 '系统数据库类型,"1"为MS SQL2000数据库,"0"为MS ACCESS 2000数据库 Const SysVer=1 Const MsxmlVersion=".3.0" '系统采用XML版本设置 If DataBaseType=0 then '如果是ACCESS数据库,请认真修改好下面的数据库的文件名 DBPath= "/fangfangonline_Data/fangfangonline_Datacenter.asp" 'ACCESS数据库的文件名,请使用相对于网站根目录的的绝对路径 SqlNowString = "Now()" Else '如果是SQL数据库,请认真修改好以下数据库选项 DataServer = "(local)" '数据库服务器IP DataUser = "sa" '访问数据库用户名 DataBaseName = "kesioncms4" '数据库名称 DataBasePsw = "989066" '访问数据库密码 SqlNowString = "getdate()" End if '采集数据库路径 CollectDBPath="\fangfangonline_Data\Collect\KS_Collect.Mdb" Call OpenConn Sub OpenConn() On Error Resume Next If DataBaseType = 1 Then ConnStr="Provider = Sqloledb; User ID = " & datauser & "; Password = " & databasepsw & "; Initial Catalog = " & databasename & "; Data Source = " & dataserver & ";" Else ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(DBPath) End If Set conn = Server.CreateObject("ADODB.Connection") conn.open ConnStr If Err Then Err.Clear:Set conn = Nothing:Response.Write "数据库连接出错,请检查Conn.asp文件中的数据库参数设置。":Response.End CollcetConnStr ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(CollectDBPath) End Sub Sub CloseConn() On Error Resume Next Conn.close:Set Conn=nothing End sub %> <% Class Thumb Private KS Private Sub Class_Initialize() Set KS=New PublicCls End Sub Private Sub Class_Terminate() ' Call CloseConn() Set KS=Nothing End Sub '为图片添加水印 Function AddWaterMark(FileName) Dim objFileSystem, strFileExtName, objImage If InStr(FileName, ":") = 0 Then FileName = Server.MapPath(FileName) End If If FileName <> "" And Not IsNull(FileName) Then strFileExtName = "" If InStr(FileName, ".") <> 0 Then strFileExtName = LCase(Trim(Mid(FileName, InStrRev(FileName, ".") + 1))) End If If strFileExtName <> "jpg" And strFileExtName <> "gif" And strFileExtName <> "bmp" And strFileExtName <> "png" Then Exit Function End If Set objFileSystem = Server.CreateObject(KS.Setting(99)) If objFileSystem.FileExists(FileName) Then If KS.TbSetting(5) <> "0" Then Select Case KS.TbSetting(5) Case "1" If KS.IsObjInstalled("Persits.Jpeg") Then If KS.IsExpired("Persits.Jpeg") Then Response.Write ("对不起,Persits.Jpeg组件已过期!") Response.End End If If KS.TbSetting(6) = "1" Then AddWordMark 1, KS.TbSetting(8), KS.TbSetting(10), KS.TbSetting(11), KS.TbSetting(12), KS.TbSetting(9), KS.TbSetting(7), FileName Else AddPhotoMark 1, KS.TbSetting(16), KS.TbSetting(17), KS.TbSetting(13), KS.TbSetting(14), KS.TbSetting(15), KS.TbSetting(7), FileName End If End If Case "2" If strFileExtName = "png" Then Exit Function End If If KS.IsObjInstalled("wsImage.Resize") Then If KS.IsExpired("wsImage.Resize") Then Response.Write ("对不起,sImage.Resize组件已过期!") Response.End End If If KS.TbSetting(6) = "1" Then AddWordMark 2, KS.TbSetting(8), KS.TbSetting(10), KS.TbSetting(11), KS.TbSetting(12), KS.TbSetting(9), KS.TbSetting(7), FileName Else AddPhotoMark 2, KS.TbSetting(16), KS.TbSetting(17), KS.TbSetting(13), KS.TbSetting(14), KS.TbSetting(15), KS.TbSetting(7), FileName End If End If Case "3" If KS.IsObjInstalled("SoftArtisans.ImageGen") Then If KS.IsExpired("SoftArtisans.ImageGen") Then Response.Write ("对不起,SoftArtisans.ImageGen组件已过期!") Response.End End If If KS.TbSetting(6) = "1" Then AddWordMark 3, KS.TbSetting(8), KS.TbSetting(10), KS.TbSetting(11), KS.TbSetting(12), KS.TbSetting(9), KS.TbSetting(7), FileName Else AddPhotoMark 3, KS.TbSetting(16), KS.TbSetting(17), KS.TbSetting(13), KS.TbSetting(14), KS.TbSetting(15), KS.TbSetting(7), FileName End If End If End Select End If End If Set objFileSystem = Nothing End If End Function '为图片添加文字水印 Function AddWordMark(MarkComponentID, MarkText, MarkFontColor, MarkFontName, MarkFontBond, MarkFontSize, MarkPosition, FileName) Dim objImage, x, y, Text, TextWidth, FontColor, FontName, FondBond, FontSize, OriginalWidth, OriginalHeight If InStr(FileName, ":") = 0 Then FileName = Server.MapPath(FileName) End If Text = Trim(MarkText) If Text = "" Then Exit Function End If FontColor = Replace(MarkFontColor, "#", "&H") FontName = MarkFontName If MarkFontBond = "1" Then FondBond = True Else FondBond = False End If FontSize = CInt(MarkFontSize) Select Case MarkComponentID Case 1 If Not KS.IsObjInstalled("Persits.Jpeg") Then Exit Function End If Set objImage = Server.CreateObject("Persits.Jpeg") objImage.Open FileName objImage.Canvas.Font.Color = FontColor objImage.Canvas.Font.Family = FontName objImage.Canvas.Font.Bold = FondBond objImage.Canvas.Font.size = FontSize TextWidth = objImage.Canvas.GetTextExtent(Text) If objImage.OriginalWidth < TextWidth Or objImage.OriginalHeight < FontSize Then Exit Function End If GetPostion CInt(MarkPosition), x, y, objImage.OriginalWidth, objImage.OriginalHeight, TextWidth, FontSize With objImage.Canvas .Print x, y, Text End With objImage.Save FileName Case 2 If Not KS.IsObjInstalled("wsImage.Resize") Then Exit Function End If Set objImage = Server.CreateObject("wsImage.Resize") objImage.LoadSoucePic CStr(FileName) objImage.TxtMarkFont = CStr(FontName) objImage.TxtMarkBond = FondBond objImage.TxtMarkHeight = FontSize FontColor = "&H" & Mid(FontColor, 7) & Mid(FontColor, 5, 2) & Mid(FontColor, 3, 2) objImage.AddTxtMark CStr(FileName), CStr(Text), CLng(FontColor), 1, 1 Case 3 If Not KS.IsObjInstalled("SoftArtisans.ImageGen") Then Exit Function End If Set objImage = Server.CreateObject("SoftArtisans.ImageGen") objImage.LoadImage FileName objImage.Font.Height = FontSize objImage.Font.name = FontName FontColor = "&H" & Mid(FontColor, 7) & Mid(FontColor, 5, 2) & Mid(FontColor, 3, 2) objImage.Font.Color = CLng(FontColor) objImage.Text = Text GetPostion CInt(MarkPosition), x, y, objImage.Width, objImage.Height, objImage.TextWidth, objImage.TextHeight objImage.DrawTextOnImage x, y, objImage.TextWidth, objImage.TextHeight objImage.SaveImage 0, objImage.ImageFormat, FileName End Select Set objImage = Nothing End Function Function AddPhotoMark(MarkComponentID, MarkWidth, MarkHeight, MarkPicture, MarkOpacity, MarkTranspColor, MarkPosition, FileName) Dim objImage, objMark, x, y, OriginalWidth, OriginalHeight, Position If InStr(FileName, ":") = 0 Then FileName = Server.MapPath(FileName) End If If IsNull(MarkWidth) Or MarkWidth = "" Then MarkWidth = 0 Else MarkWidth = CInt(MarkWidth) End If If IsNull(MarkHeight) Or MarkHeight = "" Then MarkHeight = 0 Else MarkHeight = CInt(MarkHeight) End If If Trim(MarkPicture) = "" Or IsNull(MarkPicture) Then Exit Function End If If IsNull(MarkOpacity) Or MarkOpacity = "" Then MarkOpacity = 1 Else MarkOpacity = CSng(MarkOpacity) End If If MarkTranspColor <> "" Then MarkTranspColor = Replace(MarkTranspColor, "#", "&H") Else End If Select Case MarkComponentID Case 1 If Not KS.IsObjInstalled("Persits.Jpeg") Then Exit Function End If Set objImage = Server.CreateObject("Persits.Jpeg") Set objMark = Server.CreateObject("Persits.Jpeg") objImage.Open FileName If objImage.OriginalWidth < MarkWidth Or objImage.OriginalHeight < MarkHeight Then Exit Function End If objMark.Open Server.MapPath(MarkPicture) GetPostion CInt(MarkPosition), x, y, objImage.OriginalWidth, objImage.OriginalHeight, MarkWidth, MarkHeight If MarkTranspColor <> "" Then objImage.DrawImage x, y, objMark, MarkOpacity, MarkTranspColor Else objImage.DrawImage x, y, objMark, MarkOpacity End If objImage.Save FileName Case 2 If Not KS.IsObjInstalled("wsImage.Resize") Then Exit Function End If Set objImage = Server.CreateObject("wsImage.Resize") objImage.LoadSoucePic CStr(FileName) objImage.LoadImgMarkPic Server.MapPath(MarkPicture) objImage.GetSourceInfo OriginalWidth, OriginalHeight GetPostion CInt(MarkPosition), x, y, OriginalWidth, OriginalHeight, MarkWidth, MarkHeight If MarkTranspColor = "" Then MarkTranspColor = 0 Else MarkTranspColor = "&H" & Mid(MarkTranspColor, 7) & Mid(MarkTranspColor, 5, 2) & Mid(MarkTranspColor, 3, 2) End If objImage.AddImgMark CStr(FileName), Int(x), Int(y), CLng(MarkTranspColor), Int(CSng(MarkOpacity) * 100) Case 3 If Not KS.IsObjInstalled("SoftArtisans.ImageGen") Then Exit Function End If Set objImage = Server.CreateObject("SoftArtisans.ImageGen") objImage.LoadImage FileName Select Case CInt(MarkPosition) Case 1 Position = 3 Case 2 Position = 5 Case 3 Position = 1 Case 4 Position = 6 Case 5 Position = 8 End Select If MarkTranspColor <> "" Then MarkTranspColor = "&H" & Mid(MarkTranspColor, 7) & Mid(MarkTranspColor, 5, 2) & Mid(MarkTranspColor, 3, 2) objImage.AddWaterMark Server.MapPath(MarkPicture), Position, CSng(MarkOpacity), CLng(MarkTranspColor) Else objImage.AddWaterMark Server.MapPath(MarkPicture), Position, CSng(MarkOpacity) End If objImage.SaveImage 0, objImage.ImageFormat, FileName End Select Set objImage = Nothing Set objMark = Nothing End Function Function GetPostion(MarkPosition, x, y, ImageWidth, ImageHeight, MarkWidth, MarkHeight) Select Case CInt(MarkPosition) Case 1 x = 1 y = 1 Case 2 x = 1 y = Int(ImageHeight - MarkHeight - 1) Case 3 x = Int((ImageWidth - MarkWidth) / 2) y = Int((ImageHeight - MarkHeight) / 2) Case 4 x = Int(ImageWidth - MarkWidth - 1) y = 1 Case 5 x = Int(ImageWidth - MarkWidth - 1) y = Int(ImageHeight - MarkHeight - 1) End Select End Function '由原图片根据数据里保存的设置生成缩略图 Function CreateThumbs(FileName, ThumbFileName) CreateThumbs = False If KS.TbSetting(0) <> "0" And (Not IsNull(KS.TbSetting(0))) Then If KS.TbSetting(1) = "0" Then CreateThumbs = CreateThumb(FileName, CInt(KS.TbSetting(2)), CInt(KS.TbSetting(3)), 0, ThumbFileName) Else CreateThumbs = CreateThumb(FileName, 0, 0, CSng(KS.TbSetting(4)), ThumbFileName) End If End If End Function '由原图片生成指定宽度和高度的缩略图 Function CreateThumb(FileName, Width, Height, Rate, ThumbFileName) On Error Resume Next Dim strSql, RsSetting, objImage, iWidth, iHeight, strFileExtName CreateThumb = False If IsNull(FileName) Then '如果原图片未指定直接退出 Exit Function ElseIf FileName = "" Then Exit Function End If If InStr(FileName, ".") <> 0 Then strFileExtName = LCase(Trim(Mid(FileName, InStrRev(FileName, ".") + 1))) End If If strFileExtName <> "jpg" And strFileExtName <> "gif" And strFileExtName <> "bmp" And strFileExtName <> "png" Then '文件不是可用图片则退出 Exit Function End If If IsNull(ThumbFileName) Then Exit Function ElseIf ThumbFileName = "" Then Exit Function End If If IsNull(Width) Then Width = 0 ElseIf Width = "" Then Width = 0 End If If IsNull(Rate) Then Rate = 0 ElseIf Rate = "" Then Rate = 0 End If If IsNull(Height) Then Height = 0 ElseIf Height = "" Then Height = 0 End If If InStr(FileName, ":") = 0 Then FileName = Server.MapPath(FileName) End If If InStr(ThumbFileName, ":") = 0 Then ThumbFileName = Server.MapPath(ThumbFileName) End If Width = CInt(Width) Height = CInt(Height) Rate = CSng(Rate) Select Case CInt(KS.TbSetting(0)) Case 0 Exit Function Case 1 If Not KS.IsObjInstalled("Persits.Jpeg") Then Exit Function End If If KS.IsExpired("Persits.Jpeg") Then Response.Write ("对不起,Persits.Jpeg组件已过期!") Response.End End If Set objImage = Server.CreateObject("Persits.Jpeg") objImage.Open FileName If Rate = 0 And (Width <> 0 Or Height <> 0) Then If Width < objImage.OriginalWidth And Height < objImage.OriginalHeight Then If Width = 0 And Height <> 0 Then objImage.Width = objImage.OriginalWidth / objImage.OriginalHeight * Height objImage.Height = Height ElseIf Width <> 0 And Height = 0 Then objImage.Width = Width objImage.Height = objImage.OriginalHeight / objImage.OriginalWidth * Width ElseIf Width <> 0 And Height <> 0 Then objImage.Width = Width objImage.Height = Height End If End If ElseIf Rate <> 0 Then objImage.Width = objImage.OriginalWidth * Rate objImage.Height = objImage.OriginalHeight * Rate End If objImage.Save ThumbFileName Case 2 If Not KS.IsObjInstalled("wsImage.Resize") Then Exit Function End If If KS.IsExpired("wsImage.Resize") Then Response.Write ("对不起,wsImage.Resize组件已过期!") Response.End End If If strFileExtName = "png" Then Exit Function End If Set objImage = Server.CreateObject("wsImage.Resize") objImage.LoadSoucePic CStr(FileName) If Rate = 0 And (Width <> 0 Or Height <> 0) Then objImage.GetSourceInfo iWidth, iHeight If Width < iWidth And Height < iHeight Then If Width = 0 And Height <> 0 Then objImage.OutputSpic CStr(ThumbFileName), 0, Height, 2 ElseIf Width <> 0 And Height = 0 Then objImage.OutputSpic CStr(ThumbFileName), Width, 0, 1 ElseIf Width <> 0 And Height <> 0 Then objImage.OutputSpic CStr(ThumbFileName), Width, Height, 0 Else objImage.OutputSpic CStr(ThumbFileName), 1, 1, 3 End If Else objImage.OutputSpic CStr(ThumbFileName), 1, 1, 3 End If ElseIf Rate <> 0 Then objImage.OutputSpic CStr(ThumbFileName), Rate, Rate, 3 Else objImage.OutputSpic CStr(ThumbFileName), 1, 1, 3 End If Case 3 If Not KS.IsObjInstalled("SoftArtisans.ImageGen") Then Exit Function End If If KS.IsExpired("SoftArtisans.ImageGen") Then Response.Write ("对不起,SoftArtisans.ImageGen组件已过期!") Response.End End If Set objImage = Server.CreateObject("SoftArtisans.ImageGen") objImage.LoadImage FileName If Rate = 0 And (Width <> 0 Or Height <> 0) Then If Width < objImage.Width And Height < objImage.Height Then If Width = 0 And Height <> 0 Then objImage.CreateThumb , CLng(Height), 0, True ElseIf Width <> 0 And Height = 0 Then objImage.CreateThumb CLng(Width), objImage.Height / objImage.Width * Width, 0, False ElseIf Width <> 0 And Height <> 0 Then objImage.CreateThumb CLng(Width), CLng(Height), 0, False End If End If ElseIf Rate <> 0 Then objImage.CreateThumb CLng(objImage.Width * Rate), CLng(objImage.Height * Rate), 0, False End If objImage.SaveImage 0, objImage.ImageFormat, ThumbFileName Case 4 If Not KS.IsObjInstalled("CreatePreviewImage.cGvbox") Then Exit Function End If Set objImage = Server.CreateObject("CreatePreviewImage.cGvbox") objImage.SetImageFile = FileName If Rate = 0 And (Width <> 0 Or Height <> 0) Then objImage.SetPreviewImageSize = Width ElseIf Rate <> 0 Then objImage.SetPreviewImageSize = objImage.SetPreviewImageSize * Rate End If objImage.SetSavePreviewImagePath = ThumbFileName If objImage.DoImageProcess = False Then Exit Function End If End Select CreateThumb = True End Function End Class %> <% Class CtoECls Private Sub Class_Initialize() End Sub Private Sub Class_Terminate() End Sub function CTOE(str) Dim i CTOE="" for i=1 to len(str) CTOE=CTOE&CETrans(asc(mid(str,i,1))) next end function function CETrans(num) Dim a,b,i,d Set d = CreateObject("Scripting.Dictionary") d.add "a",-20319 d.add "ai",-20317 d.add "an",-20304 d.add "ang",-20295 d.add "ao",-20292 d.add "ba",-20283 d.add "bai",-20265 d.add "ban",-20257 d.add "bang",-20242 d.add "bao",-20230 d.add "bei",-20051 d.add "ben",-20036 d.add "beng",-20032 d.add "bi",-20026 d.add "bian",-20002 d.add "biao",-19990 d.add "bie",-19986 d.add "bin",-19982 d.add "bing",-19976 d.add "bo",-19805 d.add "bu",-19784 d.add "ca",-19775 d.add "cai",-19774 d.add "can",-19763 d.add "cang",-19756 d.add "cao",-19751 d.add "ce",-19746 d.add "ceng",-19741 d.add "cha",-19739 d.add "chai",-19728 d.add "chan",-19725 d.add "chang",-19715 d.add "chao",-19540 d.add "che",-19531 d.add "chen",-19525 d.add "cheng",-19515 d.add "chi",-19500 d.add "chong",-19484 d.add "chou",-19479 d.add "chu",-19467 d.add "chuai",-19289 d.add "chuan",-19288 d.add "chuang",-19281 d.add "chui",-19275 d.add "chun",-19270 d.add "chuo",-19263 d.add "ci",-19261 d.add "cong",-19249 d.add "cou",-19243 d.add "cu",-19242 d.add "cuan",-19238 d.add "cui",-19235 d.add "cun",-19227 d.add "cuo",-19224 d.add "da",-19218 d.add "dai",-19212 d.add "dan",-19038 d.add "dang",-19023 d.add "dao",-19018 d.add "de",-19006 d.add "deng",-19003 d.add "di",-18996 d.add "dian",-18977 d.add "diao",-18961 d.add "die",-18952 d.add "ding",-18783 d.add "diu",-18774 d.add "dong",-18773 d.add "dou",-18763 d.add "du",-18756 d.add "duan",-18741 d.add "dui",-18735 d.add "dun",-18731 d.add "duo",-18722 d.add "e",-18710 d.add "en",-18697 d.add "er",-18696 d.add "fa",-18526 d.add "fan",-18518 d.add "fang",-18501 d.add "fei",-18490 d.add "fen",-18478 d.add "feng",-18463 d.add "fo",-18448 d.add "fou",-18447 d.add "fu",-18446 d.add "ga",-18239 d.add "gai",-18237 d.add "gan",-18231 d.add "gang",-18220 d.add "gao",-18211 d.add "ge",-18201 d.add "gei",-18184 d.add "gen",-18183 d.add "geng",-18181 d.add "gong",-18012 d.add "gou",-17997 d.add "gu",-17988 d.add "gua",-17970 d.add "guai",-17964 d.add "guan",-17961 d.add "guang",-17950 d.add "gui",-17947 d.add "gun",-17931 d.add "guo",-17928 d.add "ha",-17922 d.add "hai",-17759 d.add "han",-17752 d.add "hang",-17733 d.add "hao",-17730 d.add "he",-17721 d.add "hei",-17703 d.add "hen",-17701 d.add "heng",-17697 d.add "hong",-17692 d.add "hou",-17683 d.add "hu",-17676 d.add "hua",-17496 d.add "huai",-17487 d.add "huan",-17482 d.add "huang",-17468 d.add "hui",-17454 d.add "hun",-17433 d.add "huo",-17427 d.add "ji",-17417 d.add "jia",-17202 d.add "jian",-17185 d.add "jiang",-16983 d.add "jiao",-16970 d.add "jie",-16942 d.add "jin",-16915 d.add "jing",-16733 d.add "jiong",-16708 d.add "jiu",-16706 d.add "ju",-16689 d.add "juan",-16664 d.add "jue",-16657 d.add "jun",-16647 d.add "ka",-16474 d.add "kai",-16470 d.add "kan",-16465 d.add "kang",-16459 d.add "kao",-16452 d.add "ke",-16448 d.add "ken",-16433 d.add "keng",-16429 d.add "kong",-16427 d.add "kou",-16423 d.add "ku",-16419 d.add "kua",-16412 d.add "kuai",-16407 d.add "kuan",-16403 d.add "kuang",-16401 d.add "kui",-16393 d.add "kun",-16220 d.add "kuo",-16216 d.add "la",-16212 d.add "lai",-16205 d.add "lan",-16202 d.add "lang",-16187 d.add "lao",-16180 d.add "le",-16171 d.add "lei",-16169 d.add "leng",-16158 d.add "li",-16155 d.add "lia",-15959 d.add "lian",-15958 d.add "liang",-15944 d.add "liao",-15933 d.add "lie",-15920 d.add "lin",-15915 d.add "ling",-15903 d.add "liu",-15889 d.add "long",-15878 d.add "lou",-15707 d.add "lu",-15701 d.add "lv",-15681 d.add "luan",-15667 d.add "lue",-15661 d.add "lun",-15659 d.add "luo",-15652 d.add "ma",-15640 d.add "mai",-15631 d.add "man",-15625 d.add "mang",-15454 d.add "mao",-15448 d.add "me",-15436 d.add "mei",-15435 d.add "men",-15419 d.add "meng",-15416 d.add "mi",-15408 d.add "mian",-15394 d.add "miao",-15385 d.add "mie",-15377 d.add "min",-15375 d.add "ming",-15369 d.add "miu",-15363 d.add "mo",-15362 d.add "mou",-15183 d.add "mu",-15180 d.add "na",-15165 d.add "nai",-15158 d.add "nan",-15153 d.add "nang",-15150 d.add "nao",-15149 d.add "ne",-15144 d.add "nei",-15143 d.add "nen",-15141 d.add "neng",-15140 d.add "ni",-15139 d.add "nian",-15128 d.add "niang",-15121 d.add "niao",-15119 d.add "nie",-15117 d.add "nin",-15110 d.add "ning",-15109 d.add "niu",-14941 d.add "nong",-14937 d.add "nu",-14933 d.add "nv",-14930 d.add "nuan",-14929 d.add "nue",-14928 d.add "nuo",-14926 d.add "o",-14922 d.add "ou",-14921 d.add "pa",-14914 d.add "pai",-14908 d.add "pan",-14902 d.add "pang",-14894 d.add "pao",-14889 d.add "pei",-14882 d.add "pen",-14873 d.add "peng",-14871 d.add "pi",-14857 d.add "pian",-14678 d.add "piao",-14674 d.add "pie",-14670 d.add "pin",-14668 d.add "ping",-14663 d.add "po",-14654 d.add "pu",-14645 d.add "qi",-14630 d.add "qia",-14594 d.add "qian",-14429 d.add "qiang",-14407 d.add "qiao",-14399 d.add "qie",-14384 d.add "qin",-14379 d.add "qing",-14368 d.add "qiong",-14355 d.add "qiu",-14353 d.add "qu",-14345 d.add "quan",-14170 d.add "que",-14159 d.add "qun",-14151 d.add "ran",-14149 d.add "rang",-14145 d.add "rao",-14140 d.add "re",-14137 d.add "ren",-14135 d.add "reng",-14125 d.add "ri",-14123 d.add "rong",-14122 d.add "rou",-14112 d.add "ru",-14109 d.add "ruan",-14099 d.add "rui",-14097 d.add "run",-14094 d.add "ruo",-14092 d.add "sa",-14090 d.add "sai",-14087 d.add "san",-14083 d.add "sang",-13917 d.add "sao",-13914 d.add "se",-13910 d.add "sen",-13907 d.add "seng",-13906 d.add "sha",-13905 d.add "shai",-13896 d.add "shan",-13894 d.add "shang",-13878 d.add "shao",-13870 d.add "she",-13859 d.add "shen",-13847 d.add "sheng",-13831 d.add "shi",-13658 d.add "shou",-13611 d.add "shu",-13601 d.add "shua",-13406 d.add "shuai",-13404 d.add "shuan",-13400 d.add "shuang",-13398 d.add "shui",-13395 d.add "shun",-13391 d.add "shuo",-13387 d.add "si",-13383 d.add "song",-13367 d.add "sou",-13359 d.add "su",-13356 d.add "suan",-13343 d.add "sui",-13340 d.add "sun",-13329 d.add "suo",-13326 d.add "ta",-13318 d.add "tai",-13147 d.add "tan",-13138 d.add "tang",-13120 d.add "tao",-13107 d.add "te",-13096 d.add "teng",-13095 d.add "ti",-13091 d.add "tian",-13076 d.add "tiao",-13068 d.add "tie",-13063 d.add "ting",-13060 d.add "tong",-12888 d.add "tou",-12875 d.add "tu",-12871 d.add "tuan",-12860 d.add "tui",-12858 d.add "tun",-12852 d.add "tuo",-12849 d.add "wa",-12838 d.add "wai",-12831 d.add "wan",-12829 d.add "wang",-12812 d.add "wei",-12802 d.add "wen",-12607 d.add "weng",-12597 d.add "wo",-12594 d.add "wu",-12585 d.add "xi",-12556 d.add "xia",-12359 d.add "xian",-12346 d.add "xiang",-12320 d.add "xiao",-12300 d.add "xie",-12120 d.add "xin",-12099 d.add "xing",-12089 d.add "xiong",-12074 d.add "xiu",-12067 d.add "xu",-12058 d.add "xuan",-12039 d.add "xue",-11867 d.add "xun",-11861 d.add "ya",-11847 d.add "yan",-11831 d.add "yang",-11798 d.add "yao",-11781 d.add "ye",-11604 d.add "yi",-11589 d.add "yin",-11536 d.add "ying",-11358 d.add "yo",-11340 d.add "yong",-11339 d.add "you",-11324 d.add "yu",-11303 d.add "yuan",-11097 d.add "yue",-11077 d.add "yun",-11067 d.add "za",-11055 d.add "zai",-11052 d.add "zan",-11045 d.add "zang",-11041 d.add "zao",-11038 d.add "ze",-11024 d.add "zei",-11020 d.add "zen",-11019 d.add "zeng",-11018 d.add "zha",-11014 d.add "zhai",-10838 d.add "zhan",-10832 d.add "zhang",-10815 d.add "zhao",-10800 d.add "zhe",-10790 d.add "zhen",-10780 d.add "zheng",-10764 d.add "zhi",-10587 d.add "zhong",-10544 d.add "zhou",-10533 d.add "zhu",-10519 d.add "zhua",-10331 d.add "zhuai",-10329 d.add "zhuan",-10328 d.add "zhuang",-10322 d.add "zhui",-10315 d.add "zhun",-10309 d.add "zhuo",-10307 d.add "zi",-10296 d.add "zong",-10281 d.add "zou",-10274 d.add "zu",-10270 d.add "zuan",-10262 d.add "zui",-10260 d.add "zun",-10256 d.add "zuo",-10254 if num>0 and num<160 then CETrans=chr(num) else if num<-20319 or num>-10247 then CETrans="" else a=d.Items b=d.keys for i=d.count-1 to 0 step -1 if a(i)<=num then exit for next CETrans=b(i) end if end if end function End Class %> <% Class PublicCls Private LocalCacheName,Cache_Data,CacheData,Reloadtime Public SiteSN,Version Public Setting,TbSetting,SSetting Private Sub Class_Initialize() if Not Response.IsClientConnected then response.End() Call KSInitialize End Sub Private Sub Class_Terminate() End Sub '******************************************************************************************************************* '函数名:KSInitialize '作 用: 加载CMS的必要参数 '备 注:以下参数请不要更改。否则系统可能无法正常运行 '******************************************************************************************************************* Public Function KSInitialize() Call GetConfig() Setting=Split(CacheData(0,0),"^%^") TbSetting=Split(CacheData(1,0),"^%^") SSetting=Split(CacheData(2,0),"^%^") SiteSN = Replace(Replace(LCase(Request.ServerVariables("SERVER_NAME")), "/", ""), ".", "") '--缓存名称 Reloadtime = 28800 Version = "ks4.5" Call IsIPlock() 'IP访问限制 End Function '===================服务器缓存部分函数开始=================== Public Property Let Name(ByVal vNewValue) LocalCacheName = LCase(vNewValue) Cache_Data = Application(SiteSN & "_" & LocalCacheName) End Property Public Property Let Value(ByVal vNewValue) If LocalCacheName <> "" Then ReDim Cache_Data(2) Cache_Data(0) = vNewValue Cache_Data(1) = Now() Application.Lock Application(SiteSN & "_" & LocalCacheName) = Cache_Data Application.UnLock Else Err.Raise vbObjectError + 1, "KesionCacheServer", " please change the CacheName." End If End Property Public Property Get Value() If LocalCacheName <> "" Then If IsArray(Cache_Data) Then Value = Cache_Data(0) Else 'Err.Raise vbObjectError + 1, "KesionCacheServer", " The Cache_Data("&LocalCacheName&") Is Empty." End If Else Err.Raise vbObjectError + 1, "KesionCacheServer", " please change the CacheName." End If End Property Public Function ObjIsEmpty() ObjIsEmpty = True If Not IsArray(Cache_Data) Then Exit Function If Not IsDate(Cache_Data(1)) Then Exit Function If DateDiff("s", CDate(Cache_Data(1)), Now()) < (60 * Reloadtime) Then ObjIsEmpty = False End Function '不提示,批量清除缓存,参数 PreCacheName-前段匹配 Public Sub DelCaches(PreCacheName) Dim i Dim CacheList:CacheList=split(GetCacheList(PreCacheName),",") If UBound(CacheList)>1 Then For i=0 to UBound(CacheList)-1 DelCahe CacheList(i) Next End IF End Sub '取得缓存列表 参数 PreCacheName-前段匹配 Public Function GetCacheList(PreCacheName) Dim Cacheobj For Each Cacheobj in Application.Contents If CStr(Left(Cacheobj,Len(PreCacheName)))=CStr(PreCacheName) Then GetCacheList=GetCacheList&Cacheobj&"," Next End Function '清除缓存,参数 MyCaheName-缓存名称 Public Sub DelCahe(MyCaheName) Application.Lock Application.Contents.Remove(MyCaheName) Application.unLock End Sub '===================服务器缓存部分函数结束=================== Public Sub GetSetting() Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "SELECT Setting,TbSetting,SpaceSetting from [KS_Config]",conn,1,1 value=RS.GetRows(1) RS.Close:Set RS=Nothing End Sub Public Sub GetConfig() Name = "Config" If ObjIsEmpty() Then GetSetting CacheData = Value Name = "Date" If ObjIsEmpty() Then Value = Date Else If CStr(Value) <> CStr(Date) Then Name = "Config" Call GetSetting CacheData = Value End If End If If Len(CacheData(1, 0)) = 0 Then Name = "Config" Call GetSetting CacheData = Value End If End Sub 'xmlroot跟节点名称 row记录行节点名称 Public Function RecordsetToxml(RSObj,row,xmlroot) Dim i,node,rs,j,DataArray If xmlroot="" Then xmlroot="xml" If row="" Then row="row" Set RecordsetToxml=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion) RecordsetToxml.appendChild(RecordsetToxml.createElement(xmlroot)) If Not RSObj.EOF Then DataArray=RSObj.GetRows(-1) For i=0 To UBound(DataArray,2) Set Node=RecordsetToxml.createNode(1,row,"") j=0 For Each rs in RSObj.Fields node.attributes.setNamedItem(RecordsetToxml.createNode(2,"ks"&j,"")).text= DataArray(j,i)& "" j=j+1 Next RecordsetToxml.documentElement.appendChild(Node) Next End If DataArray=Null End Function Public Function LoadChannelConfig() Application.Lock Dim RS:Set Rs=conn.execute("select ChannelID,ChannelName,ChannelTable,ItemName,ItemUnit,FieldBit,BasicType,FsoHtmlTF,FsoFolder,RefreshFlag,ModelEname,MaxPerPage,VerificCommentTF,CommentVF,CommentLen,CommentTemplate,UserSelectFilesTF,InfoVerificTF,UserAddMoney,UserAddPoint,UserAddScore,ChannelStatus,CollectTF,UpFilesTF,UpFilesDir,UpFilesSize,UserUpFilesTF,UserUpFilesDir,AllowUpPhotoType,AllowUpFlashType,AllowUpMediaType,AllowUpRealType,AllowUpOtherType,SearchTemplate,EditorType From KS_Channel Order by ChannelID") Set Application(SiteSN&"_ChannelConfig")=RecordsetToxml(rs,"channel","ChannelConfig") Set Rs=Nothing Application.unLock End Function Function C_S(sChannelID,FieldID) on error resume next If not IsObject(Application(SiteSN&"_ChannelConfig")) Then LoadChannelConfig() C_S=Application(SiteSN&"_ChannelConfig").documentElement.selectSingleNode("channel[@ks0=" & sChannelID & "]/@ks" & FieldID & "").text if err then C_S=0:err.Clear End Function Public Function LoadClassConfig() Application.Lock Dim RS:Set Rs=conn.execute("select ID,FolderName,Folder,ClassPurview,FolderDomain,TemplateID,ClassBasicInfo,ClassDefineContent,TS From KS_Class Order by ClassID") Set Application(SiteSN&"_class")=RecordsetToxml(rs,"class","classConfig") Set Rs=Nothing Application.unLock End Function Function C_C(ClassID,FieldID) on error resume next If not IsObject(Application(SiteSN&"_class")) Then LoadClassConfig() C_C=Application(SiteSN&"_class").documentElement.selectSingleNode("class[@ks0=" & classID & "]/@ks" & FieldID & "").text End Function '************************************************** '函数名:LoadSelectClass '作 用:返回目录树。 '参 数:ChannelID-----返回频道目录树 '返回值:整棵树 '************************************************** Public Function LoadSelectClass(ChannelID) On Error resume next Dim Node,K,SQL If Not IsNumeric(ChannelID) Then Exit Function If Not IsObject(Application(SiteSN&"_selectclass")) Then Set Application(SiteSN&"_selectclass")=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion) Application(SiteSN&"_selectclass").appendChild( Application(SiteSN&"_selectclass").createElement("xml")) Dim RSC:Set RSC=Conn.Execute("Select ChannelID From KS_Channel Where ChannelStatus=1 order by channelid") Do While Not RSC.Eof Dim ID,RS,TreeStr Set RS=Conn.Execute("select ID,FolderName from KS_Class Where ChannelID=" & rsc(0) & " AND tj=1 Order BY FolderOrder ASC") If Not RS.Eof Then SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing For K=0 To Ubound(SQL,2) ID=trim(SQL(0,K)) TreeStr = TreeStr & "" TreeStr = TreeStr & ReturnSubList("TN='" & ID & "'") Next Set Node=Application(SiteSN&"_selectclass").documentElement.appendChild(Application(SiteSN&"_selectclass").createNode(1,"selectclass","")) Node.attributes.setNamedItem(Application(SiteSN&"_selectclass").createNode(2,"channelid","")).text=rsc(0) Node.text=TreeStr TreeStr="" End If RSC.MoveNext Loop RSC.Close:Set RSC=Nothing End If LoadSelectClass=Application(SiteSN&"_selectclass").documentElement.selectSingleNode("selectclass[@channelid=" & ChannelID & "]").text End Function '************************************************** '函数名:ReturnSubList '作 用:查找并返子树数据。 '参 数:ParentID ----父节点ID '返回值:子树 '************************************************** Public Function ReturnSubList(Param) Dim SubTypeList, RS, SpaceStr, k, Total, Num,ID,TJ,SQL,n Set RS=Conn.Execute("Select ID,FolderName,TJ from KS_Class Where " & Param & " Order BY FolderOrder ASC") Num = 0 If RS.Eof Then ReturnSubList="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):Total=Ubound(SQL,2) For n=0 To Total Num = Num + 1:SpaceStr = "":TJ = CInt(SQL(2,N)) For k = 1 To TJ - 1 If k = 1 And k <> TJ - 1 Then SpaceStr = SpaceStr & " │" ElseIf k = TJ - 1 Then If Num = Total+1 Then SpaceStr = SpaceStr & " └ " Else SpaceStr = SpaceStr & " ├ " End If Else SpaceStr = SpaceStr & " │" End If Next ID = Trim(SQL(0,N)) SubTypeList = SubTypeList & "" SubTypeList = SubTypeList & ReturnSubList("TN='" & ID & "'") Next ReturnSubList = SubTypeList End Function Sub IsIPlock() On Error Resume Next If Setting(100)=0 Then Exit Sub If session("KS_IPlock") = "" Then session("KS_IPlock") = CheckIPlock(Setting(100), Setting(101), GetIP) End If If session("KS_IPlock") = True Then Response.Write "对不起!您的IP(" &GetIP & ")被系统限定。您可以和站长联系。" Response.End End If End Sub Function EncodeIP(Sip) Dim strIP:strIP = Split(Sip, ".") If UBound(strIP) < 3 Then EncodeIP = 0:Exit Function End If If IsNumeric(strIP(0)) = 0 Or IsNumeric(strIP(1)) = 0 Or IsNumeric(strIP(2)) = 0 Or IsNumeric(strIP(3)) = 0 Then Sip = 0 Else Sip = CInt(strIP(0)) * 256 * 256 * 256 + CInt(strIP(1)) * 256 * 256 + CInt(strIP(2)) * 256 + CInt(strIP(3)) - 1 End If EncodeIP = Sip End Function Function CStrIP(ByVal anNewIP) Dim lsResults ' Results To be returned Dim lnTemp ' Temporary value being parsed Dim lnIndex ' Position of number being parsed For lnIndex = 3 To 0 Step-1 lnTemp = Int(anNewIP / (256 ^ lnIndex)) lsResults = lsResults & lnTemp & "." anNewIP = anNewIP - (lnTemp * (256 ^ lnIndex)) Next lsResults = Left(lsResults, Len(lsResults) - 1) lsResults=Split(lsResults,".") Dim IPStr,i:For I=0 To Ubound(lsResults) if i=3 then IPStr=IPStr & "." &lsResults(3)+1 elseif i=0 then IPStr=lsResults(0) else IPStr=IPStr & "." & lsResults(i) end if Next CStrIP = IPStr End Function '白名单的端点可以访问和黑名单的端点将不允许访问。 Function ChecKIPlock(ByVal sLockType, ByVal sLockList, ByVal sUserIP) Dim IPlock, rsLockIP Dim arrLockIPW, arrLockIPB, arrLockIPWCut, arrLockIPBCut IPlock = False ChecKIPlock = IPlock Dim i, sKillIP If sLockType = "" Or IsNull(sLockType) Then Exit Function If sLockList = "" Or IsNull(sLockList) Then Exit Function If sUserIP = "" Or IsNull(sUserIP) Then Exit Function sUserIP = CDbl(EncodeIP(sUserIP)) rsLockIP = Split(sLockList, "|||") If sLockType = 4 Then arrLockIPB = Split(Trim(rsLockIP(1)), "$$$") For i = 0 To UBound(arrLockIPB) If arrLockIPB(i) <> "" Then arrLockIPBCut = Split(Trim(arrLockIPB(i)), "----") IPlock = True If CDbl(arrLockIPBCut(0)) > sUserIP Or sUserIP > CDbl(arrLockIPBCut(1)) Then IPlock = False If IPlock Then Exit For End If Next If IPlock = True Then arrLockIPW = Split(Trim(rsLockIP(0)), "$$$") For i = 0 To UBound(arrLockIPW) If arrLockIPW(i) <> "" Then arrLockIPWCut = Split(Trim(arrLockIPW(i)), "----") IPlock = True If CDbl(arrLockIPWCut(0)) <= sUserIP And sUserIP <= CDbl(arrLockIPWCut(1)) Then IPlock = False If IPlock Then Exit For End If Next End If Else If sLockType = 1 Or sLockType = 3 Then arrLockIPW = Split(Trim(rsLockIP(0)), "$$$") For i = 0 To UBound(arrLockIPW) If arrLockIPW(i) <> "" Then arrLockIPWCut = Split(Trim(arrLockIPW(i)), "----") IPlock = True If CDbl(arrLockIPWCut(0)) <= sUserIP And sUserIP <= CDbl(arrLockIPWCut(1)) Then IPlock = False If IPlock Then Exit For End If Next End If If IPlock = False And (sLockType = 2 Or sLockType = 3) Then arrLockIPB = Split(Trim(rsLockIP(1)), "$$$") For i = 0 To UBound(arrLockIPB) If arrLockIPB(i) <> "" Then arrLockIPBCut = Split(Trim(arrLockIPB(i)), "----") IPlock = True If CDbl(arrLockIPBCut(0)) > sUserIP Or sUserIP > CDbl(arrLockIPBCut(1)) Then IPlock = False If IPlock Then Exit For End If Next End If End If ChecKIPlock = IPlock End Function Public Function Conn() On Error Resume Next Dim ConnObj:Set ConnObj=Server.CreateObject("ADODB.Connection") ConnObj.Open ConnStr Set Conn = ConnObj End Function '采集数据库连接 Public Function ConnItem() Dim ConnObj:Set ConnObj=Server.CreateObject("ADODB.Connection") ConnObj.Open CollcetConnStr Set ConnItem = ConnObj End Function '*************************************************************************************************************** '函数名:GetDomain '作 用:获取URL,包括虚拟目录 如http://www.sykv.com/ 或 http://www.sykv.com/Sys/ 其中 Sys/为虚拟目录 '参 数: 无 '返回值:完整域名 '*************************************************************************************************************** Public Function GetDomain() GetDomain = Trim(Setting(2) & Setting(3)) End Function '************************************************** '函数名:GetChannelDomain '作 用:获取包含频道的完整Url '参 数:ChannelID频道ID '返回值:完整域名 '************************************************** Public Function GetChannelDomain(ChannelID) GetChannelDomain=C_S(ChannelID,8) If Left(GetChannelDomain, 1) = "/" Then GetChannelDomain = Right(GetChannelDomain, Len(GetChannelDomain) - 1) GetChannelDomain = GetDomain() & GetChannelDomain End Function '************************************************** '函数名:GetAutoDoMain() '作 用:取得当前服务器IP 如:http://127.0.0.1 '参 数:无 '************************************************** Public Function GetAutoDomain() Dim TempPath If Request.ServerVariables("SERVER_PORT") = "80" Then GetAutoDomain = Request.ServerVariables("SERVER_NAME") Else GetAutoDomain = Request.ServerVariables("SERVER_NAME") & ":" & Request.ServerVariables("SERVER_PORT") End If If Instr(UCASE(GetAutoDomain),"/W3SVC")<>0 Then GetAutoDomain=Left(GetAutoDomain,Instr(GetAutoDomain,"/W3SVC")) End If GetAutoDomain = "http://" & GetAutoDomain End Function Function CutFixContent(ByVal str, ByVal start, ByVal last, ByVal n) Dim strTemp On Error Resume Next If InStr(str, start) > 0 Then Select Case n Case 0 '左右都截取(都取前面)(去处关键字) strTemp = Right(str, Len(str) - InStr(str, start) - Len(start) + 1) strTemp = Left(strTemp, InStr(strTemp, last) - 1) Case Else '左右都截取(都取前面)(保留关键字) strTemp = Right(str, Len(str) - InStr(str, start) + 1) strTemp = Left(strTemp, InStr(strTemp, last) + Len(last) - 1) End Select Else strTemp = "" End If CutFixContent = strTemp End Function '************************************************************************* '函数名:gotTopic '作 用:截字符串,汉字一个算两个字符,英文算一个字符 '参 数:str ----原字符串 ' strlen ----截取长度 '返回值:截取后的字符串 '************************************************************************* Public Function GotTopic(ByVal Str, ByVal strlen) If Str = "" OR IsNull(Str) Then GotTopic = "":Exit Function If strlen=0 Then GotTopic=Str:Exit Function Dim l, T, c, I, strTemp Str = Replace(Replace(Replace(Replace(Str, " ", " "), """, Chr(34)), ">", ">"), "<", "<") l = Len(Str) T = 0 strTemp = Str strlen = CLng(strlen) For I = 1 To l c = Abs(Asc(Mid(Str, I, 1))) If c > 255 Then T = T + 2 Else T = T + 1 End If If T >= strlen Then strTemp = Left(Str, I) Exit For End If Next If strTemp <> Str Then strTemp = strTemp GotTopic = Replace(Replace(Replace(Replace(strTemp, " ", " "), Chr(34), """), ">", ">"), "<", "<") End Function '************************************************** '函数名:ListTitle '作 用:取标题 '参 数:TitleStr 标题, TitleNum 取字符数 '返回值:将标题分解成两行 '************************************************** Public Function ListTitle(TitleStr, TitleNum) Dim LeftStr, RightStr ListTitle = Trim(GotTopic(Trim(TitleStr), TitleNum)) If Len(ListTitle) > CInt(TitleNum / 2) Then LeftStr = GotTopic(ListTitle, CInt(TitleNum / 2)) RightStr = Mid(ListTitle, Len(LeftStr) + 1) ListTitle = LeftStr & "
" & RightStr End If End Function Function ListTitle1(TitleStr, TitleNum) Dim ClsTitleStr, ClsTitleNum, I, J, ClsTempNum, k, ClsTitleStrResult, LeftStr, RightStr ClsTitleNum = CInt(TitleNum) ClsTempNum = Len(CStr(TitleStr)) If ClsTitleNum > ClsTempNum Then ClsTitleNum = ClsTempNum End If ClsTitleStr = Left(CStr(TitleStr), ClsTitleNum) Dim TempStr For I = 1 To ClsTitleNum - 1 TempStr = TempStr & Mid(ClsTitleStr, I, 1) & "
" Next TempStr = TempStr & Right(ClsTitleStr, 1) ListTitle1 = TempStr End Function '************************************************** '函数名:GetIP '作 用:取得正确的IP '返回值:IP字符串 '************************************************** Public Function GetIP() Dim strIPAddr If Request.ServerVariables("HTTP_X_FORWARDED_FOR") = "" Or InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), "unknown") > 0 Then strIPAddr = Request.ServerVariables("REMOTE_ADDR") ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",") > 0 Then strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")-1) ElseIf InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";") > 0 Then strIPAddr = Mid(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), 1, InStr(Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ";")-1) Else strIPAddr = Request.ServerVariables("HTTP_X_FORWARDED_FOR") End If getIP = Checkstr(Trim(Mid(strIPAddr, 1, 30))) End Function Public Function Checkstr(Str) If Isnull(Str) Then CheckStr = "" Exit Function End If Str = Replace(Str,Chr(0),"") CheckStr = Replace(Str,"'","''") End Function '================================================ '函数名:URLDecode '作 用:URL解码 '================================================ Function URLDecode(ByVal urlcode) Dim start,final,length,char,i,butf8,pass Dim leftstr,rightstr,finalstr Dim b0,b1,bx,blength,position,u,utf8 On Error Resume Next b0 = Array(192,224,240,248,252,254) urlcode = Replace(urlcode,"+"," ") pass = 0 utf8 = -1 length = Len(urlcode) : start = InStr(urlcode,"%") : final = InStrRev(urlcode,"%") If start = 0 Or length < 3 Then URLDecode = urlcode : Exit Function leftstr = Left(urlcode,start - 1) : rightstr = Right(urlcode,length - 2 - final) For i = start To final char = Mid(urlcode,i,1) If char = "%" Then bx = URLDecode_Hex(Mid(urlcode,i + 1,2)) If bx > 31 And bx < 128 Then i = i + 2 finalstr = finalstr & ChrW(bx) ElseIf bx > 127 Then i = i + 2 If utf8 < 0 Then butf8 = 1 : blength = -1 : b1 = bx For position = 4 To 0 Step -1 If b1 >= b0(position) And b1 < b0(position + 1) Then blength = position Exit For End If Next If blength > -1 Then For position = 0 To blength b1 = URLDecode_Hex(Mid(urlcode,i + position * 3 + 2,2)) If b1 < 128 Or b1 > 191 Then butf8 = 0 : Exit For Next Else butf8 = 0 End If If butf8 = 1 And blength = 0 Then butf8 = -2 If butf8 > -1 And utf8 = -2 Then i = start - 1 : finalstr = "" : pass = 1 utf8 = butf8 End If If pass = 0 Then If utf8 = 1 Then b1 = bx : u = 0 : blength = -1 For position = 4 To 0 Step -1 If b1 >= b0(position) And b1 < b0(position + 1) Then blength = position b1 = (b1 xOr b0(position)) * 64 ^ (position + 1) Exit For End If Next If blength > -1 Then For position = 0 To blength bx = URLDecode_Hex(Mid(urlcode,i + 2,2)) : i = i + 3 If bx < 128 Or bx > 191 Then u = 0 : Exit For u = u + (bx And 63) * 64 ^ (blength - position) Next If u > 0 Then finalstr = finalstr & ChrW(b1 + u) End If Else b1 = bx * &h100 : u = 0 bx = URLDecode_Hex(Mid(urlcode,i + 2,2)) If bx > 0 Then u = b1 + bx i = i + 3 Else If Left(urlcode,1) = "%" Then u = b1 + Asc(Mid(urlcode,i + 3,1)) i = i + 2 Else u = b1 + Asc(Mid(urlcode,i + 1,1)) i = i + 1 End If End If finalstr = finalstr & Chr(u) End If Else pass = 0 End If End If Else finalstr = finalstr & char End If Next URLDecode = leftstr & finalstr & rightstr End Function Function URLDecode_Hex(ByVal h) On Error Resume Next h = "&h" & Trim(h) : URLDecode_Hex = -1 If Len(h) <> 4 Then Exit Function If isNumeric(h) Then URLDecode_Hex = cInt(h) End Function '************************************************** '函数名:R '作 用:过滤非法的SQL字符 '参 数:strChar-----要过滤的字符 '返回值:过滤后的字符 '************************************************** Public Function R(strChar) If strChar = "" Or IsNull(strChar) Then R = "":Exit Function Dim strBadChar, arrBadChar, tempChar, I 'strBadChar = "$,#,',%,^,&,?,(,),<,>,[,],{,},/,\,;,:," & Chr(34) & "," & Chr(0) & "" strBadChar = "+,',--,%,^,&,?,(,),<,>,[,],{,},/,\,;,:," & Chr(34) & "," & Chr(0) & "" arrBadChar = Split(strBadChar, ",") tempChar = strChar For I = 0 To UBound(arrBadChar) tempChar = Replace(tempChar, arrBadChar(I), "") Next tempChar = Replace(tempChar, "@@", "@") R = tempChar End Function Function FilterIDs(byval strIDs) Dim arrIDs,i,strReturn strIDs=Trim(strIDs) If Len(strIDs)=0 Then Exit Function arrIDs=Split(strIDs,",") For i=0 To Ubound(arrIds) If ChkClng(Trim(arrIDs(i)))<>0 Then strReturn=strReturn & "," & Int(arrIDs(i)) End If Next If Left(strReturn,1)="," Then strReturn=Right(strReturn,Len(strReturn)-1) FilterIDs=strReturn End Function '******************************************** '函数名:IsValidEmail '作 用:检查Email地址合法性 '参 数:email ----要检查的Email地址 '返回值:True ----Email地址合法 ' False ----Email地址不合法 '******************************************** Public Function IsValidEmail(Email) Dim names, name, I, c IsValidEmail = True names = Split(Email, "@") If UBound(names) <> 1 Then IsValidEmail = False: Exit Function For Each name In names If Len(name) <= 0 Then IsValidEmail = False:Exit Function For I = 1 To Len(name) c = LCase(Mid(name, I, 1)) If InStr("abcdefghijklmnopqrstuvwxyz_-.", c) <= 0 And Not IsNumeric(c) Then IsValidEmail = False:Exit Function Next If Left(name, 1) = "." Or Right(name, 1) = "." Then IsValidEmail = False:Exit Function Next If InStr(names(1), ".") <= 0 Then IsValidEmail = False:Exit Function I = Len(names(1)) - InStrRev(names(1), ".") If I <> 2 And I <> 3 Then IsValidEmail = False:Exit Function If InStr(Email, "..") > 0 Then IsValidEmail = False End Function '************************************************** '函数名:strLength '作 用:求字符串长度。汉字算两个字符,英文算一个字符。 '参 数:str ----要求长度的字符串 '返回值:字符串长度 '************************************************** Public Function strLength(Str) On Error Resume Next Dim WINNT_CHINESE:WINNT_CHINESE = (Len("中国") = 2) If WINNT_CHINESE Then Dim l, T, c,I l = Len(Str) T = l For I = 1 To l c = Asc(Mid(Str, I, 1)) If c < 0 Then c = c + 65536 If c > 255 Then T = T + 1 End If Next strLength = T Else strLength = Len(Str) End If If Err.Number <> 0 Then Err.Clear End Function '************************************************** '函数名: GetFolderPath '功 能:取得目录Url '参 数: FolderID目录的ID '************************************************** Public Function GetFolderPath(FolderID) on error resume next If Not IsObject(Application(SiteSN&"_classpath")) Then Dim Folder,ClassPurview,ChannelFsoHtmlTF,Node,K,SQL,RS Set Application(SiteSN&"_classpath")=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion) Application(SiteSN&"_classpath").appendChild( Application(SiteSN&"_classpath").createElement("xml")) Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "Select C.ClassID,C.ChannelID,TN,Folder,FolderDomain,ClassPurview,FsoHtmlTF,ModelEName,C.ID From KS_Class C inner join KS_Channel M On C.ChannelID=M.ChannelID Order BY FolderOrder", Conn, 1, 1 If RS.Eof And RS.Bof Then RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing For K=0 To Ubound(SQL,2) ClassPurview=SQL(5,K) ChannelFsoHtmlTF=SQL(6,K) If Trim(SQL(4,K)) <> "" And SQL(2,K) = "0" Then IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetFolderPath= GetChannelNoHtmlUrl(SQL(7,K),SQL(0,K)) Else GetFolderPath=Trim(SQL(4,K)) End If ElseIf Trim(SQL(4,K)) <> "" Then Folder = Trim(SQL(3,K)) Folder = Right(Mid(Folder, InStr(Folder, "/")), Len(Mid(Folder, InStr(Folder, "/"))) - 1) IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetFolderPath= Trim(SQL(4,K)) & GetChannelNoHtmlUrl(SQL(7,K),SQL(0,K)) Else GetFolderPath= Trim(SQL(4,K)) & Folder End If Else IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetFolderPath= GetChannelNoHtmlUrl(SQL(7,K),SQL(0,K)) Else GetFolderPath= GetChannelDomain(SQL(1,K)) & SQL(3,K) End If End If Set Node=Application(SiteSN&"_classpath").documentElement.appendChild(Application(SiteSN&"_classpath").createNode(1,"classpath","")) Node.attributes.setNamedItem(Application(SiteSN&"_classpath").createNode(2,"classid","")).text=SQL(8,K) Node.text=GetFolderPath Next End If GetFolderPath=Application(SiteSN&"_classpath").documentElement.selectSingleNode("classpath[@classid=" & FolderID & "]").text End Function '************************************************************************ '函数名: GetClassNP '功 能: 取得目录名称并加上链接 '参 数: FolderID目录的ID '************************************************************************* Function GetClassNP(FolderID) on error resume next If Not IsObject(Application(SiteSN&"_classnamepath")) Then Dim Folder,ClassPurview,ChannelFsoHtmlTF,Node,K,SQL,RS Dim FolderCss:FolderCss="" Dim OpenTypeStr:OpenTypeStr=" target=""_blank""" Set Application(SiteSN&"_classnamepath")=Server.CreateObject("msxml2.FreeThreadedDOMDocument"& MsxmlVersion) Application(SiteSN&"_classnamepath").appendChild( Application(SiteSN&"_classnamepath").createElement("xml")) Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "Select C.ClassID,C.ChannelID,FolderName,Folder,FolderDomain,TN,ClassPurview,FolderFsoIndex,FsoHtmlTF,ModelEname,C.ID From KS_Class C inner join KS_Channel M On C.ChannelID=M.ChannelID Order BY FolderOrder", Conn, 1, 1 If RS.Eof And RS.Bof Then RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing For K=0 To Ubound(SQL,2) ClassPurview=SQL(6,K) ChannelFsoHtmlTF=SQL(8,K) If Trim(SQL(4,K)) <> "" And SQL(5,K) = "0" Then '判断根目录是否有绑定二级域名 IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetClassNP = "" Else GetClassNP = "" End If ElseIf Trim(SQL(4,K)) <> "" Then Folder = Trim(SQL(3,K)) Folder = Right(Mid(Folder, InStr(Folder, "/")), Len(Mid(Folder, InStr(Folder, "/"))) - 1) IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetClassNP = "" Else GetClassNP = "" End If Else IF ClassPurview=2 Or ChannelFsoHtmlTF=0 Then GetClassNP = "" Else GetClassNP = "" End If End If GetClassNP = GetClassNP & Trim(SQL(2,K)) & "" Set Node=Application(SiteSN&"_classnamepath").documentElement.appendChild(Application(SiteSN&"_classnamepath").createNode(1,"classnamepath","")) Node.attributes.setNamedItem(Application(SiteSN&"_classnamepath").createNode(2,"classid","")).text=SQL(10,K) Node.text=GetClassNP Next End If GetClassNP=Application(SiteSN&"_classnamepath").documentElement.selectSingleNode("classnamepath[@classid=" & FolderID & "]").text End Function '---------------------------------------------------------------------------------------------------------------------- '函数名: GetSpecialPath '功 能: 取得专题目录Url '参 数: SpecialrRS '----------------------------------------------------------------------------------------------------------------------- Public Function GetSpecialPath(SpecialID,SpecialEname,FsoSpecialIndex,ChannelID) Dim SpecialDir:SpecialDir = Setting(95) If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) If C_S(ChannelID,7)=0 Then GetSpecialPath=GetDomain & C_S(ChannelID,10) & "/Special.asp?ID=" & SpecialID Else GetSpecialPath = GetDomain & SpecialDir & SpecialEname & "/" & FsoSpecialIndex End iF End Function '---------------------------------------------------------------------------------------------------------------------- '函数名: GetFolderSpecialPath '功 能: 取得栏目专题汇总Url '参 数: FolderID目录的ID,FullPathFlag是否完整路径(取栏目首页与否),包括专题首页 '----------------------------------------------------------------------------------------------------------------------- Function GetFolderSpecialPath(FolderID, FullPathFlag) Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") Dim SpecialDir:SpecialDir =Setting(95) If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) RS.Open "Select Folder,FolderFsoIndex,ChannelID,id From KS_Class Where ID='" & FolderID & "'", Conn, 1, 1 If Not RS.EOF Then If Conn.Execute("Select FsoHtmlTF From KS_Channel Where ChannelID=" & RS("ChannelID"))(0)=0 Then GetFolderSpecialPath = GetDomain &"SpecialList.asp?ClassID="&RS(3) Else If FullPathFlag = True Then GetFolderSpecialPath = GetDomain & SpecialDir & RS(0) & RS(1) Else GetFolderSpecialPath = GetDomain & SpecialDir & RS(0) End If End IF RS.Close:Set RS = Nothing Else RS.Close:Set RS = Nothing:GetFolderSpecialPath = "" End If End Function '取得栏目的链接URL Public Function GetChannelNoHtmlUrl(ModelEname,ClassID) GetChannelNoHtmlUrl=GetDomain & ModelEname & "/ShowClass.asp?ID=" & ClassID End Function '*************************************************************************** '函数名: GetInfoUrl '功 能: 取得每篇文章、图片等的Url链接 '参 数: RSObj--信息的recordset对象 '调用该函数前先初始化 '**************************************************************************** Public Function GetInfoUrl(ByVal ChannelID,ByVal Tid,ByVal InfoID,ByVal Fname,ByVal ReadPoint,ByVal InfoPurview,ByVal Changes) On error resume next IF Not Isnumeric(ChannelID) Then GetInfoUrl="#":Exit Function Dim ClassPurview:ClassPurview=C_C(Tid,3) Select Case C_S(ChannelID,6) Case 1 '当需要点数阅读或是指定的会员组才能查看或是继承栏目且该栏目的权限为半开放或认证栏目时,不能生成静态 If Changes=1 Then GetInfoUrl=Fname ElseIf ReadPoint>0 Or C_S(ChannelID,7)=0 Or InfoPurview=2 Or (InfoPurview=0 And (ClassPurview=1 Or ClassPurview=2)) Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 2 '当需要点数阅读或是指定的会员组才能查看或是继承栏目且该栏目的权限为半开放或认证栏目时,不能生成静态 If ReadPoint>0 Or C_S(ChannelID,7)=0 Or InfoPurview=2 Or (InfoPurview=0 And (ClassPurview=1 Or ClassPurview=2)) Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 3 '当需要点数阅读或是指定的会员组才能查看或是继承栏目且该栏目的权限为半开放或认证栏目时,不能生成静态 If C_S(ChannelID,7)=0 Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 4 '当需要点数阅读或是指定的会员组才能查看或是继承栏目且该栏目的权限为半开放或认证栏目时,不能生成静态 If ReadPoint>0 Or C_S(ChannelID,7)=0 Or InfoPurview=2 Or (InfoPurview=0 And (ClassPurview=1 Or ClassPurview=2)) Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 5 '判断是否生成 If C_S(ChannelID,7)=0 Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 7 '当需要点数阅读或是指定的会员组才能查看或是继承栏目且该栏目的权限为半开放或认证栏目时,不能生成静态 If ReadPoint>0 Or C_S(ChannelID,7)=0 Or InfoPurview=2 Or (InfoPurview=0 And (ClassPurview=1 Or ClassPurview=2)) Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If Case 8 If C_S(ChannelID,7)=0 Then GetInfoUrl=GetDomain & C_S(ChannelID,10) & "/ShowInfo.asp?ID=" &InfoID Else GetInfoUrl=GetFolderPath(Tid) & Fname End If End Select End Function '取消HTML Public Function LoseHtml(ContentStr) On Error Resume Next Dim TempLoseStr, regEx If ContentStr="" Or ContentStr=Null Then Exit Function TempLoseStr = CStr(ContentStr) Set regEx = New RegExp regEx.Pattern = "<\/*[^<>]*>" regEx.IgnoreCase = True regEx.Global = True TempLoseStr = regEx.Replace(TempLoseStr, "") LoseHtml = TempLoseStr End Function '--------------------------------------------------------------------------------------------------- '函数名: G_O_T_S '功 能:取得打开类型 '参 数: OpenType 取true时,新窗口打开 '-------------------------------------------------------------------------------------------- Function G_O_T_S(OpenType) If OpenType = "" Or OpenType = False Then G_O_T_S = "" ElseIf OpenType = True Then G_O_T_S = " target=""_blank""" Else G_O_T_S = " target=""" & OpenType & """" End If End Function '-------------------------------------------------------------------------------------------------- '函数名: GetCss '功 能:取得样式 '参 数: CssName样式名称 '-------------------------------------------------------------------------------------------- Function GetCss(CssName) If CssName = "" Then GetCss = "" Else GetCss = " class=""" & CssName & """" End Function '取得CSS的ID Function GetCssID(ID) If ID="" Then GetCssID="" Else GetCssID=" id=""" & ID & """" End Function '------------------------------------------------------------------------------------------------------------- '函数名: G_R_H '功 能:取得单元格行距 '参 数: RowHeight 默认行距 '----------------------------------------------------------------------------------------------------------- Function G_R_H(RowHeight) If IsNumeric(RowHeight) Then G_R_H = RowHeight Else G_R_H = 20 End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名:GetMenuBg '功 能:取得表头背景 '参 数: MenuBGType 类型 1 取背景图片 0 取背景颜色, MenuBg 背景颜色的值 如#CCCCCC 或 /Upfies/TITLE_BG.GIF ,ColNumber列数 '--------------------------------------------------------------------------------------------------------------------------- Function GetMenuBg(MenuBgType, MenuBg, ColNumber) If MenuBgType = 0 Then If MenuBg = "" Then GetMenuBg = "" Else GetMenuBg = MenuBg Else If MenuBg = "" Then GetMenuBg = "url(" & GetDomain & "Images/Default/MenuBg" & ColNumber & ".Gif)" Else If Left(MenuBg, 1) = "/" Or Left(MenuBg, 1) = "\" Then MenuBg = Right(MenuBg, Len(MenuBg) - 1) If LCase(Left(MenuBg, 4)) = "http" Then MenuBg = MenuBg Else MenuBg = GetDomain & MenuBg GetMenuBg = "url(" & MenuBg & ")" End If End If End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名:GetPhotoBorder '功 能: 取得图片的边框 '参 数: BorderType 类型 1 取透明图片边框 0 取颜色边框, Border 背景颜色的值 如#CCCCCC 或 /Upfies/TITLE_BG.GIF ,ColNumber列数 '---------------------------------------------------------------------------------------------------------------------------- Function GetPhotoBorder(LinkPhotoStr, BorderType, Border) Dim bgColorStr If Trim(Border) = "" Then GetPhotoBorder = LinkPhotoStr:Exit Function Else If BorderType = 0 Then bgColorStr = " bgcolor=""" & Border & """" GetPhotoBorder = "" & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & "
" & LinkPhotoStr & "
" & vbCrLf Exit Function Else If Left(Border, 1) = "/" Or Left(Border, 1) = "\" Then Border = Right(Border, Len(Border) - 1) If LCase(Left(Border, 4)) = "http" Then Border = Border Else Border = GetDomain & Border End If bgColorStr = " style=""background:url(" & Border & ") #FFF no-repeat;""" GetPhotoBorder = "" & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & " " & vbCrLf GetPhotoBorder = GetPhotoBorder & "
" & LinkPhotoStr & "
" & vbCrLf End If End If End Function '-------------------------------------------------------------------------------------------------------------------- '函数名: GetNavi '功 能: 取得导航值 '参 数: NaviType 导航类型, NaviStr导航值 '--------------------------------------------------------------------------------------------------------------- Function GetNavi(NaviType, NaviStr) If NaviType = "0" Then If NaviStr = "" Then GetNavi = "" Else GetNavi = NaviStr ElseIf NaviType = "1" Then If NaviStr <> "" Then GetNavi = "" Else GetNavi = "" End If End Function '--------------------------------------------------------------- '函数名:GetDateStr '作用:取日期的样式 '参数:AddDate,DateRule,DateAlign,DateCssStr,ByRef ColSpanNum '--------------------------------------------------------------- Function GetDateStr(AddDate,DateRule,DateAlign,DateCssStr,ByVal ColNumber,ByRef ColSpanNum) If CStr(DateRule) <> "0" And CStr("DateRule") <> "" Then Dim NowDate,NowFormatStr NowDate=Now If (Year(NowDate) & Month(NowDate) & Day(NowDate)) = (Year(AddDate) & Month(AddDate) & Day(AddDate)) Then NowFormatStr=" style=""color:red""" Else NowFormatStr="" End If If Lcase(DateAlign)="left" Then GetDateStr=" " & DateFormat(AddDate, DateRule) & "" ColSpanNum = 1 Else GetDateStr="" & DateFormat(AddDate, DateRule) & "" ColSpanNum = 2 End If Else GetDateStr="":ColSpanNum = 1 End If If ColNumber>=2 Then ColSpanNum = ColNumber End Function '取得日期样式(div+css) Function GetDCDateStr(AddDate,DateRule,DateCssStr) If CStr(DateRule) <> "0" And CStr("DateRule") <> "" Then Dim NowDate,NowFormatStr NowDate=Now If (Year(NowDate) & Month(NowDate) & Day(NowDate)) = (Year(AddDate) & Month(AddDate) & Day(AddDate)) Then NowFormatStr=" style=""color:red""" Else NowFormatStr="" End If GetDCDateStr=" " & DateFormat(AddDate, DateRule) & "" Else GetDCDateStr="" End If End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名:DateFormat '功 能:日期格式函数 '参 数: DateStr日期, Types转换类型 '---------------------------------------------------------------------------------------------------------------------------- Function DateFormat(DateStr, Types) Dim DateString If IsDate(DateStr) = False Then DateFormat = "":Exit Function End If Select Case CStr(Types) Case "0" DateFormat = "" Exit Function Case 1,21,41 DateString=Year(DateStr) & "-" & Right("0" & Month(DateStr), 2) & "-" & Right("0" & Day(DateStr), 2) if Types=21 then DateString = "(" & DateString &")" elseIf Types=41 then DateString = "[" & DateString &"]" end if Case 2,22,42 DateString=Year(DateStr) & "." & Right("0" & Month(DateStr), 2) & "." & Right("0" & Day(DateStr), 2) if Types=22 then DateString = "(" & DateString &")" elseIf Types=42 then DateString = "[" & DateString &"]" end if Case 3,23,43 DateString=Year(DateStr) & "/" & Right("0" & Month(DateStr), 2) & "/" & Right("0" & Day(DateStr), 2) if Types=23 then DateString = "(" & DateString &")" elseIf Types=43 then DateString = "[" & DateString &"]" end if Case 4,24,44 DateString=Right("0" & Month(DateStr), 2) & "/" & Right("0" & Day(DateStr), 2) & "/" & Year(DateStr) if Types=24 then DateString = "(" & DateString &")" elseIf Types=44 then DateString = "[" & DateString &"]" end if Case 5,25,45 DateString = Year(DateStr) & "年" & Right("0" & Month(DateStr), 2) & "月" if Types=25 then DateString = "(" & DateString &")" elseIf Types=45 then DateString = "[" & DateString &"]" end if Case 6,26,46 DateString = Year(DateStr) & "年" & Right("0" & Month(DateStr), 2) & "月" & Right("0" & Day(DateStr), 2) & "日" if Types=26 then DateString = "(" & DateString &")" elseIf Types=46 then DateString = "[" & DateString &"]" end if Case 7,27,47 DateString = Right("0" & Month(DateStr), 2) & "." & Right("0" & Day(DateStr), 2) & "." & Year(DateStr) if Types=27 then DateString = "(" & DateString &")" elseIf Types=47 then DateString = "[" & DateString &"]" end if Case 8,28,48 DateString = Right("0" & Month(DateStr), 2) & "-" & Right("0" & Day(DateStr), 2) & "-" & Year(DateStr) if Types=28 then DateString = "(" & DateString &")" elseIf Types=48 then DateString = "[" & DateString &"]" end if Case 9,29,49 DateString = Right("0" & Month(DateStr), 2) & "/" & Right("0" & Day(DateStr), 2) if Types=29 then DateString = "(" & DateString &")" elseIf Types=49 then DateString = "[" & DateString &"]" end if Case 10,30,50 DateString = Right("0" & Month(DateStr), 2) & "." & Right("0" & Day(DateStr), 2) if Types=30 then DateString = "(" & DateString &")" elseIf Types=50 then DateString = "[" & DateString &"]" end if Case 11,31,51 DateString = Right("0" & Month(DateStr), 2) & "月" & Right("0" & Day(DateStr), 2) & "日" if Types=31 then DateString = "(" & DateString &")" elseIf Types=51 then DateString = "[" & DateString &"]" end if Case 12,32,52 DateString = Right("0" & Day(DateStr), 2) & "日" & Right("0" & Hour(DateStr), 2) & "时" if Types=32 then DateString = "(" & DateString &")" elseIf Types=52 then DateString = "[" & DateString &"]" end if Case 13,33,53 DateString = Right("0" & Day(DateStr), 2) & "日" & Right("0" & Hour(DateStr), 2) & "点" if Types=33 then DateString = "(" & DateString &")" elseIf Types=53 then DateString = "[" & DateString &"]" end if Case 14,34,54 DateString = Right("0" & Hour(DateStr), 2) & "时" & Minute(DateStr) & "分" if Types=34 then DateString = "(" & DateString &")" elseIf Types=54 then DateString = "[" & DateString &"]" end if Case 15,35,55 DateString = Right("0" & Hour(DateStr), 2) & ":" & Right("0" & Minute(DateStr), 2) if Types=35 then DateString = "(" & DateString &")" elseIf Types=55 then DateString = "[" & DateString &"]" end if Case 16,36,56 DateString = Right("0" & Month(DateStr), 2) & "-" & Right("0" & Day(DateStr), 2) if Types=36 then DateString = "(" & DateString &")" elseIf Types=56 then DateString = "[" & DateString &"]" end if Case 17,37,57 DateString = Right("0" & Month(DateStr), 2) & "/" & Right("0" & Day(DateStr), 2) &" " &Right("0" & Hour(DateStr), 2)&":"&Right("0" & Minute(DateStr), 2) if Types=37 then DateString = "(" & DateString &")" elseIf Types=57 then DateString = "[" & DateString &"]" end if Case Else DateString = DateStr End Select DateFormat = DateString End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名:GetOrigin '功 能:取得文章来源并附加上链接 '参 数: OriginName名称 '返回值: 形如 新华网 '---------------------------------------------------------------------------------------------------------------------------- Function GetOrigin(OriginName) Dim RS: Set RS=Server.CreateObject("ADODB.Recordset") RS.Open "select OriginName,HomePage From KS_Origin Where OriginName='" & Trim(OriginName) & "'", Conn, 1, 1 If RS.EOF Then GetOrigin = OriginName Else If RS("HomePage") <> "" And UCase(Trim(RS("HomePage"))) <> "HTTP://" Then GetOrigin = "" & OriginName & "" Else GetOrigin = OriginName End If End If RS.Close:Set RS = Nothing End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名:GetMoreLink '功 能:取得更多链接 '参 数: ColNum列数, RowHeight行距, MoreLinkType链接类型, LinkUrl链接地址, OpenTypeStr是否新窗口打开 '---------------------------------------------------------------------------------------------------------------------------- Function GetMoreLink(PrintType,ColNum, RowHeight, MoreLinkType, LinkNameStr, LinkUrl, OpenTypeStr) If LinkNameStr = "" Then GetMoreLink = "":Exit Function If PrintType=2 Then If MoreLinkType = "0" Then GetMoreLink = "
  • " & LinkNameStr & "
  • " ElseIf MoreLinkType = "1" Then GetMoreLink = "
  • " Else GetMoreLink = "" End If Else LinkNameStr = Trim(LinkNameStr):LinkUrl = Trim(LinkUrl) If CStr(MoreLinkType) = "0" Then GetMoreLink = " " & LinkNameStr & "" ElseIf CStr(MoreLinkType) = "1" Then GetMoreLink = " " Else GetMoreLink = "" End If End If End Function '---------------------------------------------------------------------------------------------------------------------------- '函数名: GetSplitPic '功 能:取得分隔图片 '参 数: ColSpanNum 列数, SplitPic 图片SRC '------------------------------------------------------------------------------------------------------------------------------- Function GetSplitPic(SplitPic, ColSpanNum) Dim ColStr If SplitPic = "" Then GetSplitPic = "" Else If ColSpanNum>=2 Then ColStr=" colspan=""" & ColSpanNum & """" GetSplitPic = "" & vbcrlf End If End Function '------------------------------------------------------------------------------------------------------------------- '函数名:GetFolderTid '功 能:取得子目录的ID集合 '参 数: FolderID父目录ID '返回值: 形如 1255555,111111,4444的ID集合 '--------------------------------------------------------------------------------------------------------- Function GetFolderTid(FolderID) Dim I,Tid,SQL Dim RS:Set RS=Conn.Execute("Select ID From KS_Class Where DelTF=0 AND TS LIKE '%" & FolderID & "%'") If RS.EOF Then GetFolderTid="'0'":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing For I=0 To Ubound(SQL,2) Tid = Tid & "'" & Trim(SQL(0,I)) & "'," Next Tid = Left(Trim(Tid), Len(Trim(Tid)) - 1) '去掉最后一个逗号 GetFolderTid = Tid End Function '取得专题查询参数,应用于Sql条件 Function GetSpecialPara(SpecialID) If SpecialID = "-1" Then If Application(SiteSN & "RefreshType") = "Special" Then If DataBaseType=1 Then GetSpecialPara = " charindex('" & Application(SiteSN & "CurrSpecialID") &"',SpecialID)>0" Else GetSpecialPara = " instr(SpecialID,'"& Application(SiteSN & "CurrSpecialID") &"')>0" End If Else GetSpecialPara = " 1=1" End If ElseIf (SpecialID = "" Or SpecialID = "0") And (Application(SiteSN & "RefreshType") <> "Special") Then GetSpecialPara = " 1=1" Else GetSpecialPara = " instr(SpecialID,'"& SpecialID &"')>0" End If End Function '************************************************** '函数名:ReturnChannelAllowUpFilesTF '作 用:返回频道的是否允许上传文件 '参 数:ChannelID--频道ID '************************************************** Public Function ReturnChannelAllowUpFilesTF(ChannelID) If ChannelID = "" Or Not IsNumeric(ChannelID) Then ChannelID = 0 Dim CRS:Set CRS=Server.CreateObject("ADODB.RECORDSET") CRS.Open "Select UpFilesTF From KS_Channel Where ChannelID=" & ChannelID, Conn, 1, 1 If CInt(ChannelID) = 0 Or (CRS.EOF And CRS.BOF) Then '默认允许上传文件 ReturnChannelAllowUpFilesTF = True Else If CRS(0) = 1 Then ReturnChannelAllowUpFilesTF = True Else ReturnChannelAllowUpFilesTF = False End If CRS.Close:Set CRS = Nothing End Function '************************************************** '函数名:ReturnChannelUpFilesDir '作 用:返回频道后台的上传目录 '参 数:ChannelID--频道ID '返回值:目录字符串 '************************************************** Public Function ReturnChannelUpFilesDir(ChannelID) If ChannelID = "" Or Not IsNumeric(ChannelID) Then ReturnChannelUpFilesDir = Setting(91) Exit Function End If ReturnChannelUpFilesDir = replace(Setting(3) & C_S(ChannelID,24),"//","/") ReturnChannelUpFilesDir = Left(ReturnChannelUpFilesDir, Len(ReturnChannelUpFilesDir) - 1) End Function '************************************************** '函数名:ReturnChannelAllowUserUpFilesTF '作 用:返回频道是否允许会员上传文件 '参 数:ChannelID--频道ID '************************************************** Public Function ReturnChannelAllowUserUpFilesTF(ChannelID) If ChannelID = "" Or Not IsNumeric(ChannelID) Then '默认允许上传文件 ReturnChannelAllowUserUpFilesTF = True:Exit Function End If If C_S(ChannelID,26) = 1 Then ReturnChannelAllowUserUpFilesTF = True Else ReturnChannelAllowUserUpFilesTF = False End If End Function '************************************************** '函数名:ReturnChannelUserUpFilesDir '作 用:返回频道前台会员的上传目录 '参 数:ChannelID--频道ID,UserFolder-按用户名生成的目录 '返回值:目录字符串 '************************************************** Public Function ReturnChannelUserUpFilesDir(ChannelID,UserFolder) Dim Ce:Set Ce=new CtoeCls UserFolder=Ce.CTOE(R(UserFolder)) Set Ce=Nothing ChannelID = ChkCLng(ChannelID) Select Case ChannelID Case 9999 '用户头像 ReturnChannelUserUpFilesDir=Setting(3)&Setting(91)&"User/" & UserFolder &"/upface/" Case 9998 '相册封面 ReturnChannelUserUpFilesDir=Setting(3)&Setting(91)&"User/" & UserFolder &"/xc/" Case 9997 '照片 ReturnChannelUserUpFilesDir=Setting(3)&Setting(91)&"User/" & UserFolder &"/xc/" Case 9996 '圈子图片 ReturnChannelUserUpFilesDir=Setting(3)&Setting(91)&"User/" & UserFolder &"/team/" Case Else ReturnChannelUserUpFilesDir = C_S(ChannelID,27) ReturnChannelUserUpFilesDir = Setting(3) & Setting(91)&"User/" & UserFolder &"/"& ReturnChannelUserUpFilesDir End Select End Function '************************************************** '函数名:ReturnChannelAllowUpFilesSize '作 用:返回频道的最大允许上传文件大小 '参 数:ChannelID--频道ID '************************************************** Public Function ReturnChannelAllowUpFilesSize(ChannelID) ChannelID = ChkClng(ChannelID) Dim CRS:Set CRS=conn.execute("Select UpFilesSize From KS_Channel Where ChannelID=" & ChannelID) If CInt(ChannelID) = 0 Or (CRS.EOF And CRS.BOF) Then ReturnChannelAllowUpFilesSize = Setting(6) Else ReturnChannelAllowUpFilesSize = CRS(0) End If CRS.Close:Set CRS = Nothing End Function '************************************************** '函数名:ReturnChannelAllowUpFilesType '作 用:返回频道的允许上传的文件类型 '参 数:ChannelID--频道ID,TypeFlag 0-取全部 1-图片类型 2-flash 类型 3-Windows 媒体类型 4-Real 类型 5-其它类型 '************************************************** Public Function ReturnChannelAllowUpFilesType(ChannelID, TypeFlag) If ChkClng(ChannelID) = 0 Then ReturnChannelAllowUpFilesType = Setting(7):Exit Function If Not IsNumeric(TypeFlag) Then TypeFlag = 0 If TypeFlag = 0 Then '所有允许的类型 ReturnChannelAllowUpFilesType = C_S(ChannelID,28) & "|" & C_S(ChannelID,29) & "|" & C_S(ChannelID,30) & "|" & C_S(ChannelID,31) & "|" & C_S(ChannelID,32) Else ReturnChannelAllowUpFilesType = C_S(ChannelID,27+TypeFlag) End If End Function '返回付款方式名称,参数TypeID,0名称 1折扣率 Function ReturnPayment(ID,TypeID) If Application(SiteSn &"Payment_" & ID&TypeID)="" Then Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "Select TypeName,Discount From KS_PaymentType Where TypeID=" & ID,conn,1,1 If Not RS.Eof Then If TypeID=0 Then ReturnPayment=rs(0) If RS(1)<100 Then ReturnPayment=ReturnPayment & "  折扣率:" & RS(1) & "%" Else ReturnPayment=rs(1) End if End iF Application(SiteSn &"Payment_" & ID&TypeID)=ReturnPayment Else ReturnPayment=Application(SiteSn &"Payment_" & ID&TypeID) End If End Function '返回收货方式名称,参数TypeID,0名称 1费用 Function ReturnDelivery(ID,TypeID) If Application(SiteSn &"Delivery_" & ID&TypeID)="" Then Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "Select TypeName,fee From KS_Delivery Where TypeID=" & ID,conn,1,1 If Not RS.Eof Then If TypeID=0 Then ReturnDelivery=rs(0) If RS(1)=0 Then ReturnDelivery=ReturnDelivery & " 免费" Else ReturnDelivery=ReturnDelivery & " 加收 " & RS(1) & "元" Else ReturnDelivery=rs(1) End iF End iF Application(SiteSn &"Delivery_" & ID&TypeID)=ReturnDelivery Else ReturnDelivery=Application(SiteSn &"Delivery_" & ID&TypeID) End If End Function '********************************************************************** '函数名:ReturnSpecial '作 用:返回专题名称 '参 数:Selected-预选中项 ,ChannelID--频道ID,FolderID ---目录ID '返回值:专题名称 '********************************************************************** Public Function ReturnSpecial(SelectID, ChannelID, FolderID) Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") Dim ParaStr,SpecialChannelStr If ChannelID="" Then ChannelID=0 If ChannelID <> 0 Then ParaStr = ParaStr & " And ChannelID=" & ChannelID End If RS.Open "Select SpecialName,SpecialID,FolderID From KS_Special Where 1=1 " & ParaStr, Conn, 1, 1 If Not RS.EOF Then Do While Not RS.EOF If FolderID=RS(2) Then SpecialChannelStr="(本频道)" Else SpecialChannelStr="" If Trim(SelectID) = Trim(RS(1)) Then ReturnSpecial = ReturnSpecial & "" Else ReturnSpecial = ReturnSpecial & "" End If RS.MoveNext Loop End If RS.Close:Set RS = Nothing End Function '************************************************** '函数:FoundInArr '作 用:检查一个数组中所有元素是否包含指定字符串 '参 数:strArr ----字符串 ' strToFind ----要查找的字符串 ' strSplit ----数组的分隔符 '返回值:True,False '************************************************** Public Function FoundInArr(strArr, strToFind, strSplit) Dim arrTemp, i FoundInArr = False If InStr(strArr, strSplit) > 0 Then arrTemp = Split(strArr, strSplit) For i = 0 To UBound(arrTemp) If LCase(Trim(arrTemp(i))) = LCase(Trim(strToFind)) Then FoundInArr = True:Exit For End If Next Else If LCase(Trim(strArr)) = LCase(Trim(strToFind)) Then FoundInArr = True End If End Function '检查是否是数字 ,并转换为长整型 Public Function ChkClng(ByVal str) On error resume next If IsNumeric(str) Then ChkClng = CLng(str) Else ChkClng = 0 End If If Err Then ChkClng=0 End Function '************************************************** '函数名:ShowPage '作 用:显示“上一页 下一页”等信息 '参 数:filename ----链接地址 ' TotalNumber ----总数量 ' MaxPerPage ----每页数量 ' ShowAllPages ---是否用下拉列表显示所有页面以供跳转。 ' strUnit ----计数单位,CurrentPage--当前页 '返回值:无返回值 '************************************************** Sub ShowPage(totalnumber, MaxPerPage, FileName, ShowAllPages, strUnit, CurrentPage) Dim N, I, PageStr Const Btn_First = "9" '定义第一页按钮显示样式 Const Btn_Prev = "3" '定义前一页按钮显示样式 Const Btn_Next = "4" '定义下一页按钮显示样式 Const Btn_Last = ":" '定义最后一页按钮显示样式 PageStr = "" If totalnumber Mod MaxPerPage = 0 Then N = totalnumber \ MaxPerPage Else N = totalnumber \ MaxPerPage + 1 End If If N > 1 Then PageStr = PageStr & ("页次:" & CurrentPage & "/" & N & "页 共有:" & totalnumber & strUnit & " 每页:" & MaxPerPage & strUnit & " ") If CurrentPage < 2 Then PageStr = PageStr & Btn_First & " " & Btn_Prev & " " Else PageStr = PageStr & ("" & Btn_First & " " & Btn_Prev & " ") End If If N - CurrentPage < 1 Then PageStr = PageStr & " " & Btn_Next & " " & Btn_Last & " " Else PageStr = PageStr & (" " & Btn_Next & " " & Btn_Last & " ") End If If ShowAllPages = True Then PageStr = PageStr & "GO:" End If End If Response.Write (PageStr) End Sub '************************************************** '函数名:ShowPagePara '作 用:显示“上一页 下一页”等信息 '参 数:filename ----链接地址 ' TotalNumber ----总数量 ' MaxPerPage ----每页数量 ' ShowAllPages ---是否用下拉列表显示所有页面以供跳转。 ' strUnit ----计数单位,CurrentPage--当前页,ParamterStr参数 '返回值:无返回值 '************************************************** Public Function ShowPagePara(totalnumber, MaxPerPage, FileName, ShowAllPages, strUnit, CurrentPage, ParamterStr) Dim N, I, PageStr Const Btn_First = "9" '定义第一页按钮显示样式 Const Btn_Prev = "3" '定义前一页按钮显示样式 Const Btn_Next = "4" '定义下一页按钮显示样式 Const Btn_Last = ":" '定义最后一页按钮显示样式 PageStr = "" If totalnumber Mod MaxPerPage = 0 Then N = totalnumber \ MaxPerPage Else N = totalnumber \ MaxPerPage + 1 End If If N > 1 Then PageStr = PageStr & ("
    页次:" & CurrentPage & "/" & N & "页 共有:" & totalnumber & strUnit & " 每页:" & MaxPerPage & strUnit & " ") If CurrentPage < 2 Then PageStr = PageStr & Btn_First & " " & Btn_Prev & " " Else PageStr = PageStr & ("" & Btn_First & " " & Btn_Prev & " ") End If If N - CurrentPage < 1 Then PageStr = PageStr & " " & Btn_Next & " " & Btn_Last & " " Else PageStr = PageStr & (" " & Btn_Next & " " & Btn_Last & " ") End If If ShowAllPages = True Then PageStr = PageStr & ("转到: ") End If PageStr = PageStr & "
    " End If ShowPagePara = PageStr End Function Sub ShowPageParamter(totalnumber, MaxPerPage, FileName, ShowAllPages, strUnit, CurrentPage, ParamterStr) Response.Write (ShowPagePara(totalnumber, MaxPerPage, FileName, ShowAllPages, strUnit, CurrentPage, ParamterStr)) End Sub '*********************************************************************************************************** '函数名:ReturnLabelFolderTree '作 用:显示标签目录列表。 '参 数:SelectID ---- 默认目录树ID号,ChannelID频道ID号,FolderType目录类型 0系统函数标签目录,1自由标签目录 '返回值:标签目录列表 '************************************************************************************************************* Public Function ReturnLabelFolderTree(SelectID, FolderType) Dim TempStr,ID,FolderName SelectID = Trim(SelectID) If FolderType = "" Then FolderType = 0 TempStr = "" ReturnLabelFolderTree = TempStr End Function '************************************************************************************ '函数名:ReturnSubLabelFolderTree '作 用:查找并返子树数据。 '参 数:ParentID ----父节点ID, FolderID ----选择项ID '返回值:标签目录子树列表 '************************************************************************************ Public Function ReturnSubLabelFolderTree(ParentID, FolderID) Dim SubTypeList, SubRS, SpaceStr, k, Total, Num,FolderName, ID,TJ Set SubRS = Server.CreateObject("ADODB.RECORDSET") SubRS.Open ("Select count(ID) AS total from KS_LabelFolder Where ParentID='" & ParentID & "'"), Conn, 1, 1 Total = SubRS("Total") SubRS.Close SubRS.Open ("Select ID,FolderName,TS from KS_LabelFolder Where ParentID='" & ParentID & "' Order BY AddDate Desc"), Conn, 1, 1 Num = 0 Do While Not SubRS.EOF Num = Num + 1:SpaceStr = "" TJ = UBound(Split(SubRS(2), ",")) For k = 1 To TJ - 1 If k = 1 And k <> TJ - 1 Then SpaceStr = SpaceStr & "  │" ElseIf k = TJ - 1 Then If Num = Total Then SpaceStr = SpaceStr & "  └ " Else SpaceStr = SpaceStr & "  ├ " End If Else SpaceStr = SpaceStr & "  │" End If Next ID = Trim(SubRS(0)) FolderName = Trim(SubRS(1)) If FolderID = ID Then SubTypeList = SubTypeList & "" Else SubTypeList = SubTypeList & "" End If SubTypeList = SubTypeList & ReturnSubLabelFolderTree(ID, FolderID) SubRS.MoveNext Loop SubRS.Close:Set SubRS = Nothing:ReturnSubLabelFolderTree = SubTypeList End Function '*********************************************************************************************************** '函数名:ReturnLabelInfo '参 数:LabelName ---- 默认标签名称,FolderID---标签目录ID号,Descript---标签描述 '返回值:标签基本信息 '************************************************************************************************************* Public Function ReturnLabelInfo(LabelName, FolderID, Descript) ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" ") ' ReturnLabelInfo = ReturnLabelInfo & ("
    ") If g("PageTitle")<>"" Then ReturnLabelInfo = ReturnLabelInfo & G("PageTitle") Else ReturnLabelInfo = ReturnLabelInfo & (" 修 改 标 签 属 性") End If ReturnLabelInfo = ReturnLabelInfo & ("
    标签名称") ReturnLabelInfo = ReturnLabelInfo & (" ") ReturnLabelInfo = ReturnLabelInfo & (" * 调用格式""{LB_标签名称}""
    标签目录 " & ReturnLabelFolderTree(FolderID, 0) & " 请选择标签归属目录,以便日后管理标签
    ") End Function '**************************************************************************************************************************** '函数名:ReturnJSInfo '参 数:JSID--JSID号,JSName ---- 默认JS名称,JSFileName----JS文件名,FolderID---标签目录ID号,FolderType---目录类型,Descript---标签描述 '返回值:标签基本信息 '******************************************************************************************************************************* Public Function ReturnJSInfo(JSID, JSName, JSFileName, FolderID, FolderType, Descript) ReturnJSInfo = "" ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & ("
    ") ReturnJSInfo = ReturnJSInfo & ("
    JS基本信息") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & ("
    JS 名 称") ReturnJSInfo = ReturnJSInfo & ("  ") ReturnJSInfo = ReturnJSInfo & (" * 例如JS名称:"推荐文章列表",则在模板中调用:"{JS_推荐文章列表}"(注意英文大小写及全半角)。
    JS文件名") If JSID <> "" Then ReturnJSInfo = ReturnJSInfo & (" | 等特殊符号"" value=""" & JSFileName & """>") Else ReturnJSInfo = ReturnJSInfo & (" | 等特殊符号"" value=""" & JSFileName & """>") End If ReturnJSInfo = ReturnJSInfo & (" * 例如 "News.js" 一定要以扩展名 ".js"结束
    存放目录 " & ReturnLabelFolderTree(FolderID, FolderType) & "
    JS 描 述") ReturnJSInfo = ReturnJSInfo & (" ") ReturnJSInfo = ReturnJSInfo & (" 请在此输入JS的说明,方便以后查找
    ") ReturnJSInfo = ReturnJSInfo & ("
    ") '采集搜索参数 ReturnJSInfo = ReturnJSInfo & ("") ReturnJSInfo = ReturnJSInfo & ("") ReturnJSInfo = ReturnJSInfo & ("") ReturnJSInfo = ReturnJSInfo & ("") End Function '************************************************** '函数名:ReturnDateFormat '作 用:返回系统支持的日期格式 '参 数:SelectDate 预定选中的日期格式 '************************************************** Public Function ReturnDateFormat(SelectDate) Dim TempFormatDateStr, Str If CStr(SelectDate) = "0" Then TempFormatDateStr = (" ") Else TempFormatDateStr = (" ") End If If CStr(SelectDate) = "1" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "2" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "3" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "4" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "5" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "6" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "7" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "8" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "9" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "10" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "11" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "12" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "13" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "14" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "15" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "16" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "17" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "21" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "22" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "23" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "24" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "25" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "26" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "27" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "28" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "29" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "30" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "31" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "32" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "33" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "34" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "35" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "36" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "37" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "41" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "42" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "43" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "44" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "45" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "46" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "47" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "48" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "49" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "50" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "51" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "52" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "53" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "54" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "55" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "56" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") If CStr(SelectDate) = "57" Then Str = " Selected" Else Str = "" TempFormatDateStr = TempFormatDateStr & ("") ReturnDateFormat = TempFormatDateStr End Function '************************************************** '函数名:ReturnOpenTypeStr '作 用:返回系统支持的打开窗口方式(带可输入的下拉框) '参 数:SelectValue 预定选中的链接目标 '************************************************** Public Function ReturnOpenTypeStr(SelectValue) ReturnOpenTypeStr = "
    链接目标" ReturnOpenTypeStr = ReturnOpenTypeStr & "" ReturnOpenTypeStr = ReturnOpenTypeStr & "" ReturnOpenTypeStr = ReturnOpenTypeStr & "" ReturnOpenTypeStr = ReturnOpenTypeStr & "" ReturnOpenTypeStr = ReturnOpenTypeStr & "
    " End Function '分页样式 Public Function ReturnPageStyle(PageStyle) ReturnPageStyle = " 分页样式" ReturnPageStyle = ReturnPageStyle & " " End Function '专题显示样式 Public Function ReturnSpecialStyle(Sel) ReturnSpecialStyle= "显示样式 " End Function '************************************************** '函数名:ReturnPictureStyle '作 用:返回图片显示方式的标签(标签中心调用) '参 数:PicStyle--默认选择的样式 '************************************************** Public Function ReturnPictureStyle(PicStyle) If PicStyle = "1" Then ReturnPictureStyle = ("") Else ReturnPictureStyle = ReturnPictureStyle & ("") If PicStyle = "2" Then ReturnPictureStyle = ReturnPictureStyle & ("") Else ReturnPictureStyle = ReturnPictureStyle & ("") If PicStyle = "3" Then ReturnPictureStyle = ReturnPictureStyle & ("") Else ReturnPictureStyle = ReturnPictureStyle & ("") If PicStyle = "4" Then ReturnPictureStyle = ReturnPictureStyle & ("") Else ReturnPictureStyle = ReturnPictureStyle & ("") If PicStyle = "5" Then ReturnPictureStyle = ReturnPictureStyle & ("") Else ReturnPictureStyle = ReturnPictureStyle & ("") End Function '************************************************** '函数名:ReturnFlashStyle '作 用:返回Flash显示方式的标签(标签中心调用) '参 数:PicStyle--默认选择的样式 '************************************************** Public Function ReturnFlashStyle(PicStyle) If PicStyle = "1" Then ReturnFlashStyle = ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "2" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "3" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "4" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "5" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "6" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If If PicStyle = "7" Then ReturnFlashStyle = ReturnFlashStyle & ("") Else ReturnFlashStyle = ReturnFlashStyle & ("") End If End Function '************************************************** '函数名:ReturnMovieStyle '作 用:返回影片显示方式的标签(标签中心调用) '参 数:PicStyle--默认选择的样式 '************************************************** Public Function ReturnMovieStyle(PicStyle) If PicStyle = "1" Then ReturnMovieStyle = ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "2" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "3" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "4" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "5" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "6" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If If PicStyle = "7" Then ReturnMovieStyle = ReturnMovieStyle & ("") Else ReturnMovieStyle = ReturnMovieStyle & ("") End If End Function '************************************************** '函数名:ReturnProductStyle '作 用:返回图片显示方式的标签(标签中心调用) '参 数:PicStyle--默认选择的样式 '************************************************** Public Function ReturnProductStyle(PicStyle) ReturnProductStyle="" End Function '商品按钮显示方式 Function ReturnProductButton(Sel) ReturnProductButton="" End Function '商品价格显示方式 Function ReturnProductPrice(Sel) ReturnProductPrice="" For J = 1 To TotalPage If J = CurrPage Then SelectStr = " selected" Else SelectStr = "" End If If J = 1 Then PageStr = PageStr & "" Else PageStr = PageStr & "" End If Next PageStr = PageStr & "" End If GetPageList=PageStr &"" End Function '************************************************************************************* '函数名:GetClassID '作 用:生成新目录或频道的ID号,生成目录ID 年+10位随机 '参 数:无 '************************************************************************************* Public Function GetClassID() Dim RSC:Set RSC=Server.CreateObject("ADODB.RECORDSET") Do While True GetClassID = Year(Now()) & MakeRandom(10) RSC.Open "Select ID from KS_Class Where ID='" & GetClassID & "'", Conn, 1, 1 If RSC.EOF And RSC.BOF Then Exit Do Loop RSC.Close:Set RSC = Nothing End Function '************************************************************************************* '函数名:GetGQTypeName '作 用:获得供求的交易类别名称 '参 数:TypeID '************************************************************************************* Public Function GetGQTypeName(TypeID) If Not IsNumeric(TypeID) Then GetGQTypeName="":Exit Function Dim KS_RS_Obj:Set KS_RS_Obj=Server.CreateObject("ADODB.RECORDSET") KS_RS_Obj.Open "Select TypeName,TypeColor From KS_GQType Where TypeID=" & TypeID,Conn,1,1 If Not KS_RS_Obj.Eof Then GetGQTypeName="" & KS_RS_Obj(0)& "" Else GetGQTypeName="" End If KS_RS_Obj.Close:Set KS_RS_Obj=Nothing End Function '返回供求交易类型列表 '参数:Flag:1-标签调用 0-添加信息时调用 Public Function ReturnGQType(SelID,Flag) Dim SQL,K,RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open "Select TypeID,TypeName,TypeColor From KS_GQType Order By TypeID",Conn,1,1 If Flag=1 Then ReturnGQType="" ReturnGQType=ReturnGQType & "" End If SQL=RS.GetRows(-1):RS.CLose:Set RS=Nothing For K=0 To Ubound(SQL,2) If Cint(SelID)=sql(0,k) Then ReturnGQType=ReturnGQType & "" else ReturnGQType=ReturnGQType & "" end if Next ReturnGQType=ReturnGQType & "" End Function '************************************************************************************* '函数名:GetInfoID '作 用:生成文章,图片或下载等的唯一ID '参 数:ChannelID--频道ID '************************************************************************************* Public Function GetInfoID(ChannelID) On Error Resume Next Dim RSC, TableNameStr Set RSC=Server.CreateObject("ADODB.RECORDSET") Select Case C_S(ChannelID,6) Case 1:TableNameStr = "Select NewsID From " & KS.C_S(ChannelID,2) & " Where NewsID='" Case 2:TableNameStr = "Select PicID From " & KS.C_S(ChannelID,2) & " Where PicID='" Case 3:TableNameStr = "Select DownID From " & KS.C_S(ChannelID,2) & " Where DownID='" Case 4:TableNameStr = "Select FlashID From " & KS.C_S(ChannelID,2) & " Where FlashID='" Case 5:TableNameStr = "Select ProID From " & KS.C_S(ChannelID,2) & " Where ProID='" Case 7:TableNameStr = "Select MovieID From " & KS.C_S(ChannelID,2) & " Where MovieID='" Case 8:TableNameStr = "Select GQID From " & KS.C_S(ChannelID,2) & " Where GQID='" End Select Do While True GetInfoID = Replace(Replace(Replace(Replace(Replace(Replace(Replace(Now(), "-", ""), " ", ""), ":", ""), "PM", ""), "AM", ""), "上午", ""), "下午", "") & MakeRandom(3) RSC.Open TableNameStr & GetInfoID & "'", Conn, 1, 1 If RSC.EOF And RSC.BOF Then Exit Do Loop RSC.Close:Set RSC = Nothing End Function '************************************************************************************* '函数名:ReplaceInnerLink '作 用:替换站内链接 '参 数:Content-待替换内容 '************************************************************************************* Public Function ReplaceInnerLink(Content) If Not IsObject(Application(SiteSN & "_InnerLink")) then Dim Rs:Set Rs = Conn.Execute("Select Title,Url,OpenType From KS_InnerLink Where OpenTF=1 Order By ID") Set Application(SiteSN & "_InnerLink")=RecordsetToxml(Rs,"InnerLink","InnerLinkList") Set Rs = Nothing end if Dim Node For Each Node In Application(SiteSN & "_InnerLink").DocumentElement.SelectNodes("InnerLink") If InStr(Content,Node.selectSingleNode("@ks0").text)>0 Then Dim OpenTypeStr:OpenTypeStr = G_O_T_S(Node.selectSingleNode("@ks2").text) Content= Replace(Content,Node.selectSingleNode("@ks0").text,""&Node.selectSingleNode("@ks0").text&"") End if Next ReplaceInnerLink = Content End Function '============================================================= '函数作用:判断来源URL是否来自外部 '============================================================= Public Function CheckOuterUrl() On Error Resume Next Dim server_v1, server_v2 server_v1 = Replace(LCase(Trim(Request.ServerVariables("HTTP_REFERER"))), "http://", "") server_v2 = LCase(Trim(Request.ServerVariables("SERVER_NAME"))) CheckOuterUrl = True If Mid(server_v1,8,len(server_v2))=server_v2 Then CheckOuterUrl=False End Function '加密 Function Encrypt(ecode) dim texts,i for i=1 to len(ecode) texts=texts & chr(asc(mid(ecode,i,1))+3) next Encrypt = texts End Function '解密 Function Decrypt(dcode) dim texts,i for i=1 to len(dcode) texts=texts & chr(asc(mid(dcode,i,1))-3) next Decrypt=texts End Function '匹配 img src,结果以|隔开 Function GetImgSrcArr(strng) Dim regEx,Match,Matches,values Set regEx = New RegExp regEx.Pattern = "src\=.+?\.(gif|jpg)" regEx.IgnoreCase = true regEx.Global = True Set Matches = regEx.Execute(strng) For Each Match in Matches values=values&Match.Value&"|" Next GetImgSrcArr = Replace(Replace(Replace(Replace(values,"'",""),"""",""),"src=",""),Setting(2),"") If GetImgSrcArr<>"" Then GetImgSrcArr = left(GetImgSrcArr,len(GetImgSrcArr)-1) End Function '取得Request.Querystring 或 Request.Form 的值 Public Function G(Str) G = Replace(Replace(Request(Str), "'", ""), """", "") End Function Function DelSql(Str) Dim SplitSqlStr,SplitSqlArr,I SplitSqlStr="dbcc|alter|drop|*|and|exec|or |insert|select|delete|update|count |master|truncate|declare|char|mid|chr|set |where|xp_cmdshell" SplitSqlArr = Split(SplitSqlStr,"|") For I=LBound(SplitSqlArr) To Ubound(SplitSqlArr) If Instr(LCase(Str),SplitSqlArr(I))>0 Then Response.Write "" Response.End End if Next DelSql = Str End Function '取得Request.Querystring 或 Request.Form 的值 Public Function S(Str) S = DelSql(Replace(Replace(Request(Str), "'", ""), """", "")) End Function '读Cookies值 Public Function C(Str) C=DelSql(Request.Cookies(SiteSN)(Str)) End Function '关闭采集数据库对象 Public Sub CloseConnItem() On Error Resume Next If IsObject(ConnItem) Then ConnItem.Close:Set ConnItem = Nothing End If End Sub '文章自动分页 '参数:Content-文章内容 SplitPageStr-文章分隔线 PerPageLen-每页大约字符数 Function AutoSplitPage(Content,SplitPageStr,PerPageLen) on error resume next Dim Inti,StrTrueContent,iPageLen,DLocation,XLocation,CurrContent,i,currlen If Content="" Or PerPageLen=0 Or Instr(1,Content,SplitPageStr)>0 Then AutoSplitPage=Content:Exit Function Inti=instr(1,Content,"<"):i=0 If inti=0 then '不存在Html标记 do while i< strlength(Content) i=i+1 dim c:c=Asc(Mid(Content,i,1)) if Err.Number <> 0 Then Err.Clear:currlen=currlen+2 else currlen=currlen+1 if currlen>=PerPageLen and mid(Content,i+1)<>"" then Content=left(Content,i)&SplitPageStr&mid(Content,i+1):i=i+10:currlen=0 loop AutoSplitPage=Content:Exit Function Else StrTrueContent=left(Content,Inti-1):iPageLen=strLength(StrTrueContent):inti=inti+1:iPageLen=0 do while instr(Inti,Content,">")<>0 DLocation=instr(Inti,Content,">") XLocation=instr(DLocation,Content,"<") If XLocation>DLocation+1 then Inti=XLocation:StrTrueContent=mid(Content,DLocation+1,XLocation-DLocation-1):iPageLen=iPageLen+strLength(StrTrueContent) If iPageLen>PerPageLen then CurrContent=Lcase(left(Content,XLocation-1)) If AutoSplitPageTF(CurrContent,"table|a|b>|i>|strong|div")=true then Content=left(Content,XLocation-1)&SplitPageStr&mid(Content,XLocation):iPageLen=0 End If ElseIf XLocation=0 then Exit Do ElseIf XLocation=DLocation+1 then Inti=XLocation End If loop End If AutoSplitPage=Content End Function '结合以上函数使用 Function AutoSplitPageTF(TempStr,HtmlTagStr) Dim BeginHtmlTagNum,EndHtmlTagNum,HtmlTagArr,i If TempStr="" Or HtmlTagStr="" Then AutoSplitPageTF=False:Exit Function HtmlTagArr=split(HtmlTagStr,"|") For i = 0 to Ubound(HtmlTagArr) Dim BeginHtmlTag:BeginHtmlTag="<"&HtmlTagArr(i) Dim EndHtmlTag:EndHtmlTag ="0 Inti=instr(Inti+1,TempStr,BeginHtmlTag):BeginHtmlTagNum=BeginHtmlTagNum+1 Loop Inti=0 do while instr(Inti+1,TempStr,EndHtmlTag)<>0 Inti=instr(Inti+1,TempStr,EndHtmlTag):EndHtmlTagNum=EndHtmlTagNum+1 Loop If EndHtmlTagNum=BeginHtmlTagNum then AutoSplitPageTF=true Else AutoSplitPageTF=False:Exit Function Next End Function Public Function HTMLEncode(fString) If Not IsNull(fString) then fString = replace(fString, ">", ">") fString = replace(fString, "<", "<") fString = Replace(fString, CHR(32), " ") fString = Replace(fString, CHR(9), " ") fString = Replace(fString, CHR(34), """) fString = Replace(fString, CHR(39), "'") fString = Replace(fString, CHR(13), "") fString = Replace(fString, CHR(10) & CHR(10), "

    ") fString = Replace(fString, CHR(10), "
    ") HTMLEncode = fString End If End Function Public Function HTMLCode(fString) If Not IsNull(fString) then fString = replace(fString, ">", ">") fString = replace(fString, "<", "<") 'fString = Replace(fString, " "," ") fString = Replace(fString, """, CHR(34)) fString = Replace(fString, "'", CHR(39)) fString = Replace(fString, "

    ",CHR(10) & CHR(10)) fString = Replace(fString, "
    ", CHR(10)) HTMLCode = fString End If End Function Public Function IsObjInstalled(strClassString) On Error Resume Next IsObjInstalled = False Err = 0 Dim xTestObj:Set xTestObj = Server.CreateObject(strClassString) If 0 = Err Then IsObjInstalled = True Set xTestObj = Nothing Err = 0 End Function Public Function IsExpired(strClassString) On Error Resume Next IsExpired = True Err = 0 Dim xTestObj:Set xTestObj = Server.CreateObject(strClassString) If 0 = Err Then Select Case strClassString Case "Persits.Jpeg" If xTestObjResponse.Expires > Now Then IsExpired = False End If Case "wsImage.Resize" If InStr(xTestObj.errorinfo, "已经过期") = 0 Then IsExpired = False End If Case "SoftArtisans.ImageGen" xTestObj.CreateImage 500, 500, RGB(255, 255, 255) If Err = 0 Then IsExpired = False End If End Select End If Set xTestObj = Nothing Err = 0 End Function Public Function ExpiredStr(I) Dim ComponentName(3) ComponentName(0) = "Persits.Jpeg" ComponentName(1) = "wsImage.Resize" ComponentName(2) = "SoftArtisans.ImageGen" ComponentName(3) = "CreatePreviewImage.cGvbox" If IsObjInstalled(ComponentName(I)) Then If IsExpired(ComponentName(I)) Then ExpiredStr = ",但已过期" Else ExpiredStr = "" End If ExpiredStr = " √支持" & ExpiredStr Else ExpiredStr = "×不支持" End If End Function '======================================会员相关函数==================================== '取得会员组选项--下拉列表 参数:Selected--默认选项 Public Function GetUserGroup_Option(Selected) Dim RSObj:Set RSObj=Server.CreateObject("Adodb.Recordset") RSObj.Open "Select ID,GroupName From KS_UserGroup",Conn,1,1 Do While Not RSObj.Eof IF Selected=RSObj(0) Then GetUserGroup_Option=GetUserGroup_Option & "" Else GetUserGroup_Option=GetUserGroup_Option & "" End If RSObj.MoveNext Loop RSObj.Close:Set RSObj=Nothing End Function '取得会员组选项--多选列表 参数:SelectArr--默认选择项以","隔开,RowNum--每行显示选项数 Public Function GetUserGroup_CheckBox(OptionName,SelectArr,RowNum) Dim n:n=0 Dim RSObj:Set RSObj=Server.CreateObject("Adodb.Recordset") IF RowNum<=0 Then RowNum=3 RSObj.Open "Select ID,GroupName From KS_UserGroup",Conn,1,1 GetUserGroup_CheckBox="" Do While Not RSObj.Eof GetUserGroup_CheckBox=GetUserGroup_CheckBox & "" For N=1 To RowNum GetUserGroup_CheckBox=GetUserGroup_CheckBox & "" RSObj.MoveNext If RSObj.Eof Then Exit For Next GetUserGroup_CheckBox=GetUserGroup_CheckBox & "" If RSObj.Eof Then Exit Do Loop GetUserGroup_CheckBox=GetUserGroup_CheckBox & "
    " If FoundInArr(SelectArr,RSObj(0),",")<>0 Then GetUserGroup_CheckBox=GetUserGroup_CheckBox & "" & RSObj(1) & "    " Else GetUserGroup_CheckBox=GetUserGroup_CheckBox & "" & RSObj(1) & "    " End IF GetUserGroup_CheckBox=GetUserGroup_CheckBox & "
    " RSObj.Close:Set RSObj=Nothing End Function '取得用户组名称 Public Function GetUserGroupName(GroupID) On Error Resume Next GetUserGroupName=Conn.Execute("Select GroupName From KS_UserGroup Where ID=" & GroupID)(0) if err then GetUserGroupName="" End Function '会员投稿文章,图片,下载等增加积分,发送站内短信操作 '参数ChannelID-频道ID,UserName---用户名称,InfoTitle---投稿的主题 Public Sub SignUserInfoOK(ChannelID,UserName,InfoTitle) IF Not IsNumeric(ChannelID) Then Exit Sub Dim RSObj:Set RSObj=Server.CreateObject("ADODB.RECORDSET") RSObj.Open "Select Money,Point,Score,ArticleNum,PhotoNum,SoftNum,FlashNum From KS_User Where UserName='" & UserName & "'",Conn,1,3 IF Not RSObj.Eof Then RSObj(0)=RSObj(0)+C_S(ChannelID,18) RSObj(1)=RSObj(1)+C_S(ChannelID,19) RSObj(2)=RSObj(2)+C_S(ChannelID,20) Select Case ChannelID Case 1:RSObj(3)=RSObj(3)+1 Case 2:RSObj(4)=RSObj(4)+1 Case 3:RSObj(5)=RSObj(5)+1 Case 4:RSObj(6)=RSObj(6)+1 End Select RSObj.Update '成功则发送站内通知信件 Dim Sender:Sender=Setting(0) Dim Title:Title="恭喜,您发表的稿件[" & InfoTitle & "]已被签收!!!" Dim Message:Message="稿件标题:" & InfoTitle &"
    "_ & "获得金钱:" & C_S(ChannelID,18) & " 元人民币
    "_ & "获得点券:" & C_S(ChannelID,19) & " " & Setting(46) & Setting(45) & "
    "_ & "获得积分:" & C_S(ChannelID,20) & " 分积分
    "_ & "
    备注:此信息由系统自动发布,请不要回复!!!" Call PointInOrOut(ChannelID,0,UserName,1,C_S(ChannelID,19),"系统","发表稿件[" & InfoTitle & "]所得") Call SendInfo(UserName,Sender,Title,Message) End IF RSObj.Close:Set RSObj=Nothing End Sub '功能:会员点券明细出入函数 '参数:Channelid-模块ID,InfoID-信息ID,UserName-用户名,InOrOutFlag-操作类型1收入2支出,Point-交易点数,User-操作员,Descript-操作备注 Public Function PointInOrOut(ChannelID,InfoID,UserName,InOrOutFlag,Point,User,Descript) If Not IsNumeric(InOrOutFlag) Or Not IsNumeric(Point) Then PointInOrOut=false:Exit Function Dim PointParam If InOrOutFlag=1 Then PointParam="Set Point=Point+" & Point ElseIF InOrOutFlag=2 Then PointParam="Set Point=Point-" & Point Else PointInOrOut=false:Exit Function End If on error resume next Conn.Execute("Update KS_User " & PointParam & " Where UserName='" & UserName & "'") Conn.Execute("Insert into KS_LogPoint(ChannelID,InfoID,UserName,InOrOutFlag,Point,Times,[User],Descript,Adddate,IP) values(" & ChannelID & "," & InfoID & ",'" & UserName & "',"& InOrOutFlag & "," & Point & ",1,'" & replace(User,"'","""") & "','" & replace(Descript,"'","""") & "'," & SqlNowString & ",'" & replace(getip,"'","""") & "')") IF Err Then PointInOrOut=false Else PointInOrOut=true End Function '会员有效期明细出入函数 '参数:UserName,InOrOutFlag,Edays,User,Descript Function EdaysInOrOut(UserName,InOrOutFlag,Edays,User,Descript) If Not IsNumeric(InOrOutFlag) Or Not IsNumeric(Edays) Then EdaysInOrOut=false:Exit Function Conn.Execute("insert into KS_LogEdays(UserName,InOrOutFlag,Edays,[user],descript,adddate,ip) values('" & UserName & "'," & InOrOutFlag & "," & Edays & ",'" & user & "','" & replace(descript,"'","""") & "'," & SqlNowString & ",'" & getip & "')") IF Err Then EdaysInOrOut=false Else EdaysInOrOut=true End Function '发送站内信息 '参数Incept--接收者,Sender-发送者,title--主题,Content--信件内容 Public Sub SendInfo(Incept,Sender,title,Content) Conn.Execute("insert Into KS_Message(Incept,Sender,Title,Content,SendTime,Flag,IsSend,DelR,DelS) values('" & Incept & "','" & Sender & "','" & replace(Title,"'","""") & "','" & replace(Content,"'","""") & "'," & SqlNowString & ",0,1,0,0)") End Sub '====================================================================================== End Class %> <% Class RefreshFunction Private KS,DomainStr Private KSRFOBJ,KSLKOBJ Private Sub Class_Initialize() Set KS=New PublicCls DomainStr=KS.GetDomain Set KSLKOBJ=New RefreshLocationCls End Sub Private Sub Class_Terminate() Set KS=Nothing Set KSLKOBJ=Nothing End Sub '************************************************** '函数名:GetFunctionLabel '作 用:取得函数标签 如 sssssss{=GetFlashByPlayer(100,50)}sssss,返回{=GetFlashByPlayer(100,50)} '参数:Content--查找的内容,MatchStr--前缀匹配字符串 '返回值:函数标签 '************************************************** Function GetFunctionLabel(Content, MatchStr) Dim regEx, Matches, Match,N Set regEx = New RegExp regEx.Pattern = MatchStr & "[^{\=}]*}" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(Content) GetFunctionLabel = "" For Each Match In Matches On Error Resume Next N=N+1 IF N=1 Then GetFunctionLabel = Match.Value Else GetFunctionLabel=GetFunctionLabel & "@@@" & Match.Value End IF Next End Function '************************************************** '函数名:GetFunctionLabelParam '作 用:取得标签的参数,用“,”隔开 如 {=GetFlashByPlayer(100,50)},返回100,50 '参数:Content--查找的内容,MatchStr--前缀匹配字符串 '返回值:返回用","隔开的字符串参数 '************************************************** Function GetFunctionLabelParam(Content, MatchStr) GetFunctionLabelParam = Replace(Content, MatchStr & "(", "") GetFunctionLabelParam = Replace(Replace(GetFunctionLabelParam, ")}", ""), """", "") End Function '************************************************** '函数名:ChangeLableToFunction '作 用:将标签转换为函数执行 '参 数: LabelContent ----标签参数 '返回值:函数执行结果 '************************************************** Function ChangeLableToFunction(LabelContent) Dim L_Arr:L_Arr = Split(LabelContent, ",") If L_Arr(0) = "" Then ChangeLableToFunction = "" Exit Function End If Select Case UCase(L_Arr(0)) Case "GETSLIDE" '幻灯片图片 ChangeLableToFunction = GetSlide(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13)) Case "GETROLLS" '连续滚动图片 ChangeLableToFunction = GetRolls(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18)) Case "GETLOCATION" '网站位置导航函数 ChangeLableToFunction = KSLKOBJ.GetLocation(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6)) Case "GETBLOGLIST" '个人空间列表 ChangeLableToFunction = GetBlogList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14),L_Arr(15),L_Arr(16),L_Arr(17),L_Arr(18),L_Arr(19)) Case "GETBLOGINFOLIST" '最新日志列表函数 ChangeLableToFunction = GetBlogInfoList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14),L_Arr(15), L_Arr(16),L_Arr(17),L_Arr(18),L_Arr(19),L_Arr(20),L_Arr(21),L_Arr(22)) Case "GETXCLIST" '最新相册列表函数 ChangeLableToFunction = GetXCList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14),L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20)) Case "GETGROUPLIST" '最新圈子列表函数 ChangeLableToFunction = GetGroupList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14),L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20)) Case "GETANNOUNCELIST" '网站公告列表函数 ChangeLableToFunction = GetAnnounceList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16)) Case "GETLINKLIST" '友情链接列表函数 ChangeLableToFunction = GetLinkList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9)) Case "GETNAVIGATION" '频道或栏目导航函数 ChangeLableToFunction = GetNavigation(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15)) Case "GETARTICLELIST" '栏目文章列表函数 ChangeLableToFunction = GetArticleList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20),L_Arr(21), L_Arr(22),L_Arr(23), L_Arr(24),L_Arr(25), L_Arr(26),L_Arr(27), L_Arr(28),L_Arr(29), L_Arr(30), L_Arr(31), L_Arr(32)) Case "GETNOTRULEARTICLELIST" '不规则栏目文章列表函数 ChangeLableToFunction = GetNotRuleArticleList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20),L_Arr(21),L_Arr(22),L_Arr(23)) Case "GETCIRARTICLELIST" '循环列出文章栏目函数 ChangeLableToFunction = GetCirArticleList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30)) Case "GETLASTARTICLELIST" '文章分页列表函数 Application("PageParam")=LabelContent ChangeLableToFunction = GetLastArticleList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28)) Case "GETPICARTICLELIST" '图片文章列表 ChangeLableToFunction = GetPicArticleList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26)) Case "GETMARQUEEARTICLE" '滚动文章 ChangeLableToFunction = GetMarqueeArticle(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15),L_Arr(16),L_Arr(17)) Case "GETCORRELATIVEARTICLE" '相关文章 ChangeLableToFunction = GetCorrelativeArticle(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25)) Case "GETSPECIALLIST" '频道专题汇总 ChangeLableToFunction = GetSpecialList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26)) Case "GETCIRSPECIALLIST" '循环显示频道专题汇总函数 ChangeLableToFunction = GetCirSpecialList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28)) Case "GETLASTSPECIALLIST" '分页显示频道专题汇总函数 Application("PageParam")=LabelContent ChangeLableToFunction = GetLastSpecialList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22),L_Arr(23),L_Arr(24)) Case "GETPICTURELIST" '栏目图片列表 ChangeLableToFunction = GetPictureList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30), L_Arr(31), L_Arr(32)) Case "GETCIRPICTURELIST" '循环栏目图片列表 ChangeLableToFunction = GetCirPictureList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30), L_Arr(31), L_Arr(32), L_Arr(33)) Case "GETLASTPICTURELIST" '图片(专题)分页列表函数 Application("PageParam")=LabelContent ChangeLableToFunction = GetLastPictureList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28)) Case "GETCORRELATIVEPICTURE" '相关图片 ChangeLableToFunction = GetCorrelativePicture(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26)) Case "GETDOWNLOADLIST" '栏目下载列表函数 ChangeLableToFunction = GetDownLoadList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30)) Case "GETPICDOWNLOADLIST" '图片下载列表 ChangeLableToFunction = GetPicDownLoadList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26)) Case "GETCIRDOWNLOADLIST" '循环列出下载栏目函数 ChangeLableToFunction = GetCirDownLoadList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28)) Case "GETLASTDOWNLOADLIST" '下载分页列表函数 Application("PageParam")=LabelContent ChangeLableToFunction = GetLastDownLoadList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15),L_Arr(16),L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22),L_Arr(23),L_Arr(24),L_Arr(25),L_Arr(26)) Case "GETCORRELATIVEDOWNLOAD" '相关下载 ChangeLableToFunction = GetCorrelativeDownLoad(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18),L_Arr(19),L_Arr(20),L_Arr(21)) Case "GETPRODUCTLIST" '栏目商品列表 ChangeLableToFunction = GetProductList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30), L_Arr(31), L_Arr(32), L_Arr(33), L_Arr(34), L_Arr(35)) Case "GETCIRPRODUCTLIST" '循环商品列表 ChangeLableToFunction = GetCirProductList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28), L_Arr(29), L_Arr(30),L_Arr(31),L_Arr(32)) Case "GETLASTPRODUCTLIST" '商品分页列表函数 Application("PageParam")=LabelContent ChangeLableToFunction = GetLastProductList(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26), L_Arr(27), L_Arr(28)) Case "GETCORRELATIVEPRODUCT" '相关商品 ChangeLableToFunction = GetCorrelativeProduct(L_Arr(1), L_Arr(2), L_Arr(3), L_Arr(4), L_Arr(5), L_Arr(6), L_Arr(7), L_Arr(8), L_Arr(9), L_Arr(10), L_Arr(11), L_Arr(12), L_Arr(13), L_Arr(14), L_Arr(15), L_Arr(16), L_Arr(17), L_Arr(18), L_Arr(19), L_Arr(20), L_Arr(21), L_Arr(22), L_Arr(23), L_Arr(24), L_Arr(25), L_Arr(26)) Case Else ChangeLableToFunction = "" Exit Function End Select End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_Slide '作 用: 通用幻灯片函数 '参 数: ChannelID模块ID,SqlStr 待查询的SQL语句,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_Slide(ChannelID,SqlStr, Width, Height, O_T_S, ShowTitle, T_Len, T_Css, ChangeTime,SlideType) Dim PicUrl, TempTitle,T_CssStr,Sinapic Dim SQL,K,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_Slide="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing IF Cint(SlideType)<>1 Then Dim ImgArrStr,LinkArrStr,TextArrStr,SinapicArrStr Dim N:N=0 For K=0 To Ubound(SQL,2) PicUrl =SQL(7,K) If Lcase(left(PicUrl,4))<>"http" then if left(PicUrl,1)="/" then PicUrl=Right(PicUrl,Len(PicUrl)-1): PicUrl=DomainStr & PicUrl TempTitle = SQL(1,K) if N=0 Then ImgArrStr=PicUrl LinkArrStr=KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) TextArrStr=TempTitle SinapicArrStr=PicUrl & "#" & TempTitle SinapicArrStr=SinapicArrStr & "#" & KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) Else ImgArrStr=ImgArrStr & "@@@" & PicUrl LinkArrStr=LinkArrStr & "@@@" & KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) TextArrStr=TextArrStr & "@@@" & TempTitle SinapicArrStr=SinapicArrStr & "@@@" & PicUrl SinapicArrStr=SinapicArrStr & "#" & TempTitle SinapicArrStr=SinapicArrStr & "#" & KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) End if N=N+1 Next if Cint(SlideType)=2 then KS_Slide=""&vbcrlf KS_Slide=KS_Slide & "" & vbcrlf elseif Cint(SlideType)=3 then KS_Slide=""&vbcrlf KS_Slide=KS_Slide & "

    " & vbcrlf KS_Slide=KS_Slide & "" & vbcrlf elseif Cint(SlideType)=4 then KS_Slide=""&vbcrlf KS_Slide=KS_Slide & "
    " & vbcrlf KS_Slide=KS_Slide & "" & vbcrlf KS_Slide=KS_Slide & "
    " & vbcrlf End if Else KS_Slide = "" & vbCrLf) End if End Function '取得幻灯片,结合以上函数 Function GetSlide(ChannelID,FolderID, I_S_C, Width, Height, Num, OpenType, ShowTitle, T_Len, T_Css, ChangeTime,SlideType,SpecialID) Dim SqlStr, Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Select Case KS.C_S(ChannelID,6) Case 1:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,PicUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 AND PicNews=1 AND Slide=1 And " & KS.GetSpecialPara(SpecialID) & " ORDER BY ID Desc" Case 2:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 AND Slide=1 And " & KS.GetSpecialPara(SpecialID) & " ORDER BY ID Desc" Case 3:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 AND Slide=1 And " & KS.GetSpecialPara(SpecialID) & " ORDER BY ID Desc" Case 4:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM KS_Flash Where " & Param & " Verific=1 AND DelTF=0 AND Slide=1 And " & KS.GetSpecialPara(SpecialID)& " ORDER BY ID Desc" Case 5:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,0,0,Fname,0,PhotoUrl FROM KS_Product Where " & Param & " Verific=1 AND DelTF=0 AND Slide=1 ORDER BY ID Desc" Case 7:SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM KS_Movie Where " & Param & " Verific=1 AND DelTF=0 AND Slide=1 And " & KS.GetSpecialPara(SpecialID)& " ORDER BY ID Desc" End Select GetSlide = KS_Slide(ChannelID,SqlStr, Width, Height,KS.G_O_T_S(OpenType), ShowTitle, T_Len, T_Css, ChangeTime,SlideType) End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_Rolls '作 用: 通用连续图片滚动函数 '参 数: ChannelID模块ID,SqlStr 待查询的SQL语句等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_Rolls(ChannelID,SqlStr,M_Dir, M_Width, M_Height, OpenType, ShowTitle, Width, Height, M_Speed, T_Len, T_Css, BorderType, Border) Dim ImgStr, TempPicStr, T_CssStr,Title, TempTitleStr, O_T_S,Url Dim SQL,K,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_Rolls="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing T_CssStr = KS.GetCss(T_Css):O_T_S = KS.G_O_T_S(OpenType) If LCase(M_Dir) = "left" Or LCase(M_Dir) = "right" Then ImgStr = "" & vbCrLf ImgStr = ImgStr & "" & vbCrLf For K=0 To Ubound(SQL,2) Title = SQL(1,K) TempPicStr=GetPicUrl(SQL(7,K)) Url=KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) '-------------------------给图片加边框开始------------------------------------------------- Dim TempBorder If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border:TempPicStr = TempPicStr End If Dim LinkAndPicStr: LinkAndPicStr = "" TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) '-----------------------给图片加边框结束-------------------------------------------------- TempTitleStr = "" & KS.GotTopic(Title, T_Len) & "" ImgStr = ImgStr & "" & vbCrLf Next ImgStr = ImgStr & "
    " & vbCrLf ImgStr = ImgStr & "" & vbCrLf ImgStr = ImgStr & "" & vbCrLf If Cbool(ShowTitle) = True Then ImgStr = ImgStr & "" & vbCrLf End If ImgStr = ImgStr & "
    " & TempPicStr & "
    " & TempTitleStr & "
    " & vbCrLf ImgStr = ImgStr & "
    " & vbCrLf Else ImgStr = "" & vbCrLf For K=0 To Ubound(SQL,2) Title = SQL(1,K) TempPicStr=GetPicUrl(SQL(7,K)) Url=KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) '-------------------------给图片加边框开始------------------------------------------------- If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border TempPicStr = TempPicStr End If LinkAndPicStr = "" TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) '-----------------------给图片加边框结束-------------------------------------------------- TempTitleStr = "" & KS.GotTopic(Title, T_Len) & "" ImgStr = ImgStr & "" & vbCrLf Next ImgStr = ImgStr & "
    " & vbCrLf ImgStr = ImgStr & "" & vbCrLf ImgStr = ImgStr & "" & vbCrLf If Cbool(ShowTitle) = True Then ImgStr = ImgStr & "" & vbCrLf ImgStr = ImgStr & "
    " & TempPicStr & "
    " & TempTitleStr & "
    " & vbCrLf ImgStr = ImgStr & "
    " & vbCrLf End If Select Case M_Dir Case "up" KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & ImgStr KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf Case "down" KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & ImgStr KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf Case "left" KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & ImgStr KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf Case "right" KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & ImgStr KS_Rolls = KS_Rolls & "
    " & vbCrLf KS_Rolls = KS_Rolls & "" & vbCrLf End Select End Function '取得连续滚动图片 Function GetRolls(ChannelID,FolderID, I_S_C, M_Dir, SqlSort, M_Width, M_Height, OpenType, ShowTitle, Width, Height, M_Speed, Num, T_Len, T_Css, BorderType, Border,SpecialID) Dim SqlStr,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Select Case KS.C_S(ChannelID,6) Case 1:SqlStr = "SELECT top " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,PicUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Rolls=1 And PicNews=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID)& " order by IsTop Desc," & SqlSort Case 2:SqlStr = "SELECT top " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Rolls=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID) & " order by " & SqlSort Case 3:SqlStr = "SELECT top " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Rolls=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID) & " order by " & SqlSort Case 4:SqlStr = "SELECT top " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM KS_Flash Where " & Param & " Rolls=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID)& " order by " & SqlSort Case 5:SqlStr = "SELECT top " & Num & " ID,Title,Tid,0,0,Fname,0,PhotoUrl FROM KS_Product Where " & Param & " Rolls=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID)& " order by " & SqlSort Case 7:SqlStr = "SELECT top " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,0,PhotoUrl FROM KS_Movie Where " & Param & " Rolls=1 AND Verific=1 AND DelTF=0 And " & KS.GetSpecialPara(SpecialID)& " order by " & SqlSort End Select GetRolls=KS_Rolls(ChannelID,SqlStr,M_Dir, M_Width, M_Height, OpenType, ShowTitle, Width, Height, M_Speed, T_Len, T_Css, BorderType, Border) End Function '==========================================================================文章发布中心通用函数声明============================== '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_A_L '作 用:通用栏目文章列表 '参 数:SqlStr 待查询的SQL语句,M_L_S更多链接字串,O_T_S链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_A_L(ChannelID,SqlStr, M_L_S, S_C_N, O_T_S, R_H, T_Len, Col, PicTF, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) ' On Error Resume Next Dim K,I, C_N_Link, NaviStr,ColSpanNum, TempTitle,SQL,N Dim RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_A_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing Dim TotalNum:TotalNum=Ubound(SQL,2) Dim Title, T_CssStr, DateCssStr,NewImgStr,HotImgStr,DateStr T_CssStr = KS.GetCss(T_Css):DateCssStr = KS.GetCss(DateCss):R_H = KS.G_R_H(R_H):NaviStr = KS.GetNavi(NavType, Nav) If P_T=2 Then KS_A_L = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum If CBool(S_C_N) = True Then C_N_Link = "[" & KS.GetClassNP(SQL(2,K)) & "]" Title = SQL(1,K) TempTitle = GetArticleTitle(Title, T_Len, PicTF, SQL(12,K), SQL(13,K), SQL(14,K)) If Cbool(NewTF)=True And (Year(SQL(7,K))&Month(SQL(7,K))&Day(SQL(7,K)) =Year(Now)&Month(Now)&Day(Now)) Then NewImgStr="" Else NewImgStr="" If Cbool(HotTF)=True And SQL(8,K)=1 Then HotImgStr="" Else HotImgStr="" DateStr=KS.GetDCDateStr(SQL(7,K),DateRule,DateCssStr) TempTitle = "" & TempTitle & "" KS_A_L = KS_A_L & (" " & NaviStr & C_N_Link & TempTitle &NewImgStr&HotImgStr& DateStr & "" & vbCrLf) Next KS_A_L = KS_A_L & M_L_S& vbCrLf KS_A_L = KS_A_L & " " & vbCrLf KS_A_L = KS_A_L & ("
    " & vbCrLf) Else KS_A_L = "" & vbCrLf For K=0 To TotalNum KS_A_L = KS_A_L & "" & vbCrLf For I = 1 To Col If CBool(S_C_N) = True Then C_N_Link = "[" & KS.GetClassNP(SQL(2,N)) & "]" Title = SQL(1,N) TempTitle = GetArticleTitle(Title, T_Len, PicTF, SQL(12,N), SQL(13,N), SQL(14,N)) If Cbool(NewTF)=True And (Year(SQL(7,N))&Month(SQL(7,N))&Day(SQL(7,N)) =Year(Now)&Month(Now)&Day(Now)) Then NewImgStr="" Else NewImgStr="" If Cbool(HotTF)=True And SQL(8,N)=1 Then HotImgStr="" Else HotImgStr="" DateStr=KS.GetDateStr(SQL(7,N),DateRule,DateAlign,DateCssStr,Col,ColSpanNum) TempTitle = "" & TempTitle & "" If Col=1 Then KS_A_L = KS_A_L & (" " & vbCrLf) Else KS_A_L = KS_A_L & ("" & vbCrLf) End If N=N+1 If N>=TotalNum+1 Then Exit For Next KS_A_L = KS_A_L & "" & vbCrLf KS_A_L = KS_A_L & KS.GetSplitPic(SplitPic,ColSpanNum) If N>=TotalNum+1 Then Exit For Next KS_A_L = KS_A_L & M_L_S & ("
    " & (NaviStr & C_N_Link & TempTitle &NewImgStr&HotImgStr& DateStr) & "" & vbCrLf) KS_A_L = KS_A_L & ("" & vbCrLf) KS_A_L = KS_A_L & ("" & vbcrlf &"
    " & NaviStr & C_N_Link & TempTitle &NewImgStr&HotImgStr & DateStr) KS_A_L = KS_A_L & ("
    " & vbCrLf & "
    " & vbCrLf) End If End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_C_NotRule '作 用:通用不规则栏目文章列表 '参 数:ArtilceSql 待查询的SQL语句,M_L_S更多链接字串,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_C_NotRule(ChannelID,SqlStr,RowNumber, ShowNumPerRow, M_L_S, O_T_S, R_H, NavType, Nav, SplitPic, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) ' On Error Resume Next Dim I, C_N_Link, NaviStr,K,SQL Dim PreComment,PreShowComment,PreClassID,PreInfoID Dim RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_C_NotRule="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing Dim CurrTid,LinkStr,Title, T_CssStr,EndStr T_CssStr = KS.GetCss(T_Css):R_H = KS.G_R_H(R_H):NaviStr = KS.GetNavi(NavType, Nav) If Cint(P_T)=2 Then KS_C_NotRule ="" & vbCrLf & " " & vbCrLf & "" EndStr="" Else KS_C_NotRule = "" & vbCrLf & "" End If Dim II:ii=0:Dim CC:cc=0:Dim Row,str RowNumber=Cint(RowNumber):ShowNumPerRow=Cint(ShowNumPerRow) KS_C_NotRule= KS_C_NotRule & NaviStr For K=0 To Ubound(SQL,2) CurrTid = SQL(2,K):Title = Trim(SQL(1,K)) LinkStr=T_CssStr & " href=""" & KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),SQL(6,K)) & """" & O_T_S & " title=""" & Title & """" ii=ii + KS.strLength(Title) if ii>=ShowNumPerRow then cc=ii - ShowNumPerRow:cc=KS.strLength(Title) - cc:row=row+1:ii=0 IF row=RowNumber then IF cc<=5 And PreShowComment = 1 And PreComment = 1 Then KS_C_NotRule=KS_C_NotRule & "" & KS.GotTopic("评论",cc) & ""&EndStr Else KS_C_NotRule=KS_C_NotRule & ""& KS.GotTopic(Title,cc)&""&EndStr End IF KS_C_NotRule = KS_C_NotRule & (KS.GetSplitPic(SplitPic, 1)) PreComment=SQL(11,K):PreShowComment=SQL(10,K):PreClassID=CurrTid:PreInfoID=SQL(9,K) Else IF cc<=5 And PreShowComment = 1 And PreComment = 1 Then KS_C_NotRule=KS_C_NotRule & "" & KS.GotTopic("评论",cc) &""&EndStr else KS_C_NotRule=KS_C_NotRule & ""& KS.GotTopic(Title,cc)&""&EndStr end if KS_C_NotRule = KS_C_NotRule & (KS.GetSplitPic(SplitPic, 1)) PreComment=SQL(11,K):PreShowComment=SQL(10,K):PreClassID=CurrTid:PreInfoID=SQL(9,K) If Cint(P_T)=2 Then KS_C_NotRule=KS_C_NotRule & "" & NaviStr else KS_C_NotRule=KS_C_NotRule & "
    " & vbCrLf EndStr="
    " & NaviStr end if End If Else KS_C_NotRule=KS_C_NotRule & ""& Title&" " ii=ii + 1 PreComment=SQL(11,K):PreShowComment=SQL(10,K):PreClassID=CurrTid:PreInfoID=SQL(9,K) End IF if row>=RowNumber then exit For Next KS_C_NotRule = KS_C_NotRule & M_L_S If Cint(P_T)=2 Then KS_C_NotRule = KS_C_NotRule & ("" & vbCrLf &"" & vbcrlf) Else KS_C_NotRule = KS_C_NotRule & ("
    " & vbCrLf) End if End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_R_A '作 用: 通用滚动文章函数 '参 数: SqlStr 待查询的SQL语句,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_R_A(ChannelID,SqlStr, M_Width, M_Height, M_Speed, M_Dir, O_T_S, T_Len, MarqueeStyle, DateRule, M_Bgcolor, T_Css, DateCss) Dim SQL,K,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_R_A="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing Dim TempTitle, CurrTid, TitleStr,T_CssStr, DateCssStr T_CssStr = KS.GetCss(T_Css): DateCssStr = KS.GetCss(DateCss) If MarqueeStyle = 1 Then '纵向间隔滚动 KS_R_A = "
    " For K=0 To Ubound(SQL,2) CurrTid = SQL(2,K):TitleStr =SQL(1,K) TempTitle = GetArticleTitle(TitleStr, T_Len, False, SQL(8,K), SQL(9,K), SQL(10,K)) TempTitle = "
  • " & TempTitle & "" If DateRule <> "0" And DateRule <> "" Then KS_R_A = KS_R_A & (TempTitle & "  " & KS.DateFormat(SQL(7,K), DateRule) & "
  • " & vbCrLf) Else KS_R_A = KS_R_A & (TempTitle & "" & vbCrLf) End If Next KS_R_A = KS_R_A & "
    " & vbCrLf KS_R_A = KS_R_A & "" Else '默认方式 For K=0 To Ubound(SQL,2) CurrTid = SQL(2,K) TitleStr = SQL(1,K) TempTitle = GetArticleTitle(TitleStr, T_Len, False, SQL(8,K), SQL(9,K), SQL(10,K)) TempTitle = "• " & TempTitle & "" If DateRule <> "0" And DateRule <> "" Then KS_R_A = KS_R_A & (TempTitle & "  " & KS.DateFormat(SQL(7,K), DateRule) & "") Else KS_R_A = KS_R_A & TempTitle End If KS_R_A = KS_R_A & "    " Next If M_Bgcolor <> "" Then KS_R_A = "" & KS_R_A & "" Else KS_R_A = "" & KS_R_A & "" End If End If End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名: KS_PicA_L '作 用: 通用图片文章函数 '参 数: SqlStr 待查询的SQL语句,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_PicA_L(ChannelID,SqlStr, Width, Height, O_T_S, ShowTitle, PicStyle, C_Len, T_Len, Col, T_Css, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim SQL,K,N,Url,LinkAndPicStr Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open SqlStr, Conn, 1, 1 If RS.EOF Then KS_PicA_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing Dim TotalNum:TotalNum=Ubound(SQL,2) Dim TempPicStr, TempTitleStr, I,Title, T_CssStr,ArticleContent,ReturnStr T_CssStr = KS.GetCss(T_Css) If P_T=2 Then ReturnStr = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum Title = SQL(1,N):TempPicStr = SQL(7,N):TempPicStr=GetPicUrl(TempPicStr) Url=KS.GetInfoUrl(ChannelID,SQL(2,N),SQL(0,N),SQL(5,N),SQL(3,N),SQL(4,N),SQL(6,N)) LinkAndPicStr = "" TempTitleStr = GetArticleTitle(Title, T_Len, False, SQL(10,N), SQL(11,N), SQL(12,N)) TempTitleStr = "" & TempTitleStr & "" If SQL(9,N)="" Or IsNull(SQL(9,N)) Then ArticleContent=SQL(8,N) Else ArticleContent=SQL(9,N) Select Case CInt(PicStyle) Case 1:ReturnStr = ReturnStr & (" " & LinkAndPicStr & "" & vbCrLf) Case 2:ReturnStr = ReturnStr & ("" & LinkAndPicStr & "
    " & TempTitleStr & "" & vbCrLf) Case 3 ReturnStr = ReturnStr & (" " & LinkAndPicStr) If Cbool(ShowTitle) = True Then ReturnStr = ReturnStr & ("

    " & TempTitleStr &"

    ") ReturnStr = ReturnStr & ("

    " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) &"...[全文]

    "& vbCrLf) Case 4 ReturnStr = ReturnStr & (" ") If Cbool(ShowTitle) = True Then ReturnStr = ReturnStr & ("

    " & TempTitleStr &"

    ") ReturnStr = ReturnStr & ("

    " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) &"...[全文]

    " & LinkAndPicStr & ""& vbCrLf) End Select N=N+1 Next KS_PicA_L = ReturnStr & ("" & vbCrLf &"") Else ReturnStr = "" & vbCrLf For K=0 To TotalNum ReturnStr = ReturnStr & "" & vbCrLf For I = 1 To Col Title = SQL(1,N):TempPicStr = SQL(7,N):TempPicStr=GetPicUrl(TempPicStr) Url=KS.GetInfoUrl(ChannelID,SQL(2,N),SQL(0,N),SQL(5,N),SQL(3,N),SQL(4,N),SQL(6,N)) '-------------------------------加边框开始------------------------------------------------- Dim TempBorder If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border:TempPicStr = TempPicStr End If LinkAndPicStr = "" TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) TempTitleStr = GetArticleTitle(Title, T_Len, False, SQL(10,N), SQL(11,N), SQL(12,N)) TempTitleStr = "" & TempTitleStr & "" If SQL(9,N)="" Or IsNull(SQL(9,N)) Then ArticleContent=SQL(8,N) Else ArticleContent=SQL(9,N) ReturnStr = ReturnStr & ("" & vbCrLf) N=N+1 If N>=TotalNum+1 Then Exit For Next ReturnStr = ReturnStr & ("" & vbCrLf) ReturnStr = ReturnStr & ("") If N>=TotalNum+1 Then Exit For Next KS_PicA_L = ReturnStr & ("
    " & vbCrLf) Select Case CInt(PicStyle) Case 1 ReturnStr = ReturnStr & ("

    " & TempPicStr & "

    " & vbCrLf) Case 2 ReturnStr = ReturnStr & (" ") ReturnStr = ReturnStr & ("" & vbCrLf) If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & ("" & vbCrLf) End If ReturnStr = ReturnStr & ("
    " & TempPicStr & "
    " & TempTitleStr & "
    ") Case 3 ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & TempPicStr & "
    " & vbCrLf ReturnStr = ReturnStr & "" If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & "" & vbCrLf End If ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempTitleStr & "
    " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "...[全文]
    " & vbCrLf Case 4 ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & vbCrLf ReturnStr = ReturnStr & "" If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & "" & vbCrLf End If ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempTitleStr & "
    " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "...[全文]
    " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempPicStr & "
    " & vbCrLf End Select ReturnStr = ReturnStr & ("
    " & vbCrLf) End If End Function '=======================================================================================通用函数结束============================= '取得栏目文章列表 Function GetArticleList(ChannelID,FolderID,I_S_C,S_C_N, OpenType, A_P, num, R_H,T_Len, ByVal S_Str, Col, PicTF, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule,DateAlign, T_Css, DateCss,SpecialID,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetArticleList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, A_PStr,M_L_S, O_T_S,C_F_T,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") C_F_T = True Else C_F_T = False End If If FolderID = "" Then FolderID = "0" Select Case A_P Case "1":A_PStr = " And Recommend=1" Case "2":A_PStr = " And Popular=1" Case "3":A_PStr = " And Strip=1" End Select A_PStr=A_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,AddDate,Popular,NewsID,ShowComment,Comment,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 " & A_PStr & " ORDER BY IsTop Desc," & S_Str O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And FolderID <> "0" And C_F_T = False Then M_L_S = KS.GetMoreLink(P_T,Col, R_H, MoreType, MoreLink, KS.GetFolderPath(FolderID), O_T_S) GetArticleList = KS_A_L(ChannelID,SqlStr, M_L_S, S_C_N, O_T_S, R_H, T_Len, Col, PicTF, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得不规则栏目文章列表 Function GetNotRuleArticleList(ChannelID,FolderID, I_S_C, OpenType, A_P, RowNumber, ShowNumPerRow, R_H, S_Str, NavType, Nav, MoreType, MoreLink, SplitPic, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetNotRuleArticleList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, A_PStr,M_L_S, O_T_S,C_F_T,Param Dim AllowMaxNum:AllowMaxNum=1000 '限定允许在1000条,内调用 If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") C_F_T = True Else C_F_T = False End If If FolderID = "" Then FolderID="0" Select Case A_P Case "1":A_PStr = " And Recommend=1" Case "2":A_PStr = " And Popular=1" Case "3":A_PStr = " And Strip=1" End Select If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & AllowMaxNum & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,AddDate,Popular,NewsID,ShowComment,Comment,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 " & A_PStr & " ORDER BY " & S_Str O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And FolderID <> "0" And C_F_T = False Then M_L_S = KS.GetMoreLink(P_T,1, R_H, MoreType, MoreLink, KS.GetFolderPath(FolderID), O_T_S) GetNotRuleArticleList = KS_C_NotRule(ChannelID,SqlStr,RowNumber, ShowNumPerRow, M_L_S, O_T_S, R_H, NavType, Nav, SplitPic, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '循环列出文章栏目函数 Function GetCirArticleList(ChannelID,Col, FolderCss, MenuBgType, MenuBg, S_C_N, OpenType, num, R_H, T_Len, S_Str, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, PicTF,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCirArticleList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If ' If Application(KS.SiteSN & "RefreshType") = "Folder" Then Dim FolderID, SqlStr,ID,SQL,K,N,TotalNum FolderID = Application(KS.SiteSN & "RefreshFolderID") Dim RS:Set RS=Conn.Execute("Select ID From KS_Class Where ChannelID=" & ChannelID & " And DelTF=0 AND TN='" & FolderID & "' ORDER BY FolderOrder") If RS.EOF And RS.BOF Then RS.Close:Set RS = Nothing:GetCirArticleList = "": Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalNum=Ubound(SQL,2) Dim TempStr, I, MenuBgStr, ArticleListStr, O_T_S TempStr = "" & vbCrLf MenuBgStr = KS.GetMenuBg(MenuBgType, MenuBg, Col):O_T_S = KS.G_O_T_S(OpenType) For K=0 To TotalNum TempStr = TempStr & "" For I = 1 To Col ID = Trim(SQL(0,N)) TempStr = TempStr & "" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "" & vbCrLf If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " TempStr = TempStr & "
    " & KS.GetClassNP(ID) & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf ArticleListStr = GetArticleList(ChannelID,ID, True, S_C_N, OpenType, 0, num, R_H, T_Len, S_Str, 1, PicTF, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, 0,"",NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,"ajax") If Trim(ArticleListStr) = "" Then ArticleListStr = "
  • 此栏目下没有信息
  • " TempStr = TempStr & ArticleListStr TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf GetCirArticleList = TempStr ' Else ' GetCirArticleList = "" ' End If End Function '取得Ajax分页函数 Function GetPageStr(ModelEname,LabelID) Dim T_Str If ModelEname<>"" Then ModelEname= ModelEname & "/" T_Str="" & vbcrlf T_Str=T_Str & "" & vbcrlf T_Str=T_Str & "
    " & vbcrlf T_Str=T_Str & "
    " & vbcrlf GetPageStr=T_Str End Function '取得文章分页函数 Function GetLastArticleList(ChannelID,PerPageNumber, R_H, S_C_N, OpenType, T_Len, S_Str, I_S_C, PicTF, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,Col,NewTF,HotTF,PageStyle,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) 'On Error Resume Next If Cint(Application(KS.SiteSN&"ChannelID"))<>Cint(ChannelID) Then GetLastArticleList="该标签位置出错,该标签只能在" & KS.C_S(ChannelID,1) & "的模板页调用!":Exit Function If P_T>2 Then GetLastArticleList=GetPageStr(KS.C_S(ChannelID,10),LabelID):Exit Function If KS.C_S(ChannelID,7)=0 or KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),3)>1 Then GetLastArticleList=Application("PageParam"):Exit Function Dim FolderID, SqlStr,Param If Application(KS.SiteSN & "RefreshType") = "Folder" Or Application(KS.SiteSN & "RefreshType") = "Special" Then If Application(KS.SiteSN & "RefreshType") = "Special" Then '刷新专题,查询语句不同 If DataBaseType=1 Then SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE charindex('" & KS.C("CurrSpecialID") & "',specialid)>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" Else SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE instr(specialid,'" & KS.C("CurrSpecialID") & "')>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" End If Else FolderID = Application(KS.SiteSN & "RefreshFolderID") If CBool(I_S_C) = True Then Param="Tid In(" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Dim ASort: If Lcase(Left(Trim(S_Str),2))<>"id" Then ASort=S_Str & ",ID Desc" Else ASort=S_Str SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 order by IsTop Desc," & Asort End If Dim SQL,TotalPut,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then GetLastArticleList="

    此栏目下没有" & KS.C_S(ChannelID,3) & "

    ":RS.Close:Set RS=Nothing:Application(KS.SiteSN & "PageList") = "":Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalPut=Ubound(SQL,2)+1 PerPageNumber=cint(PerPageNumber) Dim N,PageNum, I, J, k, TempStr, O_T_S,C_N_Link, TempTitle, NaviStr, ColSpanNum,AddDate,TempIDArrStr O_T_S = KS.G_O_T_S(OpenType) if (TotalPut mod PerPageNumber)=0 then PageNum = TotalPut \ PerPageNumber else PageNum = TotalPut \ PerPageNumber + 1 end if For I = 1 To PageNum TempIDArrStr = "" For J = 1 To PerPageNumber TempIDArrStr = TempIDArrStr &SQL(0,N) & "," N=N+1 If N>=TotalPut Then Exit For Next TempIDArrStr = Left(TempIDArrStr, Len(TempIDArrStr) - 1) SqlStr = "SELECT ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,AddDate,Popular,NewsID,ShowComment,Comment,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where ID in (" & TempIDArrStr & ") AND Verific=1 AND DelTF=0 order by IsTop Desc," & S_Str TempStr = TempStr & KS_A_L(ChannelID,SqlStr, "", S_C_N, O_T_S, R_H, T_Len, Col, PicTF, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) TempStr = TempStr & KS.GetPrePageList(PageStyle,KS.C_S(ChannelID,4),PageNum,I,TotalPut,PerPageNumber) TempStr = TempStr & "{$PageList}" '加上分页符 If N>=TotalPut Then Exit For Next Application(KS.SiteSN & "PageList") = TempStr Application(KS.SiteSN & "PageStyle")= PageStyle Else Application(KS.SiteSN & "PageList") = "" End If GetLastArticleList = "{PageListStr}" End Function '取得图片文章列表函数 Function GetPicArticleList(ChannelID,FolderID, I_S_C, Width, Height, OpenType, ShowTitle, A_P, PicStyle, C_Len, T_Len, num, S_Str, Col, T_Css, BorderType, Border,SpecialID,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetPicArticleList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, A_PStr, Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") Select Case A_P Case "1":A_PStr = " And Recommend=1" Case "2":A_PStr = " And Popular=1" Case "3":A_PStr = " And Strip=1" End Select A_PStr=A_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,PicUrl,ArticleContent,Intro,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 AND PicNews=1 " & A_PStr & " ORDER BY IsTop Desc," & S_Str GetPicArticleList = KS_PicA_L(ChannelID,SqlStr, Width, Height,KS.G_O_T_S(OpenType), ShowTitle, PicStyle, C_Len, T_Len, Col, T_Css, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得滚动文章函数 Function GetMarqueeArticle(ChannelID,FolderID, I_S_C, M_Width, M_Height, M_Speed, M_Dir, OpenType, S_Str, T_Len, MarqueeStyle, num, DateRule, M_Bgcolor, T_Css, DateCss,SpecialID) Dim SqlStr,Param If num = "" Or Not IsNumeric(num) Then num = 10 If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,AddDate,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 And Rolls=1 And " & KS.GetSpecialPara(SpecialID) & " ORDER BY " & S_Str GetMarqueeArticle = KS_R_A(ChannelID,SqlStr, M_Width, M_Height, M_Speed, M_Dir, KS.G_O_T_S(OpenType), T_Len, MarqueeStyle, DateRule, M_Bgcolor, T_Css, DateCss) End Function '取得相关文章 Function GetCorrelativeArticle(ChannelID,innerstr,num, R_H, T_Len, Col, OpenType, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css,S_C_N,PicTF,NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCorrelativeArticle="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If ' If Application(KS.SiteSN & "RefreshType") = "ArticleContent" Then Dim KeyWords:KeyWords=trim(Conn.Execute("Select " &innerstr& " From " & KS.C_S(ChannelID,2) &" Where ID=" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")))(0)) If KeyWords="" Then GetCorrelativeArticle = "
  • 暂无相关链接
  • ":Exit Function Dim KeyWordsArr, I, SqlKeyWordStr KeyWordsArr = Split(KeyWords, "|") For I = 0 To UBound(KeyWordsArr) If DataBaseType=0 Then If SqlKeyWordStr = "" Then SqlKeyWordStr = " instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " End If Else If SqlKeyWordStr = "" Then SqlKeyWordStr = " charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " End If End If Next Dim Sqlstr:SqlStr = "Select TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes,AddDate,Popular,NewsID,ShowComment,Comment,TitleType,TitleFontColor,TitleFontType FROM " & KS.C_S(ChannelID,2) &" Where (" & SqlKeyWordStr & ") AND ID<>" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")) & " AND DelTF=0 AND Verific=1 order by IsTop Desc,ID Desc" GetCorrelativeArticle = KS_A_L(ChannelID,SqlStr, "", S_C_N, KS.G_O_T_S(OpenType), R_H, T_Len, Col, PicTF, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, "",NewTF,HotTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) If GetCorrelativeArticle = "" Then GetCorrelativeArticle = "
  • 暂无相关链接
  • " ' Else ' GetCorrelativeArticle = "" ' End If End Function '通用专题列表 Function KS_C_Special_L(SqlStr,O_T_S,IntroLen, T_Len, Col, NavType, Nav, MorLinkStr, SplitPic, DateRule, DateAlign, T_Css, PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim SQL,K,N,TotalNum Dim RS:Set RS=Server.CreateObject("ADODB.Recordset") RS.Open SqlStr,conn,1,1 If RS.Eof And RS.Bof Then KS_C_Special_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalNum=Ubound(SQL,2) Dim TempStr, TempTitle, I,NaviStr, ColSpanNum,T_CssStr,TempPicStr,SpecialUrl,PhotoCssStr T_CssStr = KS.GetCss(T_Css):PhotoCssStr = KS.GetCss(PhotoCss) NaviStr = KS.GetNavi(NavType, Nav) IF P_T=2 Then TempStr = "" & vbCrLf TempStr = TempStr & " " & vbCrLf For K=0 To TotalNum TempTitle = KS.GotTopic(SQL(1,K), T_Len) SpecialUrl=KS.GetSpecialPath(SQL(0,K),SQL(2,K),SQL(4,K),SQL(3,K)) TempTitle = "" & TempTitle & "" TempPicStr=GetPicUrl(SQL(6,K)) TempPicStr="" Select Case Cint(ShowStyle) Case 1:TempStr = TempStr & (" " & NaviStr & TempTitle & KS.GetDCDateStr(SQL(5,K),DateRule,"") & ""& vbCrLf) Case 2:TempStr = TempStr & (" " & TempPicStr & ""& vbCrLf) Case 3:TempStr = TempStr & (" " & TempPicStr & "
    " & TempTitle &""& vbCrLf) Case 4:TempStr = TempStr & (" " & TempPicStr & "

    " & KS.GotTopic(SQL(7,K),introlen) &"

    "& vbCrLf) Case 5:TempStr = TempStr & (" " & TempPicStr & "

    " & TempTitle &"

    " & KS.GotTopic(SQL(7,K),introlen) &"

    "& vbCrLf) End Select Next TempStr = TempStr & MorLinkStr & " " & vbCrLf TempStr = TempStr & ("" & vbCrLf) Else TempStr = "" & vbCrLf For K=0 To TotalNum TempStr = TempStr & "" & vbCrLf For I = 1 To Col TempTitle = KS.GotTopic(SQL(1,N), T_Len) SpecialUrl=KS.GetSpecialPath(SQL(0,N),SQL(2,N),SQL(4,N),SQL(3,N)) TempTitle = "" & TempTitle & "" TempPicStr=GetPicUrl(SQL(6,N)) TempPicStr="" TempStr = TempStr & ("" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "" & vbCrLf TempStr = TempStr & KS.GetSplitPic(SplitPic, ColSpanNum) If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & MorLinkStr & ("
    " & vbCrLf) Select Case ShowStyle Case 1:TempStr = TempStr & ( NaviStr & TempTitle & KS.GetDateStr(SQL(5,N),DateRule,DateAlign,"",Col, ColSpanNum)) Case 2:TempStr = TempStr & TempPicStr Case 3:TempStr = TempStr & "
    " &TempPicStr&"
    "&TempTitle & "
    " Case 4 TempStr = TempStr & "" & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & " " & TempPicStr & "" & vbCrLf TempStr = TempStr & " " & KS.GotTopic(SQL(7,N),introlen)&"
    " & vbCrLf Case 5 TempStr = TempStr & "" & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & " " & vbCrLf TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & " " & TempPicStr & "" & vbCrLf TempStr = TempStr & " " & TempTitle &"
    " & KS.GotTopic(SQL(7,N),introlen)&"
    " & vbCrLf End Select TempStr = TempStr& vbCrLf& "
    " & vbCrLf) End If KS_C_Special_L = TempStr End Function '取得频道专题汇总函数 Function GetSpecialList(FolderID, OpenType, num, IntroLen, T_Len, Col, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetSpecialList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim Param,SqlStr,MorLinkStr,O_T_S Param=" 1=1" If FolderID<>"0" Then If Len(FolderID)<5 Then Param=Param & " And ChannelID=" & FolderID Else Param=Param & " And FolderID='" & FolderID & "'" End If SqlStr="Select TOP " & num & " specialid,SpecialName,SpecialEname,ChannelID,FsoSpecialIndex,SpecialAddDate,PhotoUrl,SpecialNote From KS_Special Where " & Param & " Order By SpecialID Desc" O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And Len(FolderID)>3 Then MorLinkStr= KS.GetMoreLink(P_T,Col, 20, MoreType, MoreLink, KS.GetFolderSpecialPath(FolderID, True), O_T_S) GetSpecialList=KS_C_Special_L(SqlStr,O_T_S,IntroLen, T_Len, Col, NavType, Nav, MorLinkStr, SplitPic, DateRule, DateAlign, T_Css,PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得循环频道专题汇总 Function GetCirSpecialList(Col, FolderCss, MenuBgType, MenuBg, num, R_H, T_Len, OpenType, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) 'on Error Resume Next 'If Application(KS.SiteSN & "RefreshType") = "SpecialIndex" Then If LabelID<>"ajax" and P_T>2 Then GetCirSpecialList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, RS:Set RS=Server.CreateObject("ADODB.RECORDSET") SqlStr = "Select FolderName,ID From KS_Class A inner join KS_Channel B on A.ChannelID=B.ChannelID where B.ChannelStatus=1 And DelTF=0 AND TN='0' And CirSpecialShowTF=1 ORDER BY A.ChannelID,FolderOrder asc" RS.Open SqlStr, Conn, 1, 1 If RS.EOF And RS.BOF Then RS.Close:Set RS = Nothing:GetCirSpecialList = "":Exit Function Else Dim TempStr, I, MenuBgStr, SpecialListStr,FolderName TempStr = "" & vbCrLf MenuBgStr = KS.GetMenuBg(MenuBgType, MenuBg, Col) Do While Not RS.EOF TempStr = TempStr & "" & vbCrLf For I = 1 To Col TempStr = TempStr & "" & vbCrLf RS.MoveNext If RS.EOF Then Exit For Next TempStr = TempStr & "" & vbCrLf Loop TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "
    " FolderName = Trim(RS("FolderName")) TempStr = TempStr & "" & FolderName & "专题
    " & vbCrLf SpecialListStr = GetSpecialList(RS("ID"), OpenType, num, R_H, T_Len, 1, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,"ajax") If Trim(SpecialListStr) = "" Then SpecialListStr = "
  • 此频道下没有专题
  • " TempStr = TempStr & SpecialListStr TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf GetCirSpecialList = TempStr End If 'Else ' GetCirSpecialList = "" 'End If End Function '取得分页频道专题汇总 Function GetLastSpecialList(PerPageNumber, OpenType, T_Len, IntroLen,Col,NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, PhotoCss,PageStyle,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If P_T>2 Then GetLastSpecialList=GetPageStr("plus",LabelID):Exit Function If Application(KS.SiteSn&"FromAspPage")=True Then GetLastSpecialList=Application("PageParam"):Application(KS.SiteSn&"FromAspPage")=false:Exit Function If Application(KS.SiteSN & "RefreshType") = "ChannelSpecial" Then Dim SQL,TotalPut,K,N Dim RS:Set RS=Conn.Execute("Select SpecialID From KS_Special Where FolderID='" & Application(KS.SiteSN & "RefreshFolderID") & "'") If RS.EOF And RS.BOF Then GetLastSpecialList = "" Application.Contents.Remove ("PageList") RS.Close:Set RS = Nothing Exit Function End If SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalPut=Ubound(SQL,2)+1 Dim PageNum, I, J, TempStr,TempIDArrStr,SqlStr,O_T_S O_T_S = KS.G_O_T_S(OpenType) if (TotalPut mod PerPageNumber)=0 then PageNum = TotalPut \ PerPageNumber else PageNum = TotalPut \ PerPageNumber + 1 end if For I = 1 To PageNum TempIDArrStr = "" For J = 1 To PerPageNumber TempIDArrStr = TempIDArrStr &SQL(0,N) & "," N=N+1 If N>=TotalPut Then Exit For Next TempIDArrStr = Left(TempIDArrStr, Len(TempIDArrStr) - 1) SqlStr = "SELECT specialid,SpecialName,SpecialEname,ChannelID,FsoSpecialIndex,SpecialAddDate,PhotoUrl,SpecialNote FROM KS_Special Where SpecialID in (" & TempIDArrStr & ") order by SpecialID Desc" TempStr = TempStr & KS_C_Special_L(SqlStr,O_T_S,IntroLen, T_Len, Col, NavType, Nav, "", SplitPic, DateRule, DateAlign, T_Css,PhotoCss,ShowStyle,Width,Height,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) TempStr = TempStr & KS.GetPrePageList(PageStyle,"条",PageNum,I,TotalPut,PerPageNumber) TempStr = TempStr & "{$PageList}" If N>=TotalPut Then Exit For Next Application(KS.SiteSN & "PageList") = TempStr Application(KS.SiteSN & "PageStyle") = PageStyle Else Application.Contents.Remove ("PageList") End If GetLastSpecialList = "{PageListStr}" End Function '取得最新个人空间列表 Function GetBlogList(ClassID,num,ListLen,TypeFlag,NavType,Nav,SplitPic,OpenType,T_Css,P_T,divid,DivCss,ulid,ULCss,liid,LICss,TJFlag,MoreStr,LabelID) If LabelID<>"ajax" and P_T>2 Then GetBlogList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim T_CssStr,NaviStr,Param,RStr,Url T_CssStr = KS.GetCss(T_Css):NaviStr = KS.GetNavi(NavType, Nav) Param=" where 1=1" If ClassID<>"0" Then Param=Param & " and ClassID=" & ClassID If Cbool(TJFlag)=true Then Rstr="?recommend=1":Param=Param & " and recommend=1" Dim RS:Set RS=Server.CreateOBject("ADODB.RECORDSET") RS.Open "Select top " & num &" UserName,BlogName,[Domain] From KS_Blog " & Param & " Order By BlogID Desc",conn,1,1 If RS.Eof And RS.Bof Then RS.Close:Set RS=Nothing:GetBlogList="":Exit Function Dim SQL,K SQL=RS.GetRows(-1) If Cint(P_T)=2 Then GetBlogList="" & vbCrLf & " " & vbCrLf For K=0 To Ubound(SQL,2) If KS.SSetting(14)="1" and SQL(2,K)<>"" then Url="http://" & SQL(2,K) & "." & KS.SSetting(16) Else Url=DomainStr & "space/space.asp?UserName=" & SQL(0,K) GetBlogList=GetBlogList &" "&NaviStr &"" & KS.GotTopic(SQL(1,K),ListLen) &"" & vbcrlf Next if morestr<>"" then GetBlogList=GetBlogList &"
  • " & morestr &"
  • " & vbcrlf end if GetBlogList=GetBlogList & "" & vbcrlf &" " Else GetBlogList="" & vbCrLf For K=0 TO Ubound(SQL,2) If KS.SSetting(14)="1" and SQL(2,K)<>"" then Url="http://" & SQL(2,K) & "." & KS.SSetting(16) Else Url=DomainStr & "space/space.asp?UserName=" & SQL(0,K) GetBlogList=GetBlogList &"" & vbcrlf GetBlogList=GetBlogList & KS.GetSplitPic(SplitPic,1) Next if morestr<>"" then GetBlogList=GetBlogList &"" & vbcrlf end if GetBlogList=GetBlogList & "
    " GetBlogList=GetBlogList & NaviStr &"" & KS.GotTopic(SQL(1,K),ListLen) &"" GetBlogList=GetBlogList & "
    " & morestr &"
    " End If End Function '取得最新日志列表 Function GetBlogInfoList(TypeID,num,ListLen,UserName,TypeFlag,NavType,Nav,SplitPic,OpenType,DateRule,DateAlign,T_Css,P_T,divid,DivCss,ulid,ULCss,liid,LICss,IsBest,MoreStr,LabelID) If LabelID<>"ajax" and P_T>2 Then GetBlogInfoList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim T_CssStr,NaviStr,SQL,K,RStr T_CssStr = KS.GetCss(T_Css):NaviStr = KS.GetNavi(NavType, Nav) Dim RS:Set RS=Server.CreateOBject("ADODB.RECORDSET") Dim Param:Param=" Where Status=0" If UserName<>"" Then Param=Param & " And UserName='" & UserName & "'" If TypeID<>"0" Then Param=Param & " And TypeID=" & TypeID If cbool(IsBest)=true then RStr="?isbest=1":Param=Param & " And best=1" RS.Open "Select top " & num &" ID,Title,UserName,AddDate From KS_BlogInfo" & Param &" Order By ID Desc",conn,1,1 If RS.Eof And RS.Bof Then GetBlogInfoList="":RS.Close:Set RS=Nothing:Exit Function End If SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing If Cint(P_T)=2 Then GetBlogInfoList="" & vbCrLf & " " & vbCrLf For K=0 To Ubound(SQL,2) GetBlogInfoList=GetBlogInfoList &" "&NaviStr &"" & KS.GotTopic(SQL(1,K),ListLen) &"" & KS.GetDCDateStr(SQL(3,K),DateRule,"") &"" & vbcrlf Next if morestr<>"" then GetBlogInfoList=GetBlogInfoList &"
  • " & morestr &"
  • " & vbcrlf end if GetBlogInfoList=GetBlogInfoList & "" & vbcrlf &" " Else GetBlogInfoList="" & vbCrLf For K=0 To Ubound(SQL,2) GetBlogInfoList=GetBlogInfoList &"" & vbcrlf GetBlogInfoList=GetBlogInfoList & KS.GetSplitPic(SplitPic,1) Next if morestr<>"" then GetBlogInfoList=GetBlogInfoList &"" & vbcrlf end if GetBlogInfoList=GetBlogInfoList & "
    " GetBlogInfoList=GetBlogInfoList & NaviStr &"" & KS.GotTopic(SQL(1,K),ListLen) &"" GetBlogInfoList=GetBlogInfoList &KS.GetDateStr(SQL(3,K),DateRule,DateAlign,"",1,1)& "
    " & morestr &"
    " End If End Function '取得最新相册列表 Function GetXCList(ClassID,num,Col,UserName,ListLen,ShowStyle,Width,Height,OpenType,T_Css,P_T,divid,DivCss,ulid,ULCss,liid,LICss,TJFlag,morestr,LabelID) If LabelID<>"ajax" and P_T>2 Then GetXCList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim Rstr,i,T_CssStr:T_CssStr = KS.GetCss(T_Css) Dim Param:Param=" Where Status=1" If UserName<>"" Then Param=Param & " And UserName='" & UserName & "'" If ClassID<>"0" Then Param=Param & " And ClassID=" & ClassID If Cbool(TJFlag)=true Then Rstr="?recommend=1":Param=Param & " and recommend=1" Dim RS:Set RS=Server.CreateOBject("ADODB.RECORDSET") RS.Open "Select top " & num &" id,xcname,username,photourl,flag,xps,hits From KS_PhotoXC " & Param & " Order By ID Desc",conn,1,1 If RS.Eof And RS.Bof Then GetXCList="":RS.Close:Set RS=Nothing:Exit Function End If Dim SQL,K,N,TotalNum SQL=RS.GetRows(-1):TotalNum=Ubound(SQL,2) If Cint(P_T)=2 Then GetXCList="" & vbCrLf & " " & vbCrLf For K=0 To TotalNum GetXCList=GetXCList &" " &"
    " & KS.GotTopic(SQL(1,k),ListLen) &"" & vbcrlf Next if morestr<>"" then GetXCList=GetXCList &"
  • " & morestr &"
  • " & vbcrlf end if GetXCList=GetXCList & "" & vbcrlf &" " Else GetXCList="" & vbCrLf For K=0 To TotalNum GetXCList=GetXCList &"" For I=1 to Col GetXCList=GetXCList & ""& vbcrlf n=n+1 if n>=totalnum+1 then exit for Next GetXCList=GetXCList & "" & vbcrlf if morestr<>"" then GetXCList=GetXCList &"" & vbcrlf end if if n>=totalnum+1 then exit for Next GetXCList=GetXCList & "
    "& vbcrlf Select Case ShowStyle Case 1 GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " &vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & "
    " &vbcrlf GetXCList=GetXCList & " " GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & "
    " GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & "
    " &vbcrlf GetXCList=GetXCList & "
    " & vbcrlf GetXCList=GetXCList & "
    名 称:" & KS.GotTopic(SQL(1,n),ListLen) & "
    作 者:" & SQL(2,n) & "
    照 片:" & SQL(5,n) & "
    人 气:" & SQL(6,n) & "
    状 态:" & GetStatusStr(SQL(4,n)) & "
    " Case 2 GetXCList=GetXCList & " " &vbcrlf GetXCList=GetXCList & " " GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & "
    " GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & " " & vbcrlf GetXCList=GetXCList & "
    " &vbcrlf GetXCList=GetXCList & "
    " &KS.GotTopic(SQL(1,n),ListLen) &"
    " & vbcrlf End Select GetXCList=GetXCList & "
    " & morestr &"
    " End If End Function Function GetStatusStr(val) Select Case Val Case 1:GetStatusStr="公开" Case 2:GetStatusStr="会员" Case 3:GetStatusStr="密码" Case 4:GetStatusStr="隐私" End Select GetStatusStr="" & GetStatusStr & "" End Function '取得最新圈子列表 Function GetGroupList(ClassID,num,Col,UserName,ListLen,ShowStyle,Width,Height,OpenType,T_Css,P_T,divid,DivCss,ulid,ULCss,liid,LICss,TJFlag,MoreStr,LabelID) If LabelID<>"ajax" and P_T>2 Then GetGroupList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim Rstr,i,T_CssStr:T_CssStr = KS.GetCss(T_Css) Dim Param:Param=" Where verific=1" If UserName<>"" Then Param=Param & " And UserName='" & UserName & "'" If ClassID<>"0" Then Param=Param & " And ClassID=" & ClassID If Cbool(TJFlag)=true Then Rstr="?recommend=1":Param=Param & " and recommend=1" Dim RS:Set RS=Server.CreateOBject("ADODB.RECORDSET") RS.Open "Select top " & num &" (select count(id) from ks_teamtopic where teamid=a.id and parentid=0),(select count(id) from ks_teamtopic where teamid=a.id),(select count(id) from ks_teamusers where status=3 and teamid=a.id),id,teamname,username,photourl,adddate From KS_Team a " & Param & " Order By ID Desc",conn,1,1 If RS.Eof And RS.Bof Then GetGroupList="":RS.Close:Set RS=Nothing:Exit Function End IF Dim SQL,TotalNum,K,N SQL=RS.GetRows(-1):TotalNum=Ubound(SQL,2):RS.Close:Set RS=Nothing If Cint(P_T)=2 Then GetGroupList="" & vbCrLf & " " & vbCrLf For K=0 To TotalNum GetGroupList=GetGroupList &" " &"
    " & KS.GotTopic(SQL(4,K),ListLen) &"" & vbcrlf Next if morestr<>"" then GetGroupList=GetGroupList &"
  • " & morestr &"
  • " & vbcrlf end if GetGroupList=GetGroupList & "" & vbcrlf &" " Else GetGroupList="" & vbCrLf For K=0 To TotalNum GetGroupList=GetGroupList &"" For I=1 to Col GetGroupList=GetGroupList & ""& vbcrlf n=n+1 if n>=totalnum+1 then exit for Next GetGroupList=GetGroupList & "" & vbcrlf if morestr<>"" then GetGroupList=GetGroupList &"" & vbcrlf end if If N>=TotalNum+1 Then Exit For Next GetGroupList=GetGroupList & "
    "& vbcrlf Select Case ShowStyle Case 1 GetGroupList=GetGroupList & "" GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & "
    " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & "
    " & SQL(4,n) & "
    创建者:" & SQL(5,n) & "
    创建时间:" &SQL(7,n) & "
    主题/回复:" & SQL(0,n) & "/" & SQL(1,n) & "   成员:" & SQL(2,n) & "人
    " Case 2 GetGroupList=GetGroupList & " " &vbcrlf GetGroupList=GetGroupList & " " GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & "
    " GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & " " & vbcrlf GetGroupList=GetGroupList & "
    " &vbcrlf GetGroupList=GetGroupList & "
    " &KS.GotTopic(SQL(4,n),ListLen) &"
    " & vbcrlf End Select GetGroupList=GetGroupList & "
    " & morestr &"
    " End If End Function '取得网站公告列表 Function GetAnnounceList(AnnounceType, OWidth, OHeight, Width, Height, Speed, ShowStyle, OpenType, num, T_Len, ShowAuthor, C_Len, NavType, Nav, T_Css,ChannelID) Dim SqlStr, NaviStr, T_CssStr, Title, Content Dim RSObj:Set RSObj=Server.CreateObject("ADODB.RECORDSET") Dim AddDate,Param NaviStr = KS.GetNavi(NavType, Nav):T_CssStr = KS.GetCss(T_Css) Param=" Where 1=1" If ChannelID=9999 Or ChannelID=9998 Then If Application(KS.SiteSN & "RefreshFolderID")="0" Or ChannelID=9998 Then Param= Param & " And ChannelID=0" else Param=Param & " And ChannelID=(select channelid from ks_class where id='" & Application(KS.SiteSN & "RefreshFolderID") & "')" End If End If If num = 0 Then SqlStr = "Select * From KS_Announce " & Param & " Order BY NewestTF Desc,AddDate Desc" Else SqlStr = "Select Top " & num & " * From KS_Announce " & Param & " Order BY NewestTF Desc,AddDate Desc" End If RSObj.Open SqlStr, Conn, 1, 1 Select Case AnnounceType Case 0 '普通 If ShowStyle = 1 Then '纵向显示 GetAnnounceList = GetAnnounceList & "" & vbCrLf Do While Not RSObj.EOF Title = Trim(RSObj("Title")):Content = Trim(RSObj("Content")):AddDate = RSObj("AddDate") GetAnnounceList = GetAnnounceList & "" & vbCrLf If C_Len <> 0 Then GetAnnounceList = GetAnnounceList & "" & vbCrLf If ShowAuthor = 1 Then GetAnnounceList = GetAnnounceList & "" & vbCrLf & "" & vbCrLf End If RSObj.MoveNext Loop GetAnnounceList = GetAnnounceList & "
    " If OpenType = 0 Then GetAnnounceList = GetAnnounceList & " " Else GetAnnounceList = GetAnnounceList & " " End If GetAnnounceList = GetAnnounceList & NaviStr & KS.GotTopic(Title, T_Len) & "
        " & KS.GotTopic(Replace(Replace(KS.LoseHtml(Content), vbCrLf, ""), " ", ""), C_Len) & "…" End If GetAnnounceList = GetAnnounceList & "
    " & RSObj("Author") & "
    " & Year(AddDate) & "年" & Month(AddDate) & "月" & Day(AddDate) & "日
    " & vbCrLf ElseIf ShowStyle = 2 Then '横向显示 Do While Not RSObj.EOF AddDate = RSObj("AddDate") Title = Trim(RSObj("Title")) AddDate = RSObj("AddDate") If OpenType = 0 Then GetAnnounceList = GetAnnounceList & " " Else GetAnnounceList = GetAnnounceList & " " End If GetAnnounceList = GetAnnounceList & NaviStr & KS.GotTopic(Title, T_Len) & "" If ShowAuthor = 1 Then GetAnnounceList = GetAnnounceList & "[" & RSObj("Author") & "  " & Year(AddDate) & "年" & Month(AddDate) & "月" & Day(AddDate) & "日]" End If GetAnnounceList = GetAnnounceList & "  " RSObj.MoveNext Loop Else GetAnnounceList = "" End If Case 1 '弹出 GetAnnounceList = "" & vbCrLf Case 2 '滚动 If ShowStyle = 1 Then '纵向显示 GetAnnounceList = "" GetAnnounceList = GetAnnounceList & "" & vbCrLf Do While Not RSObj.EOF Title = Trim(RSObj("Title")) Content = Trim(RSObj("Content")) AddDate = RSObj("AddDate") GetAnnounceList = GetAnnounceList & "" & vbCrLf If C_Len <> 0 Then GetAnnounceList = GetAnnounceList & "" & vbCrLf If ShowAuthor = 1 Then GetAnnounceList = GetAnnounceList & "" & vbCrLf & "" & vbCrLf End If RSObj.MoveNext Loop GetAnnounceList = GetAnnounceList & "
    " If OpenType = 0 Then GetAnnounceList = GetAnnounceList & " " Else GetAnnounceList = GetAnnounceList & " " End If GetAnnounceList = GetAnnounceList & NaviStr & KS.GotTopic(Title, T_Len) & "
        " & KS.GotTopic(Replace(Replace(KS.LoseHtml(Content), vbCrLf, ""), " ", ""), C_Len) & "…" End If GetAnnounceList = GetAnnounceList & "
    " & RSObj("Author") & "
    " & Year(AddDate) & "年" & Month(AddDate) & "月" & Day(AddDate) & "日
    " & vbCrLf GetAnnounceList = GetAnnounceList & "
    " ElseIf ShowStyle = 2 Then '横向显示 GetAnnounceList = "" Do While Not RSObj.EOF Title = Trim(RSObj("Title")) AddDate = RSObj("AddDate") If OpenType = 0 Then GetAnnounceList = GetAnnounceList & " " Else GetAnnounceList = GetAnnounceList & " " End If GetAnnounceList = GetAnnounceList & NaviStr & KS.GotTopic(Title, T_Len) & "" If ShowAuthor = 1 Then GetAnnounceList = GetAnnounceList & "[" & RSObj("Author") & "  " & Year(AddDate) & "年" & Month(AddDate) & "月" & Day(AddDate) & "日]" End If GetAnnounceList = GetAnnounceList & "  " RSObj.MoveNext Loop GetAnnounceList = GetAnnounceList & "" Else GetAnnounceList = "" End If End Select End Function '取得友情链接列表函数 Function GetLinkList(show,FolderID, LinkType, ShowStyle, LogoWidth, LogoHeight, num, T_Len, Col) 'On Error Resume Next Dim SqlStr, Para, SiteName, URL,TitleStr, WidthStr, FriendLinkRegStr Dim RSObj:Set RSObj=Server.CreateObject("ADODB.RECORDSET") Dim k, I, NoLinkRowNumber FriendLinkRegStr = DomainStr & "FriendLink/FriendLinkReg.asp" '注册链接 WidthStr = CInt(100 / CInt(Col)) & "%" FolderID = CInt(FolderID):LinkType = CInt(LinkType) Para = " Where Locked=0 And Verific=1" If FolderID <> 0 Then Para = Para & " And FolderID=" & FolderID End If If LinkType = 2 Then Para = Para & " Order BY LinkType Desc,Recommend Desc,Hits Desc,AddDate Desc" Else Para = Para & " And LinkType=" & LinkType & " Order BY Recommend desc,Hits Desc,AddDate Desc" End If If num = 0 Then '列出所有友情链接站点 SqlStr = "Select LinkID,LinkType,SiteName,Description,Logo,AddDate,FolderID,Url From KS_Link" & Para Else SqlStr = "Select TOP " & num & " LinkID,LinkType,SiteName,Description ,Logo,AddDate,FolderID,Url From KS_Link" & Para End If RSObj.Open SqlStr, Conn, 1, 1 Select Case (CInt(ShowStyle)) Case 1 '向上滚动 GetLinkList = "
    "& vbCrLf GetLinkList = GetLinkList & "
    " & vbCrLf GetLinkList = GetLinkList & " " & vbCrLf If RSObj.EOF And RSObj.BOF Then If FolderID = 0 Then '当显示所有类别的友情链接时,显示点击申请 For I = 1 To num GetLinkList = GetLinkList & "" & vbCrLf If LinkType = 0 Then GetLinkList = GetLinkList & "" Else GetLinkList = GetLinkList & "" End If GetLinkList = GetLinkList & "" & vbCrLf Next End If Else Do While Not RSObj.EOF GetLinkList = GetLinkList & "" & vbCrLf SiteName = RSObj(2) If Show=0 Then Url=RSObj(7) Else Url=DomainStr & "FriendLink/ToLink.asp?LinkID=" & RSObj(0) TitleStr = " title=""网站名称:" & SiteName & " 添加日期:" & RSObj(5) & " 网站描述:" & RSObj(3) & """" If RSObj(1) = 0 Then GetLinkList = GetLinkList & "" Else GetLinkList = GetLinkList & "" End If GetLinkList = GetLinkList & "" & vbCrLf RSObj.MoveNext I = I + 1 Loop End If GetLinkList = GetLinkList & "
    您的位置
    " & KS.GotTopic(SiteName, T_Len) & "
    " RSObj.Close Set RSObj = Nothing GetLinkList = GetLinkList & "
    " & vbCrLf GetLinkList = GetLinkList & "
    " & vbCrLf GetLinkList = GetLinkList & "
    " & vbCrLf GetLinkList = GetLinkList & "" & vbCrLf Case 2 '横向列表 GetLinkList = " " & vbCrLf If RSObj.EOF And RSObj.BOF Then If FolderID = 0 Then If num = 0 Then NoLinkRowNumber = 1 Else NoLinkRowNumber = num \ Col End If For I = 1 To NoLinkRowNumber GetLinkList = GetLinkList & "" & vbCrLf For k = 1 To Col If LinkType = 1 Then GetLinkList = GetLinkList & "" Else GetLinkList = GetLinkList & "" End If Next GetLinkList = GetLinkList & "" & vbCrLf Next End If Else Do While Not RSObj.EOF If Col = 1 Then GetLinkList = GetLinkList & "" & vbCrLf Else GetLinkList = GetLinkList & "" & vbCrLf End If For k = 1 To Col SiteName = RSObj(2) If Show=0 Then Url=RSObj(7) Else Url=DomainStr & "FriendLink/ToLink.asp?LinkID=" & RSObj(0) TitleStr = " title=""网站名称:" & SiteName & " 添加日期:" & RSObj(5) & " 网站描述:" & RSObj(3) & """" If RSObj(1) = 0 Then GetLinkList = GetLinkList & "" Else GetLinkList = GetLinkList & "" End If RSObj.MoveNext If RSObj.EOF Then Exit For Next '不到Col个单元格,则进行补空 for k=k+1 to Col If LinkType = 1 Then GetLinkList = GetLinkList & "" Else GetLinkList = GetLinkList & "" End If next GetLinkList = GetLinkList & "" & vbCrLf Loop End If GetLinkList = GetLinkList & "
    您的位置
    " & KS.GotTopic(SiteName, T_Len) & "您的位置
    " RSObj.Close:Set RSObj = Nothing Case 3 '下拉列表 GetLinkList = "" & vbCrLf RSObj.Close:Set RSObj = Nothing End Select End Function '取得顶部栏目导航 Function GetNavigation(ChannelID, TypeFlag, NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim I,SqlStr,RS:Set RS=Server.CreateObject("ADODB.RECORDSET") If ChannelID = "0" Then SqlStr = "Select ID,FolderName,TN,FolderOrder From KS_Class A Inner Join KS_Channel B On A.ChannelID=B.ChannelID Where B.ChannelStatus=1 and TN='0' AND TopFlag=1 And DelTF=0 Union All Select ChannelName,ChannelName,Url,OrderID From KS_ExtChannel Where TopFlag=1 Order By FolderOrder" ElseIf Len(ChannelID)<=3 Then SqlStr = "Select ID,FolderName From KS_Class where TN='0' And ChannelID=" & ChannelID & " AND TopFlag=1 And DelTF=0 Order BY FolderOrder" ElseIf ChannelID = "9999" Then if Application(KS.SiteSN & "RefreshFolderID")="0" then SqlStr = "Select ID,FolderName,TN,FolderOrder From KS_Class a inner join KS_Channel b on a.channelid=b.channelid Where B.ChannelStatus=1 and TN='0' AND TopFlag=1 And DelTF=0 Union All Select ChannelName,ChannelName,Url,OrderID From KS_ExtChannel Where TopFlag=1 Order By FolderOrder" else SqlStr = "Select ID,FolderName From KS_Class A Inner Join KS_Channel B On A.ChannelID=B.ChannelID Where B.ChannelStatus=1 And TN='" & Application(KS.SiteSN & "RefreshFolderID") & "' And DelTF=0 Order BY FolderOrder" end if ElseIf ChannelID = "9998" Then GetNavigation=GetExtNav(0,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss):Exit Function ElseIf ChannelID = "9997" Then GetNavigation=GetExtNav(1,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss):Exit Function ElseIf ChannelID = "9996" Then GetNavigation=GetExtNav(2,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss):Exit Function ElseIf ChannelID = "9995" Then GetNavigation=GetExtNav(3,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss):Exit Function ElseIf ChannelID = "9994" Then GetNavigation=GetExtNav(4,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss):Exit Function Else SqlStr = "Select ID,FolderName From KS_Class A Inner Join KS_Channel B On A.ChannelID=B.ChannelID Where B.ChannelStatus=1 And TN='" & ChannelID & "' And DelTF=0 Order BY FolderOrder" End If RS.Open SqlStr, Conn, 1, 1 If Not RS.EOF Then If Cint(P_T)=2 Then GetNavigation = "" & vbCrLf & " " & vbCrLf Do While Not RS.EOF if not isnumeric(mid(RS(0),3,3)) then GetNavigation = GetNavigation & " " & "" & Trim(RS(1)) & "" else GetNavigation = GetNavigation & " " & "" & Trim(RS(1)) & "" end if RS.MoveNext If RS.EOF Then Exit do Loop GetNavigation = GetNavigation & " " & vbcrlf & " " & vbCrLf Else GetNavigation = "" & vbCrLf Do While Not RS.EOF GetNavigation = GetNavigation & "" & vbCrLf GetNavigation = GetNavigation & KS.GetSplitPic(SplitPic, Col) Loop GetNavigation = GetNavigation & "
    " & vbCrLf For I = 1 To Col Dim NavStr:NavStr=KS.GetNavi(NavType, Nav) If I=1 Then NavStr="" if not isnumeric(mid(RS(0),3,3)) then GetNavigation = GetNavigation & NavStr & "" & Trim(RS(1)) & "" else GetNavigation = GetNavigation & NavStr & "" & Trim(RS(1)) & "" end if RS.MoveNext If RS.EOF Then Exit For Next GetNavigation = GetNavigation & "
    " & vbCrLf End If Else GetNavigation = "" End If End Function '取得外部频道导航 Function GetExtNav(Flag,NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim SQL,RS, I,K,TotalNum,N,Url,SQLStr Select Case Flag Case 0:SQLStr="Select Url,ChannelName From KS_ExtChannel Where TopFlag=1 Order By OrderID asc" Case 1:SQLStr="Select ClassID,ClassName From KS_BlogClass Order By OrderID asc" Case 2:SQLStr="Select TypeID,TypeName From KS_BlogType Order By OrderID asc" Case 3:SQLStr="Select ClassID,ClassName From KS_TeamClass Order By OrderID asc" Case 4:SQLStr="Select ClassID,ClassName From KS_PhotoClass Order By OrderID asc" Case Else:Exit Function End Select Set RS = Conn.Execute(SqlStr) If RS.Eof And RS.Bof Then GetExtNav="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):TotalNum=Ubound(SQL,2) If Cint(P_T)=2 Then GetExtNav = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum Url=SQL(0,K) Select Case Flag Case 1:Url=DomainStr &"space/morespace.asp?classID=" & Url Case 2:Url=DomainStr &"space/morelog.asp?classID=" & Url Case 3:Url=DomainStr &"space/moregroup.asp?classID=" & Url Case 4:Url=DomainStr &"space/morephoto.asp?classID=" & Url End Select GetExtNav = GetExtNav & " " & "" & Trim(SQL(1,K)) & "" & vbCrLf Next GetExtNav = GetExtNav & " " & vbcrlf & " " & vbCrLf Else GetExtNav = "" & vbCrLf For K=0 To TotalNum GetExtNav = GetExtNav & "" & vbCrLf GetExtNav = GetExtNav & KS.GetSplitPic(SplitPic, Col) If N>=TotalNum+1 Then Exit For Next GetExtNav = GetExtNav & "
    " & vbCrLf For I = 1 To Col Url=SQL(0,N) Select Case Flag Case 1:Url=DomainStr &"space/morespace.asp?classID=" & Url Case 2:Url=DomainStr &"space/morelog.asp?classID=" & Url Case 3:Url=DomainStr &"space/moregroup.asp?classID=" & Url Case 4:Url=DomainStr &"space/morephoto.asp?classID=" & Url End Select GetExtNav = GetExtNav & KS.GetNavi(NavType, Nav) & "" & Trim(SQL(1,N)) & "" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next GetExtNav = GetExtNav & "
    " & vbCrLf End If End Function Function GetSpaceNav(NavType, Nav, SplitPic, Col, OpenType, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '==========================================================================图片发布中心通用函数声明============================== '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_P_L '作 用:通用图片列表 '参 数:SqlStr 待查询的SQL语句,M_L_S更多链接字串,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_P_L(ChannelID,SqlStr, M_L_S, Width, Height, O_T_S, PicStyle, C_Len, T_Len, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim SQL,K,N Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open SqlStr, Conn, 1, 1 If RS.EOF Then KS_P_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing Dim TotalNum:TotalNum=Ubound(SQL,2) Dim TempPicStr,Url,TempTitleStr, I,Title, T_CssStr, NaviStr,LinkAndPicStr T_CssStr = KS.GetCss(T_Css):NaviStr = KS.GetNavi(NavType, Nav) If P_T=2 Then KS_P_L = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum Title = SQL(1,K) TempPicStr=GetPicUrl(SQL(7,K)) Url=KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),0) LinkAndPicStr = "" TempTitleStr = "" & KS.GotTopic(Title, T_Len) & "" Select Case CInt(PicStyle) Case 1:KS_P_L = KS_P_L & (" " & LinkAndPicStr & "" & vbCrLf) Case 2:KS_P_L = KS_P_L & (" " & LinkAndPicStr & "
    " & TempTitleStr & "" & vbCrLf) Case 3:KS_P_L = KS_P_L & (" " & LinkAndPicStr & "

    " & TempTitleStr &"

    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(8,K)), vbCrLf, ""), " ", ""), C_Len) &"...

    "& vbCrLf) Case 4:KS_P_L = KS_P_L & ("

    " & TempTitleStr &"

    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(8,K)), vbCrLf, ""), " ", ""), C_Len) &"...

    " & LinkAndPicStr & ""& vbCrLf) Case 5:KS_P_L = KS_P_L & " "& NaviStr & TempTitleStr & KS.GetDCDateStr(SQL(6,K),DateRule,"") & "" & vbcrlf End Select Next KS_P_L = KS_P_L & M_L_S & ("" & vbCrLf & " ") Else KS_P_L = "" & vbCrLf For K=0 To TotalNum KS_P_L = KS_P_L & "" & vbCrLf For I = 1 To Col Title = SQL(1,N) TempPicStr=GetPicUrl(SQL(7,N)) Url=KS.GetInfoUrl(ChannelID,SQL(2,N),SQL(0,N),SQL(5,N),SQL(3,N),SQL(4,N),0) Dim TempBorder If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border TempPicStr = TempPicStr End If LinkAndPicStr = "" TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) TempTitleStr = "" & KS.GotTopic(Title, T_Len) & "" KS_P_L = KS_P_L & ("" & vbCrLf) N=N+1:If N>=TotalNum+1 Then Exit For Next KS_P_L = KS_P_L & ("" & vbCrLf) If PicStyle=5 Then KS_P_L = KS_P_L & KS.GetSplitPic(SplitPic,ColSpanNum) If N>=TotalNum+1 Then Exit For Next KS_P_L = KS_P_L & M_L_S & ("
    " & vbCrLf) Select Case CInt(PicStyle) Case 1:KS_P_L = KS_P_L & ("" & TempPicStr & "" & vbCrLf) Case 2:KS_P_L = KS_P_L & ("
    " & TempPicStr & "
    " & TempTitleStr & "
    " & vbCrLf) Case 3 KS_P_L = KS_P_L & "" & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & TempPicStr & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " KS_P_L = KS_P_L & "
    " & TempTitleStr & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(8,N)), vbCrLf, ""), " ", ""), C_Len) & "……
    " & vbCrLf KS_P_L = KS_P_L & "
    " & vbCrLf Case 4 KS_P_L = KS_P_L & "" & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & " " & vbCrLf KS_P_L = KS_P_L & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & TempTitleStr & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(8,N)), vbCrLf, ""), " ", ""), C_Len) & "……
    " & vbCrLf KS_P_L = KS_P_L & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & TempPicStr & "
    " & vbCrLf KS_P_L = KS_P_L & "
    " & vbCrLf Case 5 '样式五 Dim ColSpanNum Dim DateStr:DateStr=KS.GetDateStr(SQL(6,N),DateRule,DateAlign,"",Col,ColSpanNum) If Col=1 Then KS_P_L = KS_P_L & NaviStr & TempTitleStr & DateStr Else KS_P_L = KS_P_L & (" " & vbCrLf) KS_P_L = KS_P_L & (" " & vbcrlf &"
    " & NaviStr & TempTitleStr & DateStr) KS_P_L = KS_P_L & ("
    ") End If End Select KS_P_L = KS_P_L & ("
    " & vbCrLf) End If End Function '=================================================================图片中心通用函数结束================================== '************************************************************图片中心刷新函数**************************************************** '取得栏目图片列表函数 Function GetPictureList(ChannelID,FolderID, I_S_C, Width, Height, OpenType, P_P, PicStyle, C_Len, T_Len, num, ByVal S_Str, MoreType, MoreLink, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,SpecialID,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetPictureList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, P_PStr, O_T_S, M_L_S, C_F_T,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") C_F_T = True Else C_F_T = False End If If FolderID="" Then FolderID="0" Select Case P_P Case 1 :P_PStr = "AND Recommend=1" Case 2 :P_PStr = "AND Popular=1" Case 3 :P_PStr = "AND Strip=1" End Select P_PStr=P_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,PhotoUrl,PictureContent FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 " & P_PStr & " ORDER BY IsTop Desc," & S_Str O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And FolderID <> "0" And C_F_T = False Then M_L_S = KS.GetMoreLink(P_T,Col, 20, MoreType, MoreLink, KS.GetFolderPath(FolderID), O_T_S) GetPictureList = KS_P_L(ChannelID,SqlStr, M_L_S, Width, Height, O_T_S, PicStyle, C_Len, T_Len, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得循环栏目图片列表函数 Function GetCirPictureList(ChannelID,Width, Height, OpenType, P_P, PicStyle, C_Len, T_Len, num, S_Str, MoreType, MoreLink, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, ColNum, FolderCss, MenuBgType, MenuBg, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCirPictureList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If ' If Application(KS.SiteSN & "RefreshType") = "Folder" Then Dim SqlStr,ID,SQL,K,n,TotalNum Dim RS:Set RS=Conn.Execute("Select ID From KS_Class Where ChannelID=" & ChannelID & " And DelTF=0 AND TN='" & Application(KS.SiteSN & "RefreshFolderID") & "' ORDER BY FolderOrder") If RS.EOF And RS.BOF Then RS.Close:Set RS = Nothing:GetCirPictureList = "": Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalNum=Ubound(SQL,2) Dim TempStr, I, MenuBgStr, PictureListStr, O_T_S TempStr = "" & vbCrLf MenuBgStr = KS.GetMenuBg(MenuBgType, MenuBg, ColNum) O_T_S = KS.G_O_T_S(OpenType) For K=0 To TotalNum TempStr = TempStr & "" For I = 1 To ColNum ID = Trim(SQL(0,N)) TempStr = TempStr & "" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "" & vbCrLf If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " TempStr = TempStr & "
    " & KS.GetClassNP(ID) & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf '调用栏目图片函数 PictureListStr = GetPictureList(ChannelID,ID, True, Width, Height, OpenType, P_P, PicStyle, C_Len, T_Len, num, S_Str, MoreType, MoreLink, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,0,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,"ajax") If Trim(PictureListStr) = "" Then PictureListStr = "
  • 此栏目下没有图片
  • " TempStr = TempStr & PictureListStr TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf GetCirPictureList = TempStr ' Else ' GetCirPictureList = "" ' End If End Function '取得图片分页函数 Function GetLastPictureList(ChannelID,PerPageNumber, I_S_C, Width, Height, OpenType, PicStyle, C_Len, T_Len, S_Str, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,PageStyle,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If Cint(Application(KS.SiteSN&"ChannelID"))<>Cint(ChannelID) Then GetLastPictureList="该标签位置出错!":Exit Function If P_T>2 Then GetLastPictureList=GetPageStr(KS.C_S(ChannelID,10),LabelID):Exit Function If KS.C_S(ChannelID,7)=0 or KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),3)>1 Then GetLastPictureList=Application("PageParam"):Exit Function Dim FolderID, SqlStr, TempIDArrStr,Param If Application(KS.SiteSN & "RefreshType") = "Folder" Or Application(KS.SiteSN & "RefreshType") = "Special" Then If Application(KS.SiteSN & "RefreshType") = "Special" Then '刷新专题,查询语句不同 If DataBaseType=1 Then SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE charindex('" & KS.C("CurrSpecialID") & "',specialid)>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" Else SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE instr(specialid,'" & KS.C("CurrSpecialID") & "')>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" End If Else FolderID = Application(KS.SiteSN & "RefreshFolderID") If CBool(I_S_C) = True Then Param="Tid In(" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Dim ASort: If Lcase(Left(Trim(S_Str),2))<>"id" Then ASort=S_Str & ",ID Desc" Else ASort=S_Str SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 order by IsTop Desc," & Asort End If Dim N,SQL,TotalNum,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then GetLastPictureList="

    此栏目下没有" & KS.C_S(ChannelID,3) & "

    ":RS.Close:Set RS=Nothing:Application(KS.SiteSN & "PageList") = "":Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalNum=Ubound(SQL,2)+1 Dim PageNum, I, J, k, TempStr, O_T_S O_T_S = KS.G_O_T_S(OpenType) if (TotalNum mod PerPageNumber)=0 then PageNum = TotalNum \ PerPageNumber else PageNum = TotalNum \ PerPageNumber + 1 end if For I = 1 To PageNum TempIDArrStr = "" For J = 1 To PerPageNumber TempIDArrStr = TempIDArrStr & SQL(0,N) & "," N=N+1 If N>=TotalNum Then Exit For Next TempIDArrStr = Left(TempIDArrStr, Len(TempIDArrStr) - 1) SqlStr = "SELECT ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,PhotoUrl,PictureContent FROM " & KS.C_S(ChannelID,2) &" Where ID in (" & TempIDArrStr & ") AND Verific=1 AND DelTF=0 order by IsTop Desc," & S_Str TempStr = TempStr & KS_P_L(ChannelID,SqlStr, "", Width, Height, O_T_S, PicStyle, C_Len, T_Len, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) TempStr = TempStr & KS.GetPrePageList(PageStyle,KS.C_S(ChannelID,4),PageNum,I,TotalNum,PerPageNumber) TempStr = TempStr & "{$PageList}" '加上分页符 If N>=TotalNum Then Exit For Next Application(KS.SiteSN & "PageList") = TempStr Application(KS.SiteSN & "PageStyle") = PageStyle Else Application(KS.SiteSN & "PageList") = "" End If GetLastPictureList = "{PageListStr}" End Function '取得相关图片列表 Function GetCorrelativePicture(ChannelID,innerstr,num, Col, Width, Height, OpenType, PicStyle, C_Len, T_Len, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCorrelativePicture="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If 'If Application(KS.SiteSN & "RefreshType") = "PictureContent" Then Dim KeyWords:KeyWords=trim(Conn.Execute("Select " &innerstr& " From " & KS.C_S(ChannelID,2) &" Where ID=" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")))(0)) If KeyWords="" Then GetCorrelativePicture = "
  • 暂无相关链接
  • ":Exit Function Dim KeyWordsArr, I, SqlKeyWordStr KeyWordsArr = Split(KeyWords, "|") For I = 0 To UBound(KeyWordsArr) If DataBaseType=0 Then If SqlKeyWordStr = "" Then SqlKeyWordStr = " instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " End If Else If SqlKeyWordStr = "" Then SqlKeyWordStr = " charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " End If End If Next Dim SqlStr:SqlStr = "Select TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,PhotoUrl,PictureContent From " & KS.C_S(ChannelID,2) &" Where (" & SqlKeyWordStr & ") AND ID<>" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")) & " AND DelTF=0 AND Verific=1" GetCorrelativePicture = KS_P_L(ChannelID,SqlStr, "", Width, Height, KS.G_O_T_S(OpenType), PicStyle, C_Len, T_Len, Col, T_Css, NavType, Nav, SplitPic, DateRule, DateAlign, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) If GetCorrelativePicture = "" Then GetCorrelativePicture = "
  • 暂无相关链接
  • " ' Else ' GetCorrelativePicture = "" ' End If End Function '******************************************************************************************************************************** '==========================================================================下载发布中心通用函数声明============================== '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:KS_D_L '作 用:通用栏目下载列表 '参 数:SqlStr 待查询的SQL语句,M_L_S更多链接字串,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_D_L(ChannelID,SqlStr, M_L_S, S_C_N, O_T_S, R_H, T_Len, Col, ShowStyle, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim I, C_N_Link,NaviStr,ColSpanNum, TempTitle,Title, T_CssStr, DateCssStr Dim SQL,K,N,TotalNum Dim RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then KS_D_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalNum=Ubound(SQL,2) T_CssStr = KS.GetCss(T_Css):DateCssStr = KS.GetCss(DateCss):R_H = KS.G_R_H(R_H):NaviStr = KS.GetNavi(NavType, Nav) IF P_T=2 Then KS_D_L = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum If CBool(S_C_N) = True Then C_N_Link = "[" & KS.GetClassNP(SQL(2,K)) & "]" Title = SQL(1,K) & " " & SQL(7,K) TempTitle = "" & KS.GotTopic(Title, T_Len) & "" KS_D_L = KS_D_L & " " & (NaviStr & C_N_Link & TempTitle & KS.GetDCDateStr(SQL(6,K),DateRule,DateCssStr)) & "" & vbCrLf Next KS_D_L = KS_D_L & M_L_S & " " & vbCrLf & "" & vbCrLf Else KS_D_L = "" & vbCrLf For K=0 To TotalNum KS_D_L = KS_D_L & "" & vbCrLf For I = 1 To Col If CBool(S_C_N) = True Then C_N_Link = "[" & KS.GetClassNP(SQL(2,N)) & "]" Title = SQL(1,N) & " " & SQL(7,N) Dim DateStr:DateStr=KS.GetDateStr(SQL(6,N),DateRule,DateAlign,DateCssStr,Col,ColSpanNum) TempTitle = "" & KS.GotTopic(Title, T_Len) & "" If Col=1 Then KS_D_L = KS_D_L & " " & vbCrLf Else KS_D_L = KS_D_L & ("" & vbCrLf) End If N=N+1 If N>=TotalNum+1 Then Exit For Next KS_D_L = KS_D_L & "" & vbCrLf KS_D_L = KS_D_L & KS.GetSplitPic(SplitPic, ColSpanNum) If N>=TotalNum+1 Then Exit For Next KS_D_L = KS_D_L & M_L_S & ("
    " & vbCrLf & (NaviStr & C_N_Link & TempTitle & DateStr) & " " & vbCrLf) KS_D_L = KS_D_L & ("" & vbCrLf) KS_D_L = KS_D_L & ("") KS_D_L = KS_D_L & (" " & vbcrlf &"
    " & (NaviStr & C_N_Link & TempTitle & DateStr) & "
    " & vbCrLf & "
    " & vbCrLf) End If End Function '+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名: KS_C_PicD_L '作 用: 通用图片下载函数 '参 数: SqlStr 待查询的SQL语句,OpenTypStr链接打开类型,等 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function KS_C_PicD_L(ChannelID,SqlStr, Width, Height, O_T_S, ShowTitle, PicStyle, C_Len, T_Len, Col, T_Css, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim LinkAndPicStr,TempPicStr, TempTitleStr, I,Title, T_CssStr,URL,ReturnStr,SQL,K,N,TotalNum Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open SqlStr, Conn, 1, 1 If RS.EOF Then KS_C_PicD_L="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalNum=Ubound(SQL,2) T_CssStr = KS.GetCss(T_Css) IF P_T=2 Then ReturnStr = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum Title = SQL(1,K):TempPicStr=GetPicUrl(SQL(6,K)) URL=KS.GetInfoUrl(ChannelID,SQL(2,K),SQL(0,K),SQL(5,K),SQL(3,K),SQL(4,K),0) LinkAndPicStr = "" TempTitleStr = "" & KS.Gottopic(Title,T_Len) & "" Select Case CInt(PicStyle) Case 1:ReturnStr = ReturnStr & (" " & LinkAndPicStr & "" & vbCrLf) Case 2:ReturnStr = ReturnStr & ("" & LinkAndPicStr & "
    " & TempTitleStr & "" & vbCrLf) Case 3 ReturnStr = ReturnStr & (" " & LinkAndPicStr) If Cbool(ShowTitle) = True Then ReturnStr = ReturnStr & ("

    " & TempTitleStr &"

    ") ReturnStr = ReturnStr & ("

    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(7,K)), vbCrLf, ""), " ", ""), C_Len) &"...

    "& vbCrLf) Case 4 ReturnStr = ReturnStr & (" ") If Cbool(ShowTitle) = True Then ReturnStr = ReturnStr & ("

    " & TempTitleStr &"

    ") ReturnStr = ReturnStr & ("

    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(7,K)), vbCrLf, ""), " ", ""), C_Len) &"...

    " & LinkAndPicStr &""& vbCrLf) End Select Next KS_C_PicD_L = ReturnStr & ("" & vbCrLf &"") Else ReturnStr = "" & vbCrLf For K=0 To TotalNum ReturnStr = ReturnStr & "" & vbCrLf For I = 1 To Col Title = SQL(1,N):TempPicStr=GetPicUrl(SQL(6,N)) URL=KS.GetInfoUrl(ChannelID,SQL(2,N),SQL(0,N),SQL(5,N),SQL(3,N),SQL(4,N),0) '-------------------------------加边框开始------------------------------------------------- Dim TempBorder If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border:TempPicStr = TempPicStr End If LinkAndPicStr = "" TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) '-----------------------------------图片加边框结束------------------------------------------------------------------- TempTitleStr = "" & KS.Gottopic(Title,T_Len) & "" ReturnStr = ReturnStr & ("" & vbCrLf) N=N+1 IF N>=TotalNum+1 Then Exit For Next ReturnStr = ReturnStr & ("" & vbCrLf) ReturnStr = ReturnStr & ("") IF N>=TotalNum+1 Then Exit For Next KS_C_PicD_L = ReturnStr & ("
    " & vbCrLf) Select Case CInt(PicStyle) Case 1 ReturnStr = ReturnStr & ("

    " & TempPicStr & "

    " & vbCrLf) Case 2 ReturnStr = ReturnStr & (" ") ReturnStr = ReturnStr & ("" & vbCrLf) If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & ("" & vbCrLf) End If ReturnStr = ReturnStr & ("
    " & TempPicStr & "
    " & TempTitleStr & "
    ") Case 3 ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & TempPicStr & "
    " & vbCrLf ReturnStr = ReturnStr & "" If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & "" & vbCrLf End If ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempTitleStr & "
    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(7,N)), vbCrLf, ""), " ", ""), C_Len) & "...
    " & vbCrLf Case 4 ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & " " & vbCrLf ReturnStr = ReturnStr & "
    " & vbCrLf ReturnStr = ReturnStr & "" If CBool(ShowTitle) = True Then ReturnStr = ReturnStr & "" & vbCrLf End If ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempTitleStr & "
    " & KS.GotTopic(Replace(Replace(KS.LoseHtml(SQL(7,N)), vbCrLf, ""), " ", ""), C_Len) & "...
    " & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "" & vbCrLf ReturnStr = ReturnStr & "
    " & TempPicStr & "
    " & vbCrLf End Select ReturnStr = ReturnStr & ("
    " & vbCrLf) End If End Function '==========================================================================下载发布中心通用函数结束============================== '***********************************下载中心刷新函数**************************************************** '取得栏目下载列表 Function GetDownLoadList(ChannelID,FolderID, I_S_C, S_C_N, OpenType, D_P, num, R_H, T_Len,ByVal S_Str, Col, ShowStyle, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, DateCss,SpecialID,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetDownLoadList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, D_PStr, M_L_S, O_T_S, C_F_T,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") C_F_T = True Else C_F_T = False End If If FolderID = "" Then FolderID="0" Select Case D_P Case 1:D_PStr = " And Recommend=1" Case 2:D_PStr = " And Popular=1" End Select D_PStr=D_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,DownVersion FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 " & D_PStr & " ORDER BY IsTop Desc," & S_Str O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And FolderID <> "0" And C_F_T = False Then M_L_S = KS.GetMoreLink(P_T,Col, R_H, MoreType, MoreLink, KS.GetFolderPath(FolderID), O_T_S) GetDownLoadList = KS_D_L(ChannelID,SqlStr, M_L_S, S_C_N, O_T_S, R_H, T_Len, Col, ShowStyle, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得图片下载列表函数 Function GetPicDownLoadList(ChannelID,FolderID, I_S_C, Width, Height, OpenType, ShowTitle, D_P, PicStyle, C_Len, T_Len, Num, SqlSort, Col, T_Css, BorderType, Border,SpecialID,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetPicDownLoadList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, D_PStr,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID") Select Case D_P Case 1:D_PStr = " And Recommend=1" Case 2:D_PStr = " And Popular=1" End Select D_PStr=D_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(SqlSort),2))<>"id" Then SqlSort=SqlSort & ",ID Desc" If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & Num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,PhotoUrl,DownContent FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0" & D_PStr & " ORDER BY IsTop Desc," & SqlSort GetPicDownLoadList = KS_C_PicD_L(ChannelID,SqlStr, Width, Height, KS.G_O_T_S(OpenType), ShowTitle, PicStyle, C_Len, T_Len, Col, T_Css, BorderType, Border,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '循环列出下载栏目函数 Function GetCirDownLoadList(ChannelID,Col, FolderCss, MenuBgType, MenuBg, S_C_N, OpenType, num, R_H, T_Len, S_Str, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, DateCss,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCirDownLoadList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If 'If Application(KS.SiteSN & "RefreshType") = "Folder" Then Dim FolderID, SqlStr,ID,SQL,K,n,TotalNum FolderID = Application(KS.SiteSN & "RefreshFolderID") Dim RS:Set RS=Conn.Execute("Select ID From KS_Class Where ChannelID=" & ChannelID & " And DelTF=0 AND TN='" & FolderID & "' ORDER BY FolderOrder") If RS.EOF And RS.BOF Then RS.Close:Set RS = Nothing:GetCirDownLoadList = "": Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalNum=Ubound(SQL,2) Dim I, MenuBgStr, DownLoadListStr, O_T_S GetCirDownLoadList = "" & vbCrLf MenuBgStr = KS.GetMenuBg(MenuBgType, MenuBg, Col) O_T_S = KS.G_O_T_S(OpenType) For K=0 To TotalNum GetCirDownLoadList = GetCirDownLoadList & "" & vbCrLf For I = 1 To Col ID = SQL(0,N) GetCirDownLoadList = GetCirDownLoadList & "" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next GetCirDownLoadList = GetCirDownLoadList & "" & vbCrLf If N>=TotalNum+1 Then Exit For Next GetCirDownLoadList = GetCirDownLoadList & "
    " & vbCrLf GetCirDownLoadList = GetCirDownLoadList & "" & vbCrLf GetCirDownLoadList = GetCirDownLoadList & "
    " GetCirDownLoadList = GetCirDownLoadList & "
    " & KS.GetClassNP(ID) & "
    " & vbCrLf GetCirDownLoadList = GetCirDownLoadList & "
    " & vbCrLf DownLoadListStr = GetDownLoadList(ChannelID,ID, True, S_C_N, OpenType, 0, num, R_H, T_Len, S_Str, 1, 1, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, DateCss,0,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,"ajax") If Trim(DownLoadListStr) = "" Then DownLoadListStr = "
  • 此栏目下没有下载
  • " GetCirDownLoadList = GetCirDownLoadList & DownLoadListStr GetCirDownLoadList = GetCirDownLoadList & "
    " & vbCrLf GetCirDownLoadList = GetCirDownLoadList & "
    " & vbCrLf 'Else ' GetCirDownLoadList = "" 'End If End Function '取得下载分页函数 Function GetLastDownLoadList(ChannelID,PerPageNumber, R_H, S_C_N, OpenType, T_Len, S_Str, I_S_C, ShowStyle, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,Col,PageStyle,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If Cint(Application(KS.SiteSN&"ChannelID"))<>Cint(ChannelID) Then GetLastDownLoadList="该标签位置出错!":Exit Function If P_T>2 Then GetLastDownLoadList=GetPageStr(KS.C_S(ChannelID,10),LabelID):Exit Function If KS.C_S(ChannelID,7)=0 or KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),3)>1 Then GetLastDownLoadList=Application("PageParam"):Exit Function Dim FolderID, SqlStr,Param If Application(KS.SiteSN & "RefreshType") = "Folder" Or Application(KS.SiteSN & "RefreshType") = "Special" Then If Application(KS.SiteSN & "RefreshType") = "Special" Then '刷新专题,查询语句不同 If DataBaseType=1 Then SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE charindex('" & KS.C("CurrSpecialID") & "',specialid)>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" Else SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" WHERE instr(specialid,'" & KS.C("CurrSpecialID") & "')>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" End If Else FolderID = Application(KS.SiteSN & "RefreshFolderID") If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Dim ASort: If Lcase(Left(Trim(S_Str),2))<>"id" Then ASort=S_Str & ",ID Desc" Else ASort=S_Str SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 order by IsTop Desc," & Asort End If Dim SQL,TotalPut,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then GetLastDownLoadList="

    此栏目下没有" & KS.C_S(ChannelID,3) & "

    ":RS.Close:Set RS=Nothing:Application(KS.SiteSN & "PageList") = "":Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalPut=Ubound(SQL,2)+1 Dim N,PageNum,I, J, k, TempStr, O_T_S,CurrTid, AddDate,TempIDArrStr O_T_S = KS.G_O_T_S(OpenType) R_H = KS.G_R_H(R_H) if (TotalPut mod PerPageNumber)=0 then PageNum = TotalPut \ PerPageNumber else PageNum = TotalPut \ PerPageNumber + 1 end if For I = 1 To PageNum TempIDArrStr="" For J = 1 To PerPageNumber TempIDArrStr = TempIDArrStr &SQL(0,N) & "," N=N+1 If N>=TotalPut Then Exit For Next TempIDArrStr = Left(TempIDArrStr, Len(TempIDArrStr) - 1) SqlStr = "SELECT ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,DownVersion FROM " & KS.C_S(ChannelID,2) &" Where ID in (" & TempIDArrStr & ") AND Verific=1 AND DelTF=0 order by IsTop Desc," & S_Str TempStr = TempStr & KS_D_L(ChannelID,SqlStr, "", S_C_N, O_T_S, R_H, T_Len, Col, ShowStyle, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, DateCss,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) TempStr = TempStr & KS.GetPrePageList(PageStyle,KS.C_S(ChannelID,4),PageNum,I,TotalPut,PerPageNumber)& "{$PageList}" If N>=TotalPut Then Exit For Next Application(KS.SiteSN & "PageList") = TempStr Application(KS.SiteSN & "PageStyle") = PageStyle Else Application(KS.SiteSN & "PageList") = "" End If GetLastDownLoadList = "{PageListStr}" End Function '取得相关下载 Function GetCorrelativeDownLoad(ChannelID,InnerStr,num, R_H, T_Len, Col, OpenType, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCorrelativeDownLoad="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If ' If Application(KS.SiteSN & "RefreshType") = "DownLoadContent" Then Dim KeyWords:KeyWords=trim(Conn.Execute("Select " &innerstr& " From " & KS.C_S(ChannelID,2) &" Where ID=" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")))(0)) If KeyWords="" Then GetCorrelativeDownLoad = "
  • 暂无相关" & KS.C_S(ChannelID,3) & "
  • ":Exit Function Dim KeyWordsArr, I, SqlKeyWordStr,SqlStr KeyWordsArr = Split(KeyWords, "|") For I = 0 To UBound(KeyWordsArr) If DataBaseType=0 Then If SqlKeyWordStr = "" Then SqlKeyWordStr = " instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or instr("& innerstr &",'%" & KeyWordsArr(I) & "')>0 " End If Else If SqlKeyWordStr = "" Then SqlKeyWordStr = " charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or charindex('%" & KeyWordsArr(I) & "',"& innerstr &")>0 " End If End If Next SqlStr = "Select TOP " & num & " ID,Title,Tid,ReadPoint,InfoPurview,Fname,AddDate,DownVersion From " & KS.C_S(ChannelID,2) &" Where (" & SqlKeyWordStr & ") AND ID<>" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")) & " AND DelTF=0 AND Verific=1 order by IsTop Desc,ID Desc" GetCorrelativeDownLoad = KS_D_L(ChannelID,SqlStr, "", False, KS.G_O_T_S(OpenType), R_H, T_Len, Col, 1, NavType, Nav, SplitPic, DateRule, DateAlign, T_Css, "",P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) If GetCorrelativeDownLoad = "" Then GetCorrelativeDownLoad = "
  • 暂无相关" & KS.C_S(ChannelID,3) ' Else ' GetCorrelativeDownLoad = "" ' End If End Function '=====================================================商城通用开始========================================================== '通用商品列表 Function KS_Pro_L(SqlStr,ShowStyle,ButtonType,PriceType,Discount,Width,Height,BorderType,Border,O_T_S, T_Len, Col, NavType, Nav, M_L_S, SplitPic, DateRule, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) Dim SQL,K,N,TotalNum Dim RS:Set RS=Server.CreateObject("ADODB.RECORDSET") RS.Open SqlStr, Conn, 1, 1 If RS.Eof And RS.Bof Then KS_Pro_L="" :RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalNum=Ubound(SQL,2) Dim Url,DateStr,TempPicStr,LinkAndPicStr,TempTitleStr, I, CurrTid,Title,T_CssStr, NaviStr,C_N_Link,ColSpanNum,ButtonStr,PriceStr T_CssStr = KS.GetCss(T_Css):NaviStr = KS.GetNavi(NavType, Nav) IF P_T=2 Then KS_Pro_L = "" & vbCrLf & " " & vbCrLf For K=0 To TotalNum CurrTid = SQL(2,K):Title = SQL(1,K) Url=KS.GetInfoUrl(5,CurrTid,SQL(0,K),SQL(3,K),0,0,0) ButtonStr=GetButtonStr(ButtonType,SQL(0,K),SQL(11,K),Url,O_T_S) PriceStr=GetPriceStr(PriceType,Discount,SQL(6,K),SQL(7,K),SQL(8,K),SQL(9,K),SQL(10,K)) TempPicStr=GetPicUrl(SQL(5,K)) LinkAndPicStr = "" TempTitleStr =NaviStr & "" & KS.GotTopic(Title, T_Len) & "" Select Case CInt(ShowStyle) Case 1 DateStr=KS.GetDCDateStr(SQL(4,K),DateRule,"") KS_Pro_L = KS_Pro_L & " " &TempTitleStr & DateStr&"
  • "&vbcrlf Case 2 KS_Pro_L = KS_Pro_L & (" " & LinkAndPicStr & "" & vbCrLf) Case 3 KS_Pro_L = KS_Pro_L & (" " & LinkAndPicStr & "
    " & TempTitleStr & "" & vbCrLf) Case 4 KS_Pro_L = KS_Pro_L & (" " & LinkAndPicStr & "
    " & ButtonStr & "" & vbCrLf) Case 5 KS_Pro_L = KS_Pro_L & (" " & LinkAndPicStr & "
    " & TempTitleStr & "
    " & ButtonStr & "" & vbCrLf) Case 6 KS_Pro_L = KS_Pro_L & (" " & LinkAndPicStr & "
    " & TempTitleStr & "
    " & PriceStr & "
    " & ButtonStr & "" & vbCrLf) Case 7 KS_Pro_L = KS_Pro_L & " " & LinkAndPicStr & "

    " & PriceStr & "
    " &buttonstr & "

    " & vbCrLf Case 8 KS_Pro_L = KS_Pro_L & " " &LinkAndPicStr & "
    " &TempTitleStr & "

    " & PriceStr & "
    " &buttonstr & "

    " & vbCrLf Case 9 KS_Pro_L = KS_Pro_L & " " & LinkAndPicStr & "

    " & TempTitleStr & "
    " & PriceStr & "
    " &buttonstr & "

    " & vbCrLf Case 10 KS_Pro_L = KS_Pro_L & " " & LinkAndPicStr & "
    " &TempTitleStr & "

    " & TempTitleStr & "
    " & PriceStr & "
    " &buttonstr & "

    " & vbCrLf End Select Next KS_Pro_L = KS_Pro_L & M_L_S & ("" & vbCrLf) Else KS_Pro_L = "" & vbCrLf For K=0 To TotalNum KS_Pro_L = KS_Pro_L & "" & vbCrLf For I = 1 To Col CurrTid = SQL(2,N):Title = SQL(1,N) Url=KS.GetInfoUrl(5,CurrTid,SQL(0,N),SQL(3,N),0,0,0) ButtonStr=GetButtonStr(ButtonType,SQL(0,N),SQL(11,N),Url,O_T_S) PriceStr=GetPriceStr(PriceType,Discount,SQL(6,N),SQL(7,N),SQL(8,N),SQL(9,N),SQL(10,N)) TempPicStr=GetPicUrl(SQL(5,N)) Dim TempBorder If BorderType = 1 And Border <> "" Then TempBorder = TempPicStr '得到原图片 TempPicStr = Border '将原图片设定为透明边框 Else TempBorder = Border TempPicStr = TempPicStr End If LinkAndPicStr = "" '给图片加边框 TempPicStr = KS.GetPhotoBorder(LinkAndPicStr, BorderType, TempBorder) TempTitleStr =NaviStr & "" & KS.GotTopic(Title, T_Len) & "" KS_Pro_L = KS_Pro_L & ("" & vbCrLf) N=N+1 If N>=TotalNum+1 Then Exit For Next KS_Pro_L = KS_Pro_L & ("" & vbCrLf) KS_Pro_L = KS_Pro_L & KS.GetSplitPic(SplitPic,ColSpanNum) If N>=TotalNum+1 Then Exit For Next KS_Pro_L = KS_Pro_L & M_L_S & ("
    " & vbCrLf) ColSpanNum=Col Select Case CInt(ShowStyle) Case 1 DateStr=KS.GetDateStr(SQL(4,N),DateRule,"center","",Col,ColSpanNum) If Col=1 Then KS_Pro_L = KS_Pro_L & TempTitleStr & DateStr Else KS_Pro_L = KS_Pro_L & (" " & vbCrLf) KS_Pro_L = KS_Pro_L & (" " & vbcrlf &"
    " & TempTitleStr & DateStr) KS_Pro_L = KS_Pro_L & ("
    ") End If Case 2 KS_Pro_L = KS_Pro_L & ("
    " & TempPicStr & "
    " & vbCrLf) Case 3 KS_Pro_L = KS_Pro_L & ("
    " & TempPicStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & TempTitleStr & "
    " & vbCrLf) Case 4 KS_Pro_L = KS_Pro_L & ("
    " & TempPicStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & ButtonStr & "
    " & vbCrLf) Case 5 KS_Pro_L = KS_Pro_L & ("
    " & TempPicStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & TempTitleStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & ButtonStr & "
    " & vbCrLf) Case 6 KS_Pro_L = KS_Pro_L & ("
    " & TempPicStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & TempTitleStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & PriceStr & "
    " & vbCrLf) KS_Pro_L = KS_Pro_L & ("
    " & ButtonStr & "
    " & vbCrLf) Case 7 KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempPicStr & " " & vbCrLf KS_Pro_L = KS_Pro_L & " "& vbcrlf & "" & vbcrlf & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & PriceStr & "
    " &buttonstr & "
    " & vbCrLf Case 8 KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempPicStr & "
    " &TempTitleStr & "
    " & vbCrLf KS_Pro_L = KS_Pro_L & " "& vbcrlf & "" & vbcrlf & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & PriceStr & "
    " &buttonstr & "
    " & vbCrLf Case 9 KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempPicStr & "" & vbCrLf KS_Pro_L = KS_Pro_L & " "& vbcrlf & "" & vbcrlf & ""& vbcrlf & "" & vbcrlf & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempTitleStr & "
    " & PriceStr & "
    " &buttonstr & "
    " & vbCrLf Case 10 KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempPicStr & "
    " &TempTitleStr & "
    " & vbCrLf KS_Pro_L = KS_Pro_L & " "& vbcrlf & "" & vbcrlf & ""& vbcrlf & "" & vbcrlf & "" & vbCrLf KS_Pro_L = KS_Pro_L & " " & vbCrLf KS_Pro_L = KS_Pro_L & "
    " & TempTitleStr & "
    " & PriceStr & "
    " &buttonstr & "
    " & vbCrLf End Select KS_Pro_L = KS_Pro_L & ("
    " & vbCrLf) End If End Function '价格样式 Function GetPriceStr(PriceType,Discount,Discount_v,Price_Original,Price,Price_Market,Price_Member) If Price_Market=0 Then Price_Market="—" Else Price_Market="¥"&Price_Market If Price_Member=0 Then Price_Member="—" Else Price_Member="¥"&Price_Member If Price_Original=0 Then Price_Original="—" Else Price_Original="¥"&Price_Original Select Case PriceType Case 0:GetPriceStr="市场价:"&Price_Market &"
    商城价:¥"&Price &"
    会员价:" & Price_Member Case 1:GetPriceStr="原价:"&Price_Original Case 2:GetPriceStr="商城价:¥"&Price Case 3:GetPriceStr="原 价:"&Price_Original & "
    会员价:" & Price_Member Case 4:GetPriceStr="商城价:¥"&Price & "
    会员价:" & Price_Member Case 5:GetPriceStr="市场价:"&Price_Market & "
    商城价:¥"&Price Case 6:GetPriceStr="市场价:"&Price_Market &"
    原 价:"&Price_Original & "
    会员价:"&Price_Member Case 7:GetPriceStr="市场价:"&Price_Market &"
    原 价:"&Price_Original & "
    商城价:¥"&Price & "
    会员价:"&Price_Member End Select If Cbool(Discount)=true Then GetPriceStr=GetPriceStr & "
    折扣率:"&FormatPercent(Discount_v/10,0) End Function '按钮样式 Function GetButtonStr(ButtonType,ID,ProID,Url,O_T_S) Dim BuyButton:BuyButton="" Dim FavButton:FavButton="" Dim XQButton:XQButton="" Select Case ButtonType Case 1:GetButtonStr=BuyButton Case 2:GetButtonStr=FavButton Case 3:GetButtonStr=XQButton Case 4:GetButtonStr=BuyButton&" " & FavButton Case 5:GetButtonStr=BuyButton&" " & XQButton Case 6:GetButtonStr=FavButton&" " & XQButton Case 7:GetButtonStr=BuyButton&" " & XQButton&" " & FavButton Case Else:GetButtonStr="" End Select End Function '=====================================================商城通用结束========================================================== '栏目商品列表 Function GetProductList(FolderID,I_S_C,SpecialID,ProductType,ButtonType, ShowStyle,Width,Height,BorderType,Border,Discount, OpenType,num, PriceType, T_Len, S_Str, Col, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, T_Css, RecommendTF,PopularTF,SpecialTF,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetProductList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If Dim SqlStr, Pro_PStr,M_L_S, O_T_S,C_F_T,Param If FolderID = "-1" Then FolderID = Application(KS.SiteSN & "RefreshFolderID"):C_F_T = True Else C_F_T = False End If If Cbool(RecommendTF) = true Then Pro_PStr =Pro_PStr &" And Recommend=1" If Cbool(PopularTF)=true Then Pro_PStr=Pro_PStr & " And Popular=1" If Cbool(SpecialTF)=true Then Pro_PStr=Pro_PStr & " And IsSPecial=1" If ProductType<>"" And ProductType<>0 Then Pro_PStr=Pro_PStr & " And ProductType="&ProductType Pro_PStr=Pro_PStr & " And " & KS.GetSpecialPara(SpecialID) If Lcase(Left(Trim(S_Str),2))<>"id" Then S_Str=S_Str & ",ID Desc" If FolderID = "" Or FolderID = "0" Then Param="" Else If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" SqlStr = "SELECT TOP " & num & " ID,Title,Tid,Fname,AddDate,PhotoUrl,Discount,Price_Original,Price,Price_Market,Price_Member,ProID FROM KS_Product WHERE " & Param & " Verific=1 AND DelTF=0 " & Pro_PStr & " ORDER BY IsTop Desc," & S_Str O_T_S = KS.G_O_T_S(OpenType) If MoreLink <> "" And FolderID <> "0" And C_F_T = False Then M_L_S = KS.GetMoreLink(P_T,Col, 20, MoreType, MoreLink, KS.GetFolderPath(FolderID), O_T_S) GetProductList = KS_Pro_L(SqlStr,ShowStyle,ButtonType,PriceType,Discount,Width,Height,BorderType,Border,O_T_S, T_Len, Col, NavType, Nav, M_L_S, SplitPic, DateRule, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) End Function '取得栏目循环商品列表函数 Function GetCirProductList(ColNum, FolderCss, MenuBgType, MenuBg,ButtonType, ShowStyle,Width,Height,BorderType,Border,Discount, OpenType,num, PriceType, T_Len, S_Str, Col, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCirProductList="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If ' If Application(KS.SiteSN & "RefreshType") = "Folder" Then Dim SqlStr,ID,SQL,K,N,TotalNum Dim RS:Set RS=Conn.Execute("Select ID From KS_Class Where DelTF=0 AND TN='" & Application(KS.SiteSN & "RefreshFolderID") & "' ORDER BY FolderOrder") If RS.EOF And RS.BOF Then RS.Close:Set RS = Nothing:GetCirProductList = "": Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS=Nothing TotalNum=Ubound(SQL,2) Dim TempStr, I, MenuBgStr, ProductListStr, O_T_S TempStr = "" & vbCrLf MenuBgStr = KS.GetMenuBg(MenuBgType, MenuBg, ColNum) O_T_S = KS.G_O_T_S(OpenType) For K=0 To TotalNum TempStr = TempStr & "" & vbCrLf For I = 1 To ColNum ID = SQL(0,N) TempStr = TempStr & "" & vbCrLf N=N+1 If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "" & vbCrLf If N>=TotalNum+1 Then Exit For Next TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "" & vbCrLf TempStr = TempStr & "
    " TempStr = TempStr & KS.GetClassNP(ID) & "
    " & vbCrLf ProductListStr = GetProductList(ID,true,0,0,ButtonType, ShowStyle,Width,Height,BorderType,Border,Discount, OpenType,num, PriceType, T_Len, S_Str, Col, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, T_Css, false,false,false,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,"ajax") If Trim(ProductListStr) = "" Then ProductListStr = "
  • 此栏目下没有商品!
  • " TempStr = TempStr & ProductListStr TempStr = TempStr & "
    " & vbCrLf TempStr = TempStr & "
    " & vbCrLf GetCirProductList = TempStr 'Else ' GetCirProductList = "" 'End If End Function '分页商品 Function GetLastProductList(PerPageNumber,I_S_C,ButtonType,ShowStyle,Width,Height,BorderType,Border,Discount,OpenType,PriceType,T_Len,S_Str,Col,NavType,Nav,SplitPic,DateRule,T_Css,PageStyle,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) Dim ChannelID:ChannelID=5 If P_T>2 Then GetLastProductList=GetPageStr(KS.C_S(ChannelID,10),LabelID):Exit Function If KS.C_S(ChannelID,7)=0 Then GetLastProductList=Application("PageParam"):Exit Function Dim FolderID,SqlStr, TempIDArrStr,Param If Application(KS.SiteSN & "RefreshType") = "Folder" Or Application(KS.SiteSN & "RefreshType") = "Special" Then If Application(KS.SiteSN & "RefreshType") = "Special" Then '刷新专题,查询语句不同 If DataBaseType=1 Then SqlStr = "SELECT ID FROM KS_Product WHERE charindex('" & KS.C("CurrSpecialID") & "',specialid)>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" Else SqlStr = "SELECT ID FROM KS_Product WHERE instr(specialid,'" & KS.C("CurrSpecialID") & "')>0 AND Verific=1 And DelTF=0 Order by IsTop Desc,ID Desc" End If Else FolderID = Application(KS.SiteSN & "RefreshFolderID") If CBool(I_S_C) = True Then Param="Tid In (" & KS.GetFolderTid(FolderID) & ") And" Else Param="Tid='" & FolderID & "' And" Dim ASort: If Lcase(Left(Trim(S_Str),2))<>"id" Then ASort=S_Str & ",ID Desc" Else ASort=S_Str SqlStr = "SELECT ID FROM " & KS.C_S(ChannelID,2) &" Where " & Param & " Verific=1 AND DelTF=0 order by IsTop Desc," & Asort End If Dim SQL,TotalPut,RS:Set RS=Conn.Execute(SqlStr) If RS.EOF Then GetLastArticleList="

    此栏目下没有" & KS.C_S(ChannelID,3) & "

    ":RS.Close:Set RS=Nothing:Application(KS.SiteSN & "PageList") = "":Exit Function SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing TotalPut=Ubound(SQL,2)+1 Dim N,PageNum, I, J, k, TempStr, O_T_S,C_N_Link, TempTitle, NaviStr, ColSpanNum,CurrTid, T_CssStr, AddDate T_CssStr = KS.GetCss(T_Css) O_T_S = KS.G_O_T_S(OpenType) NaviStr = KS.GetNavi(NavType, Nav) if (TotalPut mod PerPageNumber)=0 then PageNum = TotalPut \ PerPageNumber else PageNum = TotalPut \ PerPageNumber + 1 end if For I = 1 To PageNum TempIDArrStr = "" For J = 1 To PerPageNumber TempIDArrStr = TempIDArrStr & SQL(0,N) & "," N=N+1 If N>=TotalPut Then Exit For Next TempIDArrStr = Left(TempIDArrStr, Len(TempIDArrStr) - 1) SqlStr = "SELECT ID,Title,Tid,Fname,AddDate,PhotoUrl,Discount,Price_Original,Price,Price_Market,Price_Member,ProID FROM KS_Product Where ID in (" & TempIDArrStr & ") AND Verific=1 AND DelTF=0 order by IsTop Desc," & S_Str TempStr = TempStr & KS_Pro_L(SqlStr,ShowStyle,ButtonType,PriceType,Discount,Width,Height,BorderType,Border,O_T_S, T_Len, Col, NavType, Nav, "", SplitPic, DateRule, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) TempStr = TempStr & KS.GetPrePageList(PageStyle,"条",PageNum,I,TotalPut,PerPageNumber) & "{$PageList}" If N>=TotalPut Then Exit For Next Application(KS.SiteSN & "PageList") = TempStr Application(KS.SiteSN & "PageStyle") = PageStyle Else Application(KS.SiteSN & "PageList") = "" End If GetLastProductList = "{PageListStr}" End Function '取得相关产品列表 Function GetCorrelativeProduct(innerstr,num,Col,T_Len,ButtonType,ShowStyle,PriceType,Width,Height,BorderType,Border,Discount,OpenType,NavType,Nav,SplitPic,DateRule,T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss,LabelID) If LabelID<>"ajax" and P_T>2 Then GetCorrelativeProduct="":Exit Function ElseIf P_T>2 Then P_T=P_T-2 End If 'If Application(KS.SiteSN & "RefreshType") = "ProductContent" Then Dim KeyWords:KeyWords=trim(Conn.Execute("Select " &innerstr& " From KS_Product Where ID=" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")))(0)) If KeyWords="" Then GetCorrelativeProduct = "
  • 暂无相关链接
  • ":Exit Function Dim KeyWordsArr, I, SqlKeyWordStr KeyWordsArr = Split(KeyWords, "|") For I = 0 To UBound(KeyWordsArr) If DataBaseType=0 Then If SqlKeyWordStr = "" Then SqlKeyWordStr = " instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or instr("& innerstr &",'" & KeyWordsArr(I) & "')>0 " End If Else If SqlKeyWordStr = "" Then SqlKeyWordStr = " charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " Else SqlKeyWordStr = SqlKeyWordStr & "or charindex('" & KeyWordsArr(I) & "',"& innerstr &")>0 " End If End If Next Dim Sqlstr:SqlStr = "Select TOP " & num & " ID,Title,Tid,Fname,AddDate,PhotoUrl,Discount,Price_Original,Price,Price_Market,Price_Member,ProID From KS_Product Where (" & SqlKeyWordStr & ") AND ID<>" & KS.ChkClng(Application(KS.SiteSN & "RefreshInfoID")) & " AND DelTF=0 AND Verific=1 order by IsTop Desc,ID Desc" GetCorrelativeProduct = KS_Pro_L(SqlStr,ShowStyle,ButtonType,PriceType,Discount,Width,Height,BorderType,Border,KS.G_O_T_S(OpenType), T_Len, Col, NavType, Nav, "", SplitPic, DateRule, T_Css,P_T,DivID,DivCss,UlID,ULCss,LiID,LICss) If GetCorrelativeProduct = "" Then GetCorrelativeProduct = "
  • 暂无相关产品
  • " ' Else ' GetCorrelativeProduct = "" ' End If End Function '============================================================================================================================ ' 以下为相关刷新通用函数 '============================================================================================================================ '---------------------------------------------------------------------------------------------------------------------------- '函数名: GetArticleTitle '功 能:取得文章标题 '参 数: Title原标题, T_Len保留字符长度,PicTF显示图文标志与否 TitleType图文标志, TitleFontColor颜色, TitleFontType字体 '---------------------------------------------------------------------------------------------------------------------------- Function GetArticleTitle(Byval Title, T_Len, PicTF, TitleType, TitleFontColor, TitleFontType) Dim DecoratesTitle If IsNumeric(T_Len) Then Title = KS.GotTopic(Title, T_Len) End If If CBool(PicTF) = True Then Select Case Trim(TitleType) Case "[图文]":DecoratesTitle = "" & TitleType & "" Case "[组图]":DecoratesTitle = "" & TitleType & "" Case "[推荐]":DecoratesTitle = "" & TitleType & "" Case "[注意]":DecoratesTitle = "" & TitleType & "" End Select End If If TitleFontColor <> "" Then DecoratesTitle = DecoratesTitle & "" & Title & "" Else DecoratesTitle = DecoratesTitle & Title End If If TitleFontType <> "" Then Select Case (TitleFontType) Case 1:DecoratesTitle = "" & DecoratesTitle & "" Case 2:DecoratesTitle = "" & DecoratesTitle & "" Case 3:DecoratesTitle = "" & DecoratesTitle & "" Case Else DecoratesTitle = DecoratesTitle End Select End If GetArticleTitle = DecoratesTitle End Function Function GetPicUrl(PicUrl) PicUrl=trim(PicUrl) If IsNull(PicUrl) Or Trim(PicUrl) = "" Then PicUrl = DomainStr & "images/nopic.gif" if Lcase(left(PicUrl,7))<>"http://" then GetPicUrl=KS.Setting(2) &PicUrl else GetPicUrl=PicUrl End Function '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@以下按样式刷新自由JS函数@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ '取得JS文字样式 Function RefreshCss(JSID, WordCss, Col, OpenType, num, R_H, T_Len, C_Len, NavType, Nav, MoreType, MoreLink, SplitPic, DateRule, DateAlign, T_Css, DateCss, ContentCss, BGCss) If JSID = "" Then RefreshCss = "" Exit Function End If Dim SqlStr,RS,ChannelID ChannelID=1 Set RS=Server.CreateObject("ADODB.RECORDSET") If num = 0 Then SqlStr = "Select * From " & KS.C_S(ChannelID,2) &" Where JSID like '%" & JSID & "%' AND Verific=1 AND DelTF=0 Order BY IsTop Desc,ID Desc " Else SqlStr = "Select TOP " & num & " * From " & KS.C_S(ChannelID,2) &" Where JSID like '%" & JSID & "%' AND Verific=1 AND DelTF=0 Order BY IsTop Desc,ID Desc " End If RS.Open SqlStr, Conn, 1, 1 If Not RS.EOF Then Dim TempStr, TempTitle, NaviStr,ArticleContent, I, ColSpanNum TempStr = "" Do While Not RS.EOF TempStr = TempStr & "" For I = 1 To Col TempTitle = GetArticleTitle(RS("Title"), T_Len, False, RS("TitleType"), RS("TitleFontColor"), RS("TitleFontType")) TempTitle = "" & TempTitle & "" R_H = KS.G_R_H(R_H) NaviStr = KS.GetNavi(NavType, Nav) TempStr = TempStr & "" RS.MoveNext If RS.EOF Then Exit For Next TempStr = TempStr & "" Loop TempStr = TempStr & "
    " If RS("Intro")="" Then ArticleContent=RS("ArticleContent") Else ArticleContent=RS("Intro") Select Case WordCss Case "A" TempStr = TempStr & "" TempStr = TempStr & "" If DateRule <> "0" And DateRule <> "" Then TempStr = TempStr & "" ColSpanNum = 2 Else TempStr = TempStr & "" ColSpanNum = 1 End If If SplitPic <> "" Then TempStr = TempStr & KS.GetSplitPic(SplitPic, ColSpanNum) End If TempStr = TempStr & "
    " & NaviStr & TempTitle & "" & KS.DateFormat(RS("AddDate"), DateRule) & "
    " Case "B" TempStr = TempStr & "" If DateRule <> "0" And DateRule <> "" Then TempStr = TempStr & "" ColSpanNum = 2 Else TempStr = TempStr & "" ColSpanNum = 1 End If TempStr = TempStr & "" If SplitPic <> "" Then TempStr = TempStr & KS.GetSplitPic(SplitPic, ColSpanNum) End If TempStr = TempStr & "
    " & NaviStr & TempTitle & "  " & KS.DateFormat(RS("AddDate"), DateRule) & "
    " & NaviStr & TempTitle & "
    " & KS.GetMoreLink(1,1, R_H, MoreType, MoreLink, KS.GetInfoUrl(channelid,rs("tid"),rs("id"),rs("fname"),rs("readpoint"),rs("InfoPurview"),rs("changes")), KS.G_O_T_S(OpenType)) & "
        " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "……
    " Case "C" TempStr = TempStr & "" TempStr = TempStr & "" If DateRule <> "0" And DateRule <> "" Then TempStr = TempStr & "" Else TempStr = TempStr & "" End If TempStr = TempStr & KS.GetSplitPic(SplitPic, 1) TempStr = TempStr & "
    " & KS.GetMoreLink(1,1, R_H, MoreType, MoreLink, KS.GetInfoUrl(channelid,rs("tid"),rs("id"),rs("fname"),rs("readpoint"),rs("InfoPurview"),rs("changes")), KS.G_O_T_S(OpenType)) & "
        " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "……
    " & NaviStr & TempTitle & "  " & KS.DateFormat(RS("AddDate"), DateRule) & "
    " & NaviStr & TempTitle & "
    " Case "D" TempStr = TempStr & "" TempStr = TempStr & "" TempStr = TempStr & "" TempStr = TempStr & KS.GetSplitPic(SplitPic, ColSpanNum) TempStr = TempStr & "
    " & NaviStr & "
    " & KS.ListTitle1(Trim(RS("Title")), T_Len) & "
    " & KS.GetMoreLink(1,1, R_H, MoreType, MoreLink, KS.GetInfoUrl(channelid,rs("tid"),rs("id"),rs("fname"),rs("readpoint"),rs("InfoPurview"),rs("changes")), KS.G_O_T_S(OpenType)) & "
        " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "……
    " Case "E" TempStr = TempStr & "" TempStr = TempStr & "" TempStr = TempStr & "" TempStr = TempStr & KS.GetSplitPic(SplitPic, ColSpanNum) TempStr = TempStr & "
    " & KS.GetMoreLink(1,1, R_H, MoreType, MoreLink, KS.GetInfoUrl(channelid,rs("tid"),rs("id"),rs("fname"),rs("readpoint"),rs("InfoPurview"),rs("changes")), KS.G_O_T_S(OpenType)) & "
        " & KS.GotTopic(Replace(Replace(Replace(KS.LoseHtml(ArticleContent), vbCrLf, ""), "[NextPage]", ""), " ", ""), C_Len) & "……
    " & NaviStr & "
    " & KS.ListTitle1(Trim(RS("Title")), T_Len) & "
    " End Select TempStr = TempStr & "
    " RefreshCss = TempStr Else RefreshCss = "":RS.Close:Set RS = Nothing End If End Function End Class %> <% Class ManageCls Private KS Private Sub Class_Initialize() Set KS=New PublicCls End Sub Private Sub Class_Terminate() Call CloseConn() Set KS=Nothing End Sub '返回相应模型的自定义字段名称数组 Function Get_KS_D_F_Arr(ChannelID) Dim KS_RS_Obj:Set KS_RS_Obj=Server.CreateObject("ADODB.RECORDSET") KS_RS_Obj.Open "Select FieldName,Title,Tips,FieldType,DefaultValue,Options,MustFillTF,Width,FieldID From KS_Field Where ChannelID=" & ChannelID &" And ShowOnForm=1 Order By OrderID Asc",Conn,1,1 If Not KS_RS_Obj.Eof Then Get_KS_D_F_Arr=KS_RS_Obj.GetRows(-1) Else Get_KS_D_F_Arr="" End If KS_RS_Obj.Close:Set KS_RS_Obj=Nothing End Function '取得后台信息添加时的自定义字段 Function Get_KS_D_F(ChannelID,ByVal UserDefineFieldValueStr) Dim I,K,F_Arr,O_Arr,F_Value F_Arr=Get_KS_D_F_Arr(ChannelID) If UserDefineFieldValueStr<>"0" And UserDefineFieldValueStr<>"" Then UserDefineFieldValueStr=Split(UserDefineFieldValueStr,"||||") If IsArray(F_Arr) Then For I=0 To Ubound(F_Arr,2) Get_KS_D_F=Get_KS_D_F & "" & F_Arr(1,I) & ":" Get_KS_D_F=Get_KS_D_F & " " If IsArray(UserDefineFieldValueStr) Then F_Value=UserDefineFieldValueStr(I) Else F_Value=F_Arr(4,I) End If Select Case F_Arr(3,I) Case 2 Get_KS_D_F=Get_KS_D_F & "" Case 3 Get_KS_D_F=Get_KS_D_F & "" Case 6 O_Arr=Split(F_Arr(5,I),vbcrlf) For K=0 To Ubound(O_Arr) If F_Value=O_Arr(K) Then Get_KS_D_F=Get_KS_D_F & "" & O_Arr(K) & "" Else Get_KS_D_F=Get_KS_D_F & "" & O_Arr(K) & "" End If Next Case 7 O_Arr=Split(F_Arr(5,I),vbcrlf) For K=0 To Ubound(O_Arr) If KS.FoundInArr(F_Value,O_Arr(K),",")=true Then Get_KS_D_F=Get_KS_D_F & "" & O_Arr(K) & "" Else Get_KS_D_F=Get_KS_D_F & "" & O_Arr(K) End If Next Case Else Get_KS_D_F=Get_KS_D_F & "" End Select If F_Arr(6,I)=1 Then Get_KS_D_F=Get_KS_D_F & " * " if F_Arr(3,I)=9 Then Get_KS_D_F=Get_KS_D_F & " " If F_Arr(2,I)<>"" Then Get_KS_D_F=Get_KS_D_F & " " & F_Arr(2,I) & "" if F_Arr(3,I)=9 Then Get_KS_D_F=Get_KS_D_F & "
    " Get_KS_D_F=Get_KS_D_F & " " Get_KS_D_F=Get_KS_D_F & "" Next End If End Function '返回系统支持的生成类型(.htm,.html,.shtml.shtm等)参 数:ExtType 预定选中的类型 Public Function GetFsoTypeStr(ExtType) GetFsoTypeStr = "" End Function '取得专题 Function Get_KS_Admin_Special(ChannelID,SpecialList) Dim I,SpecialArr,SpecialChannelStr Dim KS_RSOBJ:Set KS_RSObj = Server.CreateObject("ADODB.RECORDSET") Dim KS_SpecialSql:KS_SpecialSql = "Select Specialid,SpecialName,FolderID From KS_Special Where ChannelID=" & ChannelID &" Order By SpecialAddDate Desc" KS_RSObj.Open KS_SpecialSql, conn, 1, 1 If Not KS_RSObj.Eof Then SpecialArr=KS_RSObj.GetRows(-1) KS_RSObj.Close:Set KS_RSObj = Nothing for i=0 to Ubound(SpecialArr,2) 'If CurrChannel=SpecialArr(2,i) Then SpecialChannelStr="(本频道)" Else SpecialChannelStr="" If KS.FoundInArr(SpecialList,SpecialArr(0,i),",") Then Get_KS_Admin_Special = Get_KS_Admin_Special & "" Else Get_KS_Admin_Special = Get_KS_Admin_Special & "" End If Next End If End Function '从数据表添加数据到option选项 参数:表名,字段,查询条件 Function Get_O_F_D(Table,FieldStr,Param) Dim KS_RS_Obj,Arr,I Set KS_RS_Obj = conn.Execute("Select " & FieldStr & " FROM " & Table & " Where " & Param) If Not KS_RS_Obj.Eof Then Arr=KS_RS_Obj.GetRows(-1) KS_RS_Obj.Close:Set KS_RS_Obj=Nothing For I=0 To Ubound(Arr,2) Get_O_F_D = Get_O_F_D & "" Next End If End Function '取得相应的模板 参数 obj对象 Function Get_KS_T_C(obj) Dim CurrPath:CurrPath=KS.Setting(3)&KS.Setting(90) If Right(CurrPath,1)="/" Then CurrPath=Left(CurrPath,Len(CurrPath)-1) Get_KS_T_C= "" End Function '复制剪切,检查是否允许操作 Function CheckOp(DestFolderID, DFolderID, OpStr, SFlag) Dim RS, ObjRS, I Set RS = Server.CreateObject("Adodb.RecordSet") Set ObjRS = Server.CreateObject("Adodb.RecordSet") For I = LBound(DFolderID) To UBound(DFolderID) RS.Open "Select TN,ID,TJ,TS,FolderName From KS_Class Where ID ='" & DFolderID(I) & "'", conn, 1, 1 If Not RS.EOF Then ObjRS.Open "Select TS,ID,TJ,TN From KS_Class Where ID='" & DestFolderID & "'", conn, 1, 1 If Not ObjRS.EOF Then If InStr(ObjRS("TS"), Trim(RS("TS"))) <> 0 Then '判断目标目录是否是该目录的子目录 If ObjRS("TJ") = RS("TJ") Then RS.Close:ObjRS.Close:Set ObjRS = Nothing:Set RS = Nothing:CheckOp = False Call KS.AlertHistory("无法" & OpStr & ":目标目录和源目录相同!", 1) Set KS = Nothing:Exit Function ElseIf ObjRS("TJ") > RS("TJ") Then RS.Close:ObjRS.Close:Set ObjRS = Nothing:Set RS = Nothing:CheckOp = False Call KS.AlertHistory("无法" & OpStr & ":目标目录是源目录的子目录!", 1) Set KS = Nothing:Exit Function End If End If ObjRS.Close If Not SFlag Then ObjRS.Open "Select FolderName From KS_Class Where FolderName='" & RS("FolderName") & "' And TN='" & DestFolderID & "'", conn, 1, 1 If Not ObjRS.EOF Then RS.Close:ObjRS.Close:Set ObjRS = Nothing:Set RS = Nothing:CheckOp = False Call KS.AlertHistory("操作失败,存在相同目录名称!", 1) Set KS = Nothing:Exit Function End If ObjRS.Close End If RS.Close Else RS.Close:Set RS = Nothing: CheckOp = False Call KS.AlertHistory("参数传递出错!", 1) Set KS = Nothing:Exit Function End If Else RS.Close:Set RS = Nothing:CheckOp = False Call KS.AlertHistory("参数传递出错!", 1) Set KS = Nothing:Exit Function End If Next CheckOp = True End Function '添加复制的目录 Function AddCopyFolder(ClassID, OriFolderName, Folder, DestTS, DestTJ, DestFolderID, RS) Dim I Dim IRS:Set IRS = Server.CreateObject("AdoDb.RecordSet") IRS.Open "Select * From KS_Class Where ID IS Null", conn, 1, 3 IRS.AddNew IRS("ID") = ClassID IRS("FolderName") = OriFolderName IRS("TS") = DestTS & ClassID & "," IRS("TN") = DestFolderID IRS("TJ") = DestTJ + 1 IRS("Folder") = Folder For I=6 To RS.Fields.Count-1 IRS(I)=RS(I) Next IRS.Update AddCopyFolder = IRS("TS") & "|||" & IRS("Folder") IRS.Close:Set IRS = Nothing End Function '过程:PasteByCut剪切粘贴 '参数:ChannelID--模型ID,SourceFolderID--源目录,DestFolderID--目标目录,FolderID---被剪切的目录,ContentID---被剪切的文件 Sub PasteByCut(ChannelID,SourceFolderID, DestFolderID, FolderID, ContentID) Dim RS, OriFolderID, DestTS, DestTJ, DestFolder, SubDestTS, DFolderID, I, Folder If (SourceFolderID = DestFolderID) Then Exit Sub End If If FolderID <> "0" Then Set RS = Server.CreateObject("Adodb.RecordSet") '取得目标目录信息 RS.Open "Select TS,TJ,Folder From KS_Class Where ID='" & DestFolderID & "'", conn, 1, 1 DestTS = RS(0) DestTJ = RS(1) DestFolder = RS(2) RS.Close DFolderID = Split(FolderID, ",") If CheckOp(DestFolderID, DFolderID, "剪切", False) Then '检查是否允许剪切 For I = LBound(DFolderID) To UBound(DFolderID) RS.Open "Select TN,ID,TJ,TS,Folder From KS_Class Where ID ='" & DFolderID(I) & "'", conn, 1, 3 OriFolderID = RS(1) '记住原父ID RS("TS") = DestTS & RS(1) & "," Folder = RS(4) RS("Folder")= DestFolder & Split(Left(Folder, Len(Folder) - 1), "/")(UBound(Split(Left(Folder, Len(Folder) - 1), "/"))) & "/" RS("TN") = DestFolderID RS("TJ") = DestTJ + 1 RS.Update '对该目录下子目录信息做相应改变 SubDestTS = RS(3) Call CutSubFolder(OriFolderID, SubDestTS, DestFolder) RS.Close Next End If Set RS = Nothing End If If ContentID <> "0" Then Select Case KS.C_S(ChannelID,6) Case 1:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where NewsID In (" & ContentID & ")") Case 2:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where PicID In (" & ContentID & ")") Case 3:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where DownID In (" & ContentID & ")") Case 4:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where FlashID In (" & ContentID & ")") Case 5:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where ProID In (" & ContentID & ")") Case 7:Conn.Execute ("Update " & KS.C_S(ChannelID,2) & " Set Tid='" & DestFolderID & "' Where MovieID In (" & ContentID & ")") End Select End If End Sub '剪切子目录 Sub CutSubFolder(ParentID, SubDestTS, DestFolder) Dim RSTS, OriSubClassID, Folder Set RSTS = Server.CreateObject("Adodb.RecordSet") RSTS.Open "Select TS,ID ,TJ,Folder From KS_Class Where TN='" & ParentID & "' Order BY TJ Asc", conn, 1, 3 If Not RSTS.EOF Then Do While Not RSTS.EOF OriSubClassID = RSTS("ID") RSTS("TS") = SubDestTS & RSTS("ID") & "," Folder = RSTS("Folder") RSTS("Folder") = DestFolder & Split(Left(Folder, Len(Folder) - 1), "/")(UBound(Split(Left(Folder, Len(Folder) - 1), "/"))) & "/" RSTS("TJ") = UBound(Split(RSTS("TS"), ",")) RSTS.Update Call CutSubFolder(OriSubClassID, RSTS("TS"), RSTS("Folder")) RSTS.MoveNext Loop End If RSTS.Close:Set RSTS = Nothing End Sub '得到复制的名称 Function GetNewTitle(TableName,NewClassID, OriTitle) Dim RSC, CheckRS On Error Resume Next Set RSC = Server.CreateObject("Adodb.RecordSet") Set CheckRS = Server.CreateObject("Adodb.RecordSet") CheckRS.Open "Select * From " & TableName & " Where TID='" & NewClassID & "' And Title='" & OriTitle & "' And DelTF=0", conn, 1, 1 If Not CheckRS.EOF Then RSC.Open "Select * From " & TableName & " Where TID='" & NewClassID & "' And Title Like '复制%" & OriTitle & "' And DelTF=0 Order By ID Desc", conn, 1, 1 If Not RSC.EOF Then RSC.MoveFirst If RSC.RecordCount = 1 Then RSC.Close:Set RSC = Nothing:CheckRS.Close:Set CheckRS = Nothing GetNewTitle = "复制(1) " & OriTitle Exit Function Else GetNewTitle = "复制(" & CInt(Left(Split(RSC("Title"), "(")(1), 1)) + 1 & ") " & OriTitle End If CheckRS.Close:RSC.Close:Set RSC = Nothing: Set CheckRS = Nothing Else RSC.Close:Set RSC = Nothing:CheckRS.Close:Set CheckRS = Nothing GetNewTitle = "复制 " & OriTitle Exit Function End If RSC.Close:Set RSC = Nothing Else CheckRS.Close:Set CheckRS = Nothing GetNewTitle = OriTitle Exit Function End If End Function '普通管理员允许管理的栏目 Function GetAdminClass(ChannelID) If KS.FoundInarr(KS.C("ModelPower"),KS.C_S(ChannelID,10) & "1",",")=false then Dim Param:Param=" And ID IN('" & replace(Session(KS.SiteSn&"PowerList"),",","','") &"')" end if Dim RS:Set RS=Conn.Execute("select ID,FolderName from KS_Class Where ChannelID=" & ChannelID & " AND tj=1 " & Param &" Order BY FolderOrder ASC") If Not RS.Eof Then Dim SQL,K,ID,TreeStr SQL=RS.GetRows(-1):RS.Close:Set RS = Nothing For K=0 To Ubound(SQL,2) ID=trim(SQL(0,K)) TreeStr = TreeStr & "" TreeStr = TreeStr & ReturnSubList("TN='" & ID & "'" & Param,Param) Next End If GetAdminClass=TreeStr End Function '************************************************** '函数名:ReturnSubList '作 用:查找并返子树数据。 '参 数:ParentID ----父节点ID '返回值:子树 '************************************************** Public Function ReturnSubList(Param,par) Dim SubTypeList, RS, SpaceStr, k, Total, Num,ID,TJ,SQL,n Set RS=Conn.Execute("Select ID,FolderName,TJ from KS_Class Where " & Param & " Order BY FolderOrder ASC") Num = 0 If RS.Eof Then ReturnSubList="":RS.Close:Set RS=Nothing:Exit Function SQL=RS.GetRows(-1):Total=Ubound(SQL,2) For n=0 To Total Num = Num + 1:SpaceStr = "":TJ = CInt(SQL(2,N)) For k = 1 To TJ - 1 If k = 1 And k <> TJ - 1 Then SpaceStr = SpaceStr & " │" ElseIf k = TJ - 1 Then If Num = Total+1 Then SpaceStr = SpaceStr & " └ " Else SpaceStr = SpaceStr & " ├ " End If Else SpaceStr = SpaceStr & " │" End If Next ID = Trim(SQL(0,N)) SubTypeList = SubTypeList & "" SubTypeList = SubTypeList & ReturnSubList("TN='" & ID & "'"&par,par) Next ReturnSubList = SubTypeList End Function Sub AddKeyTags(ChannelID,KeyWords) dim i dim trs:set trs=server.createobject("adodb.recordset") dim karr:karr=split(KeyWords,"|") for i=0 to ubound(karr) trs.open "select * from ks_keywords where keytext='" & left(karr(i),100) & "' and channelid=" & channelid,conn,1,3 if trs.eof then trs.addnew trs("keytext")=left(karr(i),100) trs("channelid")=channelid trs("adddate")=now trs.update end if trs.close next set trs=nothing End Sub Sub ClassAction(ChannelID) Response.Write "" Application(KS.SiteSN&"_selectclass")=empty Application(KS.SiteSN&"_classpath")=empty Application(KS.SiteSN&"_class")=empty Dim KSR:Set KSR=New Refresh Dim SearchJS,FsoPath FsoPath=KS.Setting(3) & KS.C_S(ChannelID,10) & "/search.js" SearchJS = "" & vbCrLf SearchJS = SearchJS & "" & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & "" & vbCrLf SearchJS = SearchJS & "
    " & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & " " & vbCrLf SearchJS = SearchJS & "
    " SearchJS = Replace(Replace(SearchJS,"'","\'"),"""","\""") SearchJS = KSR.ReplaceJsBr(SearchJS) Call KSR.FsoSaveFile(SearchJS,FsoPath) Set KSR=Nothing End Sub End Class %> <% Class RefreshLocationCls Private KS Private KMRFObj,DomainStr,WebNameStr Private Sub Class_Initialize() Set KS=New PublicCls DomainStr=KS.GetDomain WebNameStr=KS.Setting(0) End Sub Private Sub Class_Terminate() Set KS=Nothing End Sub '*********************************************************************************************************** '取得位置导航 '*********************************************************************************************************** Function GetLocation(Bold, StartTag, NavType, Nav, OpenType, TitleCss) Dim NaviStr If CBool(Bold) = True Then StartTag = "" & StartTag & "" NaviStr = GetLocationNav(NavType, Nav) TitleCss=KS.GetCss(TitleCss) Select Case UCase(Application(KS.SiteSN & "RefreshType")) Case "INDEX","COMMENT","SEARCH" ,"SPACEINDEX","LINKINDEX","MAP","RSS","GUESTINDEX","GUESTWRITE" '网站首页的位置导航 GetLocation = GetIndexLocation(StartTag, NaviStr, OpenType, TitleCss) Case "MORESPACE","MORELOG","MOREGROUP","MOREXC" GetLocation = GetMoreSpaceLocation(StartTag, NaviStr, OpenType, TitleCss) Case "SPECIALINDEX" '专题首页的位置导航 GetLocation = GetSpecialIndexLocation(StartTag, NaviStr, OpenType, TitleCss) Case "FOLDER" '栏目的位置导航 GetLocation = GetFolderLocation(StartTag, NaviStr, OpenType, TitleCss, Application(KS.SiteSN & "RefreshFolderID")) Case "ARTICLECONTENT","PICTURECONTENT","DOWNLOADCONTENT","FLASHCONTENT","MOVIECONTENT","PRODUCTCONTENT","GQCONTENT" '信息页的位置导航 GetLocation = GetContentLocation(StartTag, NaviStr, OpenType, TitleCss, Application(KS.SiteSN & "RefreshFolderID")) Case "CHANNELSPECIAL" '频道专题汇总的位置导航 GetLocation = GetSpecialTotalLocation(StartTag, NaviStr, OpenType, TitleCss, Application(KS.SiteSN & "RefreshFolderID")) Case "SPECIAL" '专题页的位置导航 GetLocation = GetSpecialLocation(StartTag, NaviStr, OpenType, TitleCss, Application(KS.SiteSN & "RefreshFolderID")) '--------------------------------------------会员中心导航------------------------------------------- Case "USERREGSTEP1" '会员注册协议 GetLocation = GetUserRegLocation(1,StartTag, NaviStr, OpenType, TitleCss) Case "USERREGSTEP2" '填写会员注册表单 GetLocation = GetUserRegLocation(2,StartTag, NaviStr, OpenType, TitleCss) Case "USERREGSTEP3" '会员注册结果页 GetLocation = GetUserRegLocation(3,StartTag, NaviStr, OpenType, TitleCss) Case "USERLIST" '所有会员列表页 GetLocation = GetUserListLocation(StartTag, NaviStr, OpenType, TitleCss) Case "SHOWUSER" '所有会员信息页 GetLocation = GetUserInfoLocation(StartTag, NaviStr, OpenType, TitleCss) Case "MEMBER" '所有会员信息页 GetLocation = GetMemberLocation(StartTag, NaviStr, OpenType, TitleCss) '-------------------------------------------会员中心导航结束---------------------------------------- '--------------------------------------------音乐频道导航------------------------------------------- Case "MUSICINDEX" '音乐频道首页 GetLocation = GetMusicIndexLocation(StartTag, NaviStr, OpenType, TitleCss) Case "MUSICSINGER" '音乐频道歌手列表页 GetLocation = GetMusicSingerLocation(StartTag, NaviStr, OpenType, TitleCss) Case "MUSICSINGERSPECIAL" '音乐频道歌手专辑列表页 GetLocation = GetMusicSingerSpecialLocation(StartTag, NaviStr, OpenType, TitleCss) Case "MUSICSPECIAL" '音乐专辑歌曲列表页 GetLocation = GetMusicSpecialLocation(StartTag, NaviStr, OpenType, TitleCss) '-------------------------------------------音乐频道导航结束---------------------------------------- '-------------------------------------------购物流程------------------------------------------------ Case "SHOPPINGCART" GetLocation = GetShoppingLocation(StartTag, NaviStr, OpenType, TitleCss,1) Case "SHOPPINGPAYMENT" GetLocation = GetShoppingLocation(StartTag, NaviStr, OpenType, TitleCss,2) Case "SHOPPINGPREVIEW" GetLocation = GetShoppingLocation(StartTag, NaviStr, OpenType, TitleCss,3) Case "SHOPPINGSUCCESS" GetLocation = GetShoppingLocation(StartTag, NaviStr, OpenType, TitleCss,4) Case Else GetLocation = "" End Select End Function '取得网站首页导航位置的函数 Function GetIndexLocation(StartTag, NaviStr, OpenType, TitleCss) Dim str Select Case UCase(Application(KS.SiteSN & "RefreshType")) case "INDEX" :str="网站首页" case "COMMENT":str="所有评论" case "SEARCH":str="搜索结果" case "SPACEINDEX":str="空间首页" case "LINKINDEX":str="友情链接" case "MAP":str="网站地图" case "RSS":str="RSS订阅服务" case "GUESTINDEX":str="雁过留声" case "GUESTWRITE":str="雁过留声 >> 签写留言" End Select GetIndexLocation = StartTag & "" & WebNameStr & "" & NaviStr & str End Function '取得更多空间导航位置的函数 Function GetMoreSpaceLocation(StartTag, NaviStr, OpenType, TitleCss) Dim MoreStr Select Case UCase(Application(KS.SiteSN & "RefreshType")) Case "MORESPACE":MoreStr="个人空间列表" Case "MORELOG":MoreStr="日志列表" Case "MOREGROUP":MoreStr="圈子列表" Case "MOREXC":MoreStr="相册列表" End Select GetMoreSpaceLocation = StartTag & "" & WebNameStr & "" & NaviStr & "空间首页" & NaviStr &MoreStr End Function '所有会员列表页 Function GetUserListLocation(StartTag, NaviStr, OpenType, TitleCss) GetUserListLocation = StartTag & "" & WebNameStr & "" & NaviStr & "所有注册会员列表" End Function '所有会员信息页 Function GetUserInfoLocation(StartTag, NaviStr, OpenType, TitleCss) GetUserInfoLocation = StartTag & "" & WebNameStr & "" & NaviStr & "所有会员列表"& NaviStr & "会员信息" End Function '会员中心 Function GetMemberLocation(StartTag, NaviStr, OpenType, TitleCss) GetMemberLocation = StartTag & "" & WebNameStr & "" & NaviStr & "会员中心" End Function '取得会员注册导航 Function GetUserRegLocation(Step,StartTag, NaviStr, OpenType, TitleCss) Select Case Step Case 1 GetUserRegLocation = StartTag & "" & WebNameStr & "" & NaviStr & "服务条款和声明" Case 2 GetUserRegLocation = StartTag & "" & WebNameStr & "" & NaviStr & "填写注册表单" Case 3 GetUserRegLocation = StartTag & "" & WebNameStr & "" & NaviStr & "完成注册" End Select End Function '取得专题首页导航位置的函数 Function GetSpecialIndexLocation(StartTag, NaviStr, OpenType, TitleCss) GetSpecialIndexLocation = StartTag & "" & WebNameStr & "" & NaviStr & "专题首页" End Function '取得频道专题汇总导航 Function GetSpecialTotalLocation(StartTag, NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Dim SpecialIndexUrl,SpecialDir:SpecialDir = KS.Setting(95) If Split(KS.Setting(5),".")(1)<>"asp" Then SpecialIndexUrl=DomainStr & SpecialDir Else SpecialIndexUrl=DomainStr & "SpecialIndex.asp" If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) GetSpecialTotalLocation = StartTag & "" & WebNameStr & "" & NaviStr & "专题首页" & NaviStr & KS.C_C(RefreshFolderIDValue,1) & "专题汇总" End Function '取得专题页的位置导航 Function GetSpecialLocation(StartTag, NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Dim SpecialIndexUrl,SpecialDir:SpecialDir = KS.Setting(95) If Split(KS.Setting(5),".")(1)<>"asp" Then SpecialIndexUrl=DomainStr & SpecialDir Else SpecialIndexUrl=DomainStr & "SpecialIndex.asp" If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) Dim TempFolderStr Dim FolderName:FolderName = KS.C_C(RefreshFolderIDValue,1) TempFolderStr = "" & FolderName & "专题汇总" & NaviStr GetSpecialLocation = StartTag & "" & WebNameStr & "" & NaviStr & "专题首页" & NaviStr & TempFolderStr & "浏览专题" End Function '取得栏目的位置导航 Function GetFolderLocation(StartTag, NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Dim FolderNaviStr:FolderNaviStr = GetFolderNaviStr(NaviStr, OpenType, TitleCss, RefreshFolderIDValue) If CBool(Application(KS.SiteSN & "RefreshChannelHomeFlag")) = True Then GetFolderLocation = StartTag & "" & WebNameStr & "" & FolderNaviStr & NaviStr & "首页" Else GetFolderLocation = StartTag & "" & WebNameStr & "" & FolderNaviStr End If End Function '取得信息页导航位置的函数 Function GetContentLocation(StartTag, NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Dim TempStr,FolderNaviStr:FolderNaviStr = GetFolderNaviStr(NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Select Case UCase(Application(KS.SiteSN & "RefreshType")) Case "ARTICLECONTENT" TempStr="正文" Case "PICTURECONTENT" TempStr="浏览图片" Case "DOWNLOADCONTENT" TempStr="浏览下载" Case "FLASHCONTENT" TempStr="浏览动漫" Case "MOVIECONTENT" TempStr="浏览影片" Case "GQCONTENT" TempStr="浏览信息" Case "PRODUCTCONTENT" TempStr="浏览商品" Case else Exit Function End Select TempStr="浏览"& KS.C_S(Application(KS.SiteSN&"Channelid"),3) GetContentLocation = StartTag & "" & WebNameStr & "" & FolderNaviStr & NaviStr & TempStr End Function '取得音乐频道首页导航位置的函数 Function GetMusicIndexLocation(StartTag, NaviStr, OpenType, TitleCss) GetMusicIndexLocation = StartTag & "" & WebNameStr & "" & NaviStr & "音乐频道" & NaviStr & "首页" End Function '取得音乐歌手列表页导航位置的函数 Function GetMusicSingerLocation(StartTag, NaviStr, OpenType, TitleCss) GetMusicSingerLocation = StartTag & "" & WebNameStr & "" & NaviStr & "音乐频道" & NaviStr & Application(KS.SiteSN & "RefreshMusicTempStr") &NaviStr & "歌手导航列表" End Function '取得音乐歌手专辑列表页导航位置的函数 Function GetMusicSingerSpecialLocation(StartTag, NaviStr, OpenType, TitleCss) GetMusicSingerSpecialLocation = StartTag & "" & WebNameStr & "" & NaviStr & "音乐频道" & NaviStr & KS.C("RefreshMusicClass") &NaviStr & Application(KS.SiteSN & "RefreshMusicSingerTempStr") & NaviStr & "所有专辑" End Function '取得音乐最终专辑歌曲列表页导航位置的函数 Function GetMusicSpecialLocation(StartTag, NaviStr, OpenType, TitleCss) GetMusicSpecialLocation = StartTag & "" & WebNameStr & "" & NaviStr & "音乐频道" & NaviStr & Application(KS.SiteSN & "RefreshMusicTempStr") &NaviStr & Application(KS.SiteSN & "RefreshMusicSingerTempStr") & NaviStr & Application(Cstr(KS.SiteSN & "RefreshMusicSpecialNameTempStr")) & "专辑歌曲列表" End Function '购物流程 Function GetShoppingLocation(StartTag, NaviStr, OpenType, TitleCss,TypeID) GetShoppingLocation = StartTag & "" & WebNameStr & "" & NaviStr & "商城中心" & NaviStr Select Case TypeID Case 1: GetShoppingLocation=GetShoppingLocation & "我的购物车" Case 2: GetShoppingLocation=GetShoppingLocation & "收银台" Case 3: GetShoppingLocation=GetShoppingLocation & "预览订单并确认" Case 4: GetShoppingLocation=GetShoppingLocation & "订单提交成功" End Select End Function '****************************************************************************************************** '函数名:GetFolderNameStr '作 用:返回栏目顺序列表 '参 数:NaviStr--链接字符串,RefreshFolderIDValue--栏目ID, OpenType---新窗口打开, TitleCss---名称样式 '返回值:形如: 科汛网络 >> 产品列表 >> 科汛网站管理系统 '****************************************************************************************************** Function GetFolderNaviStr(NaviStr, OpenType, TitleCss, RefreshFolderIDValue) Dim TSArr, I TSArr = Split(KS.C_C(RefreshFolderIDValue,8), ",") For I = LBound(TSArr) To UBound(TSArr) - 1 GetFolderNaviStr = GetFolderNaviStr & NaviStr & "" & KS.C_C(TSArr(I),1) & "" Next End Function Function GetLocationNav(NavType, Nav) If CStr(NavType) = "0" Then If Nav = "" Then GetLocationNav = " >> " Else GetLocationNav = Nav End If Else If Nav = "" Then GetLocationNav = " >> " Else If Left(Nav, 1) = "/" Or Left(Nav, 1) = "\" Then Nav = Right(Nav, Len(Nav) - 1) GetLocationNav = "" End If End If End Function End Class %> <% '----------------------------------------------------------------------------------------------- Class RefreshSearchCls Private KS Private KMRFObj,DomainStr Private Sub Class_Initialize() Set KS=New PublicCls DomainStr=KS.GetDomain End Sub Private Sub Class_Terminate() Set KS=Nothing End Sub '替换网站的所有搜索 Function ReplaceAllSearch(FileContent) FileContent = Replace(FileContent, "{$GetSearchByDate}", GetSearchByDate()) FileContent = Replace(FileContent, "{$GetSearch}", GetSearch()) Dim rs:set rs=conn.execute("select modelename from ks_channel where channelstatus=1 order by channelid") dim k,sql:sql=rs.getrows(-1) for k=0 to ubound(sql,2) if instr(filecontent,"{$Get" & sql(0,k) & "Search}")>0 then FileContent = Replace(FileContent, "{$Get" & sql(0,k) & "Search}", "") end if next ReplaceAllSearch=FileContent End Function '取得高级日历搜索 Function GetSearchByDate() GetSearchByDate="" End Function '取得总搜索 Function GetSearch() GetSearch = "
    " & vbCrLf GetSearch = GetSearch & "
      " & vbcrlf GetSearch = GetSearch & "
      " & vbCrLf GetSearch = GetSearch & "搜索: " & vbCrLf GetSearch = GetSearch & "" & vbCrLf GetSearch = GetSearch & " 多关键词,请用空格格开" & vbCrLf GetSearch = GetSearch & "" & vbCrLf GetSearch = GetSearch & "
      " & vbCrLf GetSearch = GetSearch & "
    " & vbCrLf End Function End Class %> <% Class DIYCls Private KS Private TConn,DataSourceType,DataSourceStr Private Sub Class_Initialize() Set KS=New PublicCls End Sub Private Sub Class_Terminate() Set KS=Nothing If isobject(tconn) Then TConn.Close:Set TConn=Nothing End If End Sub '替换自定义函数标签 Function ReplaceUserFunctionLabel(Content) Dim regEx, Matches, SqlLabel,Match Dim Matchn,n Set regEx = New RegExp regEx.Pattern = "{SQL_[^{]*\)}" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(Content) ReplaceUserFunctionLabel=Content For Each Match In Matches SqlLabel=Match.value ReplaceUserFunctionLabel=Replace(ReplaceUserFunctionLabel,SqlLabel,ReplaceDIYFunctionLabel(SqlLabel,"label")) Next End Function '返回循环次数 Function GetLoopNum(Content) Dim regEx, Matches, Match Set regEx = New RegExp regEx.Pattern="\[loop=\d*]" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(Content) If Matches.count > 0 Then GetLoopNum=Replace(Replace(Matches.item(0),"[loop=",""),"]","") Else GetLoopNum=0 end if End Function '取得分页标志 Function GetPageStr(SqlLabel) Dim slab:slab=split(SqlLabel,"(")(0) slab=replace(slab,"{","") GetPageStr="" & vbcrlf GetPageStr=GetPageStr & "" & vbcrlf GetPageStr=GetPageStr & "
    " & vbcrlf GetPageStr=GetPageStr & "
    " & vbcrlf End Function '替换自定义函数标签 '参数SqlLabel:{SQL_标签名称(15,0,1,...)} Function ReplaceDIYFunctionLabel(SqlLabel,GetFrom) Dim I,KS_RS_Obj,LabelName,UserParamArr,FunctionLabelParamArr,CirLabelContent,FunctionSQL,LabelContent Dim FunctionLabelType,ItemName,PageStyle,PerPageNumber,TotalPut,PageNum,J,TempStr,Ajax LabelName = Replace(Replace(Split(SqlLabel,"(")(0),"""",""),"'","") '用户函数参数 UserParamArr = Split(Replace(Replace(Replace(Replace(SqlLabel,LabelName&"(",""),")}",""),"""",""),"'",""),",") Set KS_RS_Obj=Server.CreateObject("ADODB.RECORDSET") KS_RS_Obj.Open "Select Description,LabelContent From KS_Label Where LabelName='" & LabelName & "}'",Conn,1,1 IF KS_RS_Obj.Eof And KS_RS_Obj.Bof Then KS_RS_Obj.Close:Set KS_RS_Obj=Nothing:ReplaceDIYFunctionLabel="":Exit Function Else FunctionLabelParamArr = Split(KS_RS_Obj(0),"@@@") 'LabelContent = ReplaceGeneralLabelContent(Replace(KS_RS_Obj(1),vbcrlf,"$KS:Page$")) LabelContent = Replace(KS_RS_Obj(1),vbcrlf,"$KS:Page$") End If KS_RS_Obj.Close FunctionSQL=FunctionLabelParamArr(0) '查询语句 FunctionSQL=Replace(FunctionSQL,"{$CurrClassID}",Application(KS.SiteSN & "RefreshFolderID")) FunctionSQL=Replace(FunctionSQL,"{$CurrClassChildID}",KS.GetFolderTid(Application(KS.SiteSN & "RefreshFolderID"))) FunctionSQL=Replace(FunctionSQL,"{$CurrInfoID}",Application(KS.SiteSN & "RefreshInfoID")) FunctionSQL=Replace(FunctionSQL,"{$CurrSpecialID}",Request.Cookies(KS.SiteSN)("CurrSpecialID")) For I=0 To Ubound(UserParamArr) FunctionSQL = Replace(FunctionSQL,"{$Param("&I&")}",UserParamArr(I)) LabelContent = Replace(LabelContent,"{$Param("&I&")}",UserParamArr(I)) Next FunctionLabelType=FunctionLabelParamArr(2) If Not Isnumeric(FunctionLabelType) Then FunctionLabelType=0 Ajax=FunctionLabelParamArr(5) ItemName=FunctionLabelParamArr(3) PageStyle=FunctionLabelParamArr(4) DataSourceType=FunctionLabelParamArr(6) DataSourceStr=FunctionLabelParamArr(7) If Ajax=1 And GetFrom<>"ajax" and FunctionLabelType=1 and DataSourceType=0 then ReplaceDIYFunctionLabel=GetPageStr(SqlLabel):exit function If Ajax=1 and GetFrom<>"ajax" Then ReplaceDIYFunctionLabel="":exit function If DataSourceType<>0 and GetFrom<>"ajax" and FunctionLabelType=1 Then ReplaceDIYFunctionLabel=GetPageStr(SqlLabel):exit function If OpenExtConn=false Then ReplaceDIYFunctionLabel="外部数据库连接出错!":Exit Function If DataSourceType=0 Then KS_RS_Obj.Open FunctionSQL,Conn,1,1 Else KS_RS_Obj.Open FunctionSQL,TConn,1,1 End IF If Not KS_RS_Obj.Eof Then Dim regEx, Matches, Match,LoopTimes Set regEx = New RegExp regEx.Pattern = "\[loop=\d*].+?\[/loop]" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(LabelContent) If FunctionLabelType=1 and DataSourceType=0 Then '分页标签 PerPageNumber=0 For Each Match In Matches PerPageNumber=PerPageNumber+GetLoopNum(Match.Value) '每页记录数 Next If PerPageNumber=0 Then ReplaceDIYFunctionLabel="自定义函数标签的循环次数必须大于0":Exit Function TotalPut = KS_RS_Obj.recordcount if (TotalPut mod PerPageNumber)=0 then PageNum = TotalPut \ PerPageNumber else PageNum = TotalPut \ PerPageNumber + 1 end if Application(KS.SiteSN & "PageStyle") = PageStyle If KS.S("ID")<>"" Then Dim CurrPage:CurrPage=KS.ChkClng(KS.G("Page")) If CurrPage<=0 Then CurrPage=1 Application("PageNum")=PageNum TempCirContent = LabelContent KS_RS_Obj.Move (CurrPage - 1) * PerPageNumber For Each Match In Matches LoopTimes=GetLoopNum(Match.Value) '循环次数 CirLabelContent = Replace(Replace(Match.value,"[loop=" & LoopTimes&"]",""),"[/loop]","") TempCirContent = Replace(TempCirContent,"[loop="&LoopTimes&"]"&CirLabelContent&"[/loop]",GetCirLabelContent(CirLabelContent,KS_RS_Obj,LoopTimes),1,1) If KS_RS_Obj.Eof Then Exit For Next TempStr = TempCirContent & KS.GetPrePageList(PageStyle,ItemName,PageNum,CurrPage,TotalPut,PerPageNumber) TempStr=TempStr &"{$PageList}" '加上分页符 ReplaceDIYFunctionLabel=Replace(CleanLabel(TempStr),"$KS:Page$",vbcrlf) Else dim TempCirContent For I = 1 To Cint(PageNum) TempCirContent = LabelContent For Each Match In Matches LoopTimes=GetLoopNum(Match.Value) '循环次数 CirLabelContent = Replace(Replace(Match.value,"[loop=" & LoopTimes&"]",""),"[/loop]","") 'TempStr=TempStr & GetCirLabelContent(CirLabelContent,KS_RS_Obj,LoopTimes) TempCirContent=Replace(TempCirContent,"[loop="&LoopTimes&"]"&CirLabelContent&"[/loop]",GetCirLabelContent(CirLabelContent,KS_RS_Obj,LoopTimes),1,1) If KS_RS_Obj.Eof Then Exit For Next TempStr = TempStr & TempCirContent & KS.GetPrePageList(PageStyle,ItemName,PageNum,I,TotalPut,PerPageNumber) TempStr=TempStr & "{$PageList}" '加上分页符 Next Application(Cstr(KS.SiteSN & "PageList")) = Replace(CleanLabel(TempStr),"$KS:Page$",vbcrlf) ReplaceDIYFunctionLabel="{PageListStr}" End If Else Do While Not KS_RS_Obj.Eof For Each Match In Matches LoopTimes=GetLoopNum(Match.Value) '循环次数 CirLabelContent = Replace(Replace(Match.value,"[loop=" & LoopTimes&"]",""),"[/loop]","") LabelContent = Replace(LabelContent,"[loop="&LoopTimes&"]"&CirLabelContent&"[/loop]",GetCirLabelContent(CirLabelContent,KS_RS_Obj,LoopTimes),1,1) If KS_RS_Obj.Eof Then Exit For Next If KS_RS_Obj.Eof Then Exit Do Loop '消除多余的循环体 ReplaceDIYFunctionLabel=Replace(CleanLabel(LabelContent),"$KS:Page$",vbcrlf) End If Else ReplaceDIYFunctionLabel="":Exit Function End if KS_RS_Obj.Close:Set KS_RS_Obj=Nothing End Function '消除多余的循环体 Function CleanLabel(Content) Dim regEx, Matches, Match,LoopTimes Set regEx = New RegExp regEx.Pattern = "\[loop=\d*][^\[\]]*\[/loop]" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(Content) For Each Match In Matches Content=Replace(Content,Match.value,"") Next CleanLabel=Content End Function '替换循环部分内容 Function GetCirLabelContent(CirLabelContent,ByRef KS_RS_Obj,LoopTimes) Dim regEx, Matches, Match, TempStr Dim FieldParam,FieldParamArr,FieldName,FieldType,ReturnFieldValue Dim DB_FieldValue,FieldParamLength,I,FieldPosition,N If Not IsNumeric(LoopTimes) Then LoopTimes=10 For N=1 To LoopTimes If Not KS_RS_Obj.Eof Then Set regEx = New RegExp regEx.Pattern = "{\$Field\([^{\$}]*}" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(CirLabelContent) TempStr=Replace(CirLabelContent,"{$AutoID}",N) For Each Match In Matches FieldParam = Replace(Replace(Match.Value,"{$Field(",""),")}","") FieldParamArr = Split(FieldParam,",") FieldParamLength=Ubound(FieldParamArr) '参数数组长度 FieldName = FieldParamArr(0) '根据参数得到字段名称 FieldType = FieldParamArr(1) '根据参数得到字段类型 FieldPosition=0 For I=0 To KS_RS_Obj.Fields.count-1 IF lcase(FieldName)=lcase(KS_RS_Obj.Fields(I).name) Then FieldPosition=I:Exit For Next DB_FieldValue=KS_RS_Obj(FieldPosition) '得到字段的值 If lcase(FieldName)="keywords" Then ReturnFieldValue=ReplaceKeyTags(1,DB_FieldValue) Else Select Case Lcase(FieldType) Case "text" ReturnFieldValue=Get_Text_Field(DB_FieldValue,FieldParamArr(2),FieldParamArr(3),FieldParamArr(4),FieldParamArr(5)) Case "num" ReturnFieldValue=Get_Num_Field(DB_FieldValue,FieldParamArr(2),FieldParamArr(3)) Case "date" ReturnFieldValue=Get_Date_Field(DB_FieldValue,FieldParamArr(2)) Case "getinfourl" ReturnFieldValue=Get_InfoUrl_Field(FieldName,DB_FieldValue,FieldParamArr(2),FieldParamArr(3)) Case "getclassurl" ReturnFieldValue=Get_ClassUrl_Field(FieldName,DB_FieldValue,FieldParamArr(2),FieldParamArr(3)) End Select End iF on error resume next TempStr=Replace(TempStr,"{$Field(" &FieldParam &")}",ReturnFieldValue) Next GetCirLabelContent=GetCirLabelContent &TempStr Else Exit For End If KS_RS_Obj.MoveNext Next End Function '取文本字段的值 '参数说明:字段值,截段字数,未尾输出的字符,HTML处理方式 Function Get_Text_Field(FieldValue,CutNum,EndTag,HtmlTag,DefaultChar) Dim TempStr:TempStr=FieldValue If FieldValue="" Or IsNull(FieldValue) Then TempStr=DefaultChar If Not IsNumeric(HtmlTag) Or Not IsNumeric(CutNum) Then Exit Function If HtmlTag=1 Then TempStr=Server.HtmlEncode(TempStr) ElseIF HtmlTag=2 Then TempStr=KS.LoseHtml(TempStr) End If If EndTag="0" Then EndTag="" if KS.strLength(TempStr)>cint(CutNum) and CutNum<>0 then TempStr = KS.GotTopic(TempStr, CutNum) & EndTag Get_Text_Field=TempStr End Function '取数字字段的值 '参数说明:FieldValue-字段值,OutType-输出方式0、原数,1、小数,2百分数,XSWS-小数位数 Function Get_Num_Field(FieldValue,OutType,XSWS) If Not IsNumeric(FieldValue) Then Get_Num_Field=FieldValue:Exit Function If Not IsNumeric(OutType) Then OutType=0 If Not IsNumeric(XSWS) Then XSWS=0 If OutType=1 Then Get_Num_Field=FormatNumber(FieldValue,XSWS) ElseIf OutType=2 Then Get_Num_Field=FormatPercent(FieldValue) Else Get_Num_Field=FieldValue End if End Function '取日期字段的值 '参数说明:FieldValue-字段值,DateMB-输出日期模板 Function Get_Date_Field(FieldValue,DateMB) IF Not IsDate(FieldValue) Then Get_Date_Field=FieldValue:Exit Function Get_Date_Field=Replace(DateMB,"YYYY",Year(FieldValue)) Get_Date_Field=Replace(Get_Date_Field,"YY",Right("0" & Year(FieldValue), 2)) Get_Date_Field=Replace(Get_Date_Field,"MM",Right("0" & Month(FieldValue), 2)) Get_Date_Field=Replace(Get_Date_Field,"DD",Right("0" & Day(FieldValue), 2)) Get_Date_Field=Replace(Get_Date_Field,"hh",Right("0" & hour(FieldValue), 2)) Get_Date_Field=Replace(Get_Date_Field,"mm",Right("0" & minute(FieldValue), 2)) Get_Date_Field=Replace(Get_Date_Field,"ss",Right("0" & second(FieldValue), 2)) End Function '取对象的链接URL '参数说明:FieldName-字段名称,FieldValue-字段值,ChannelID数据表 1、2、3、4、100等,OutType输出方式 0、混合,1、URL,2、名称 Function Get_InfoUrl_Field(byval FieldName,byval FieldValue,ChannelID,OutType) If OutType=2 or DataSourceType<>0 Then Get_InfoUrl_Field=FieldValue:Exit Function Dim SqlStr If Not Isnumeric(ChannelID) Then Exit Function If ChannelID=100 Then if len(FieldValue)<10 then FieldValue=conn.execute("select id from ks_class where " & FieldName &"=" &FieldValue)(0) If OutType=0 Then Get_InfoUrl_Field="" & KS.C_C(FieldValue,1) &"" ElseIF OutType=1 Then Get_InfoUrl_Field=KS.GetFolderPath(FieldValue) End If Exit Function End If Select Case KS.C_S(ChannelID,6) Case 1 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,Changes From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 2 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 3 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 4 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 5 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,0,0,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,0,0,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 7 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,ReadPoint,InfoPurview,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case 8 If len(FieldValue)>=10 Then SqlStr="Select ID,Title,Tid,0,0,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"='" &FieldValue&"'" Else SqlStr="Select ID,Title,Tid,0,0,Fname,0 From " & KS.C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue End IF Case Else Exit Function End Select Dim KS_RS_Obj:Set KS_RS_Obj=Server.CreateObject("ADODB.RECORDSET") KS_RS_Obj.Open SqlStr,Conn,1,1 IF KS_RS_Obj.Eof Then KS_RS_Obj.Close:Set KS_RS_Obj=Nothing:Exit Function Else If OutType=0 Then Get_InfoUrl_Field="" & FieldValue &"" ElseIF OutType=1 Then Get_InfoUrl_Field=KS.GetInfoUrl(ChannelID,KS_RS_Obj(2),KS_RS_Obj(0),KS_RS_Obj(5),KS_RS_Obj(3),KS_RS_Obj(4),KS_RS_Obj(6)) End If End if KS_RS_Obj.Close:Set KS_RS_Obj=Nothing End Function '得到栏目的链接URL '参数说明:FieldName-字段名称,FieldValue-字段值,ChannelID数据表 1、2、3、4、100等,OutType输出方式 0、混合,1、URL,2、名称 Function Get_ClassUrl_Field(FieldName,FieldValue,ChannelID,OutType) If OutType=2 Or DataSourceType<>0 Then Get_ClassUrl_Field=FieldValue:Exit Function Dim ClassID:ClassID=FieldValue If FieldName="id" Then Dim SqlStr:SqlStr="Select id From KS_Class Where ID='" & Conn.Execute("Select Tid From " & C_S(ChannelID,2) & " Where " & FieldName &"=" &FieldValue)(0) Dim KS_RS_Obj:Set KS_RS_Obj=Server.CreateObject("ADODB.RECORDSET") KS_RS_Obj.Open SqlStr,Conn,1,1 IF KS_RS_Obj.Eof Then KS_RS_Obj.Close:Set KS_RS_Obj=Nothing:Exit Function Else ClassID = KS_RS_Obj(0) End if KS_RS_Obj.Close:Set KS_RS_Obj=Nothing End IF If OutType=0 Then Get_ClassUrl_Field="" & KS.C_C(classID,1) &"" ElseIF OutType=1 Then Get_ClassUrl_Field=KS.GetFolderPath(ClassID) End If End Function Function ReplaceKeyTags(ChannelID,KeyStr) Dim I,K_Arr:K_Arr=Split(KeyStr,"|") For I=0 To Ubound(K_Arr) ReplaceKeyTags=ReplaceKeyTags & "" & K_Arr(i) & " " Next End Function Function OpenExtConn() If DataSourceType=0 Then OpenExtConn=True Else on error resume next Set tconn = Server.CreateObject("ADODB.Connection") tconn.open datasourcestr If Err Then Err.Clear Set tconn = Nothing OpenExtConn=False Else OpenExtConn=true End If End If End Function End Class %> <% Class Refresh Private KS,KSLabel,KSCls ,DomainStr Private Sub Class_Initialize() Set KS=New PublicCls Set KSCls=New ManageCls Set KSLabel =New RefreshFunction DomainStr=KS.GetDomain End Sub Private Sub Class_Terminate() Set KS=Nothing Set KSCls=Nothing Set KSLabel=Nothing End Sub '替换所有标签 Public Function KSLabelReplaceAll(F_C) F_C = ReplaceGeneralLabelContent(F_C) '替换通用标签 如{$GetWebmaster} F_C = ReplaceLableFlag(ReplaceAllLabel(F_C)) '替换函数标签 F_C = ReplaceRA(F_C, "") KSLabelReplaceAll=F_C End Function '******************************************************************************************************* '函数名:LoadTemplate '作 用:取出模板内容 '参 数:TemplateFname模板地址 '返回值:模板内容 '******************************************************************************************************** Function LoadTemplate(TemplateFname) on error resume next ' If Application(KS.SiteSN & TemplateFname)="" Then Dim FSO, FileObj, FileStreamObj Set FSO = CreateObject(KS.Setting(99)) TemplateFname = Server.MapPath(Replace(TemplateFname, "//", "/")) If FSO.FileExists(TemplateFname) = False Then LoadTemplate = "模板不存在,请先绑定!" Else Set FileObj = FSO.GetFile(TemplateFname) Set FileStreamObj = FileObj.OpenAsTextStream(1) If Not FileStreamObj.AtEndOfStream Then LoadTemplate = FileStreamObj.ReadAll Else LoadTemplate = "模板内容为空" End If End If Set FSO = Nothing:Set FileObj = Nothing:Set FileStreamObj = Nothing LoadTemplate=LoadTemplate & Published ' Application(KS.SiteSN &TemplateFname)=LoadTemplate ' End If ' LoadTemplate=Application(KS.SiteSN &TemplateFname) End Function '************************************************** '函数名:ReplaceLableFlag '作 用:去除标签{$},并分组以将标签参数用","隔开 ' 示例: km=ReplaceLableFlag("{$Test("par1","par2","par3")}") ' 结果 km=Test,Par1,Par2,Par3 '参 数: Content ----待替换内容 '返回值:返回用","隔开的字符串 '************************************************** Function ReplaceLableFlag(Content) Dim regEx, Matches, Match, TempStr Set regEx = New RegExp regEx.Pattern = "{\$[^{\$}]*}" regEx.IgnoreCase = True regEx.Global = True Set Matches = regEx.Execute(Content) ReplaceLableFlag = Content For Each Match In Matches On Error Resume Next TempStr = Match.Value TempStr = Replace(TempStr, Chr(13) & Chr(10), "") TempStr = Replace(TempStr, "{$", "") TempStr = Replace(TempStr, "}", "") TempStr = Left(TempStr, InStr(TempStr, "(") - 1) & "," & Mid(TempStr, InStr(TempStr, "(") + 1) TempStr = Left(TempStr, InStrRev(TempStr, ")") - 1) TempStr = Replace(TempStr, """", "") If Err.Number = 0 Then ReplaceLableFlag = Replace(ReplaceLableFlag, Match.Value, KSLabel.ChangeLableToFunction(TempStr)) End If Next End Function '********************************************************************************************************* '函数名:ReplaceAllLabel '作 用:将标签名称转换成对应标签内容 '参 数: Content需转换的内容 '********************************************************************************************************* Function ReplaceAllLabel(Content) Content=ReplaceLabel(Content) Dim DCls:Set Dcls=New DIYCls Content=DCls.ReplaceUserFunctionLabel(Content) '替换自定义函数标签 Set DCls=nothing ReplaceAllLabel =Content End Function '替换标签 Public Function ReplaceLabel(Byval sTrC) dim sRow,sCol,i KS.Name="ReplaceLabel" if KS.ObjIsEmpty() then Dim RS:Set RS = Server.CreateObject("ADODB.Recordset") RS.Open "Select LabelType,LabelName,LabelContent,ID from KS_Label Where LabelType<>5", Conn, 1, 1 if RS.bof or RS.eof then KS.Value="" else KS.Value=RS.GetString(,,"^||^","^%%%^","") end if RS.Close:Set RS = Nothing end if if KS.Value<>"" then sRow=Split(KS.Value,"^%%%^") for i=0 to Ubound(sRow)-1 sCol=Split(sRow(i),"^||^") If sCol(0) = 1 Then sTrC = Replace(sTrC, sCol(1), ReplaceFreeLabel(sCol(2))) '此处影响生成速度 Else ' If Instr(sCol(2),"Last")>0 Then sTrC = Replace(sTrC,trim(sCol(1)),Replace(sCol(2),")}","," & sCol(3) &")}")) ' Else ' sTrC = Replace(sTrC,trim(sCol(1)),sCol(2)) ' End If End IF next end if KS.Name="ReplaceJS" if KS.ObjIsEmpty() then Dim RSJ:Set RSJ = Server.CreateObject("ADODB.Recordset") RSJ.Open "Select JSName FROM KS_JSFile", Conn, 1, 1 if RSJ.bof or RSJ.eof then KS.Value="" else KS.Value=RSJ.GetString(,,"","^%%%^","") end if Set RSJ = Nothing end if if KS.Value<>"" then sRow=Split(KS.Value,"^%%%^") for i=0 to Ubound(sRow)-1 sTrC = Replace(sTrC,sRow(i),ReplaceAllJS(sRow(i))) next end if ReplaceLabel=sTrC End Function Function ReplaceAllJS(JSName) Dim JSRS:Set JSRS = Server.CreateObject("ADODB.Recordset") JSRS.Open "Select * from KS_JSFile Where JSName='" & JSName & "'", Conn, 1, 1 If Not JSRS.EOF Then ReplaceAllJS = "" Else ReplaceAllJS = "":JSRS.Close:Set JSRS = Nothing End If End Function '替换自由标签为内容,仅替换一级 Function ReplaceFreeLabel(sTrC) dim sRow,sCol,i KS.Name="ReplaceFreeLabel" if KS.ObjIsEmpty() then Dim RS:Set RS = Server.CreateObject("ADODB.Recordset") RS.Open "Select LabelName,LabelContent,ID from KS_Label", Conn, 1, 1 if RS.bof or RS.eof then KS.Value="" else KS.Value=RS.GetString(,,"^||^","^%%%^","") end if RS.Close:Set RS = Nothing end if if KS.Value<>"" then sRow=Split(KS.Value,"^%%%^") for i=0 to Ubound(sRow)-1 sCol=Split(sRow(i),"^||^") sTrC = Replace(sTrC,trim(sCol(0)),Replace(sCol(1),")}","," & sCol(2) &")}")) next end if ReplaceFreeLabel = ReplaceGeneralLabelContent(sTrC) End Function '********************************************************************************************************* '函数名:FSOSaveFile '作 用:生成文件 '参 数: Content内容,路径 注意虚拟目录 '********************************************************************************************************* Sub FSOSaveFile(Content, LocalFileName) Dim FSO, FileObj Set FSO = Server.CreateObject(KS.Setting(99)) Set FileObj = FSO.CreateTextFile(Server.MapPath(LocalFileName), True) '创建文件 FileObj.Write Content FileObj.Close '释放对象 Set FileObj = Nothing:Set FSO = Nothing End Sub '********************************************************************************************************* '函数名:RefreshJS '作 用:发布JS '参 数:JSName JS名称 '********************************************************************************************************* Sub RefreshJS(JSName) Dim JSRS, SqlStr, JSContent Set JSRS = Server.CreateObject("ADODB.Recordset") SqlStr = "Select * From KS_JSFile Where JSName='" & Trim(JSName) & "'" JSRS.Open SqlStr, Conn, 1, 1 If JSRS.EOF And JSRS.BOF Then JSRS.Close:Set JSRS = Nothing:Exit Sub End If Dim JSConfig, JSFileName, SaveFilePath, JSDir, JSType JSFileName = Trim(JSRS("JSFileName")) JSDir = Trim(KS.Setting(93)) JSType = Trim(JSRS("JSType")) If Left(JSDir, 1) = "/" Or Left(JSDir, 1) = "\" Then JSDir = Right(JSDir, Len(JSDir) - 1) SaveFilePath = KS.Setting(3) & JSDir Call KS.CreateListFolder(SaveFilePath) JSConfig = Trim(JSRS("JSConfig")) If JSType = "0" Then JSConfig = Replace(Trim(JSRS("JSConfig")), """", "") '替换原参数的双引号为空 JSContent=Replace(Replace(Replace(KSLabel.ChangeLableToFunction(JSConfig), Chr(13) & Chr(10), ""),"'","\'"),"""","\""") JSContent = "document.write('" & JSContent & "');" Else Dim FreeType FreeType = Left(JSConfig, InStr(JSConfig, ",") - 1) '取出自由JS的类型 JSConfig = Replace(JSConfig, FreeType & ",", "") Select Case FreeType '根据函数做相应的操作 Case "GetExtJS" '扩展JS JSConfig = Replace(JSConfig, "'", """") JSConfig = ReplaceLableFlag(ReplaceAllLabel(JSConfig)) JSConfig = ReplaceGeneralLabelContent(JSConfig) JSConfig = Replace(Replace(Replace(JSConfig, Published, ""),"'","\'"),"""","\""") JSContent = ReplaceJsBr(JSConfig) 'JSContent = "document.write('" & JSConfig & "');" Case "GetWordJS" JSConfig = Replace(Trim(JSConfig), """", "") '替换原参数的双引号为空 JSContent = RefreshWordJS(Trim(JSRS("JSID")), JSConfig) '替换文字JS Case "GetPicJS" JSConfig = Replace(Trim(JSConfig), """", "") '替换原参数的双引号为空 JSContent = RefreshPicJS(Trim(JSRS("JSID")), JSConfig) '替换图像JS Case Else JSContent = "" End Select End If 'JSConfig = ReplaceRA(JSConfig, "") '相对路径与绝对路径的替换 Call FSOSaveFile(JSContent, SaveFilePath & JSFileName) JSRS.Close:Set JSRS = Nothing End Sub Function ReplaceJsBr(Content) Dim i Dim JsArr:JSArr=Split(Content,Chr(13) & Chr(10)) For I=0 To Ubound(JsArr) ReplaceJsBr=ReplaceJsBr & "document.writeln('" & JsArr(I) &"')" & vbcrlf Next End Function '********************************************************************************************************* '函数名:RefreshWordJS '作 用:发布文字JS '参 数:JSID JSID,JSConfig JS参数 '********************************************************************************************************* Function RefreshWordJS(JSID, JSConfig) Dim JSConfigArr:JSConfigArr = Split(JSConfig, ",") If UBound(JSConfigArr) = 17 Then RefreshWordJS = KSLabel.RefreshCss(JSID, UCase(JSConfigArr(0)), JSConfigArr(1), JSConfigArr(2), JSConfigArr(3), JSConfigArr(4), JSConfigArr(5), JSConfigArr(6), JSConfigArr(7), JSConfigArr(8), JSConfigArr(9), JSConfigArr(10), JSConfigArr(11), JSConfigArr(12), JSConfigArr(13), JSConfigArr(14), JSConfigArr(15), JSConfigArr(16), JSConfigArr(17)) RefreshWordJS = Replace(RefreshWordJS, "'", """") RefreshWordJS = "document.write('" & RefreshWordJS & "');" Else RefreshWordJS = "document.write('标签参数溢出!');" End If End Function '********************************************************************************************************* '函数名:RefreshPicJS '作 用:发布图片JS '参 数:JSID JSID,JSConfig JS参数 '********************************************************************************************************* Function RefreshPicJS(JSID, JSConfig) End Function '=================================以下为相关栏目,内容页,频道首页等的刷新函数===================================== ' 修改日期 2007-5-19 开发:林文仲 '=================================================================================================================== '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshArticleContent '作 用:刷新文章内容页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshArticleContent(RS,ChannelID) Dim TFileContent, F_C, FilePath, FilePathAndName, FilePathAndNameTemp, Fname, FExt, TempFileContent, Content, ContentArr, TotalPage, I, N, CurrPage, PageStr, Flag Application(KS.SiteSN & "RefreshType") = "ArticleContent" Application(KS.SiteSN & "RefreshFolderID") = RS("Tid") Application(KS.SiteSN & "RefreshInfoID") = RS("ID") Application(KS.SiteSN & "ChannelID")=ChannelID TempFileContent = LoadTemplate(RS("TemplateID")) TempFileContent = ReplaceAllLabel(TempFileContent) If InStr(TempFileContent, "{$GetCorrelativeArticle(") <> 0 Then TempFileContent = Replace(TempFileContent, "{$GetCorrelativeArticle(", "[$GetCorrelativeArticle(") Flag = True Else Flag = False End If If Flag = True Then TFileContent = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) ElseIf (RS("TemplateID") <> Application(KS.SiteSN & "RefreshTemplateID")) Or (Trim(RS("Tid")) <> Trim(Application(KS.SiteSN & "RefreshCurrTid"))) Or Application(KS.SiteSN & "RefreshTempFileContent") = "" Then Application(KS.SiteSN & "RefreshCurrTid") = RS("Tid") Application(KS.SiteSN & "RefreshTemplateID") = RS("TemplateId") Application(KS.SiteSN & "RefreshTempFileContent") = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) '替换函数标签 TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") Else TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") End If on error resume next FExt = Mid(Trim(RS("Fname")), InStrRev(Trim(RS("Fname")), ".")) '分离出扩展名 Fname = Replace(Trim(RS("Fname")), FExt, "") '分离出文件名 如 2005/9-10/1254ddd FilePathAndNameTemp =Replace(KS.Setting(3) & KS.C_S(ChannelID,8),"//","/")& KS.C_C(RS("Tid"),2) Dim ShowUrl:ShowUrl =KS.GetFolderPath(RS("Tid")) FilePathAndName = FilePathAndNameTemp & RS("Fname") FilePath = Replace(FilePathAndName, Mid(FilePathAndName, InStrRev(FilePathAndName, "/")), "") Call KS.CreateListFolder(FilePath) Content =RS("ArticleContent") If Content="" Then Content = " " ContentArr = Split(Content, "[NextPage]") TotalPage = UBound(ContentArr) + 1 For I = 0 To UBound(ContentArr) CurrPage = I + 1 If TotalPage > 1 Then If I = 0 Then PageStr = "

    下一页
    " ElseIf I = 1 And I <> TotalPage - 1 Then '对于最后一页刚好是第二页的要做特殊处理 PageStr = "

    上一页      下一页
    " ElseIf I = 1 And I = TotalPage - 1 Then PageStr = "

    上一页
    " ElseIf I = TotalPage - 1 Then PageStr = "

    上一页
    " Else PageStr = "

    上一页      下一页
    " End If PageStr = PageStr & "本文共 " & TotalPage & " 页,第  " For N = 1 To TotalPage If N = 1 Then If CurrPage = N Then PageStr = PageStr & ("[" & N & "]  ") Else PageStr = PageStr & ("[" & N & "]  ") End If Else If CurrPage = N Then PageStr = PageStr & ("[" & N & "]  ") Else PageStr = PageStr & ("[" & N & "]  ") End If End If If TotalPage > 10 Then If N Mod 10 = 0 Then PageStr = PageStr & "
    " End If Next PageStr = PageStr & "页

    " Else PageStr = "" End If If CurrPage <> 1 Then FilePathAndName = FilePathAndNameTemp & Fname & "_" & CurrPage & FExt F_C = TFileContent If InStr(F_C, "[$GetCorrelativeArticle(") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "[$GetCorrelativeArticle(", "{$GetCorrelativeArticle(")) F_C = ReplaceNewsContent(ChannelID,RS, F_C, ContentArr(I) & PageStr) F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),4))) Call FSOSaveFile(F_C, FilePathAndName) On Error GoTo 0 Next End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshFolder '作 用:刷新栏目页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshFolder(ChannelID,RS) Dim F_C, FolderDir, FilePath, TempFilePath,Index Application(KS.SiteSN & "RefreshType") = "Folder" Application(KS.SiteSN&"ChannelID") = RS("ChannelID") Application(KS.SiteSN & "RefreshFolderID") = RS("ID") '检查当前刷新的是否是频道(栏目)首页 If Trim(RS("TN")) = "0" Then Application(KS.SiteSN & "RefreshChannelHomeFlag") = True Else Application(KS.SiteSN & "RefreshChannelHomeFlag") = False F_C = LoadTemplate(RS("FolderTemplateID")) F_C = ReplaceGeneralLabelContent(F_C) '替换网站通用标签 F_C = ReplaceAllLabel(F_C) F_C = ReplaceLableFlag(F_C) '替换函数标签 Index = RS("FolderFsoIndex") FolderDir = KS.C_S(ChannelID,8) If Left(FolderDir, 1) = "/" Or Left(FolderDir, 1) = "\" Then FolderDir = Right(FolderDir, Len(FolderDir) - 1) FilePath = KS.Setting(3) & FolderDir & RS("Folder") Call KS.CreateListFolder(FilePath) If (Application(Cstr(KS.SiteSN & "PageList")) <> "") Then Call GetPageStr(Application(Cstr(KS.SiteSN & "PageList")), "", Index, F_C, FilePath, Trim(RS("FolderDomain")), True) Application.Contents.Remove (KS.SiteSN & "PageList") Else F_C = Replace(F_C, "{PageListStr}", "") F_C = ReplaceRA(F_C, Trim(RS("FolderDomain"))) Call FSOSaveFile(F_C, FilePath & Index) End If End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshSpecials '作 用:刷新专题页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshSpecials(RS) Dim F_C, SpecialDir, FilePath,Index,TempStr '设置刷新类型,以取得当前导航位置 Application(KS.SiteSN & "RefreshType") = "Special" Application(KS.SiteSN & "RefreshFolderID") = Trim(RS("FolderID")) Response.Cookies(KS.SiteSN)("CurrSpecialID") = Trim(RS("SpecialID")) Application(KS.SiteSN&"ChannelID")=RS("ChannelID") '读出专题页对应的模板 F_C = LoadTemplate(RS("TemplateID")) F_C = ReplaceGeneralLabelContent(F_C) '替换网站通用标签 F_C = ReplaceAllLabel(F_C) Index = Trim(RS("FsoSpecialIndex")) SpecialDir = KS.Setting(95) If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) FilePath = KS.Setting(3) & SpecialDir & RS("SpecialEName") & "/" Call KS.CreateListFolder(FilePath) F_C = ReplaceLableFlag(F_C) '替换函数标签 F_C = ReplaceSpecialCotent(F_C,RS) If (Application(KS.SiteSN & "PageList") <> "") Then Call GetPageStr(Application(KS.SiteSN & "PageList"), Trim(DomainStr & SpecialDir & RS("SpecialEname") & "/"), Index, F_C, FilePath, "", True) Application(KS.SiteSN & "PageList") = "" Else F_C = Replace(F_C, "{PageListStr}", "") F_C = ReplaceRA(F_C, "") Call FSOSaveFile(F_C, FilePath & Index) End If End Function '6-1增加 Function ReplaceSpecialCotent(F_C,RS) F_C=Replace(F_C,"{$GetSpecialName}",RS("SpecialName")) If Not Isnull(RS("PhotoUrl")) And RS("PhotoUrl")<>"" Then F_C=Replace(F_C,"{$GetSpecialPic}","") Else F_C=Replace(F_C,"{$GetSpecialPic}","") End If F_C=Replace(F_C,"{$GetSpecialNote}",RS("SpecialNote")) F_C=Replace(F_C,"{$GetSpecialDate}",RS("SpecialAddDate")) ReplaceSpecialCotent=F_C End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshChannelSpecials '作 用:刷新频道专题汇总页 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshChannelSpecials(RS) Dim F_C, SpecialDir, Index, FilePath Application(KS.SiteSN & "RefreshType") = "ChannelSpecial" '设置刷新类型,以取得当前导航位置 Application("RefreshFolderName") = RS("FolderName") '此处存放频道名称,以取得导航位置 Application(KS.SiteSN & "RefreshFolderID") = RS("ID") If RS("SpecialTemplateID")="" Then RefreshChannelSpecials="请先绑定频道专题汇总模板!":exit function Else F_C = LoadTemplate(RS("SpecialTemplateID")) End If F_C = ReplaceGeneralLabelContent(F_C) '替换网站通用标签 F_C = ReplaceAllLabel(F_C) F_C = ReplaceLableFlag(F_C) '替换函数标签 SpecialDir = KS.Setting(95) If Left(SpecialDir, 1) = "/" Or Left(SpecialDir, 1) = "\" Then SpecialDir = Right(SpecialDir, Len(SpecialDir) - 1) Index = RS("FolderFsoIndex") FilePath = KS.Setting(3) & SpecialDir & RS("Folder") Call KS.CreateListFolder(FilePath) If (Application(Cstr(KS.SiteSN & "PageList")) <> "") Then '调用通用分页处理过程 Call GetPageStr(Application(Cstr(KS.SiteSN & "PageList")), Trim(DomainStr & SpecialDir & RS("Folder")), Index, F_C, FilePath, "", True) Application.Contents.Remove (KS.SiteSN & "PageList") Else F_C = ReplaceRA(F_C, "") Call FSOSaveFile(F_C, FilePath & Index) End If End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshCommonPage '作 用:刷新通用页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshCommonPage(ByVal FileName,FsoFileName) Dim F_C, CommonDir, FilePath F_C = LoadTemplate(FileName) F_C = ReplaceGeneralLabelContent(F_C) '替换通用标签 如{$GetWebmaster} F_C = ReplaceLableFlag(ReplaceAllLabel(F_C)) '替换函数标签 '如果采用根相对路径,则替换绝对路径为根相对路径 F_C = ReplaceRA(F_C, "") CommonDir = Replace(KS.Setting(94), "\", "") If Left(CommonDir, 1) = "/" Then CommonDir = Right(CommonDir, Len(CommonDir) - 1) 'FilePath = KS.Setting(3) & CommonDir FilePath=Replace(FsoFileName,Split(FsoFileName,"/")(Ubound(Split(FsoFileName,"/"))),"") Call KS.CreateListFolder(KS.Setting(3) & CommonDir & FilePath) Call FSOSaveFile(F_C, KS.Setting(3) & CommonDir & FsoFileName) End Function '********************************************************************************************************* '函数名:ReplaceRA '作 用:自动判断系统是否用相对路径或绝对路径并转换 '参 数:FileContent原文件,FolderDomain 是否有绑定二级域名 '********************************************************************************************************* Function ReplaceRA(F_C, FolderDomain) If CStr(KS.Setting(97)) = "0" Then If FolderDomain <> "" Then F_C = Replace(F_C, FolderDomain, "/") Else If Trim(KS.Setting(3)) = "/" Then F_C = Replace(F_C, DomainStr, "/") Else F_C = Replace(F_C, Replace(DomainStr, Trim(KS.Setting(3)), ""), "") End If End If End If ReplaceRA = F_C End Function '----------------------------------------------------------------------------------------------------------------------------- '过程名:GetPageStr '作 用:取得分页的通用函数 '参 数:PageContent--分页内容,LinkUrl--链接地址,Index-首页名称 ' F_C--待保存的文件内容,FilePath---待保存路径,SecondDomain --二级域名 ,ShowTurnToFlag ---是否显示转到下拉框 '------------------------------------------------------------------------------------------------------------------------------ Sub GetPageStr(PageContent, LinkUrl, Index, F_C, FilePath, SecondDomain, ShowTurnToFlag) Dim CurrPage, PageStr, TempFileContent, I, PageContentArr, J, SelectStr Dim TotalPage Dim HomeLink '构造首页链接 Dim LinkUrlFname '构造其它页链接 Dim Fname '文件名 Dim FExt '扩展名 HomeLink = LinkUrl & Index FExt = Mid(Trim(Index), InStrRev(Trim(Index), ".")) '分离出扩展名 Fname = Replace(Trim(Index), FExt, "") '分离出文件名 如 1254ddd LinkUrlFname = LinkUrl & Fname PageContentArr = Split(PageContent, "{$PageList}") TotalPage = UBound(PageContentArr) For I = LBound(PageContentArr) To TotalPage - 1 CurrPage = I + 1 Select Case Application(KS.SiteSN & "PageStyle") Case 1 If CurrPage = 1 And CurrPage <> TotalPage Then PageStr = "首页 上一页 下一页 尾页" ElseIf CurrPage = 1 And CurrPage = TotalPage Then PageStr = "首页 上一页 下一页 尾页" ElseIf CurrPage = TotalPage And CurrPage <> 2 Then '对于最后一页刚好是第二页的要做特殊处理 PageStr = "首页 上一页 下一页 尾页" ElseIf CurrPage = TotalPage And CurrPage = 2 Then PageStr = "首页 上一页 下一页 尾页" ElseIf CurrPage = 2 Then PageStr = "首页 上一页 下一页 尾页" Else PageStr = "首页 上一页 下一页 尾页" End If Case 2 If CurrPage=1 Then PageStr="9 7" ElseIf CurrPage=2 Then PageStr="9 7" Else PageStr="9 7 " End If For J=CurrPage To CurrPage+9 If J>TotalPage Then Exit For If J= CurrPage Then PageStr=PageStr & " [" & J &"]" Else PageStr=PageStr & " [" & J &"]" End If Next If CurrPage=TotalPage Then PageStr=PageStr & " 8 :" Else PageStr=PageStr & " 8 : " End If Case 3 If CurrPage=1 Then PageStr="9 7" ElseIf CurrPage=2 Then PageStr="9 7" Else PageStr="9 7 " End If If CurrPage=TotalPage Then PageStr=PageStr & " 8 :" Else PageStr=PageStr & " 8 : " End If End Select If CBool(ShowTurnToFlag) = True Then PageStr = PageStr & " 转到:" End If TempFileContent = Replace(F_C, "{PageListStr}", PageContentArr(I) & PageStr & "
    ") TempFileContent = ReplaceRA(TempFileContent, SecondDomain) Dim TempFilePath If CurrPage = 1 Then TempFilePath = FilePath & Index Else TempFilePath = FilePath & Fname & "_" & CurrPage & FExt End If Call FSOSaveFile(TempFileContent, TempFilePath) Next End Sub '********************************************************************************************************* '函数名:ReplaceGeneralLabelContent '作 用:替换通用标签为内容 '参 数:FileContent原文件 '********************************************************************************************************* Function ReplaceGeneralLabelContent(F_C) Dim HtmlLabel,HtmlLabelArr, Param,LabelTotal,I '替换通用JS F_C=ReplaceCommonJS(F_C) '替换搜索标签 Dim KSCSH:Set KSCSH=New RefreshSearchCls F_C=KSCSH.ReplaceAllSearch(F_C) Set KSCSH=Nothing F_C=ReplaceChannelLabel(F_C) F_C=ReplaceRssLabel(F_C) F_C = Replace(F_C, "{$GetSiteName}", KS.Setting(0)) F_C = Replace(F_C, "{$GetSiteTitle}", KS.Setting(1)) F_C = Replace(F_C, "{$GetSiteLogo}", "") '替换网站Logo(带参数) If InStr(F_C, "{=GetLogo") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetLogo") HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Param = Split(KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetLogo"),",") F_C = Replace(F_C, HtmlLabelArr(I), "") Next End If If InStr(F_C, "{=GetTopUser") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetTopUser") HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Param = Split(KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetTopUser"),",") F_C = Replace(F_C, HtmlLabelArr(I), GetTopUser(Param(0),Param(1))) Next End If '替换网站广告位 If InStr(F_C, "{=GetAdvertise") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetAdvertise") HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Param = KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetAdvertise") F_C = Replace(F_C, HtmlLabelArr(I), "") Next End If If InStr(F_C, "{=GetVote") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetVote") HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Param = split(KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetVote"),",")(0) F_C = Replace(F_C, HtmlLabelArr(I), GetVote(Param)) Next End If If InStr(F_C, "{=GetTags") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetTags") HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Param = Split(KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetTags"),",") F_C = Replace(F_C, HtmlLabelArr(I), GetTags(Param(0),Param(1))) Next End If '站点统计 F_C = Replace(F_C, "{$GetSiteCountAll}", GetSiteCountAll()) F_C = Replace(F_C, "{$GetSiteOnline}", "") F_C = Replace(F_C, "{$GetTopUserLogin}", "") F_C = Replace(F_C, "{$GetUserLogin}", "") If InStr(F_C, "{$GetSpecial}") <> 0 Then Dim SpecialIndexUrl,SpecialDir:SpecialDir = KS.Setting(95) If Split(KS.Setting(5),".")(1)<>"asp" Then SpecialIndexUrl=DomainStr & SpecialDir Else SpecialIndexUrl=DomainStr & "SpecialIndex.asp" F_C = Replace(F_C, "{$GetSpecial}", "专题首页") End If F_C = Replace(F_C, "{$GetFriendLink}", "友情链接") F_C = Replace(F_C, "{$GetSiteUrl}", DomainStr) F_C = Replace(F_C, "{$GetInstallDir}", KS.Setting(3)) F_C = Replace(F_C, "{$GetManageLogin}", "管理登录") F_C = Replace(F_C, "{$GetCopyRight}", KS.Setting(18)) F_C = Replace(F_C, "{$GetMetaKeyWord}", KS.Setting(19)) F_C = Replace(F_C, "{$GetMetaDescript}", KS.Setting(20)) F_C = Replace(F_C, "{$GetWebmaster}", "" & KS.Setting(10) & "") F_C = Replace(F_C, "{$GetWebmasterEmail}", KS.Setting(11)) ReplaceGeneralLabelContent = F_C End Function Function GetTags(TagType,Num) if not isnumeric(num) then exit function dim sqlstr,sql,i,n,str select case cint(tagtype) case 1:sqlstr="select top 500 keytext,channelid,hits from ks_keywords order by hits desc" case 2:sqlstr="select top 500 keytext,channelid,hits from ks_keywords order by lastusetime desc,id desc" case 3:sqlstr="select top 500 keytext,channelid,hits from ks_keywords order by Adddate desc,id desc" case else GetTags="":exit function end select dim rs:set rs=conn.execute(sqlstr) if rs.eof then rs.close:set rs=nothing:exit function sql=rs.getrows(-1) rs.close:set rs=nothing for i=0 to ubound(sql,2) if KS.FoundInArr(str,sql(0,i),",")=false then n=n+1 str=str & "," & sql(0,i) gettags=gettags & "" & sql(0,i) & " " end if if n>=cint(num) then exit for next End Function '********************************************************************************************************* '函数名:GetSiteCountAll '作 用:替换网站统计标签为内容 '参 数:Flag-0总统计,1-文章统计 2-图片统计 '********************************************************************************************************* Function GetSiteCountAll() Dim ChannelTotal: ChannelTotal = Conn.Execute("Select Count(*) From KS_Class Where TN='0'")(0) Dim MemberTotal:MemberTotal=Conn.Execute("Select Count(*) From KS_User")(0) Dim CommentTotal: CommentTotal = Conn.Execute("Select Count(*) From KS_Comment")(0) Dim GuestBookTotal:GuestBookTotal=Conn.Execute("Select Count(ID) From KS_GuestBook")(0) GetSiteCountAll="
    " & vbcrlf GetSiteCountAll = GetSiteCountAll & "
  • 频道总数: " & ChannelTotal & " 个
  • " & vbcrlf dim rsc:set rsc=conn.execute("select channelid,ItemName,Itemunit,channeltable from ks_channel where channelstatus=1 and channelid<>6 And ChannelID<>9") dim k,sql:sql=rsc.getrows(-1) rsc.close:set rsc=nothing for k=0 to ubound(sql,2) GetSiteCountAll = GetSiteCountAll & "
  • " & sql(1,k) & "总数: " & Conn.Execute("Select Count(id) From " & sql(3,k))(0) & " " & sql(2,k)&"
  • " & vbcrlf next GetSiteCountAll = GetSiteCountAll & "
  • 注册会员: " & MemberTotal & " 位
  • " & vbcrlf GetSiteCountAll = GetSiteCountAll & "
  • 留言总数: " & GuestBookTotal &" 条
  • " & vbcrlf GetSiteCountAll = GetSiteCountAll & "
  • 评论总数: " & CommentTotal & " 条
  • " & vbcrlf GetSiteCountAll = GetSiteCountAll & "
  • 在线人数:
  • " & vbcrlf GetSiteCountAll = GetSiteCountAll & "
    " & vbcrlf End Function '替换RSS标签 Function ReplaceRssLabel(F_C) IF KS.Setting(83)=0 Then F_C=Replace(F_C,"{$Rss}","") F_C=Replace(F_C,"{$RssElite}","") F_C=Replace(F_C,"{$RssHot}","") ReplaceRssLabel=F_C Exit Function End If Dim CurrentRefreshType:CurrentRefreshType=Application(KS.SiteSN & "RefreshType") Dim CurrentClassID:CurrentClassID=Application(KS.SiteSN & "RefreshFolderID") Dim ChannelID:ChannelID=Application(KS.SiteSN&"ChannelID") Select Case Ucase(CurrentRefreshType) Case "INDEX" F_C=Replace(F_C,"{$Rss}",GetRssLink("Rss.asp")) F_C=Replace(F_C,"{$RssElite}",GetRssLink("Rss.asp?Elite=1")) F_C=Replace(F_C,"{$RssHot}",GetRssLink("Rss.asp?Hot=1")) Case "FOLDER" F_C=Replace(F_C,"{$Rss}",GetRssLink("Rss.asp?ChannelID=" & ChannelID & "&ClassID=" &CurrentClassID & "")) F_C=Replace(F_C,"{$RssElite}",GetRssLink("Rss.asp?ChannelID=" & ChannelID & "&ClassID=" &CurrentClassID & "&Elite=1")) F_C=Replace(F_C,"{$RssHot}",GetRssLink("Rss.asp?ChannelID=" & ChannelID & "&ClassID=" &CurrentClassID & "&Hot=1")) Case Else F_C=Replace(F_C,"{$Rss}","") F_C=Replace(F_C,"{$RssElite}","") F_C=Replace(F_C,"{$RssHot}","") End Select ReplaceRssLabel = F_C End Function '取得每个频道的RSS链接,结合ReplaceRssLabel调用 Function GetRssLink(LinkStr) GetRssLink="" End Function '********************************************************************************************************* '函数名:ReplaceNewsContent '作 用:替换文章内容页标签为内容 '参 数:RS Recordset数据集,FileContent待替换的内容,Content文章内容 '********************************************************************************************************* Function ReplaceNewsContent(ChannelID,RS, F_C, Content) Dim TempStr, N On Error Resume Next If InStr(F_C, "{$GetArticleSize}") <> 0 Then Content = "" & Content & "" TempStr = "" TempStr = TempStr & "【字体: 】" F_C = Replace(F_C, "{$GetArticleSize}", TempStr) End If F_C=ReplaceUserDefine(ChannelID,F_C,RS) Content=ReplaceAd(Content,RS("Tid")) F_C = Replace(F_C, "{$GetArticleContent}", KS.ReplaceInnerLink(FormatImg(Content))) If InStr(F_C, "{$GetArticleAction}") <> 0 Then TempStr = "【发表评论】【告诉好友】【打印此文】【收藏此文】【关闭窗口】" F_C = Replace(F_C, "{$GetArticleAction}", TempStr) End If F_C = Replace(F_C, "{$ChannelID}", ChannelID) F_C = Replace(F_C, "{$InfoID}", RS("ID")) F_C = Replace(F_C, "{$ItemName}", KS.C_S(ChannelID,3)) F_C = Replace(F_C, "{$ItemUnit}", KS.C_S(ChannelID,4)) F_C = Replace(F_C, "{$GetArticleID}", RS("NewsID")) F_C = Replace(F_C, "{$GetArticleIntro}", RS("Intro")) F_C = Replace(F_C, "{$GetArticleShortTitle}", RS("Title")) F_C = Replace(F_C, "{$GetArticleUrl}", KS.GetInfoUrl(ChannelID,RS("Tid"),RS("ID"),RS("Fname"),RS("ReadPoint"),RS("InfoPurview"),RS("Changes"))) F_C = Replace(F_C, "{$GetArticleKeyWord}", Replace(RS("KeyWords"), "|", ",")) F_C = Replace(F_C, "{$GetKeyTags}",ReplaceKeyTags(ChannelID,RS("Keywords"))) F_C = Replace(F_C, "{$GetArticleAuthor}", RS("Author")) F_C = Replace(F_C, "{$GetArticleInput}", "" & rs("articleinput") & "" ) IF RS("FullTitle")="" Or IsNull(RS("FullTitle")) Then F_C = Replace(F_C, "{$GetArticleTitle}", RS("Title")) Else F_C = Replace(F_C, "{$GetArticleTitle}", RS("FullTitle")) End IF If Not IsNull(RS("Origin")) And Trim(RS("Origin")) <> "" Then F_C = Replace(F_C, "{$GetArticleOrigin}", KS.GetOrigin(RS("Origin"))) Else F_C = Replace(F_C, "{$GetArticleOrigin}", "本站原创") End If If InStr(F_C, "{=GetPhoto") <> 0 Then Dim HtmlLabel: HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetPhoto") Dim Param: Param = KSLabel.GetFunctionLabelParam(HtmlLabel, "{=GetPhoto") Dim PhotoUrl:PhotoUrl=RS("PicUrl") If Not (IsNull(PhotoUrl) Or PhotoUrl = "") Then F_C = Replace(F_C,HtmlLabel, "
    ") Else F_C = Replace(F_C, HtmlLabel, "
    ") End If End If '属性 If InStr(F_C, "{$GetArticleProperty}") <> 0 Then TempStr = "" If CInt(RS("Recommend")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Popular")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Strip")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Rolls")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Slide")) = 1 Then TempStr = TempStr & (" ") End If TempStr = TempStr & " " & Replace(RS("Rank"),"★","") F_C = Replace(F_C, "{$GetArticleProperty}", TempStr) End If If InStr(F_C, "{$GetArticleHits}") <> 0 Then F_C = Replace(F_C, "{$GetArticleHits}", "") End If If InStr(F_C, "{$GetArticleDate}") <> 0 Then F_C = Replace(F_C, "{$GetArticleDate}", KS.DateFormat(RS("AddDate"), 6)) End If If InStr(F_C, "{$GetShowComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C,"{$GetShowComment}","
    ") Else F_C = Replace(F_C, "{$GetShowComment}", "") End If If InStr(F_C, "{$GetWriteComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C, "{$GetWriteComment}", "") Else F_C = Replace(F_C, "{$GetWriteComment}", "") End If F_C = Replace(F_C, "{$GetPrevArticle}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), "<")) F_C = Replace(F_C, "{$GetNextArticle}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), ">")) ReplaceNewsContent = F_C End Function '********************************************************************************************************* '函数名:ReplacePrevNext '作 用:上一篇、下一篇 '参 数:NowID 现在ID,Tid 目录ID,TypeStr类型 '********************************************************************************************************* Function ReplacePrevNext(ChannelID,NowID, Tid, TypeStr) Dim SqlStr Select Case KS.C_S(ChannelID,6) Case 1:SqlStr="SELECT Top 1 ID,Title,Tid,InfoPurview,ReadPoint,Fname,Changes" Case 2,3,4,7:SqlStr="SELECT Top 1 ID,Title,Tid,InfoPurview,ReadPoint,Fname,0" Case 8:SqlStr="SELECT Top 1 ID,Title,Tid,0,0,Fname,0" Case 5:SqlStr=" SELECT Top 1 ID,Title,Tid,0,0,Fname,0" Case Else :ReplacePrevNext="":Exit Function End Select SqlStr=SqlStr & " From " & KS.C_S(ChannelID,2) & " Where Tid='" & Tid & "' And ID" & TypeStr & NowID & " And Verific=1 and DelTF=0 Order By ID" If TypeStr=">" Then SqlStr=SqlStr & " asc" else SqlStr=SqlStr & " desc" Dim RS:Set RS=Conn.Execute(SqlStr) If RS.EOF And RS.BOF Then ReplacePrevNext = "没有了" Else ReplacePrevNext = "" & RS(1) & "" End If RS.Close:Set RS = Nothing End Function '替换自定义字段 Function ReplaceUserDefine(ChannelID,F_C,RS) Dim D_F_Arr,K D_F_Arr=KSCls.Get_KS_D_F_Arr(ChannelID) If IsArray(D_F_Arr) Then For K=0 To Ubound(D_F_Arr,2) If Not IsNull(RS("" &D_F_Arr(0,K) & "")) Then F_C = Replace(F_C,"{$" & D_F_Arr(0,K) & "}",RS("" &D_F_Arr(0,K) & "")) Else F_C = Replace(F_C,"{$" & D_F_Arr(0,K) & "}","") End If Next End If ReplaceUserDefine=F_C End Function Function ReplaceKeyTags(ChannelID,KeyStr) On error resume next Dim I,K_Arr:K_Arr=Split(KeyStr,"|") For I=0 To Ubound(K_Arr) ReplaceKeyTags=ReplaceKeyTags & "" & K_Arr(i) & " " Next If Err Then ReplaceKeyTags="":Err.Clear End Function '替换画中画广告 Function ReplaceAD(ByVal Content,ClassID) Dim ShowADTF,CLen,Dir,Width,Height,AdUrl,AdLinkUrl,LC,RC,AdStr,ADType Dim ClassBasicInfo:ClassBasicInfo=KS.C_C(ClassID,6) Dim AdP:AdP = Split(Split(ClassBasicInfo,"||||")(4),"%ks%") ShowADTF=KS.ChkClng(Adp(0)) If ShowADTF=0 Then ReplaceAD=Content:Exit Function Dim Param:Param=Split(AdP(1),",") CLen=KS.ChkClng(Param(0)):Dir=Param(1):Width=KS.ChkClng(Param(2)):Height=KS.ChkClng(Param(3)):AdUrl=Adp(3):AdLinkUrl=Adp(4):ADType=KS.ChkClng(ADP(2)) If CLen<>0 Then LC=InterceptString(Content,Clen) RC=Right(Content,Len(Content)-Len(LC)) If ADType=2 Then Adstr="
    " & AdUrl & "
    " Else If Lcase(Right(AdUrl,3))="swf" Then'判断是否Swf图片 AdStr="
    " Else If AdLinkUrl="" Then AdLinkUrl="http://www.sykv.com" AdStr="
    " End If End If ReplaceAD=LC & AdStr & RC End Function '截取字符串 Function InterceptString(ByVal txt,length) Dim x,y,ii,c,ischines,isascii,tempStr length=Cint(length) txt=trim(txt):x = len(txt):y = 0 if x >= 1 then for ii = 1 to x c=asc(mid(txt,ii,1)) if c< 0 or c >255 then y = y + 2:ischines=1:isascii=0 else y = y + 1:ischines=0:isascii=1 end if if y >= length then if ischines=1 and StrCount(left(trim(txt),ii),"") then txt = left(txt,ii) '"字符串限长 exit for else if isascii=1 then x=x+1 end if end if next InterceptString = txt else InterceptString = "" end if End Function '判断字符串出现的次数 Public Function StrCount(Str,SubStr) Dim iStrCount,iStrStart,iTemp iStrCount = 0:iStrStart = 1:iTemp = 0:Str=LCase(Str):SubStr=LCase(SubStr) Do While iStrStart < Len(Str) iTemp = Instr(iStrStart,Str,SubStr,vbTextCompare) If iTemp <=0 Then iStrStart = Len(Str) Else iStrStart = iTemp + Len(SubStr) iStrCount = iStrCount + 1 End If Loop StrCount = iStrCount End Function Function RefreshPictureContent(RS,ChannelID) Dim TFileContent, F_C, FilePath, FilePathAndName, FilePathAndNameTemp,Fname, FExt, TempFileContent Dim FolderDomain, PicUrls, PicUrlsArr, TotalPage, I, N, CurrPage, PageStr,Flag on error resume next Application(KS.SiteSN & "RefreshType") = "PictureContent" Application(KS.SiteSN & "RefreshFolderID") = RS("Tid") Application(KS.SiteSN & "RefreshInfoID") = RS("ID") TempFileContent = LoadTemplate(RS("TemplateID")) TempFileContent = ReplaceAllLabel(TempFileContent) If InStr(TempFileContent, "{$GetCorrelativePicture(") <> 0 Then TempFileContent = Replace(TempFileContent, "{$GetCorrelativePicture(", "[$GetCorrelativePicture(") Flag = True Else Flag = False End If '为了提高刷新速度,采用Application缓存,仅当没有包含相关图片组标签 If Flag = True Then TFileContent = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) ElseIf ((RS("TemplateID") <> Application(KS.SiteSN & "RefreshTemplateID")) Or (Trim(RS("Tid")) <> Trim(Application(KS.SiteSN & "RefreshCurrTid"))) Or Application(KS.SiteSN & "RefreshTempFileContent") = "") Then Application(KS.SiteSN & "RefreshCurrTid") = RS("Tid") Application(KS.SiteSN & "RefreshTemplateID") = RS("TemplateId") Application(KS.SiteSN & "RefreshTempFileContent") = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) '替换函数标签 TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") Else TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") End If FExt = Mid(Trim(RS("Fname")), InStrRev(Trim(RS("Fname")), ".")) '分离出扩展名 Fname = Replace(Trim(RS("Fname")), FExt, "") '分离出文件名 如 2005/9-10/1254ddd FilePathAndNameTemp =Replace(KS.Setting(3) & KS.C_S(ChannelID,8),"//","/")& KS.C_C(RS("Tid"),2) Dim ShowUrl:ShowUrl =KS.GetFolderPath(RS("Tid")) FilePathAndName = FilePathAndNameTemp & RS("Fname") FilePath = Replace(FilePathAndName, Mid(FilePathAndName, InStrRev(FilePathAndName, "/")), "") Call KS.CreateListFolder(FilePath) PicUrls = RS("PicUrls") If IsNull(PicUrls) Then PicUrls = "" PicUrlsArr = Split(PicUrls, "|||") TotalPage = UBound(PicUrlsArr) + 1 Dim NextUrl,PicSrc If InStr(TempFileContent, "{=GetPhotoPage") <> 0 Then Dim HtmlLabel:HtmlLabel = KSLabel.GetFunctionLabel(TempFileContent, "{=GetPhotoPage") Dim Param:Param = split(KSLabel.GetFunctionLabelParam(HtmlLabel, "{=GetPhotoPage"),",") Dim Rows:Rows=Param(0) Dim Cols:Cols=Param(1) Dim Width:Width=Param(2) Dim Height:Height=Param(3) Dim r,c,str if ((ubound(PicUrlsArr)+1) mod (cols*rows))=0 then TotalPage=(ubound(PicUrlsArr)+1)\(cols*rows) else TotalPage=(ubound(PicUrlsArr)+1)\(cols*rows) + 1 end if For I = 1 To TotalPage str="" if TotalPage<=1 then n=0 else n=(cols*rows)*(I-1) end if For r=1 to rows str=str & "" For c=1 To Cols dim thumbsphoto if n<=ubound(PicUrlsArr) Then PicSrc=Split(PicUrlsArr(n), "|")(2) If (Lcase(Left(PicSrc,4))<>"http") Then PicSrc=KS.Setting(2) & PicSrc thumbsphoto="
    " else thumbsphoto="" end if str=str & "" & thumbsphoto & "" n=n+1 Next str=str & "" Next str=str &"" PageStr="
     共 " & TotalPage &" 页 第 " & I & "" startpage=1:k=0 if (I>=10) then startpage=(I\10-1)*10+I mod 10+2 PageStr=PageStr & "首页 " if I<>1 then if I=2 then PageStr=PageStr & "<< " else PageStr=PageStr & "<< " end if end if For N = cint(startpage) To TotalPage If N = 1 Then If I = N Then PageStr = PageStr & "" & N & " " Else PageStr = PageStr & "" & N & " " End If Else If I = N Then PageStr = PageStr & "" & N & " " Else PageStr = PageStr & "" & N & " " End If End If k=K+1 If k >= 10 Then exit for Next If I <>totalpage Then PageStr=PageStr & ">> " end if PageStr=PageStr & "末页 " PageStr=PageStr & "" PageStr=PageStr & "
    " If I <> 1 Then FilePathAndName = FilePathAndNameTemp & Fname & "_" & I & FExt F_C = TFileContent F_C=Replace(F_C, HtmlLabel,str) F_C=Replace(F_C,"{$PageStr}",PageStr) If InStr(F_C, "[$GetCorrelativePicture(") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "[$GetCorrelativePicture(", "{$GetCorrelativePicture(")) F_C = ReplacePictureContent(ChannelID,RS, F_C, "") F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),4))) Call FSOSaveFile(F_C, FilePathAndName) Next ElseIf InStr(TempFileContent, "{$GetPictureByPage}") <> 0 Then '按分页方式生成图片内容页 For I = LBound(PicUrlsArr) To TotalPage - 1 CurrPage = I + 1 If TotalPage > 1 Then PageStr="
    " & vbcrlf & "
    " If I = 0 Then PageStr = PageStr & "下一张>>
    " NextUrl=ShowUrl & Fname & "_" & (CurrPage + 1) & FExt ElseIf I = 1 And I <> TotalPage - 1 Then '对于最后一张刚好是第二张的要做特殊处理 PageStr = PageStr &"<<上一张      下一张>>
    " NextUrl=ShowUrl & Fname & "_" & (CurrPage + 1) & FExt ElseIf I = 1 And I = TotalPage - 1 Then PageStr = PageStr &"<<上一张
    " NextUrl=ShowUrl & RS("Fname") ElseIf I = TotalPage - 1 Then PageStr = PageStr &"<<上一张" NextUrl=ShowUrl & RS("Fname") Else PageStr = PageStr &"<<上一张      下一张>>" NextUrl=ShowUrl & Fname & "_" & (CurrPage + 1) & FExt End If PageStr =PageStr & "
    " PageStr = PageStr & "
    " & Split(PicUrlsArr(CurrPage-1), "|")(0) & "
    " dim startpage,k startpage=1:k=0 if (CurrPage>=10) then startpage=(CurrPage\10-1)*10+CurrPage mod 10+2 PageStr = PageStr & "
    " & startpage & "/" & TotalPage & "  " PageStr=PageStr & "首页 " if CurrPage<>1 then if currpage=2 then PageStr=PageStr & "<< " else PageStr=PageStr & "<< " end if end if For N = cint(startpage) To TotalPage If N = 1 Then If CurrPage = N Then PageStr = PageStr & "" & N & " " Else PageStr = PageStr & "" & N & " " End If Else If CurrPage = N Then PageStr = PageStr & "" & N & " " Else PageStr = PageStr & "" & N & " " End If End If k=K+1 If k >= 10 Then exit for Next If CurrPage <>totalpage Then PageStr=PageStr & ">> " end if PageStr=PageStr & "末页 " PageStr=PageStr & "
    " Else PageStr = "" End If If CurrPage <> 1 Then FilePathAndName = FilePathAndNameTemp & Fname & "_" & CurrPage & FExt F_C = TFileContent If InStr(F_C, "[$GetCorrelativePicture(") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "[$GetCorrelativePicture(", "{$GetCorrelativePicture(")) PicSrc=Split(PicUrlsArr(I), "|")(1) If (Lcase(Left(PicSrc,4))<>"http") Then PicSrc=KS.Setting(2) & PicSrc F_C = ReplacePictureContent(ChannelID,RS, F_C, "
    " & PageStr) F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),4))) Call FSOSaveFile(F_C, FilePathAndName) Next Else '图片播放器方式 F_C = TFileContent If InStr(F_C, "[$GetCorrelativePicture(") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "[$GetCorrelativePicture(", "{$GetCorrelativePicture(")) F_C = ReplacePictureContent(ChannelID,RS, F_C, GetPicturePlayer(PicUrlsArr,ChannelID)) F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),5))) '如果采用根相对路径,则替换绝对路径为根相对路径 Call FSOSaveFile(F_C, FilePathAndName) End If End Function Function GetPicturePlayer(PicUrlsArr,ChannelID) Dim I, TotalPictureNum,PictureIDArrayStr,ImageSrcArrayStr,ThumbSrcArrayStr TotalPictureNum = UBound(PicUrlsArr) + 1 For I = 0 To TotalPictureNum - 1 PictureIDArrayStr = PictureIDArrayStr & "'" & Split(PicUrlsArr(I), "|")(0) & "'," ImageSrcArrayStr = ImageSrcArrayStr & "'" & Split(PicUrlsArr(I), "|")(1) & "'," ThumbSrcArrayStr=ThumbSrcArrayStr & "'" & Split(PicUrlsArr(I),"|")(2) &"'," Next PictureIDArrayStr = Left(PictureIDArrayStr, Len(PictureIDArrayStr) - 1) ImageSrcArrayStr = Left(ImageSrcArrayStr, Len(ImageSrcArrayStr) - 1) ThumbSrcArrayStr=left(ThumbSrcArrayStr,Len(ThumbSrcArrayStr)-1) GetPicturePlayer = "" & vbCrLf GetPicturePlayer = GetPicturePlayer & "" & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    播放速度: " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
      
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & " " & vbCrLf GetPicturePlayer = GetPicturePlayer & "
    " & vbCrLf End Function '********************************************************************************************************* '函数名:ReplacePictureContent '作 用:替换图片内容页标签为内容 '参 数:RS Recordset数据集,FileContent待替换的内容,PictureContent图片内容 '********************************************************************************************************* Function ReplacePictureContent(ChannelID,RS, F_C, PictureContent) Dim TempStr, PhotoDir,N On Error Resume Next PhotoDir=DomainStr & KS.C_S(ChannelID,10)&"/" If InStr(F_C, "{$GetPictureByPage}") <> 0 Then ' F_C = Replace(Replace(F_C, "{$GetPictureByPage}", FormatImg(PictureContent)), "{$GetPictureByPlayer}", "") F_C = Replace(Replace(F_C, "{$GetPictureByPage}", PictureContent), "{$GetPictureByPlayer}", "") Else F_C = Replace(Replace(F_C, "{$GetPictureByPlayer}", PictureContent), "{$GetPictureByPage}", "") End If F_C = Replace(F_C, "{$GetPictureIntro}", KS.ReplaceInnerLink(RS("PictureContent"))) If InStr(F_C, "{$GetPictureAction}") <> 0 Then TempStr = "【我来评论】【我要收藏】【关闭窗口】" F_C = Replace(F_C, "{$GetPictureAction}", TempStr) End If F_C = Replace(F_C, "{$ChannelID}", ChannelID) F_C = Replace(F_C, "{$InfoID}", RS("ID")) F_C = Replace(F_C, "{$ItemName}", KS.C_S(ChannelID,3)) F_C = Replace(F_C, "{$ItemUnit}", KS.C_S(ChannelID,4)) F_C = Replace(F_C, "{$GetPictureID}", RS("PicID")) F_C = Replace(F_C, "{$GetPictureName}", RS("Title")) F_C = Replace(F_C, "{$GetPictureUrl}", KS.GetInfoUrl(ChannelID,RS("Tid"),RS("ID"),RS("Fname"),RS("ReadPoint"),RS("InfoPurview"),0)) F_C = Replace(F_C, "{$GetPictureKeyWord}", Replace(RS("KeyWords"), "|", ",")) F_C = Replace(F_C, "{$GetKeyTags}",ReplaceKeyTags(ChannelID,RS("Keywords"))) F_C = ReplaceUserDefine(ChannelID,F_C,RS) F_C = Replace(F_C, "{$GetPictureAuthor}", RS("Author")) F_C = Replace(F_C, "{$GetPictureInput}", "" & rs("pictureinput") & "" ) F_C = Replace(F_C, "{$GetPictureSrc}", RS("PhotoUrl")) If InStr(F_C, "{$GetPictureOrigin}") <> 0 Then If Not IsNull(RS("Origin")) And Trim(RS("Origin")) <> "" Then F_C = Replace(F_C, "{$GetPictureOrigin}", KS.GetOrigin(RS("Origin"))) Else F_C = Replace(F_C, "{$GetPictureOrigin}", "本站原创") End If End If '图片属性 If InStr(F_C, "{$GetPictureProperty}") <> 0 Then TempStr = "" If CInt(RS("Recommend")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Popular")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Strip")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Rolls")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Slide")) = 1 Then TempStr = TempStr & (" ") End If TempStr = TempStr & " " & Replace(RS("Rank"),"★","") F_C = Replace(F_C, "{$GetPictureProperty}", TempStr) End If '图片得票数 F_C = Replace(F_C, "{$GetPictureVoteScore}", "") F_C = Replace(F_C, "{$GetPictureVote}", "投它一票") If InStr(F_C, "{$GetPictureHits}") <> 0 Then '总浏览数 F_C = Replace(F_C, "{$GetPictureHits}", "") F_C = Replace(F_C, "{$GetPictureHitsByDay}", "") F_C = Replace(F_C, "{$GetPictureHitsByWeek}", "") F_C = Replace(F_C, "{$GetPictureHitsByMonth}", "") ElseIf InStr(F_C, "{$GetPictureHitsByDay}") <> 0 Then '本日浏览数 F_C = Replace(F_C, "{$GetPictureHits}", "") F_C = Replace(F_C, "{$GetPictureHitsByDay}", "") F_C = Replace(F_C, "{$GetPictureHitsByWeek}", "") F_C = Replace(F_C, "{$GetPictureHitsByMonth}", "") ElseIf InStr(F_C, "{$GetPictureHitsByWeek}") <> 0 Then '本周浏览数 F_C = Replace(F_C, "{$GetPictureHits}", "") F_C = Replace(F_C, "{$GetPictureHitsByDay}", "") F_C = Replace(F_C, "{$GetPictureHitsByWeek}", "") F_C = Replace(F_C, "{$GetPictureHitsByMonth}", "") ElseIf InStr(F_C, "{$GetPictureHitsByMonth}") <> 0 Then '本月浏览数 F_C = Replace(F_C, "{$GetPictureHits}", "") F_C = Replace(F_C, "{$GetPictureHitsByDay}", "") F_C = Replace(F_C, "{$GetPictureHitsByWeek}", "") F_C = Replace(F_C, "{$GetPictureHitsByMonth}", "") End If If InStr(F_C, "{$GetPictureDate}") <> 0 Then F_C = Replace(F_C, "{$GetPictureDate}", KS.DateFormat(RS("AddDate"), 6)) End If '当允许评论时,则显示评论 If InStr(F_C, "{$GetShowComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C,"{$GetShowComment}","
    ") Else F_C = Replace(F_C, "{$GetShowComment}", "") End If If InStr(F_C, "{$GetWriteComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C, "{$GetWriteComment}", "") Else F_C = Replace(F_C, "{$GetWriteComment}", "") End If If InStr(F_C, "{$GetPrevPicture}") <> 0 Then F_C = Replace(F_C, "{$GetPrevPicture}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), "<")) End If If InStr(F_C, "{$GetNextPicture}") <> 0 Then F_C = Replace(F_C, "{$GetNextPicture}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), ">")) End If ReplacePictureContent = F_C End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshDownLoadContent '作 用:刷新下载内容页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshDownLoadContent(RS,ChannelID) Dim TFileContent, F_C, FilePath, FilePathAndName, FilePathAndNameTemp, Fname, FExt, TempFileContent,Flag Application(KS.SiteSN & "RefreshType") = "DownLoadContent" Application(KS.SiteSN & "RefreshFolderID") = RS("Tid") Application(KS.SiteSN & "RefreshInfoID") = RS("ID") Application(KS.SiteSN & "ChannelID")=ChannelID TempFileContent = LoadTemplate(RS("TemplateID")) TempFileContent = ReplaceAllLabel(TempFileContent) If InStr(TempFileContent, "{$GetCorrelativeDownLoad(") <> 0 Then TempFileContent = Replace(TempFileContent, "{$GetCorrelativeDownLoad(", "[$GetCorrelativeDownLoad(") Flag = True Else Flag = False End If If Flag = True Then TFileContent = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) ElseIf (RS("TemplateID") <> Application(KS.SiteSN & "RefreshTemplateID")) Or (Trim(RS("Tid")) <> Trim(Application("RefreshCurrTid"))) Or Application(KS.SiteSN & "RefreshTempFileContent") = "" Then Application("RefreshCurrTid") = RS("Tid") Application(KS.SiteSN & "RefreshTemplateID") = RS("TemplateId") Application(KS.SiteSN & "RefreshTempFileContent") = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) '替换函数标签 TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") Else TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") End If FExt = Mid(Trim(RS("Fname")), InStrRev(Trim(RS("Fname")), ".")) '分离出扩展名 Fname = Replace(Trim(RS("Fname")), FExt, "") '分离出文件名 如 2005/9-10/1254ddd FilePathAndNameTemp = Replace(KS.Setting(3) & KS.C_S(ChannelID,8),"//","/")& KS.C_C(RS("Tid"),2) FilePathAndName = FilePathAndNameTemp & RS("Fname") FilePath = Replace(FilePathAndName, Mid(FilePathAndName, InStrRev(FilePathAndName, "/")), "") Call KS.CreateListFolder(FilePath) F_C = TFileContent If InStr(F_C, "[$GetCorrelativeDownLoad(") <> 0 Then F_C = ReplaceLableFlag(Replace(F_C, "[$GetCorrelativeDownLoad(", "{$GetCorrelativeDownLoad(")) F_C = ReplaceDownLoadContent(ChannelID,RS, F_C) F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),4))) Call FSOSaveFile(F_C, FilePathAndName) End Function '********************************************************************************************************* '函数名:ReplaceDownLoadContent '作 用:替换下载内容页标签为内容 '参 数:RS Recordset数据集,FileContent待替换的内容,DownContent图片内容 '********************************************************************************************************* Function ReplaceDownLoadContent(ChannelID,RS, F_C) Dim TempStr,Domain, DownLoadDir, s,YSDZ, ZCDZ,N On Error Resume Next '容错代码 Domain = KS.GetDomain DownLoadDir=DomainStr & KS.C_S(ChannelID,10)&"/" Domain = Left(Domain, Len(Domain) - 1) If InStr(F_C, "{$GetDownAction}") <> 0 Then TempStr = "【我来评论】【我要收藏】【关闭窗口】" F_C = Replace(F_C, "{$GetDownAction}", TempStr) End If F_C=ReplaceUserDefine(ChannelID,F_C,RS) F_C = Replace(F_C, "{$ChannelID}", ChannelID) F_C = Replace(F_C, "{$InfoID}", RS("ID")) F_C = Replace(F_C, "{$ItemName}", KS.C_S(ChannelID,3)) F_C = Replace(F_C, "{$ItemUnit}", KS.C_S(ChannelID,4)) F_C = Replace(F_C, "{$GetDownID}", RS("DownID")) F_C = Replace(F_C, "{$GetDownKeyWord}", Replace(RS("KeyWords"), "|", ",")) F_C = Replace(F_C, "{$GetKeyTags}",ReplaceKeyTags(ChannelID,RS("Keywords"))) F_C = Replace(F_C, "{$GetDownTitle}", RS("Title") & " " & RS("DownVersion")) F_C = Replace(F_C, "{$GetDownUrl}", KS.GetInfoUrl(ChannelID,RS("Tid"),RS("ID"),RS("Fname"),RS("ReadPoint"),RS("InfoPurview"),0)) F_C = Replace(F_C, "{$GetDownSystem}", RS("DownPT")) F_C = Replace(F_C, "{$GetDownAuthor}", RS("Author")) F_C = Replace(F_C, "{$GetDownSize}", RS("DownSize")) F_C = Replace(F_C, "{$GetDownType}", RS("DownLB")) F_C = Replace(F_C, "{$GetDownLanguage}", RS("DownYY")) F_C = Replace(F_C, "{$GetDownPower}", RS("DownSQ")) F_C = Replace(F_C, "{$GetDownStar}", Replace(RS("Rank"),"★","")) F_C = Replace(F_C, "{$GetDownDecPass}", RS("JYMM")) F_C = Replace(F_C, "{$GetDownIntro}", KS.ReplaceInnerLink(RS("DownContent"))) If Not IsNull(RS("Origin")) And Trim(RS("Origin")) <> "" Then F_C = Replace(F_C, "{$GetDownOrigin}", KS.GetOrigin(RS("Origin"))) Else F_C = Replace(F_C, "{$GetDownOrigin}", "本站原创") End If '下载地址 If InStr(F_C, "{$GetDownAddress}") <> 0 Then Dim UrlArr, I, TotalNum, AUrl, UrlStr UrlArr = Split(RS("DownUrls"), "|||") TotalNum = UBound(UrlArr) For I = 0 To TotalNum N=N+1 AUrl = Split(UrlArr(I), "|") If AUrl(0)=0 Then UrlStr = UrlStr & "" & AUrl(1) & "" & vbCrLf If I<>TotalNum Then UrlStr = UrlStr & "
    " & vbCrLf Else Dim RS_S:Set RS_S=Server.CreateObject("ADODB.RecordSet") RS_S.Open "Select DownloadName,IsDisp,DownloadPath,DownID,SelFont From KS_DownSer Where ParentID=" & AUrl(0),conn,1,1 If RS_S.Eof Then If TotalNum=0 Then UrlStr="
  • 暂不提供下载地址
  • " Else DO While Not RS_S.Eof IF RS_S(1)=1 Then UrlStr = UrlStr & "" & RS_S(0) & "" & vbCrLf Else UrlStr = UrlStr & "" & RS_S(0) & "" & vbCrLf End If RS_S.MoveNext IF Not RS_S.Eof Or I<>TotalNum Then UrlStr = UrlStr & "
    " & vbCrLf Loop End If RS_S.Close:Set RS_S=Nothing End If Next F_C = Replace(F_C, "{$GetDownAddress}", UrlStr) End If YSDZ = RS("YSDZ") ZCDZ = RS("ZCDZ") If InStr(F_C, "{$GetDownLink}") <> 0 Then Dim LinkStr If Not (LCase(YSDZ) = "http://" Or YSDZ = "") Then LinkStr = "作者或开发商主页" End If If Not (LCase(ZCDZ) = "http://" Or ZCDZ = "") Then LinkStr = LinkStr & "  注册地址" End If F_C = Replace(F_C, "{$GetDownLink}", LinkStr) End If If InStr(F_C, "{$GetDownYSDZ}") <> 0 Then If LCase(YSDZ) = "http://" Or YSDZ = "" Then F_C = Replace(F_C, "{$GetDownYSDZ}", "无") Else F_C = Replace(F_C, "{$GetDownYSDZ}", "" & RS("YSDZ") & "") End If End If If InStr(F_C, "{$GetDownZCDZ}") <> 0 Then If LCase(ZCDZ) = "http://" Or ZCDZ = "" Then F_C = Replace(F_C, "{$GetDownZCDZ}", "无") Else F_C = Replace(F_C, "{$GetDownZCDZ}", "" & RS("ZCDZ") & "") End If End If F_C = Replace(F_C, "{$GetDownInput}", "" & rs("downinput") & "" ) '下载缩略图(带参数) If InStr(F_C, "{=GetDownPhoto") <> 0 Then Dim HtmlLabel: HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetDownPhoto") Dim HtmlLabelArr:HtmlLabelArr=Split(HtmlLabel,"@@@") For I=0 To Ubound(HtmlLabelArr) Dim Param: Param = KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetDownPhoto") Dim LogoWidth: LogoWidth = Split(Param, ",")(0) Dim LogoHeight: LogoHeight = Split(Param, ",")(1) Dim PhotoUrl:PhotoUrl=RS("PhotoUrl") If Not (IsNull(PhotoUrl) Or PhotoUrl = "") Then F_C = Replace(F_C,HtmlLabelArr(I), "
    ") Else F_C = Replace(F_C, HtmlLabelArr(I), "
    ") End If Next End If '下载属性 If InStr(F_C, "{$GetDownProperty}") <> 0 Then TempStr = "" If CInt(RS("Recommend")) = 1 Then TempStr = TempStr & ("  ") End If If CInt(RS("Popular")) = 1 Then TempStr = TempStr & ("  ") End If F_C = Replace(F_C, "{$GetDownProperty}", TempStr) End If If InStr(F_C, "{$GetDownHits}") <> 0 Then '总浏览数 F_C = Replace(F_C, "{$GetDownHits}", "") F_C = Replace(F_C, "{$GetDownHitsByDay}", "") F_C = Replace(F_C, "{$GetDownHitsByWeek}", "") F_C = Replace(F_C, "{$GetDownHitsByMonth}", "") ElseIf InStr(F_C, "{$GetDownHitsByDay}") <> 0 Then '本日浏览数 F_C = Replace(F_C, "{$GetDownHits}", "") F_C = Replace(F_C, "{$GetDownHitsByDay}", "") F_C = Replace(F_C, "{$GetDownHitsByWeek}", "") F_C = Replace(F_C, "{$GetDownHitsByMonth}", "") ElseIf InStr(F_C, "{$GetDownHitsByWeek}") <> 0 Then '本周浏览数 F_C = Replace(F_C, "{$GetDownHits}", "") F_C = Replace(F_C, "{$GetDownHitsByDay}", "") F_C = Replace(F_C, "{$GetDownHitsByWeek}", "") F_C = Replace(F_C, "{$GetDownHitsByMonth}", "") ElseIf InStr(F_C, "{$GetDownHitsByMonth}") <> 0 Then '本月浏览数 F_C = Replace(F_C, "{$GetDownHits}", "") F_C = Replace(F_C, "{$GetDownHitsByDay}", "") F_C = Replace(F_C, "{$GetDownHitsByWeek}", "") F_C = Replace(F_C, "{$GetDownHitsByMonth}", "") End If If InStr(F_C, "{$GetDownDate}") <> 0 Then F_C = Replace(F_C, "{$GetDownDate}", KS.DateFormat(RS("AddDate"), 6)) End If '当允许评论时,则显示评论 If InStr(F_C, "{$GetShowComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C,"{$GetShowComment}","
    ") Else F_C = Replace(F_C, "{$GetShowComment}", "") End If If InStr(F_C, "{$GetWriteComment}") <> 0 And RS("Comment") = 1 Then F_C = Replace(F_C, "{$GetWriteComment}", "") Else F_C = Replace(F_C, "{$GetWriteComment}", "") End If If InStr(F_C, "{$GetPrevDown}") <> 0 Then F_C = Replace(F_C, "{$GetPrevDown}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), "<")) End If If InStr(F_C, "{$GetNextDown}") <> 0 Then F_C = Replace(F_C, "{$GetNextDown}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), ">")) End If ReplaceDownLoadContent = F_C End Function '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ '函数名:RefreshProductContent '作 用:刷新商品页页面 '参 数:RS Recordset数据集 '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Function RefreshProductContent(RS,ChannelID) Dim TFileContent, F_C, FilePath, FilePathAndName, FilePathAndNameTemp,TempFileContent,Flag Application(KS.SiteSN & "RefreshType") = "ProductContent" Application(KS.SiteSN & "RefreshFolderID") = RS("Tid") Application(KS.SiteSN & "RefreshInfoID") = RS("ID") Application(KS.SiteSN & "ChannelID")=ChannelID TempFileContent = LoadTemplate(RS("TemplateID")) TempFileContent = ReplaceAllLabel(TempFileContent) If (RS("TemplateID") <> Application(KS.SiteSN & "RefreshTemplateID")) Or (Trim(RS("Tid")) <> Trim(Application("RefreshCurrTid"))) Or Application(KS.SiteSN & "RefreshTempFileContent") = "" Then Application("RefreshCurrTid") = RS("Tid") Application(KS.SiteSN & "RefreshTemplateID") = RS("TemplateId") Application(KS.SiteSN & "RefreshTempFileContent") = ReplaceLableFlag(ReplaceGeneralLabelContent(TempFileContent)) '替换函数标签 TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") Else TFileContent = Application(KS.SiteSN & "RefreshTempFileContent") End If FilePathAndNameTemp = Replace(KS.Setting(3) & KS.C_S(ChannelID,8),"//","/")& KS.C_C(RS("Tid"),2) FilePathAndName = FilePathAndNameTemp & RS("Fname") FilePath = Replace(FilePathAndName, Mid(FilePathAndName, InStrRev(FilePathAndName, "/")), "") Call KS.CreateListFolder(FilePath) F_C = TFileContent F_C = ReplaceProductContent(ChannelID,RS, F_C) F_C = ReplaceRA(F_C, Trim(KS.C_C(RS("Tid"),4))) Call FSOSaveFile(F_C, FilePathAndName) End Function '********************************************************************************************************* '函数名:ReplaceProductContent '作 用:替换内容页标签为内容 '参 数:RS Recordset数据集,FileContent待替换的内容 '********************************************************************************************************* Function ReplaceProductContent(ChannelID,RS, F_C) Dim TempStr, ShopDir,N On Error Resume Next ShopDir = DomainStr & KS.C_S(ChannelID,10) & "/" F_C = Replace(F_C, "{$GetProductIntro}", KS.ReplaceInnerLink(RS("ProIntro"))) F_C = Replace(F_C, "{$ChannelID}", ChannelID) F_C = Replace(F_C, "{$InfoID}", RS("ID")) F_C = Replace(F_C, "{$ItemName}", KS.C_S(ChannelID,3)) F_C = Replace(F_C, "{$ItemUnit}", KS.C_S(ChannelID,4)) F_C = Replace(F_C, "{$GetProductID}", RS("ProID")) F_C = Replace(F_C, "{$GetProductName}", RS("Title")) F_C = Replace(F_C, "{$GetProductUrl}", KS.GetInfoUrl(ChannelID,RS("Tid"),RS("ID"),RS("Fname"),0,0,0)) F_C = Replace(F_C, "{$GetProductModel}", RS("ProModel")) F_C = Replace(F_C, "{$GetProductSpecificat}", RS("ProSpecificat")) F_C = Replace(F_C, "{$GetProducerName}", RS("ProducerName")) F_C = Replace(F_C, "{$GetTrademarkName}", RS("TrademarkName")) F_C = Replace(F_C, "{$GetServiceTerm}", RS("ServiceTerm")) F_C = Replace(F_C, "{$GetProductType}", GetProductType(RS("ProductType"))) F_C = Replace(F_C, "{$GetRank}",Replace(RS("Rank"),"★","")) F_C = Replace(F_C, "{$GetTotalNum}",RS("TotalNum")) F_C = Replace(F_C, "{$GetProductUnit}", RS("Unit")) F_C = Replace(F_C, "{$GetProductHits}", "") F_C = Replace(F_C, "{$GetProductDate}", KS.DateFormat(RS("AddDate"), 6)) F_C = Replace(F_C, "{$GetPrice_Market}", RS("Price_Market")) F_C = Replace(F_C, "{$GetPrice}", RS("Price")) F_C = Replace(F_C, "{$GetPrice_Member}", RS("Price_Member")) F_C = Replace(F_C, "{$GetPrice_Original}", RS("Price_Original")) If RS("ProductType")=3 Then F_C = Replace(F_C, "{$GetDiscount}", RS("Discount")) Else F_C = Replace(F_C, "{$GetDiscount}", "") End If F_C = Replace(F_C, "{$GetScore}", RS("Point")) F_C = Replace(F_C, "{$GetAddCar}", "") F_C = Replace(F_C, "{$GetAddFav}", "") F_C = Replace(F_C, "{$GetProductKeyWord}", Replace(RS("KeyWords"), "|", ",")) F_C = Replace(F_C, "{$GetKeyTags}",ReplaceKeyTags(ChannelID,RS("Keywords"))) F_C = Replace(F_C, "{$GetProductPhotoURL}",RS("BigPhoto")) F_C=ReplaceUserDefine(ChannelID,F_C,RS) If InStr(F_C, "{=GetProductPhoto") <> 0 Then Dim I,HtmlLabel: HtmlLabel = KSLabel.GetFunctionLabel(F_C, "{=GetProductPhoto") Dim HtmlLabelArr:HtmlLabelArr=Split(HtmlLabel,"@@@") Dim PhotoUrl:PhotoUrl=RS("BigPhoto") For I=0 To Ubound(HtmlLabelArr) Dim Param: Param = KSLabel.GetFunctionLabelParam(HtmlLabelArr(I), "{=GetProductPhoto") Dim LogoWidth: LogoWidth = Split(Param, ",")(0) Dim LogoHeight: LogoHeight = Split(Param, ",")(1) If Not (IsNull(PhotoUrl) Or PhotoUrl = "") Then Dim TempBigPhoto:TempBigPhoto=PhotoUrl If lcase(left(TempBigPhoto,4))<>"http" Then if left(TempBigPhoto,1)="/" then TempBigPhoto=right(TempBigPhoto,len(TempBigPhoto)-1) TempBigPhoto=DomainStr & TempBigPhoto end if F_C = Replace(F_C,HtmlLabelArr(I), "
    ") Else F_C = Replace(F_C, HtmlLabelArr(I), "
    ") End If Next End If '商品属性 If InStr(F_C, "{$GetProductProperty}") <> 0 Then TempStr = "" If CInt(RS("Recommend")) = 1 Then TempStr = TempStr & ("  ") If CInt(RS("Popular")) = 1 Then TempStr = TempStr & ("  ") If CInt(RS("IsSpecial")) = 1 Then TempStr = TempStr & ("  ") F_C = Replace(F_C, "{$GetProductProperty}", TempStr) End If '当允许评论时,则显示评论 If InStr(F_C, "{$GetShowComment}") <> 0 And RS("Comment")=1 Then F_C = Replace(F_C,"{$GetShowComment}","
    ") Else F_C = Replace(F_C, "{$GetShowComment}", "") End If If InStr(F_C, "{$GetWriteComment}") <> 0 And RS("Comment")=1 Then F_C = Replace(F_C, "{$GetWriteComment}", "") Else F_C = Replace(F_C, "{$GetWriteComment}", "") End If If InStr(F_C, "{$GetPrevProduct}") <> 0 Then F_C = Replace(F_C, "{$GetPrevProduct}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), "<")) End If If InStr(F_C, "{$GetNextProduct}") <> 0 Then F_C = Replace(F_C, "{$GetNextProduct}", ReplacePrevNext(ChannelID,RS("Id"), RS("tid"), ">")) End If ReplaceProductContent = F_C End Function Function GetProductType(TypeID) Select Case TypeID Case 1:GetProductType="正常销售" Case 2:GetProductType="涨价销售" Case 3:GetProductType="降价销售" End Select End Function '************************************************** '函数名:Published '作 用:取得发布时间及版权信息 '参 数:无 '************************************************** Function Published() On Error Resume Next Published=vbcrlf &"" & vbcrlf If SysVer = 0 Then Published = Published & "" & vbCrLf Else Dim PublishInfo:PublishInfo = KS.Setting(15) If PublishInfo <> "0" Then Published = Published & "" & vbCrLf End If End If End Function '================================================= '函数名:GetVote '作 用:显示网站调查 '参 数:无 '================================================= Function GetVote(VoteID) dim sqlVote,rsVote,i Dim Domain:Domain = KS.GetDomain sqlVote="select * from KS_Vote where ID=" & VoteID & " Order By NewestTF Desc" Set rsVote= conn.execute(sqlvote) if rsVote.bof and rsVote.eof then GetVote= " 没有任何调查" else GetVote=GetVote & "
    " & vbcrlf GetVote=GetVote & "
    " &vbcrlf GetVote=GetVote & "    "& rsVote("Title") &"
    "&vbcrlf if rsVote("VoteType")="Single" then for i=1 to 8 if trim(rsVote("Select"& i) &"")="" then exit for GetVote=GetVote & "" & rsVote("Select" & i) &"
    "&vbcrlf next else for i=1 to 8 if trim(rsVote("Select"& i) &"")="" then exit for GetVote=GetVote & "     "& rsVote("Select" & i) &"
    "&vbcrlf next end if GetVote=GetVote & "
    "&vbcrlf GetVote=GetVote & ""&vbcrlf GetVote=GetVote & ""&vbcrlf GetVote=GetVote & "
    "&vbcrlf GetVote=GetVote & " "&vbcrlf GetVote=GetVote & ""&vbcrlf GetVote=GetVote & "
    "&vbcrlf GetVote=GetVote & "
    "&vbcrlf end if rsVote.close:set rsVote=nothing End Function '显示会员排行 Function GetTopUser(Num,MoreStr) Dim Sql,I Dim RSObj:Set RSObj=Conn.execute("Select Top " & Num &" UserID,UserName,LoginTimes From KS_User Order BY LoginTimes Desc,UserID Desc") SQL = RSObj.GetRows(-1) RSObj.Close : Set RSObj = Nothing GetTopUser="" & vbcrlf GetTopUser=GetTopUser & "" & vbnewline For i = 0 to UBound(SQL,2) GetTopUser = GetTopUser & "" & vbnewline Next GetTopUser=GetTopUser & "" & vbnewline GetTopUser=GetTopUser & "
    名次用户名登录数
    " & i+1 & "" & SQL(1,i) & "" & SQL(2,I) & "
    " & MoreStr & "
    " & vbnewline End Function '替换频道专用标签 Function ReplaceChannelLabel(F_C) on error resume next If Application(KS.SiteSN & "RefreshFolderID")=0 Or Application(KS.SiteSN & "RefreshFolderID")="" Then ReplaceChannelLabel=F_C:Exit Function Dim I,ClassBasicInfoArr,ClassDefineContentArr F_C=Replace(F_C,"{$GetClassID}",Application(KS.SiteSN & "RefreshFolderID")) F_C=Replace(F_C,"{$GetClassName}",KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),1)) F_C=Replace(F_C,"{$GetClassUrl}",KS.GetFolderPath(Application(KS.SiteSN & "RefreshFolderID"))) ClassBasicInfoArr = Split(KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),6),"||||") ClassDefineContentArr= Split(KS.C_C(Application(KS.SiteSN & "RefreshFolderID"),7),"||||") If IsArray(ClassBasicInfoArr) Then F_C=Replace(F_C,"{$GetClassPic}","") F_C=Replace(F_C,"{$GetClassIntro}",ClassBasicInfoArr(1)) F_C=Replace(F_C,"{$GetClass_Meta_KeyWord}",ClassBasicInfoArr(2)) F_C=Replace(F_C,"{$GetClass_Meta_Description}",ClassBasicInfoArr(3)) Else F_C=Replace(F_C,"{$GetClassPic}","") F_C=Replace(F_C,"{$GetClassIntro}","") F_C=Replace(F_C,"{$GetClass_Meta_KeyWord}","") F_C=Replace(F_C,"{$GetClass_Meta_Description}","") End If If IsArray(ClassDefineContentArr) Then For I=1 To Ubound(ClassDefineContentArr)+1 F_C=Replace(F_C,"{$GetClassDefineContent" & I & "}",ClassDefineContentArr(I-1)) Next For I=Ubound(ClassDefineContentArr)+2 To 20 F_C=Replace(F_C,"{$GetClassDefineContent" & I & "}","") Next Else For I=1 To 20 F_C=Replace(F_C,"{$GetClassDefineContent" & I & "}","") Next End If ReplaceChannelLabel=F_C End Function Function FormatImg(content) dim re Set re=new RegExp re.IgnoreCase =true re.Global=True re.Pattern="(script)" Content=re.Replace(Content,"script") re.Pattern="]*src(=| )(.[^>]*)>" Content=re.replace(Content,"") set re = nothing FormatImg = content end function '====================================================替换通用JS============================================= Function ReplaceCommonJS(Content) Content=Replace(Content,"{$JS_Time1}","") Content=Replace(Content,"{$JS_Time2}","") Content=Replace(Content,"{$JS_Time3}","") Content=Replace(Content,"{$JS_Time4}","
    ") Content=Replace(Content,"{$JS_Language}","") Content=Replace(Content,"{$JS_Collection}","加入收藏") Content=Replace(Content,"{$JS_HomePage}","设为首页") Content=Replace(Content,"{$JS_ContactWebMaster}","联系站长") Content=Replace(Content,"{$JS_NoSave}","") Content=Replace(Content,"{$JS_GoBack}","返回上一页") Content=Replace(Content,"{$JS_WindowClose}","关闭窗口") Content=Replace(Content,"{$JS_NoIframe}","") Content=Replace(Content,"{$JS_NoCopy}","") Content=Replace(Content,"{$JS_DCRoll}","") Dim HtmlLabel,Param '替换对联广告(带参数) If InStr(Content, "{=JS_Ad") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(Content, "{=JS_Ad") Param = KSLabel.GetFunctionLabelParam(HtmlLabel, "{=JS_Ad") Content = Replace(Content, HtmlLabel,"") End If '替换状态栏目打字效果(带参数) If InStr(Content, "{=JS_Status1") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(Content, "{=JS_Status1") Param = KSLabel.GetFunctionLabelParam(HtmlLabel, "{=JS_Status1") Content = Replace(Content, HtmlLabel,"") End If '替换文字在状态栏上从右往左循环显示(带参数) If InStr(Content, "{=JS_Status2") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(Content, "{=JS_Status2") Param = KSLabel.GetFunctionLabelParam(HtmlLabel, "{=JS_Status2") Content = Replace(Content, HtmlLabel,"") End If '替换文字在状态栏上打字之后移动消失(带参数) If InStr(Content, "{=JS_Status3") <> 0 Then HtmlLabel = KSLabel.GetFunctionLabel(Content, "{=JS_Status3") Param = KSLabel.GetFunctionLabelParam(HtmlLabel, "{=JS_Status3") Content = Replace(Content, HtmlLabel,"") End If ReplaceCommonJS=Content End Function '====================================================替换通用JS结束============================================= End Class %> <% Dim KSCls Set KSCls = New SiteIndex KSCls.Kesion() Set KSCls = Nothing Class SiteIndex Private KS, KSR,Maps Private Sub Class_Initialize() If (Not Response.IsClientConnected)Then Response.Clear Response.End End If Set KS=New PublicCls Set KSR = New Refresh End Sub Private Sub Class_Terminate() Call CloseConn() Set KS=Nothing End Sub Public Sub Kesion() Dim FileContent Dim MapTemplatePath:MapTemplatePath=KS.Setting(3) & KS.Setting(90) & "map.html" '模板地址 FileContent = KSR.LoadTemplate(MapTemplatePath) Application(KS.SiteSN & "RefreshType") = "map" '设置刷新类型,以便取得当前位置导航等 Application(KS.SiteSN & "RefreshFolderID") = "0" '设置当前刷新目录ID 为"0" 以取得通用标签 FileContent=KSR.KSLabelReplaceAll(FileContent) Call MapList() FileContent=Replace(FileContent,"{$ShowMap}",Maps) response.write FileContent End Sub Sub MapList() IF Application(KS.SiteSN & "MapTree")="" Then Dim RS,TreeStr,ID Set RS=Server.CreateObject("ADODB.Recordset") RS.Open ("select ID,FolderName from KS_Class A,KS_Channel B Where A.ChannelID=B.ChannelID And B.ChannelStatus=1 And tj=1 Order BY A.ChannelID, FolderOrder ASC"), Conn, 1, 1 Do While Not RS.EOF ID = Trim(RS(0)) TreeStr = TreeStr & "
  • " & KS.GetClassNP(rs(0))& "

  • " TreeStr = TreeStr & ReturnSubList(ID) RS.MoveNext Loop RS.Close:Set RS = Nothing Application(KS.SiteSN & "MapTree")=TreeStr End If Maps=Application(KS.SiteSN & "MapTree") End Sub Public Function ReturnSubList(ParentID) Dim SubTypeList, SubRS, SpaceStr, k, Total,ID,TJ Set SubRS = conn.execute("Select ID,FolderName,TJ from KS_Class Where TN='" & ParentID & "' Order BY FolderOrder ASC") Do While Not SubRS.EOF SpaceStr = "" TJ = CInt(SubRS(2)) For k = 1 To TJ - 1 SpaceStr = SpaceStr & "     " Next ID = Trim(SubRS(0)) SubTypeList = SubTypeList & SpaceStr & "·" & KS.GetClassNP(SubRS(0)) & "
    " SubTypeList = SubTypeList & ReturnSubList(ID) SubRS.MoveNext Loop SubRS.Close:Set SubRS = Nothing ReturnSubList = SubTypeList End Function End Class %>