求解析asp代码!!
以下的代码我越看越头大,求侠客帮解析下:
'过程名:LoadTemplates
'作 用:载入模板
'参 数:Page_Mark ----StyleID
'=============================================================
Public Sub LoadTemplates(ChannelID, pageid, StyleID)
Dim rstmp, TempSkinID
On Error Resume Next
ChannelID = CLng(ChannelID)
ThisChannelID = ChannelID
pageid = CInt(pageid)
Name = "DefaultSkinID"
If ObjIsEmpty() Then
Set rstmp = Execute("SELECT skinid FROM [NC_Template] WHERE pageid=0 And isDefault=1")
Value = rstmp(0)
Set rstmp = Nothing
End If
TempSkinID = Value
If StyleID = 0 Or StyleID = "" Then
skinid = TempSkinID
Else
Set rstmp = Execute("SELECT skinid FROM [NC_Template] WHERE pageid=0 And skinid=" & StyleID)
If Not rstmp.EOF Then
skinid = rstmp(0)
Else
skinid = TempSkinID
End If
Set rstmp = Nothing
End If
skinid = CLng(skinid)
Name = "MainStyle" & skinid
If ObjIsEmpty() Then TemplatesMainCache (skinid)
Main_Style = Value
SkinPath = Main_Style(0, 0)
Main_Setting = Split(Main_Style(2, 0), "|||")
MainStyle = Main_Style(1, 0)
'MainStyle = Replace(MainStyle, "{$InstallDir}", ReadInstallDir(BindDomain))
MainStyle = Replace(MainStyle, "{$SkinPath}", SkinPath)
MainStyle = Replace(MainStyle, "|||","")
If pageid <> 0 Then
Name = "Templates" & ChannelID & skinid & pageid
If ObjIsEmpty() Then
TemplatesToCache ChannelID, pageid
End If
ByValue = Value
End If
End Sub
Private Sub TemplatesToCache(ChannelID, pageid)
On Error Resume Next
Dim Rs, SQL, rstmp
SQL = "SELECT skinid,page_content,page_setting FROM [NC_Template] WHERE ChannelID=" & ChannelID & " And skinid=" & skinid & " And pageid=" & pageid
Set Rs = Execute(SQL)
If Not Rs.EOF Then
Value = Rs.GetRows(1)
Else
Set rstmp = Execute("SELECT skinid,page_content,page_setting FROM [NC_Template] WHERE ChannelID=" & ChannelID & " And isDefault=1 And pageid=" & pageid)
Value = rstmp.GetRows(1)
Set rstmp = Nothing
End If
Set Rs = Nothing
End Sub
Private Sub TemplatesMainCache(skinid)
On Error Resume Next
Dim Rs, SQL, rstmp
SQL = "SELECT TemplateDir,page_content,page_setting FROM [NC_Template] WHERE pageid=0 And skinid=" & skinid & " And ChannelID=0"
Set Rs = Execute(SQL)
If Not Rs.EOF Then
Value = Rs.GetRows(1)
Else
Set rstmp = Execute("SELECT TemplateDir,page_content,page_setting FROM [NC_Template] WHERE pageid=0 And isDefault=1 And ChannelID=0")
Value = rstmp.GetRows(1)
Set rstmp = Nothing
End If
Set Rs = Nothing
End Sub
Public Property Let ByValue(ByVal vNewValue)
Dim tmpstr
tmpstr = vNewValue
Html_Setting = tmpstr(2, 0)
Html_Setting = Split(Html_Setting, "|||")
HtmlContent = tmpstr(1, 0)
HtmlContent = TemplateCustom(HtmlContent)
HtmlContent = Replace(HtmlContent, "<head>", "<head>" & vbNewLine & CopyrightStr)
HtmlContent = Replace(HtmlContent, "<HEAD>", "<HEAD>" & vbNewLine & CopyrightStr)
HtmlContent = Replace(HtmlContent, "{$Style_CSS}", MainStyle)
HtmlContent = Replace(HtmlContent, "{$SkinPath}", SkinPath)
HtmlContent = Replace(HtmlContent, "{$Width}", Main_Setting(0))
HtmlContent = Replace(HtmlContent, "{$ChannelMenu}", ChannelMenu)
HtmlContent = Replace(HtmlContent, "{$WebSiteName}", SiteName)
HtmlContent = Replace(HtmlContent, "{$WebSiteUrl}", SiteUrl)
HtmlContent = Replace(HtmlContent, "{$MasterMail}", MasterMail)
HtmlContent = Replace(HtmlContent, "{$Keyword}", keywords)
HtmlContent = Replace(HtmlContent, "{$Copyright}", Copyright)
HtmlContent = Replace(HtmlContent, "{$IndexName}", IndexName)
HtmlContent = Replace(HtmlContent, "{$Version}", version)
HtmlContent = Replace(HtmlContent, "{$PublishedDate}", Now())
HtmlContent = Replace(HtmlContent, "{$siteAdsCode1}", ArraySiteAdsCode(0))
HtmlContent = Replace(HtmlContent, "{$siteAdsCode2}", ArraySiteAdsCode(1))
HtmlContent = Replace(HtmlContent, "{$siteAdsCode3}", ArraySiteAdsCode(2))
HtmlContent = Replace(HtmlContent, "{$siteAdsCode4}", ArraySiteAdsCode(3))
HtmlContent = Replace(HtmlContent, "{$siteAdsCode5}", ArraySiteAdsCode(4))
HtmlContent = Replace(HtmlContent, "{$siteAdsCode6}", ArraySiteAdsCode(5))
HtmlContent = HtmlContent
End Property
Public Property Get ByValue()
ByValue = HtmlContent
End Property
Public Property Let HTMLValue(ByVal vNewValue)
Dim TempStr
TempStr = TemplateCustom(vNewValue)
HtmlContent = Replace(HtmlContent, "<head>", "<head>" & vbNewLine & CopyrightStr)
HtmlContent = Replace(HtmlContent, "<HEAD>", "<HEAD>" & vbNewLine & CopyrightStr)
TempStr = Replace(TempStr, "{$Style_CSS}", MainStyle)
TempStr = Replace(TempStr, "{$SkinPath}", SkinPath)
TempStr = Replace(TempStr, "{$Width}", Main_Setting(0))
TempStr = Replace(TempStr, "{$ChannelMenu}", ChannelMenu)
TempStr = Replace(TempStr, "{$WebSiteName}", SiteName)
TempStr = Replace(TempStr, "{$WebSiteUrl}", SiteUrl)
TempStr = Replace(TempStr, "{$MasterMail}", MasterMail)
TempStr = Replace(TempStr, "{$Keyword}", keywords)
TempStr = Replace(TempStr, "{$Copyright}", Copyright)
TempStr = Replace(TempStr, "{$IndexName}", IndexName)
TempStr = Replace(TempStr, "{$Version}", version)
HtmlContent = Replace(HtmlContent, "{$PublishedDate}", Now())
TempStr = Replace(TempStr, "{$siteAdsCode1}", ArraySiteAdsCode(0))
TempStr = Replace(TempStr, "{$siteAdsCode2}", ArraySiteAdsCode(1))
TempStr = Replace(TempStr, "{$siteAdsCode3}", ArraySiteAdsCode(2))
TempStr = Replace(TempStr, "{$siteAdsCode4}", ArraySiteAdsCode(3))
TempStr = Replace(TempStr, "{$siteAdsCode5}", ArraySiteAdsCode(4))
TempStr = Replace(TempStr, "{$siteAdsCode6}", ArraySiteAdsCode(5))
sHtmlContent = TempStr
End Property
Public Property Get HTMLValue()
HTMLValue = sHtmlContent
End Property
Public Property Get HtmlSetting(n)
HtmlSetting = Html_Setting(n)
End Property
Public Property Get MainSetting(n)
MainSetting = Main_Setting(n)
End Property
Public Function TemplateCustom(ByVal strHTML)
Dim Custom,strContent
strContent = strHTML
Set Custom = New LabelCustom_Cls
Custom.Template = strContent
Custom.Channel = ThisChannelID
Custom.Execute
strContent = Custom.Template
Set Custom = Nothing
TemplateCustom = strContent
End Function