📄 cls_main.asp
字号:
System_Setting = Split(System_Node.getAttribute("s_setting"),",")
System_UpSetting = Split(System_Setting(12),"|")
'Response.Write SystemDoc.documentElement.xml
End Sub
Public Sub SaveSystemCache()
Page_File = Server.MapPath(Cache_Path &"System.config")
SystemDoc.save Page_File
End Sub
'系统
'S_LastPostTime,S_TopicNum,S_PhotoNum,S_FavNum,S_UserNum,S_TodayNum,S_PostNum
Public Sub Update_System(UserNum,TodayNum,FavNum,PhotoNum,TopicNum,PostNum,LastTime)
If Not IsNull(LastTime) and IsDate(LastTime) Then
System_Node.attributes.getNamedItem("s_lastposttime").text = LastTime
End If
System_Node.attributes.getNamedItem("s_topicnum").text = System_Node.attributes.getNamedItem("s_topicnum").text + TopicNum
System_Node.attributes.getNamedItem("s_photonum").text = System_Node.attributes.getNamedItem("s_photonum").text + PhotoNum
System_Node.attributes.getNamedItem("s_favnum").text = System_Node.attributes.getNamedItem("s_favnum").text + FavNum
System_Node.attributes.getNamedItem("s_usernum").text = System_Node.attributes.getNamedItem("s_usernum").text + UserNum
System_Node.attributes.getNamedItem("s_todaynum").text = System_Node.attributes.getNamedItem("s_todaynum").text + TodayNum
System_Node.attributes.getNamedItem("s_postnum").text = System_Node.attributes.getNamedItem("s_postnum").text + PostNum
'SaveSystemCache()
End Sub
'系统分类
'sCatID,uCatNum,TopicNum,PostNum,TodayNum,LastUpTime
Public Sub Update_SysCat(sCatID,UserNum,TodayNum,TopicNum,PostNum,LastTime)
Dim UpCatID,i,Nodes
UpCatID = Split(sCatID,",")
For i = 0 To Ubound(UpCatID)
Set Nodes = SystemDoc.documentElement.selectSingleNode("//rs:data/z:row[@scatid = '"&UpCatID(i)&"']")
If Not (Nodes is nothing) Then
If Not IsNull(LastTime) and IsDate(LastTime) Then
Nodes.attributes.getNamedItem("lastuptime").text = LastTime
End If
Nodes.attributes.getNamedItem("ucatnum").text = Nodes.attributes.getNamedItem("ucatnum").text + UserNum
Nodes.attributes.getNamedItem("topicnum").text = Nodes.attributes.getNamedItem("topicnum").text + TopicNum
Nodes.attributes.getNamedItem("postnum").text = Nodes.attributes.getNamedItem("postnum").text + PostNum
Nodes.attributes.getNamedItem("todaynum").text = Nodes.attributes.getNamedItem("todaynum").text + TodayNum
End If
Next
'SaveSystemCache()
End Sub
Private Sub ReLoadBoke_System()
Dim Nodes,NodeList
Set Nodes = SystemDoc.documentElement.selectSingleNode("/bokesystem/system")
If Nodes is Nothing Then
Set Nodes = SystemDoc.createNode(1,"system","")
SystemDoc.documentElement.appendChild(Nodes)
Else
If Nodes.hasChildNodes Then
Nodes.removeChild Nodes.selectSingleNode("rs:data")
End If
End If
Dim Rs,TempXmlDoc,TempNodes
Set TempXmlDoc = Server.CreateObject("Msxml2.FreeThreadedDOMDocument")
Set Rs = Execute(Lcase("Select Top 1 B.S_Name,S_Note,S_LastPostTime,S_TopicNum,S_PhotoNum,S_FavNum,S_UserNum,S_TodayNum,S_PostNum,S_Setting,S_Url,S_sDomain,SkinID,S.S_SkinName,S.S_Path,S.S_ViewPic,S.S_Info,S.S_Builder From Dv_Boke_System B Inner Join [Dv_Boke_Skins] S On S.S_ID = B.SkinID"))
Rs.Save TempXmlDoc,1
TempXmlDoc.documentElement.RemoveChild(TempXmlDoc.documentElement.selectSingleNode("s:Schema"))
Set TempNodes = TempXmlDoc.documentElement.selectSingleNode("rs:data/z:row")
TempNodes.attributes.getNamedItem("s_lastposttime").text = Rs("S_LastPostTime")
If (DateDiff("d",Rs("S_LastPostTime"),now())<>0 and TempNodes.getAttribute("s_todaynum")>0) or TempNodes.getAttribute("s_todaynum")<0 Then
TempNodes.attributes.getNamedItem("s_todaynum").text = 0
Execute("Update [Dv_Boke_System] set S_TodayNum=0")
End If
Set TempNodes=TempXmlDoc.documentElement.selectSingleNode("rs:data")
Nodes.appendChild(TempNodes)
Rs.Close
Set Rs = Nothing
End Sub
'SysCat,SysChatCat
Private Sub ReLoadBoke_SysCat()
Dim Nodes,TempNodes,NodeList,TempXmlDoc
Dim Rs
Set TempXmlDoc = Server.CreateObject("Msxml2.FreeThreadedDOMDocument")
'SysCat
Set Nodes = SystemDoc.documentElement.selectSingleNode("/bokesystem/syscat")
If Nodes is Nothing Then
Set Nodes = SystemDoc.createNode(1,"syscat","")
SystemDoc.documentElement.appendChild(Nodes)
Else
If Nodes.hasChildNodes Then
Nodes.removeChild Nodes.selectSingleNode("rs:data")
End If
End If
Set Rs = Execute(Lcase("Select sCatID,sCatTitle,sCatNote,uCatNum,TopicNum,PostNum,TodayNum,sType,LastUpTime From Dv_Boke_SysCat where sType = 0"))
If Not Rs.Eof Then
Rs.Save TempXmlDoc,1
TempXmlDoc.documentElement.RemoveChild(TempXmlDoc.documentElement.selectSingleNode("s:Schema"))
Set TempNodes = TempXmlDoc.documentElement.selectNodes("rs:data/z:row")
For Each NodeList in TempNodes
NodeList.attributes.getNamedItem("lastuptime").text = Rs("LastUpTime")
If (DateDiff("d",Rs("LastUpTime"),now())<>0 and NodeList.getAttribute("TodayNum")>0) or NodeList.getAttribute("TodayNum")<0 Then
NodeList.attributes.getNamedItem("todaynum").text = 0
Execute("Update [Dv_Boke_SysCat] set todaynum=0 where sCatID="&Rs(0))
End If
Rs.MoveNext
Next
Set TempNodes=TempXmlDoc.documentElement.selectSingleNode("rs:data")
Nodes.appendChild(TempNodes)
End If
'SysChatCat
Set Nodes = SystemDoc.documentElement.selectSingleNode("/bokesystem/syschatcat")
If Nodes is Nothing Then
Set Nodes = SystemDoc.createNode(1,"syschatcat","")
SystemDoc.documentElement.appendChild(Nodes)
Else
If Nodes.hasChildNodes Then
Nodes.removeChild Nodes.selectSingleNode("rs:data")
End If
End If
Set Rs = Execute(Lcase("Select sCatID,sCatTitle,sCatNote,uCatNum,TopicNum,PostNum,TodayNum,sType,LastUpTime From Dv_Boke_SysCat where sType = 1"))
If Not Rs.Eof Then
Rs.Save TempXmlDoc,1
TempXmlDoc.documentElement.RemoveChild(TempXmlDoc.documentElement.selectSingleNode("s:Schema"))
Set TempNodes =TempXmlDoc.documentElement.selectNodes("rs:data/z:row")
For Each NodeList in TempNodes
NodeList.attributes.getNamedItem("lastuptime").text = Rs("LastUpTime")
If (DateDiff("d",Rs("LastUpTime"),now())<>0 and NodeList.getAttribute("TodayNum"))>0 or NodeList.getAttribute("TodayNum")<0 Then
NodeList.attributes.getNamedItem("todaynum").text = 0
Execute("Update [Dv_Boke_SysCat] set todaynum=0 where sCatID="&Rs(0))
End If
Rs.MoveNext
Next
Set TempNodes=TempXmlDoc.documentElement.selectSingleNode("rs:data")
Nodes.appendChild(TempNodes)
End If
Rs.Close
Set Rs = Nothing
Set TempXmlDoc = Nothing
End Sub
'应用过程
'页面加载
Public Sub LoadPage(ByVal StyleFile)
Dim XslDoc
Page_File = Server.MapPath(Skins_Path & "xml/" & StyleFile)
Set XslDoc=Server.CreateObject("Msxml2.FreeThreadedDOMDocument")
If Not XslDoc.Load(Page_File) Then
Response.Write "模板不存在"
Response.End
Exit Sub
Else
Set Page_Strings = XslDoc.DocumentElement.selectNodes("xsl:variable")
End If
Set XslDoc = Nothing
End Sub
Public Sub Head(isSystem)
Page_File = Server.MapPath(Skins_Path & "xml/main.xslt")
If Is_Isapi_Rewrite = 0 Then
ModHtmlLinked = "boke.asp?"
mArchiveLink = "bokeindex.asp?"
bokeurl_r = "bokerss.asp?"
End If
Dim XslDoc
Set XslDoc=Server.CreateObject("Msxml2.FreeThreadedDOMDocument")
If Not XslDoc.Load(Page_File) Then
Response.Write "主模板不存在!"
Exit Sub
Else
Set Main_Strings = XslDoc.DocumentElement.selectNodes("xsl:variable")
End If
Set XslDoc = Nothing
Dim Html
Html = Main_Strings(0).text
If isSystem = 1 Then
Html = Replace(Html,"{$boketitle}",System_Node.getAttribute("s_name"))
Html = Replace(Html,"{$bokechildtitle}",System_Setting(17))
Html = Replace(Html,"{$bokename}","")
Html = Replace(Html,"{$BokeUrl}",System_Node.getAttribute("s_url"))
Else
Html = Replace(Html,"{$boketitle}",BokeNode.getAttribute("boketitle")&"")
Html = Replace(Html,"{$bokechildtitle}",BokeNode.getAttribute("bokechildtitle")&"")
Html = Replace(Html,"{$bokename}",BokeNode.getAttribute("bokename")&"--")
Html = Replace(Html,"{$BokeUrl}",System_Node.getAttribute("s_url")&ModHtmlLinked&BokeNode.getAttribute("bokename")&".html")
End If
Html = Replace(Html,"{$stats}",Stats)
Html = Replace(Html,"{$copyright}","")
Html = Replace(Html,"{$skinpath}",Skins_Path)
If BokeUserID > 0 Then
Html = Replace(Html,"{$rssurl}",Dvbbs.Get_ScriptNameUrl & bokeurl_r & BokeName & ".rss.xml")
Else
Html = Replace(Html,"{$rssurl}","")
End If
Response.Write Html
End Sub
Public Sub Nav(isSystem)
Top(isSystem)
Dim Html
If isSystem = 1 Then
Html = Main_Strings(33).text
Else
Html = Main_Strings(3).text
Html = Replace(Html,"{$TopicNum}",BokeNode.getAttribute("topicnum")&"")
Html = Replace(Html,"{$FavNum}",BokeNode.getAttribute("favnum")&"")
Html = Replace(Html,"{$TodayNum}",BokeNode.getAttribute("todaynum")&"")
Html = Replace(Html,"{$LastUpTime}",FormatDateTime(CDate(BokeNode.getAttribute("lastuptime")),1))
If BokeSetting(14)="1" Then
If BokeSetting(15)<>"1" And BokeSetting(15)<>"" Then
Main_Strings(30).text = Replace(Main_Strings(30).text,"{$PaytoStr}",BokeSetting(15))
Html = Replace(Html,"{$BokePayto}",Main_Strings(30).text)
Else
Main_Strings(30).text = Replace(Main_Strings(30).text,"{$PaytoStr}",Main_Strings(31).text)
Html = Replace(Html,"{$BokePayto}",Main_Strings(30).text)
End If
Else
Html = Replace(Html,"{$BokePayto}","")
End If
If IsMaster Then
If BokeNode.getAttribute("stats")="0" Then
Html = Replace(Html,"{$Open}",Main_Strings(36).text)
Else
Html = Replace(Html,"{$Open}",Main_Strings(37).text)
End If
Else
Html = Replace(Html,"{$Open}","")
End If
End If
If IsBokeOwner Then
If isSystem = 1 Then
Html = Replace(Html,"{$BokeOwnerNav}",Main_Strings(34).text)
Else
Html = Replace(Html,"{$BokeOwnerNav}",Main_Strings(27).text)
End If
Else
Html = Replace(Html,"{$BokeOwnerNav}",Main_Strings(28).text)
End If
Html = Replace(Html,"{$bokeurl}",ModHtmlLinked)
Html = Replace(Html,"{$ibokeurl}",mArchiveLink)
Html = Replace(Html,"{$bokename}",BokeName)
Html = Replace(Html,"{$skinpath}",Skins_Path)
Response.Write Html
If isSystem = 0 Then BokeChannel()
End Sub
Public Sub Top(isSystem)
Head(isSystem)
Dim Html
Html = Main_Strings(2).text
If isSystem = 1 Then
Html = Replace(Html,"{$boketitle}",System_Node.getAttribute("s_name"))
Html = Replace(Html,"{$bokechildtitle}",System_Setting(17))
Html = Replace(Html,"{$SiteUrl}","")
Else
If System_Node.getAttribute("s_sdomain") = "" Then
Html = Replace(Html,"{$SiteUrl}","")
Else
Dim sDomain,i,sDomainList
sDomain = Split(System_Node.getAttribute("s_sdomain")&"","|")
For i = 0 To Ubound(sDomain)
If sDomainList = "" Then
sDomainList = "<a href=""http://"&BokeName&"."&sDomain(i)&"/"">"&BokeName&"."&sDomain(i)&"</a>"
Else
sDomainList = sDomainList & " , <a href=""http://"&BokeName&"."&sDomain(i)&"/"">"&BokeName&"."&sDomain(i)&"</a>"
End if
Next
Html = Replace(Html,"{$SiteUrl}",Replace(Main_Strings(35).text,"{$SiteUrl}",sDomainList))
End If
Html = Replace(Html,"{$boketitle}",BokeNode.getAttribute("boketitle")&"")
Html = Replace(Html,"{$bokechildtitle}",BokeNode.getAttribute("bokechildtitle")&"")
End If
Response.Write Html
End Sub
Public Sub BokeChannel()
Dim TempList,Temp
Dim Html,Node,i,NodeList
If Is_Isapi_Rewrite = 0 Then ModHtmlLinked = "boke.asp?"
For i = 0 To 4
Set NodeList = BokeCat.documentElement.selectNodes("rs:data/z:row[@utype='"&i&"']")
If NodeList.length>0 Then
Temp = ""
Html = Main_Strings(16).text
For Each Node in NodeList
TempList = Main_Strings(17).text
TempList = Replace(TempList,"{$channelname}",Node.getAttribute("ucattitle"))
TempList = Replace(TempList,"{$cat_id}",Node.getAttribute("ucatid"))
Temp = Temp & TempList
Next
Html = Replace(Html,"{$channellist}",Temp)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -