classforum.asp
来自「依蓝旅游网站管理系统Elan2008.SP2」· ASP 代码 · 共 1,287 行 · 第 1/5 页
ASP
1,287 行
Select Case Action
Case "Delete": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Delete", "删除")
Case "Lock": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Lock", "屏蔽")
Case "Up": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Up", "提升")
Case "Down": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Down", "沉底")
Case "Elite": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Elite", "加为精华")
Case "Top": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Top", "设置版块固顶")
Case "AllTop": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.AllTop", "设置全站固顶")
Case "Move": Setting_TypeName = EL_Common.Lang("Forum.TopicSetting.Move", "移动")
End Select
Message = EL_Common.RegExpStaticLabel(Message, "{$Title}", Title)
Message = EL_Common.RegExpStaticLabel(Message, "{$SettingType}", Setting_TypeName)
HTML = EL_Common.Template(ChannelID, 30, 0)
HTML = EL_Common.ReplaceCommonLabels(HTML)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$PageTitle}", Setting_Title)
HTML = EL_Common.RegExpStaticLabel(HTML, "{$DefaultSkin}", EL_Common.Skin(ChannelID, EL_Board.BoardID, EL_Board.SkinID))
StrPath = EL_Common.Lang("BaseConfig.Path", " >> ")
EL_Common.ShowPath = EL_Common.ShowPath & StrPath &"<a href='"& InstallDir & EL_Channel.ChannelDir &"'>"& EL_Channel.ChannelName &"</a>"
If EL_Board.ParentID <> 0 Then
EL_Common.ShowPath = EL_Common.ShowPath & StrPath &"<a href='"& InstallDir & EL_Channel.ChannelDir &"/ShowBoard.asp?BoardID="& EL_Board.ParentID &"'>"& EL_Board.ParentName &"</a>"
End If
EL_Common.ShowPath = EL_Common.ShowPath & StrPath &"<a href='"& InstallDir & EL_Channel.ChannelDir &"/ShowBoard.asp?BoardID="& EL_Board.BoardID &"'>"& EL_Board.BoardName &"</a>"
EL_Common.ShowPath = EL_Common.ShowPath & StrPath & EL_Common.ServerHTMLEncode(Title) & StrPath & Setting_Title
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowPath}", EL_Common.ShowPath)
HTML = ChannelCommonLabels(HTML)
If Action = "Success" Then
Dim Success, BackURL, ReplyPageSizes, PageNum
Success = EL_Common.Lang("Forum.TopicSetting.Success", "")
ReplyPageSizes = EL_Common.Lang("Forum.ReplyPageSizes", 10)
If ParentID = 0 Then
PageNum = 1
BackURL = "ShowTopic.asp?BoardID="& EL_Board.BoardID &"&TopicID="& TopicID &"&page="& PageNum &"#"& TopicID
Else
Replys = Replys + 1
If Replys > ReplyPageSizes Then
PageNum = Replys / ReplyPageSizes
If PageNum > Int(PageNum) Then
PageNum = Int(PageNum) + 1
Else
PageNum = Int(PageNum)
End If
Else
PageNum = 1
End If
BackURL = "ShowTopic.asp?BoardID="& EL_Board.BoardID &"&TopicID="& ParentID &"&page="& PageNum &"#"& TopicID
End If
Success = EL_Common.RegExpStaticLabel(Success, "{$BackURL}", BackURL)
SettingHTML = Success
Else
SettingHTML = "<script language='javascript'>function CheckSetting(frm){if(frm.SetReason.value==''){alert('请输入操作原因');frm.SetReason.focus();return false;}}</script>"
SettingHTML = SettingHTML &"<form name='setting' action='TopicSetting.asp' method='post' onsubmit='return CheckSetting(this)'>"
SettingHTML = SettingHTML &"<table border='0' cellspacing='1' cellpadding='0' class='setting_tb'>"
SettingHTML = SettingHTML &"<tr><td colspan='2' class='setting_title'>"& Setting_Title &" [ "& Setting_TypeName &" ]</td></tr>"
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicTitle", "帖子标题:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'>"& EL_Common.ServerHTMLEncode(Title) &"</td>"
SettingHTML = SettingHTML &"</tr>"
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicAuthor", "作 者:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'>"& EL_Common.ServerHTMLEncode(Author) &"</td>"
SettingHTML = SettingHTML &"</tr>"
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicPostDateTime", "发表日期:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'>"& EL_Common.ServerHTMLEncode(PostDateTime) &"</td>"
SettingHTML = SettingHTML &"</tr>"
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicSetting.Item1", "操作原因:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'><input type='text' name='SetReason' id='SetReason' value='' size='54' /></td>"
SettingHTML = SettingHTML &"</tr>"
If Action = "Move" Then
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicSetting.Item2", "目标版面:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'><select name='ToBoardID' id='ToBoardID'><script language='javascript' src='"& InstallDir & EL_Channel.ChannelDir &"/Js/BoardOptions.js'></script></select></td>"
SettingHTML = SettingHTML &"</tr>"
End If
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'>"& EL_Common.Lang("Forum.TopicSetting.Item3", "短信通知:") &"</td>"
SettingHTML = SettingHTML &"<td class='setting_input'><textarea name='Message' id='Message' cols='45' rows='4'>"& EL_Common.ServerHTMLEncode(Message) &"</textarea></td>"
SettingHTML = SettingHTML &"</tr>"
SettingHTML = SettingHTML &"<tr>"
SettingHTML = SettingHTML &"<td class='setting_item'></td>"
SettingHTML = SettingHTML &"<td class='setting_input'><input type='submit' value='"& EL_Common.Lang("Forum.TopicSetting.Submit", "提交") &"' /> <input type='button' value='"& EL_Common.Lang("Forum.TopicSetting.Cancel", "取消") &"' onclick='history.back()' /></td>"
SettingHTML = SettingHTML &"</tr>"
SettingHTML = SettingHTML &"</table>"
SettingHTML = SettingHTML &"<input type='hidden' name='Action' id='Action' value='"& Action &"' />"
SettingHTML = SettingHTML &"<input type='hidden' name='BoardID' id='BoardID' value='"& EL_Board.BoardID &"' />"
SettingHTML = SettingHTML &"<input type='hidden' name='TopicID' id='TopicID' value='"& TopicID &"' />"
SettingHTML = SettingHTML &"<input type='hidden' name='SetAction' id='SetAction' value='Save' />"
SettingHTML = SettingHTML &"</form>"
End If
HTML = EL_Common.RegExpStaticLabel(HTML, "{$ShowSetting}", SettingHTML)
Set EL_Board = Nothing
Response.Write HTML
End Sub
Public Sub SaveTopic()
If CheckComeURL = False Then
EL_Common.ShowErrorMsg(EL_Common.Lang("BaseConfig.ComeURLError", "禁止从本站外部提交数据"))
Exit Sub
End If
If EL_User.UserIsLogin = False Then
Dim TempURL
TempURL = InstallDir & EL_Channel.ChannelDir &"/"& EL_CurrentScriptName
If Request.ServerVariables("QUERY_STRING") <> "" Then
TempURL = TempURL &"?"& Request.ServerVariables("QUERY_STRING")
End If
Response.Redirect InstallDir &"User/User_Login.asp?url="& EL_Common.ServerURLEncode(TempURL)
End If
If EL_User.EnablePost = False Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error3", "对不起,您被禁止发帖"))
Exit Sub
End If
Dim LastPostDateTime
LastPostDateTime = Session("EL_Forum_LastPostDateTime")
If Not IsDate(LastPostDateTime) Then
LastPostDateTime = Now()
Else
If DateDiff("s", LastPostDateTime, Now()) < PostInterval Then
EL_Common.ShowErrorMsg(EL_Common.RegExpStaticLabel(EL_Common.Lang("Forum.Error11", "对不起,您发帖速度过快,请{$PostInterval}秒后再发帖"), "{$PostInterval}", PostInterval))
Exit Sub
End If
End If
Dim TopicID, ParentID, Title, Color, Icon, Content, Uploadfiles, CheckCode, TopicType, VoteItems, VoteTimeOut, VoteType
Dim EL_Board, EL_Topic, NewTopicCmd, UpdateType
Dim Form_Action, Form_UserName, StrPath, ActionTitle
Dim UserID, UserName, ArrTemp
Set EL_Board = New ClassBoard
If EL_Board.ErrorCode = 1 Then
Set EL_Board = Nothing
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error1", "指定"& EL_Channel.ClassItemName &"不存在或已被禁用"))
Exit Sub
End If
Set EL_Topic = New ClassTopic
TopicID = EL_Common.ELRequest("TopicID", 2)
Title = EL_Common.ELRequest("Title", 1)
Color = EL_Common.ELRequest("Color", 1)
Icon = EL_Common.ELRequest("Icon", 2)
Content = EL_Common.ELRequest("Content", 1)
Uploadfiles = EL_Common.ELRequest("Uploadfiles", 1)
CheckCode = UCase(EL_Common.ELRequest("CheckCode", 1))
TopicType = EL_Common.ELRequest("TopicType", 2)
VoteItems = EL_Common.ELRequest("VoteItems", 1)
VoteTimeOut = EL_Common.ELRequest("VoteTimeOut", 2)
VoteType = EL_Common.ELRequest("VoteType", 2)
ParentID = 0
If EL_Board.EnableCheckCode = True And Action <> "SaveVote" Then
If Trim(CheckCode) <> Session("CheckCode") Or Trim(CheckCode) = "" Then
EL_Common.ShowErrorMsg(EL_Common.Lang("BaseCongif.CheckCodeError", "验证码错误"))
Exit Sub
End If
End If
'过滤
Content = EL_Common.FliterScript(Content, "Iframe", 1)
Content = EL_Common.FliterScript(Content, "Object", 2)
Content = EL_Common.FliterScript(Content, "Script", 2)
Content = EL_Common.FliterScript(Content, "Event", 5)
Content = EL_Common.ReplaceKeyLink(Content, 1)
Title = EL_Common.ReplaceKeyLink(Title, 1)
If EL_Common.RemoveHTML(Title) = "" And Action <> "SaveVote" Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error5", "帖子标题不能为空"))
Exit Sub
End If
If Content = "" And Action <> "SaveVote" Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error6", "帖子内容不能为空"))
Exit Sub
End If
Select Case Action
Case "SaveNew":
UpdateType = 0
UserID = EL_User.UserID
UserName = EL_User.UserName
If TopicType = 1 Then
VoteItems = Replace(VoteItems, "|", "")
If VoteItems = "" Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error7", "投票项目不能为空"))
Exit Sub
End If
VoteItems = Replace(VoteItems, VBCRLF, "|")
Select Case VoteTimeOut
Case 0: VoteTimeOut = DateAdd("y", 9999, Now())
Case 1: VoteTimeOut = DateAdd("d", 1, Now())
Case 2: VoteTimeOut = DateAdd("d", 3, Now())
Case 3: VoteTimeOut = DateAdd("d", 7, Now())
Case 4: VoteTimeOut = DateAdd("d", 15, Now())
Case 5: VoteTimeOut = DateAdd("m", 1, Now())
Case 6: VoteTimeOut = DateAdd("m", 3, Now())
Case 7: VoteTimeOut = DateAdd("m", 6, Now())
Case 8: VoteTimeOut = DateAdd("y", 1, Now())
End Select
Else
VoteItems = ""
End If
Case "SaveReply":
EL_Topic.BoardID = EL_Board.BoardID
Call EL_Topic.GetTopicInfo()
If EL_Topic.ErrorCode = 1 Or EL_Topic.Deleted = True Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error2", "指定帖子不存在或已被管理员删除"))
Set EL_Board = Nothing
Set EL_Topic = Nothing
Exit Sub
End If
ParentID = EL_Topic.TopicID
UpdateType = 0
TopicType = 0
VoteItems = ""
UserID = EL_User.UserID
UserName = EL_User.UserName
Case "SaveEdit":
ArrTemp = EL_Common.GetFieldValue("TopicID,ParentID,UserID,UserName", "EL_ForumTopic", "ChannelID="& ChannelID &" AND BoardID="& EL_Board.BoardID &" AND Deleted="& EL_False &" AND TopicID="& TopicID)
If TopicID <> ArrTemp(0) Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error2", "指定帖子不存在或已被管理员删除"))
Set EL_Board = Nothing
End If
If EL_User.BoardSuperManager = False Then
If EL_User.UserName <> ArrTemp(3) Or EL_User.UserID <> ArrTemp(2) Then
If EL_Common.FoundInArray(Split(EL_Board.ArrManager, "|"), EL_User.UserName) = False Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Forum.Error4", "对不起,您没有编辑的权限"))
Set EL_Board = Nothing
Exit Sub
End If
End If
End If
ParentID = ArrTemp(1)
UpdateType = 1
TopicType = 0
VoteItems = ""
UserID = EL_User.UserID
UserName = EL_User.UserName
Case "SaveVote":
UpdateType = 2
ParentID = EL_Common.ELRequest("VoteID", 2)
VoteItems = Replace(VoteItems, " ", "")
If VoteItems = "" Then
EL_Common.ShowErrorMsg(EL_Common.Lang("Vote.Error3", "请选择投票项目"))
Set EL_Board = Nothing
Set EL_Topic = Nothing
Exit Sub
End If
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?