📄 post.asp
字号:
TempStr = Replace(TempStr,"{$voteinfo}","")
TempStr = Replace(TempStr,"{$retopicloop}","")
TempStr = Replace(TempStr,"{$useraction}","")
TempStr = Replace(TempStr,"{$edithiddeninput}",Edit_HiddenInput())
TempStr = Replace(TempStr,"{$topicmode}","")
TempStr = Replace(TempStr,"{$totalusetable}",TotalUseTable)
TempStr = Replace(TempStr,"{$TopModeSelect}",MyTopicMode)
TempStr = Replace(TempStr,"{$topic}",Topic)
TempStr = Replace(TempStr,"{$content}",Content)
TempStr = Replace(TempStr,"{$MoneyPostInfo}","")
If Dvbbs.Forum_Setting(98)="1" And Dvbbs.Board_Setting(24)="1" And Dvbbs.GroupSetting(69)="1" Then
TempStr = Replace(TempStr,"{$tools_magicface}",template.html(14))
TempStr = Replace(TempStr,"{$MagicIframe}",TempArray(8))
If FoundUseMagic > 0 Then
TempStr = Replace(TempStr,"{$firstmagicface}",FoundUseMagic)
TempStr = Replace(TempStr,"{$magicmoney}",tMagicMoney)
TempStr = Replace(TempStr,"{$magicticket}",tMagicTicket)
TempStr = Replace(TempStr,"{$isselect}","checked")
Else
Set Rs = Dvbbs.Plus_Execute("Select Top 1 MagicFace_s,tMoney,tTicket From Dv_Plus_Tools_MagicFace Order By ID")
If Not (Rs.Eof And Rs.Bof) Then
TempStr = Replace(TempStr,"{$firstmagicface}",Rs(0))
TempStr = Replace(TempStr,"{$magicmoney}",Rs(1))
TempStr = Replace(TempStr,"{$magicticket}",Rs(2))
Else
TempStr = Replace(TempStr,"{$firstmagicface}",0)
TempStr = Replace(TempStr,"{$magicmoney}",0)
TempStr = Replace(TempStr,"{$magicticket}",0)
End If
Rs.Close
Set Rs=Nothing
TempStr = Replace(TempStr,"{$isselect}","")
End If
End If
End Select
If Dvbbs.UserID=0 Then
TempStr = Replace(TempStr,"{$checksign0}","checked=""checked""")
TempStr = Replace(TempStr,"{$checksign1}","disabled=""disabled""")
TempStr = Replace(TempStr,"{$checksign2}","disabled=""disabled""")
TempStr = Replace(TempStr,"{$checkbox2}","checked=""checked""")
TempStr = Replace(TempStr,"{$checkbox3}","disabled=""disabled""")
TempStr = Replace(TempStr,"{$checkbox4}","disabled=""disabled""")
TempStr = Replace(TempStr,"{$checkbox5}","disabled=""disabled""")
Else
If Dvbbs.Board_Setting(68)="0" or Notanony Then
TempStr = Replace(TempStr,"{$checksign2}","disabled=""disabled""")
If signflag=2 Then signflag=1
End If
TempStr = Replace(TempStr,"{$checksign"&signflag&"}","checked=""checked""")
TempStr = Replace(TempStr,"{$checksign0}","")
TempStr = Replace(TempStr,"{$checksign1}","")
TempStr = Replace(TempStr,"{$checksign2}","")
TempStr = Replace(TempStr,"{$checkbox"&mailflag+2&"}","checked=""checked""")
TempStr = Replace(TempStr,"{$checkbox2}","")
TempStr = Replace(TempStr,"{$checkbox3}","")
TempStr = Replace(TempStr,"{$checkbox4}","")
TempStr = Replace(TempStr,"{$checkbox5}","")
End If
'发帖心情
TempStr = Replace(TempStr,"{$SelectFace}",Expression)
TempStr = Replace(TempStr,"{$boardid}",Dvbbs.BoardID)
TempStr = Replace(TempStr,"{$tools_magicface}","")
TempStr = Replace(TempStr,"{$MagicIframe}","")
If Request("stype")="1" Then
TempStr = Replace(TempStr,"{$isalipay}",template.html(15))
If Dvbbs.UserID > 0 Then
TempStr = Replace(TempStr,"{$paytomail}",Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@useremail").text)
Else
TempStr = Replace(TempStr,"{$paytomail}","")
End If
TempStr = Replace(TempStr,"{$picurl}",Dvbbs.Forum_PicUrl)
Else
TempStr = Replace(TempStr,"{$isalipay}","")
End If
TempStr = Replace(TempStr,"{$poststyle}",PostStyle)
Response.Write TempStr
Response.Write "<script language=""javascript"">"
Response.Write vbNewLine
Response.Write "Maxtitlelength="&Dvbbs.Board_Setting(45)&";"
Response.Write vbNewLine
If Action = 1 Or Action = 3 Then
Response.Write "ispostnew=1;"
Response.Write vbNewLine
End If
Response.Write "MaxConlength="&Dvbbs.Board_Setting(16)&";"
Response.Write vbNewLine
Response.Write "</script>"
Response.Cookies("Dvbbs")=""
End Function
'专题下拉模式读取
Public Function TopicMode(SelectMode)
If Cint(Dvbbs.GroupSetting(65))=0 Then Exit Function
If Replace(Dvbbs.Board_Setting(48),"$$","")="" Then Exit Function
Dim BoardTopic,iii
BoardTopic=Split(Dvbbs.Board_Setting(48),"$$")
For iii=0 to Ubound(BoardTopic)-1
TopicMode=TopicMode+"<option value="&(iii+1)
TopicMode=TopicMode+" >"&BoardTopic(iii)&"</option>"
Next
TopicMode=Replace(SelectMode,"{$TopicMode}",TopicMode)
'加入必选专题判断隐含菜单。2005-3-11 Dv.Yz
TopicMode = TopicMode & "<input type=""hidden"" id=""selecttmode"" value=""" & Cint(Dvbbs.GroupSetting(65)) & """ />"
End Function
'通用判断
Public Function Chk_Post()
If Dvbbs.Board_Setting(43)="1" Then Dvbbs.AddErrCode(72) '本论坛作为分类论坛不允许发贴
If Dvbbs.Board_Setting(1)="1" and Dvbbs.GroupSetting(37)="0" Then Dvbbs.AddErrCode(26) '是否隐藏论坛
If Dvbbs.UserID>0 Then
If Clng(Dvbbs.GroupSetting(52))>0 And DateDiff("s",Dvbbs.UserSession.documentElement.selectSingleNode("userinfo/@joindate").text,Now)<Clng(Dvbbs.GroupSetting(52))*60 Then Response.redirect "showerr.asp?ShowErrType="&Dvbbs.ErrType&"&ErrCodes=<li>"&Replace(template.Strings(21),"{$timelimited}",Dvbbs.GroupSetting(52))&"&action=OtherErr"
If Dvbbs.GroupSetting(62)<>"0" And Not Action = 4 Then
If Clng(Dvbbs.GroupSetting(62))<=Clng(Dvbbs.UserToday(0)) Then Response.redirect "showerr.asp?ShowErrType="&Dvbbs.ErrType&"&ErrCodes=<li>"&Replace(template.Strings(27),"{$topiclimited}",Dvbbs.GroupSetting(62))&"&action=OtherErr"
End If
End If
'可以发布新主题
If Dvbbs.GroupSetting(3)="0" And (Action = 1 Or Action = 3) Then Response.redirect "showerr.asp?ShowErrType="&Dvbbs.ErrType&"&ErrCodes=<li>"&template.Strings(28)&"&action=OtherErr"
'可以回复其他人的主题
If Dvbbs.GroupSetting(5)="0" And (Action = 2) Then Response.redirect "showerr.asp?ShowErrType="&Dvbbs.ErrType&"&ErrCodes=<li>"&template.Strings(29)&"&action=OtherErr"
End Function
'得到回复或引用帖子的判断和相关信息
Public Function Get_Re_TopicInfo()
Dim lockuser,postip
postip=""
Get_M_Request()
ReplyID = Request("replyid")
If ReplyID = "" Or Not IsNumeric(ReplyID) Then ReplyID = AnnounceID
Set Rs=Dvbbs.Execute("select PostTable,GetMoneyType From dv_topic where BoardID="&Dvbbs.BoardID&" And TopicID="&AnnounceID)
If Not (Rs.EOF And Rs.BOF) Then
TotalUseTable=rs(0)
GetMoneyType=rs(1)
Else
Dvbbs.AddErrCode(48)
End If
Set Rs=Nothing
Dvbbs.ShowErr()
If ReplyID = AnnounceID Then
Set Rs=Dvbbs.Execute("select top 1 AnnounceID from "&TotalUseTable&" where RootID="&AnnounceID&" order by AnnounceID")
If Not(Rs.BOF And Rs.EOF) Then
ReplyID=rs(0)
Else
Dvbbs.AddErrCode(48)
End If
Set Rs=Nothing
Dvbbs.ShowErr()
End If
If Request("guest") Then
Set Rs=Dvbbs.Execute("select body,topic,locktopic,username,dateandtime,isbest,UbbList,PostBuyUser,GetMoneyType,signflag,ip from "&TotalUseTable&" Where AnnounceID="&ReplyID&" and postuserid=0")
Else
Set Rs=Dvbbs.Execute("select b.body,b.topic,b.locktopic,b.username,b.dateandtime,b.isbest,u.lockuser,u.UserGroupID,b.UbbList,b.PostBuyUser,b.GetMoneyType,b.signflag,b.ip from "&TotalUseTable&" b inner join [dv_user] u on b.postuserid=u.userid Where b.AnnounceID="&ReplyID)
End If
If Rs.EOF And Rs.BOF Then
Dvbbs.AddErrCode(48)
Else
If Request("guest") Then
postip="("&Split(rs("ip"),".")(0)&"."&Split(rs("ip"),".")(1)&".*.*)"
Else
lockuser=rs("lockuser")
End If
If lockuser=1 Or lockuser=2 Then
Content=""
ElseIf Rs("locktopic")=2 Or Rs("locktopic")=3 Then
Content=""
ElseIf (rs("isbest")=1 and Dvbbs.GroupSetting(41)="0")Then
Content=""
Else
Content=rs("body")
End If
PostBuyUser = Rs("PostBuyUser")
If Rs("GetMoneyType")=3 and Instr(PostBuyUser,"|||$PayMoney|||") Then
If Instr(PostBuyUser,"|||"&Dvbbs.MemberName&"|||")=0 Then
Content=""
End If
End If
Topic=Rs("topic")
UserName=rs("username")
DateAndTime=rs("dateandtime")
UbbLists=Rs("UbbList")
If UserName = Dvbbs.membername Then
If Cint(Dvbbs.GroupSetting(4))=0 Then Dvbbs.AddErrCode(73)
Else
If Cint(Dvbbs.GroupSetting(2))=0 Then Dvbbs.AddErrCode(31)
End If
If Rs("signflag")=2 And Dvbbs.Board_Setting(68)="1" Then
UserName="匿名用户"
postip="("&Split(rs("ip"),".")(0)&Split(rs("ip"),".")(1)&")"
End If
UserName=UserName&postip
End If
Set Rs=Nothing
Dvbbs.ShowErr()
If Topic <> "" Then
Topic = Replace(template.Strings(31),"{$UserName}",UserName) & Topic
Else
Topic = Replace(template.Strings(31),"{$UserName}",UserName) & Content
End If
Topic=cutStr(Topic,50)
Topic=Replace(Replace(Replace(Replace(Topic,"\","\\"),"'","\'"),VbCrLf,"\n"),chr(13),"")
If Request("reply")="true" and Content<>"" Then
Content = reubbcode(Content)
Content = Ubb2Html(Content)
If Dvbbs_Mode=2 Then
Content = "[quote][B]以下是引用[I]"&UserName&"[/I]在"&DateAndTime&"的发言:[/B][BR]"& Content & "[/QUOTE]"
Else
Content = "<DIV class=quote><B>以下是引用<i>"&UserName&"</i>在"&DateAndTime&"的发言:</B><br>"& Content & "</DIV><p>"
End If
Content = Server.HtmlEncode(Content)
Else
Content = ""
End If
If GetMoneyType<>3 Then '购买金币贴不显示回复
'主题跟贴部分信息
Dim PostUserGroup,TempStr1,TempStr2,TempStr3
TempStr1 = Replace(template.html(7),"{$width}",Dvbbs.mainsetting(0)) '<!--post.asp##回帖帖子循环部分-->
Set Rs=Dvbbs.Execute("Select top 10 b.UserName,b.Topic,b.dateandtime,b.body,b.AnnounceID,b.isbest,u.lockuser,u.UserGroupID,b.postbuyuser,b.ubblist,b.IsAudit,b.locktopic,b.signflag,b.ip,b.postuserid from "&TotalUseTable&" b left outer join [dv_user] u on b.postuserid=u.userid where b.boardid="&Dvbbs.boardid&" and b.RootID="&AnnounceID&" order by b.AnnounceID desc")
Do While Not Rs.EOF
If Rs("postuserid")=0 Then
postip="("&Split(rs("ip"),".")(0)&"."&Split(rs("ip"),".")(1)&".*.*)"
lockuser=0
PostUserGroup=7
Else
postip=""
lockuser=rs("lockuser")
PostUserGroup=rs("UserGroupID")
End If
TempStr2 = TempStr1
If Rs("signflag")=2 Then
If Dvbbs.Boardmaster Then
UserName = Rs("UserName")&" (匿名)"
Else
UserName = "匿名用户"
End If
Else
UserName = Rs("UserName")
End If
postbuyuser=rs("postbuyuser")
UbbLists=Rs("UbbList")
If bgcolor="tablebody1" Then
bgcolor="tablebody2"
abgcolor="tablebody1"
Else
bgcolor="tablebody1"
abgcolor="tablebody2"
End If
UserName=UserName&postip
TempStr2 = Replace(TempStr2,"{$tablebody}",bgcolor)
TempStr2 = Replace(TempStr2,"{$username}",Dvbbs.HtmlEncode(UserName))
TempStr2 = Replace(TempStr2,"{$dateandtime}",Rs("DateAndTime"))
If lockuser=2 or Rs("locktopic")=2 Then
TempStr2 = Replace(TempStr2,"{$body}",template.Strings(10))
ElseIf lockuser=1 Then
TempStr2 = Replace(TempStr2,"{$body}",template.Strings(11))
ElseIf Rs("isbest")=1 and Dvbbs.GroupSetting(41)="0" Then
TempStr2 = Replace(TempStr2,"{$body}",template.Strings(12))
Else
If InStr(Ubblists,",39,") > 0 Then
TempStr2 = Replace(TempStr2,"{$body}",dv_ubb.Dv_UbbCode(Rs("body"),PostUserGroup,1,0))
Else
TempStr2 = Replace(TempStr2,"{$body}",dv_ubb.Dv_UbbCode(Rs("body"),PostUserGroup,1,1))
End If
End If
TempStr2 = Replace(TempStr2,"{$topic}",Dvbbs.HtmlEncode(Rs("Topic")))
TempStr3 = TempStr3 & TempStr2
Rs.MoveNext
Loop
Rs.close
Set Rs=Nothing
End If
Get_Re_TopicInfo = TempStr3
End Function
'取得编辑贴页面信息
Public Function Get_Edit_TopicInfo()
Get_M_Request()
ReplyID = Request("replyid")
If ReplyID = "" Or Not IsNumeric(ReplyID) Then Dvbbs.AddErrCode(30)
Dvbbs.ShowErr()
ReplyID = Clng(ReplyID)
Set Rs=Dvbbs.Execute("select PostTable,TopicMode,Expression from dv_topic where TopicID="&AnnounceID)
If Rs.Eof And Rs.Bof Then
Dvbbs.AddErrCode(48)
Else
TotalUseTable = Rs(0)
MyTopicMode = Rs(1)
iMagicFace = Split(Rs(2),"|")
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -