📄 classproduct.asp
字号:
End If
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ProductAction}", ProductAction)
HTML = Label_ShowComment(HTML, ProductID)
Response.Write HTML
End Sub
Public Sub Print()
EL_Flag = False
Dim ProductCmd, rsProduct, i, EnableWeek, StrTravelDate
Dim ProductID, ProductName, Days, TravelDate, LeastPerson, Price, ArrSightInfo
Dim Intro, PriceIncluded, JoinNotice, SkinID, Content
ProductID = EL_Common.ELRequest("InfoID", 2)
Call EL_Common.InitCommand(ProductCmd, "EL_SP_GetProductInfo")
With ProductCmd
.Parameters.Append .CreateParameter("RETURN", 2, 4)
.Parameters.Append .CreateParameter("@ProductID", 3, 1, 4, ProductID)
.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, ChannelID)
Set rsProduct = .Execute()
End With
rsProduct.Close()
If ProductCmd(0) <> 1 Then
EL_Common.ShowErrorMsg(EL_Common.RegExpStaticLabel(EL_Common.Lang("BaseConfig.InfoError", "指定{$ItemName}不存在"), "{$ItemName}", EL_Channel.ItemName))
Set rsProduct = Nothing
Set ProductCmd = Nothing
Exit Sub
End If
rsProduct.Open()
ClassID = rsProduct("ClassID")
ProductName = rsProduct("ProductName")
Days = rsProduct("Days")
TravelDate = rsProduct("TravelDate")
LeastPerson = rsProduct("LeastPerson")
Price = rsProduct("Price")
ArrSightInfo = rsProduct("ArrSightInfo")
Intro = rsProduct("Intro")
Content = rsProduct("Content")
PriceIncluded = rsProduct("PriceIncluded")
JoinNotice = rsProduct("JoinNotice")
SkinID = rsProduct("SkinID")
HTML = EL_Common.Template(ChannelID, 7, 0)
HTML = EL_Common.ReplaceCommonLabels(HTML)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$PageTitle}", EL_Common.Join2String(ProductName, SiteTitle, EL_Common.TitleDivide))
HTML = EL_Common.RegExpStaticLabel(HTML, "{$DefaultSkin}", EL_Common.Skin(ChannelID, ClassID, SkinID))
Dim StrPath
StrPath = EL_Common.Lang("BaseConfig.Path", " >> ")
EL_Common.ShowPath = EL_Common.ShowPath & StrPath &"<a href='"& InstallDir & EL_Channel.ChannelDir &"/Index.asp'>"& EL_Channel.ChannelName &"</a>"& EL_Common.GetParentPath(ChannelID, EL_Channel.ChannelDir, ClassID) & StrPath & EL_Common.RegExpStaticLabel(EL_Common.Lang("BaseConfig.Content", "{$ItemName}内容"), "{$ItemName}", EL_Channel.ItemName)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowPath}", EL_Common.ShowPath)
HTML = ChannelCommonLabels(HTML)
'自定义字段标签
Dim FieldCmd, rsField, FieldCount
Call EL_Common.InitCommonCmd(FieldCmd, rsField, "EL_Field", "FieldName", "ChannelID="& ChannelID)
rsField.Close()
FieldCount = FieldCmd(0)
If FieldCount = 0 Then
Set rsField = Nothing
Set FieldCmd = Nothing
Else
rsField.Open()
For i = 1 To FieldCount
HTML = EL_Common.RegExpStaticLabel(HTML, "{$"& rsField(0) &"}", rsProduct(rsField(0).value))
If i<FieldCount Then rsField.MoveNext
Next
rsField.Close()
Set rsField = Nothing
Set FieldCmd = Nothing
End If
rsProduct.Close()
Set rsProduct = Nothing
Set ProductCmd = Nothing
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ProductID}", ProductID)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ProductName}", ProductName)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$Days}", Days)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$LeastPerson}", LeastPerson)
If TravelDate = "-1" Then
EnableWeek = ""
StrTravelDate = EL_Common.Lang("Product.Week.w0", "天天出发")
Else
EnableWeek = Replace(TravelDate, "7", "0")
Dim ArrTemp
ArrTemp = Split(TravelDate, ",")
For i = 0 To Ubound(ArrTemp)
StrTravelDate = StrTravelDate &" "& EL_Common.Lang("Product.Week.w"& Trim(ArrTemp(i)), ArrTemp(i))
Next
End If
HTML = EL_Common.RegExpStaticLabel(HTML, "{$EnableWeek}", EnableWeek)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$TravelDate}", StrTravelDate)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$Price}", Price)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ArrSightInfo}", AroundInfoURL(ArrSightInfo))
HTML = EL_Common.RegExpStaticLabel(HTML, "{$Intro}", Intro)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$Content}", Content)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$PriceIncluded}", PriceIncluded)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$JoinNotice}", JoinNotice)
Response.Write HTML
End Sub
Public Sub ShowClass()
Dim ClassCmd, rsClass, ClassType, ItemCount
Dim PageTitle, ClassName, ArrChildID, SkinID, TemplateID, StrPath
ClassID = EL_Common.ELRequest("ClassID", 2)
Call EL_Common.InitCommand(ClassCmd, "EL_SP_GetClassInfo")
With ClassCmd
.Parameters.Append .CreateParameter("RETURN", 2, 4)
.Parameters.Append .CreateParameter("@ClassID", 3, 1, 4, ClassID)
.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, ChannelID)
.Parameters.Append .CreateParameter("@ClassName", 200, 2, 50)
.Parameters.Append .CreateParameter("@SkinID", 3, 2, 4)
.Parameters.Append .CreateParameter("@TemplateID", 3, 2, 4)
.Parameters.Append .CreateParameter("@ClassType", 3, 2, 4)
.Parameters.Append .CreateParameter("@ItemCount", 3, 2, 4)
.Execute()
End With
Select Case ClassCmd(0)
Case 40: EL_Common.ShowErrorMsg(EL_Common.Lang("BaseConfig.ChannelError", "频道参数错误")) : Set ClassCmd = Nothing : Exit Sub
Case 0, 41: EL_Common.ShowErrorMsg(EL_Common.RegExpStaticLabel(EL_Common.Lang("BaseConfig.ClassError", "指定{$ClassItemName}不存在"), "{$ClassItemName}", EL_Channel.ClassItemName)) : Set ClassCmd = Nothing : Exit Sub
End Select
If ClassCmd(0) <> 1 Then
EL_Common.ShowErrorMsg(EL_Common.RegExpStaticLabel(EL_Common.Lang("BaseConfig.ClassError", "指定{$ClassItemName}不存在"), "{$ClassItemName}", EL_Channel.ClassItemName))
Set ClassCmd = Nothing
Exit Sub
End If
ClassName = ClassCmd(3)
SkinID = ClassCmd(4)
TemplateID = ClassCmd(5)
ClassType = ClassCmd(6)
ItemCount = ClassCmd(7)
Set ClassCmd = Nothing
Dim ArrTemplate
HTML = EL_Common.Template(ChannelID, 2, TemplateID)
ArrTemplate = EL_Common.ELSplit(HTML, "{$$$Template$$$}")
If ClassType = 1 Then
HTML = ArrTemplate(1) '小类模板
Else '大类模板
If ShowClassType = 1 Then
HTML = ArrTemplate(1)
Else
HTML = ArrTemplate(0)
End If
End If
HTML = EL_Common.ReplaceCommonLabels(HTML)
PageTitle = EL_Common.Join2String(ClassName, EL_Channel.ChannelName, EL_Common.TitleDivide)
PageTitle = EL_Common.Join2String(PageTitle, SiteTitle, EL_Common.TitleDivide)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$PageTitle}", PageTitle)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$DefaultSkin}", EL_Common.Skin(ChannelID, ClassID, SkinID))
StrPath = EL_Common.Lang("BaseConfig.Path", " >>")
EL_Common.ShowPath = EL_Common.ShowPath & StrPath &"<a href='"& InstallDir & EL_Channel.ChannelDir &"/Index.asp'>"& EL_Channel.ChannelName &"</a>"& EL_Common.GetParentPath(ChannelID, EL_Channel.ChannelDir, ClassID)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowPath}", EL_Common.ShowPath)
HTML = ChannelCommonLabels(HTML)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ClassName}", ClassName)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ClassID}", ClassID)
If ClassType = 0 Then
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowChildClass}", GetChildClass())
HTML = Label_CurrentClass(HTML, ClassName, ItemCount)
End If
HTML = Label_ArrClassList(HTML)
HTML = Label_GetProductList(HTML)
HTML = Label_GetProductPhoto(HTML)
Response.Write HTML
End Sub
Private Function AroundInfoURL(ByVal AroundList)
If Trim(AroundList) = "" Then Exit Function
Dim ArrAround, arr, i
ArrAround = Split(AroundList, "$")
AroundInfoURL = ""
For i = 0 To Ubound(ArrAround)
If Trim(ArrAround(i)) <> "" Then
arr = Split(ArrAround(i), "|")
AroundInfoURL = EL_Common.Join2String(AroundInfoURL, "<a href='"& arr(0) &"' class='aroundlist'>"& arr(1) &"</a>", ",")
End If
Next
End Function
Private Function GetChildClass()
Dim ChildCmd, rsChild, RowCount, i, ReturnString, ClassIcon
ClassIcon = EL_Common.Lang("BaseConfig.ClassIncludeIcon", " ·")
Call EL_Common.InitCommand(ChildCmd, "EL_SP_ClassList")
With ChildCmd
.Parameters.Append .CreateParameter("RETURN", 2, 4)
.Parameters.Append .CreateParameter("@ParentID", 3, 1, 4, ClassID)
.Parameters.Append .CreateParameter("@ChannelID", 3, 1, 4, ChannelID)
Set rsChild = .Execute()
End With
rsChild.Close()
RowCount = ChildCmd(0)
rsChild.Open()
ReturnString = ""
For i = 1 To RowCount
ReturnString = ReturnString & ClassIcon &"<a href='"& InstallDir & EL_Channel.ChannelDir &"/ShowClass.asp?ClassID="& rsChild(0) &"'>"& rsChild(1) &"</a><br>"
If i<RowCount Then rsChild.MoveNext
Next
rsChild.Close()
Set rsChild = Nothing
Set ChildCmd = Nothing
GetChildClass = ReturnString
End Function
Private Function Label_CurrentClass(ByVal HTML, ByVal ClassName, ByVal ItemCount)
Dim Match, Matches, ReturnString, Temp
Dim TempString, MatchString
Dim ArrClassCmd, rsArrClass, SQLCondition, RowCount, i
CommonRegExp.Pattern = "\[CurrentClass\][\w\W]*\[\/CurrentClass\]"
Set Matches = CommonRegExp.Execute(HTML)
ReturnString = HTML
EL_Flag = False
For Each Match in Matches
If ItemCount > 0 Then
Temp = Match.Value
Temp = EL_Common.ReplaceText(Temp, "\[CurrentClass\]", "")
Temp = EL_Common.ReplaceText(Temp, "\[\/CurrentClass\]", "")
Temp = EL_Common.ReplaceText(Temp, "Current_ClassID", ClassID)
Temp = EL_Common.RegExpStaticLabel(Temp, "{$Current_ClassName}", ClassName)
Temp = EL_Common.RegExpStaticLabel(Temp, "{$Current_ClassURL}", InstallDir & EL_Channel.ChannelDir &"/ShowClass.asp?ShowType=1&ClassID="& ClassID)
ShowClassType = 1
Temp = Label_GetProductList(Temp)
Temp = Label_GetProductPhoto(Temp)
ShowClassType = 0
Else
Temp = ""
End If
ReturnString = Replace(ReturnString, Match.Value, Temp)
Next
Set Matches = Nothing
EL_Flag = True
Label_CurrentClass = ReturnString
End Function
Private Function Label_ArrClassList(ByVal HTML)
Dim Match, Matches, ReturnString, Cols, Temp
Dim TempString, MatchString
Dim ArrClassCmd, rsArrClass, SQLCondition, RowCount, i
CommonRegExp.Pattern = "\[arrClassList\(([ 0-9]+)\)\][\w\W]*\[\/arrClassList\]"
Set Matches = CommonRegExp.Execute(HTML)
ReturnString = HTML
EL_Flag = False
For Each Match in Matches
MatchString = Match.Value
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -