📄 cls_template.asp
字号:
<%
'====================================================================
'= Team Elite - Elite Article System
'= Copyright (c) 2005 Eason Chan All Rights Reserved.
'=-------------------------------------------------------------------
'= 文件名称:cls_template.asp
'= 摘 要:模版类文件
'=-------------------------------------------------------------------
'= 最后更新:eason007
'= 最后日期:2005-07-27
'====================================================================
Class cls_Template
Public Title,Nav
Private PageArray(4)
Private i
'*****************************
'对象类初始化过程
'*****************************
Private Sub Class_Initialize()
End Sub
Public Sub Close_Obj()
Erase PageArray
End Sub
'***********************************************
'加载模版过程
'输入参数:
' 1、模版id
' 2、页面名称
'***********************************************
Public Function Load_Template(TemplateId,Fields)
FoundErr=False
Dim Temp
Temp=EA_DBO.Get_Template_Info(TemplateId,Fields)
If IsArray(Temp) Then
PageArray(0)=Temp(0,0) 'template name
PageArray(1)=Temp(1,0) 'template css
PageArray(2)=Temp(2,0) 'template head
PageArray(3)=Temp(3,0) 'template foot
Load_Template=Temp(4,0)
Else
FoundErr=True
End If
If Err.Number<>0 Or FoundErr Then
ErrMsg="读取模版["&Fields&"]时发生错误"&FoundErr
Call EA_Pub.ShowErrMsg(0,0)
End If
End Function
Public Sub ReplaceTag(sTag,sReplaceValue,ByRef sPageContent)
If InStr(sPageContent,"{$"&sTag&"$}")>0 Then
sPageContent=Replace(sPageContent,"{$"&sTag&"$}",sReplaceValue)
End If
End Sub
Public Function Replace_PublicTag(ByRef PageContent)
ReplaceTag "Head",PageArray(2),PageContent
ReplaceTag "Foot",PageArray(3),PageContent
ReplaceTag "PageTitle",Title,PageContent
ReplaceTag "PageNav",Nav,PageContent
ReplaceTag "SiteName",EA_Pub.SysInfo(0),PageContent
ReplaceTag "SiteUrl",EA_Pub.SysInfo(11),PageContent
ReplaceTag "SiteEMail",EA_Pub.SysInfo(12),PageContent
ReplaceTag "SystemVersion",SysVersion,PageContent
ReplaceTag "SkinName",PageArray(0),PageContent
ReplaceTag "PageCSS",PageArray(1),PageContent
ReplaceTag "PageDesc",EA_Pub.SysInfo(17),PageContent
ReplaceTag "PageKeyword",Replace(EA_Pub.SysInfo(16),"|",","),PageContent
PageContent=Replace(PageContent,"<title>","<meta name=""generator"" content=""NB文章系统(NBArticle)"">"&Chr(13)&Chr(10)&"<title>",1,-1,0)
ReplaceTag "SystemPath",SystemFolder,PageContent
If InStr(PageContent,"{$SitePlacard")>0 Then Call Find_TemplateTag("SitePlacard",PageContent)
If InStr(PageContent,"{$SiteVote")>0 Then Call Find_TemplateTag("SiteVote",PageContent)
If InStr(PageContent,"{$GetArticleList")>0 Then Call Find_TemplateTags("GetArticleList",PageContent)
If InStr(PageContent,"{$AdSense")>0 Then Call Find_TemplateTags("AdSense",PageContent)
If InStr(PageContent,"{$Friend")>0 Then Call Find_TemplateTags("Friend",PageContent)
Replace_PublicTag=PageContent
End Function
Public Function Find_TemplateTag(KeyStr,ByRef PageStr)
Dim TempStr,PageLen
Dim CurrentTag,StartTag,EndTag
Dim ParameterArray,ReplaceStr,ReplaceLen
CurrentTag=0
StartTag=1
PageLen=Len(PageStr)
CurrentTag=InStr(StartTag,PageStr,"{$"&KeyStr&"(")
If CurrentTag<>0 Then
StartTag=CurrentTag
EndTag=InStr(StartTag,PageStr,")$}")
TempStr=Mid(PageStr,StartTag+3+Len(KeyStr),EndTag-(StartTag+3+Len(KeyStr)))
ParameterArray=Split(TempStr,",")
Select Case KeyStr
Case "ColumnNav"
ReplaceStr=Load_ColumnList(ParameterArray)
Case "DisList"
ReplaceStr=Load_DisArticle(ParameterArray)
Case "SitePlacard"
ReplaceStr=Load_Placard(ParameterArray)
Case "SiteVote"
ReplaceStr=Load_Vote(ParameterArray)
Case "NewReview"
ReplaceStr=Load_NewReview(ParameterArray)
End Select
ReplaceLen=Len(ReplaceStr)
PageStr=Left(PageStr,StartTag-1)&ReplaceStr&Right(PageStr,PageLen-(EndTag+2))
End If
Find_TemplateTag=PageStr
End Function
Public Function Find_TemplateTags(KeyStr,ByRef PageStr)
Dim TempStr,PageLen
Dim CurrentTag,StartTag,EndTag
Dim ParameterArray,ReplaceStr,ReplaceLen
CurrentTag=-1
StartTag=1
PageLen=Len(PageStr)
Do While CurrentTag<>0
CurrentTag=InStr(StartTag,PageStr,"{$"&KeyStr&"(")
If CurrentTag<>0 Then
StartTag=CurrentTag
EndTag=InStr(StartTag,PageStr,")$}")
TempStr=Mid(PageStr,StartTag+Len(KeyStr)+3,EndTag-(StartTag+Len(KeyStr)+3))
ParameterArray=Split(TempStr,",")
Select Case KeyStr
Case "GetArticleList"
ReplaceStr=Get_ArticleList(ParameterArray)
Case "Friend"
ReplaceStr=Load_Friend(ParameterArray)
Case "AdSense"
ReplaceStr=Load_AdSense(ParameterArray)
End Select
ReplaceLen=Len(ReplaceStr)
PageStr=Left(PageStr,StartTag-1)&ReplaceStr&Right(PageStr,PageLen-(EndTag+2))
StartTag=StartTag+ReplaceLen
PageLen=Len(PageStr)
End If
Loop
Find_TemplateTags=PageStr
End Function
Public Function Find_TemplateTagValues(KeyStr,ByRef PageStr)
Dim TempStr,PageLen
Dim CurrentTag,StartTag,EndTag
Dim ParameterArray
CurrentTag=0
StartTag=1
PageLen=Len(PageStr)
CurrentTag=InStr(StartTag,PageStr,"{$"&KeyStr&"(")
If CurrentTag<>0 Then
StartTag=CurrentTag
EndTag=InStr(StartTag,PageStr,")$}")
TempStr=Mid(PageStr,StartTag+3+Len(KeyStr),EndTag-(StartTag+3+Len(KeyStr)))
ParameterArray=Split(TempStr,",")
End If
Find_TemplateTagValues=ParameterArray
End Function
Public Sub Find_TemplateTagByInput(KeyStr,ReplaceStr,ByRef PageStr)
Dim PageLen
Dim CurrentTag,StartTag,EndTag
Dim ReplaceLen
CurrentTag=0
StartTag=1
PageLen=Len(PageStr)
CurrentTag=InStr(StartTag,PageStr,"{$"&KeyStr&"(")
If CurrentTag<>0 Then
StartTag=CurrentTag
EndTag=InStr(StartTag,PageStr,")$}")
ReplaceLen=Len(ReplaceStr)
PageStr=Left(PageStr,StartTag-1)&ReplaceStr&Right(PageStr,PageLen-(EndTag+2))
End If
End Sub
Public Function Load_MemberTopPost()
Dim TempStr,TempArray
Dim i
TempArray=EA_DBO.Get_MemberTopPostList()
If IsArray(TempArray) Then
TempStr="<table border=""0"" cellpadding=""0"" cellspacing=""0"" align=""center"" width=""98%"">"
For i=0 To UBound(TempArray,2)
If i>=10 Then Exit For
TempStr=TempStr&"<tr align=""center"">"
TempStr=TempStr&"<td>"&i+1&"</td>"
TempStr=TempStr&"<td>"&TempArray(1,i)&"</td>"
TempStr=TempStr&"<td>"&TempArray(2,i)&"</td>"
TempStr=TempStr&"</tr>"
Next
TempStr=TempStr&"</table>"
Else
TempStr=""
End If
Load_MemberTopPost=TempStr
End Function
Public Function Load_NewReview(Parameter)
Dim TempStr,TempArray
Dim i
TempArray=EA_DBO.Get_Review_NewList(Parameter(0),Parameter(1))
If IsArray(TempArray) Then
TempStr="<table border=""0"" cellpadding=""0"" cellspacing=""0"" align=""center"" width=""98%"">"
For i=0 To UBound(TempArray,2)
TempStr=TempStr&"<tr align=""center"">"
TempStr=TempStr&"<td align=""left""><a href=""review.asp?articleid="&TempArray(0,i)&""">"&EA_Pub.Un_Full_HTMLFilter(TempArray(1,i))&"</a></td>"
TempStr=TempStr&"<td>"&TempArray(2,i)&"</td>"
TempStr=TempStr&"<td><font color=800000>"&TempArray(3,i)&"</font></td>"
TempStr=TempStr&"</tr>"
Next
TempStr=TempStr&"</table>"
Else
TempStr=""
End If
Load_NewReview=TempStr
End Function
Private Function Load_AdSense(Parameter)
Dim TempStr,Temp
Temp=EA_DBO.Get_AdSense(Parameter(0))
If IsArray(Temp) Then TempStr=Temp(1,0)
Load_AdSense=TempStr
End Function
Private Function Load_Placard(Parameter)
Dim TempArray,TempStr
Dim i
Dim CutStr
If Parameter(1)=0 Then
CutStr=" "
Else
CutStr="<br>"
End If
If CLng(Parameter(0))=0 Then Parameter(0)=10
TempStr="<img src="""&SystemFolder&"images/public/gb.gif"" align=""absmiddle""> "
TempArray=EA_DBO.Get_PlacardTopList(Parameter(0))
If IsArray(TempArray) Then
For i=0 To UBound(TempArray,2)
TempStr=TempStr&"<a href=""#"" onclick=""javascript:window.open('"&SystemFolder&"viewplacard.asp?postid="&TempArray(0,i)&"','','scrollbars=yes,height=350,width=550')"">"&TempArray(1,i)&"</a> <font color=999999>("&FormatDateTime(TempArray(2,i),2)&")</font>"&CutStr
Next
Else
TempStr=TempStr&"<font color=800000>欢迎光临"&EA_Pub.SysInfo(0)&"。</font>"
End If
Load_Placard=TempStr
End Function
Private Function Load_Vote(Parameter)
Dim Id,Title,VoteText,Mtype
Dim Result,Content,j
Dim TempArray
TempArray=EA_DBO.Get_Vote_Info(Parameter(0))
If IsArray(TempArray) Then
If TempArray(5,0)=0 Then
Id=TempArray(0,0)
Title=TempArray(1,0)
VoteText=TempArray(2,0)
Mtype=TempArray(4,0)
Content=split(VoteText,"|")
Result=Result&"<table width=""96%"" align=""center"" border=""0"" cellpadding=""0"" cellspacing=""2""><Form action=vote.asp method=post name=""vote_0""><tr><td>"&Title&"</td></tr>"
IF Mtype=False Then
For i=0 To Ubound(Content)
Result=Result&"<tr><td>"
Result=Result&"<input type='radio' name='vote' value="&i&"> "&Content(i)
Result=Result&"</td></tr>"
Next
End if
If Mtype=True Then
For i=0 To Ubound(Content)
Result=Result&"<tr><td>"
Result=Result&"<input type='checkbox' name='vote' value="&i&"> "&Content(i)
Result=Result&"</td></tr>"
Next
End if
Result=Result&"<tr><td align=center><input name=votetype type=hidden value="&CInt(Mtype)&"><input name=voteid type=hidden value="&Id&"><input type=button name=submit value=投票 onclick=""window.open(submit_vote(0),'_blank','scrollbars=yes,width=645,height=380')""> <input type=button name=view value=查看 onclick=""window.open('vote.asp?VoteId="&ID&"','_blank','scrollbars=yes,width=645,height=380')""></td></tr>"
Result=Result&"</Form></Table>"
End If
End If
Load_Vote=Result
End Function
Private Function Load_Friend(Parameter)
Dim FriendList,WidthPercent
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -