⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 post.asp

📁 现在好了
💻 ASP
📖 第 1 页 / 共 2 页
字号:
<!--#include file="conn.asp"-->
<!--#include file="inc/const.asp"-->
<!--#include file="inc/dv_clsother.asp"-->
<!--#include file="inc/dv_ubbcode.asp"-->
<%
If Dvbbs.BoardID < 1 Then
	Response.Write "参数错误"
	Response.End
End If
Dim totalusetable,AnnounceID,ReplyID
Dim MyPost,UserName
Dim postbuyuser,bgcolor,Dvbbs_Mode
Dim ReplyID_a,AnnounceID_a,RootID_a,T_GetMoneyType
Dvbbs.Loadtemplates("post")
Set MyPost = New Dvbbs_Post
Dvbbs.Stats = MyPost.ActionName
Dvbbs.Nav()
Dvbbs.Head_var 1,Dvbbs.BoardNode.attributes.getNamedItem("depth").text,"",""
Dim dv_ubb,abgcolor
Dim EmotPath
EmotPath=Split(Dvbbs.Forum_emot,"|||")(0)		'em心情路径
Set dv_ubb=new Dvbbs_UbbCode
dv_ubb.posttype=1
MyPost.Show_Post_Body
Set MyPost = Nothing
Dvbbs.ActiveOnline
Dvbbs.Footer

Class Dvbbs_Post
	Public Action,ActionName,Star,Page,IsAudit,ToAction
	Private ParentID,RootID,Topic,Content,char_changed,signflag,mailflag,iLayer,iOrders
	Private TopTopic,IsTop,LastPost,LastPost_1,UpLoadPic_n,ihaveupfile,smsuserlist,upfileinfo
	Private UserPassWord,UserPost,GroupID,UserClass,DateAndTime,DateTimeStr,Expression,MyLastPostTime,LastPostTimes
	Private LockTopic,MyLockTopic,MyIsTop,MyIsTopAll,MyTopicMode
	Private CanLockTopic,CanTopTopic,CanTopTopic_a,CanEditPost,Rs,SQL,i
	Private vote,votetype,votenum,votetimeout,voteid,isvote
	Private GetMoneyType
	Private FoundUseMagic,iMagicFace,tMagicMoney,tMagicTicket
	Private Sub Class_Initialize()
		'管理员及该版版主允许在锁定论坛发帖
		If Dvbbs.Board_Setting(0)="1" And Not (Dvbbs.Master or Dvbbs.Boardmaster) Then
			Response.redirect "showerr.asp?action=lock&boardid="&dvbbs.boardID&"" 
		End If
		If Dvbbs.IsReadonly() And Not Dvbbs.Master  Then Response.redirect "showerr.asp?action=readonly&boardid="&dvbbs.boardID&"" 
		Action = Request("Action")
		TotalUseTable = Dvbbs.NowUseBBS
		Select Case Action
		Case "new"
			Action = 1
			ActionName = template.Strings(0)
			ToAction = "SavePost.asp?Action=snew&boardid="&Dvbbs.BoardID
			If Dvbbs.GroupSetting(3)="0" Then Dvbbs.AddErrCode(70)
		Case "re"
			Action = 2
			ActionName = template.Strings(2)
			ToAction = "SavePost.asp?Action=sre&method=Topic&boardid="&Dvbbs.BoardID
			If Dvbbs.GroupSetting(5)="0" then Dvbbs.AddErrCode(71)
		Case "vote"
			Action = 3
			ActionName = template.Strings(4)
			ToAction = "SavePost.asp?Action=svote&boardid="&Dvbbs.BoardID
			If Dvbbs.GroupSetting(8)="0" then Dvbbs.AddErrCode(56)
		Case "edit"
			Action = 4
			ActionName = template.Strings(6)
			ToAction = "SavePost.asp?Action=sedit&boardid="&Dvbbs.BoardID
		Case Else
			Action = 1
			ActionName = template.Strings(0)
		End Select
		Star = Request("star")
		If Star = "" Or Not IsNumeric(Star) Then Star = 1
		Star = Clng(Star)
		Page = Request("page")
		If Page = "" Or Not IsNumeric(Page) Then Page = 1
		Page = Clng(Page)
		IsAudit = Cint(Dvbbs.Board_Setting(3))
		FoundUseMagic = 0
	End Sub
	'Action 1=发贴、2=回帖、3=投票、4=编辑 主体部分
	Public Function Show_Post_Body()
		Chk_Post()
		Dim TempStr,TempArray,TempStr1,TempStr2,PostType
		signflag=1
		mailflag=0
		MyTopicMode=0
		If Dvbbs.UserID = 0 Then Dvbbs.AddErrCode(6)
		Dvbbs.ShowErr()
		TempStr = template.html(0)
		TempArray = Split(template.html(6),"||")
		If IsAudit = 1 Then TempStr = Replace(TempStr,"{$auditinfo}",template.Strings(9))
		TempStr = Replace(TempStr,"{$auditinfo}","")
		If Action=1 Then TempStr = Replace(TempStr,"{$topicmode}",TopicMode(TempArray(4)))
		If signflag=1 Then TempStr = Replace(TempStr,"{$checkbox1}","checked")
		TempStr = Replace(TempStr,"{$checkbox1}","")

		Select Case mailflag
		Case 0
			TempStr = Replace(TempStr,"{$checkbox2}","checked")
		Case 1
			TempStr = Replace(TempStr,"{$checkbox3}","checked")
		Case 2
			TempStr = Replace(TempStr,"{$checkbox4}","checked")
		Case 3
			TempStr = Replace(TempStr,"{$checkbox5}","checked")
		Case Else
			TempStr = Replace(TempStr,"{$checkbox2}","checked")
		End Select
		TempStr = Replace(TempStr,"{$checkbox2}","")
		TempStr = Replace(TempStr,"{$checkbox3}","")
		TempStr = Replace(TempStr,"{$checkbox4}","")
		TempStr = Replace(TempStr,"{$checkbox5}","")
		If Dvbbs.GroupSetting(51)="1" And (Action=1 Or Action=3) Then TempStr = Replace(TempStr,"{$useraction}",TempArray(3))
		
		'话题
		TempStr1 = Split(template.Strings(8),",")
		For i = 0 To Ubound(TempStr1)
			TempStr2 = TempStr2 & "<option value="&TempStr1(i)&">"&TempStr1(i)&"</option>"
		Next
		TempStr = Replace(TempStr,"{$topictype}",TempStr2)
		'特殊标题
		If Dvbbs.GroupSetting(51)="1" Then TempStr = Replace(TempStr,"{$topicstatsinfo}",TempArray(1))
		TempStr = Replace(TempStr,"{$topicstatsinfo}","")
		'验证码Board_Setting(4)
		If Dvbbs.Board_Setting(4)="0" Then
			TempStr = Replace(TempStr,"{$getcode}","")
		Else
			TempArray(5)= Replace(TempArray(5),"{$codestr}",Dvbbs.GetCode&"<span id=GetCode></span>")
			TempStr = Replace(TempStr,"{$getcode}",TempArray(5))
		End If
		'头像
		TempStr = Replace(TempStr,"{$Forum_PostFace}",Dvbbs.Forum_PostFace)
		TempStr = Replace(TempStr,"{$SelectFace}",Expression)
		'上传
		If (Dvbbs.GroupSetting(7)="1" Or Dvbbs.GroupSetting(7)="2") and Dvbbs.Forum_setting(43)<>999 Then TempStr = Replace(TempStr,"{$uploadinfo}",Temp_FileUpload)
		TempStr = Replace(TempStr,"{$uploadinfo}","")
		'标签判断部分
		TempStr = Replace(TempStr,"{$ihtml}",Dvbbs.Board_Setting(5))
		TempStr = Replace(TempStr,"{$iubb}",Dvbbs.Board_Setting(6))
		TempStr = Replace(TempStr,"{$iimg}",Dvbbs.Board_Setting(7))
		TempStr = Replace(TempStr,"{$iflash}",Dvbbs.Board_Setting(44))
		TempStr = Replace(TempStr,"{$imidea}",Dvbbs.Board_Setting(9))
		TempStr = Replace(TempStr,"{$iemot}",Dvbbs.Board_Setting(8))
		TempStr = Replace(TempStr,"{$iupload}",Dvbbs.GroupSetting(7))
		TempStr = Replace(TempStr,"{$bodylimited}",Dvbbs.Board_Setting(16))
		TempStr = Replace(TempStr,"{$imoney}",Dvbbs.Board_Setting(10))
		TempStr = Replace(TempStr,"{$ipoint}",Dvbbs.Board_Setting(11))
		TempStr = Replace(TempStr,"{$iusercp}",Dvbbs.Board_Setting(12))
		TempStr = Replace(TempStr,"{$ipower}",Dvbbs.Board_Setting(13))
		TempStr = Replace(TempStr,"{$iarticle}",Dvbbs.Board_Setting(14))
		TempStr = Replace(TempStr,"{$ireplyview}",Dvbbs.Board_Setting(15))
		TempStr = Replace(TempStr,"{$iusemoney}",Dvbbs.Board_Setting(23))
		TempStr = Replace(TempStr,"{$iuseusername}",Dvbbs.Board_Setting(56))	
		'ubb部分
		PostType = 1
		TempStr = Replace(TempStr,"{$PostType}",PostType)
		TempStr = Replace(TempStr,"{$getubb}",Temp_UBBHTML())
		'发贴心情
		TempStr = Replace(TempStr,"{$Forum_emot}",Dvbbs.Forum_emot)
		TempStr = Replace(TempStr,"{$Forum_sn}",Dvbbs.Forum_sn)
		TempStr = Replace(TempStr,"{$star}",Star)
		TempStr = Replace(TempStr,"{$page}",Page)
		TempStr = Replace(TempStr,"{$actionname}",ActionName)
		TempStr = Replace(TempStr,"{$toaction}",ToAction)
		TempStr = Replace(TempStr,"{$topiclimited}",Dvbbs.Board_Setting(45))
		TempStr = Replace(TempStr,"{$width}",Dvbbs.mainsetting(0))
		TempStr = Replace(TempStr,"{$alertcolor}",Dvbbs.mainsetting(1))
		TempStr = Replace(TempStr,"{$Forum_Emot}",Replace(Dvbbs.Forum_Emot,"|||","<><><>"))
		TempStr = Replace(TempStr,"{$htmltool}",template.html(12))
		Dvbbs_Mode = Dvbbs.GroupSetting(67)
		If Dvbbs.Board_Setting(5) = "0" Then Dvbbs_Mode = 2
		TempStr = Replace(TempStr,"{$Dvbbs_Mode}",Dvbbs_Mode)

		If Dvbbs.GroupSetting(62)="0"  Then
			TempStr = Replace(TempStr,"{$AffordPost}",template.Strings(30))
		Else
			TempStr = Replace(TempStr,"{$AffordPost}",Dvbbs.GroupSetting(62))
		End If
		TempStr = Replace(TempStr,"{$UserToday}",Dvbbs.UserToday(0))
		'Action 1=发贴、2=回帖、3=投票、4=编辑 主体部分
		If Dvbbs.GroupSetting(59)<>1 Then TempStr = Replace(TempStr,"{$MoneyPostInfo}","")
		Select Case Action
		Case 1
			TempStr = Replace(TempStr,"{$rehiddeninput}","")
			TempStr = Replace(TempStr,"{$reinfo1}","")
			TempStr = Replace(TempStr,"{$edithiddeninput}","")
			TempStr = Replace(TempStr,"{$voteinfo}","")
			TempStr = Replace(TempStr,"{$useraction}","")
			TempStr = Replace(TempStr,"{$retopicloop}","")
			TempStr = Replace(TempStr,"{$membername}",Dvbbs.MemberName)
			TempStr = Replace(TempStr,"{$memberword}","**********")
			TempStr = Replace(TempStr,"{$content}",Server.htmlencode(Session(Dvbbs.CacheName & "UserID")(Dvbbs.UserInfoCount-1)))
			TempStr = Replace(TempStr,"{$retitle}","")
			TempStr = Replace(TempStr,"{$topic}","")
			TempStr = Replace(TempStr,"{$TopModeSelect}",MyTopicMode)
			TempStr = Replace(TempStr,"{$totalusetable}",TotalUseTable)
			TempStr = Replace(TempStr,"{$MoneyPostInfo}",TempArray(6))
			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))
			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
		Case 2
			TempStr = Replace(TempStr,"{$voteinfo}","")
			TempStr = Replace(TempStr,"{$edithiddeninput}","")
			TempStr = Replace(TempStr,"{$topic}","")
			Dim retopicloop
			retopicloop = Get_Re_TopicInfo
			retopicloop=Replace(retopicloop,"$","&#36;")
			TempStr = Replace(TempStr,"{$membername}",Dvbbs.MemberName)
			TempStr = Replace(TempStr,"{$memberword}","**********")
			TempStr = Replace(TempStr,"{$useraction}","")
			TempStr = Replace(TempStr,"{$retitle}",Topic)
			TempStr = Replace(TempStr,"{$rehiddeninput}",Re_HiddenInput())
			TempStr = Replace(TempStr,"{$reinfo1}",TempArray(0))
			TempStr = Replace(TempStr,"{$topicmode}","")
			TempStr = Replace(TempStr,"{$retopicloop}",retopicloop)
			TempStr = Replace(TempStr,"{$TopModeSelect}",MyTopicMode)
			TempStr = Replace(TempStr,"{$totalusetable}",TotalUseTable)
			If Session(Dvbbs.CacheName & "UserID")(Dvbbs.UserInfoCount-1)<>""  And Trim(Content)="" Then
				TempStr = Replace(TempStr,"{$content}",Server.htmlencode(Session(Dvbbs.CacheName & "UserID")(Dvbbs.UserInfoCount-1)))
			Else
				TempStr = Replace(TempStr,"{$content}",Content)
			End If
			TempStr = Replace(TempStr,"&#36;","$")
			If GetMoneyType=2 Then
				TempStr = Replace(TempStr,"{$MoneyPostInfo}",TempArray(7))
			Else
				TempStr = Replace(TempStr,"{$MoneyPostInfo}","")
			End If
		Case 3
			TempStr1 = template.html(1)
			TempStr1 = Replace(TempStr1,"{$votelimited}",Dvbbs.Board_Setting(32))
			TempStr1 = Replace(TempStr1,"{$posttimesel}",TempArray(2))
			TempStr = Replace(TempStr,"{$membername}",Dvbbs.MemberName)
			TempStr = Replace(TempStr,"{$memberword}","**********")
			TempStr = Replace(TempStr,"{$voteinfo}",TempStr1)
			TempStr = Replace(TempStr,"{$topicmode}",TopicMode(TempArray(4)))
			TempStr = Replace(TempStr,"{$rehiddeninput}","")
			TempStr = Replace(TempStr,"{$reinfo1}","")
			TempStr = Replace(TempStr,"{$edithiddeninput}","")
			TempStr = Replace(TempStr,"{$TopModeSelect}",MyTopicMode)
			TempStr = Replace(TempStr,"{$useraction}","")
			TempStr = Replace(TempStr,"{$retopicloop}","")
			TempStr = Replace(TempStr,"{$totalusetable}",TotalUseTable)
			TempStr = Replace(TempStr,"{$content}",Server.htmlencode(Session(Dvbbs.CacheName & "UserID")(Dvbbs.UserInfoCount-1)))
			TempStr = Replace(TempStr,"{$retitle}","")
			TempStr = Replace(TempStr,"{$topic}","")
			TempStr = Replace(TempStr,"{$MoneyPostInfo}",TempArray(6))
		Case 4
			Get_Edit_TopicInfo()
			TempStr = Replace(TempStr,"{$membername}",Dvbbs.MemberName)
			TempStr = Replace(TempStr,"{$memberword}",Dvbbs.memberword)
			TempStr = Replace(TempStr,"{$rehiddeninput}","")
			TempStr = Replace(TempStr,"{$reinfo1}","")
			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
		TempStr = Replace(TempStr,"{$boardid}",Dvbbs.BoardID)
		TempStr = Replace(TempStr,"{$tools_magicface}","")
		TempStr = Replace(TempStr,"{$MagicIframe}","")
		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.MyUserInfo(14),Now)<Clng(Dvbbs.GroupSetting(52))*60 Then Response.redirect "showerr.asp?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?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?ErrCodes=<li>"&template.Strings(28)&"&action=OtherErr"
			If Dvbbs.GroupSetting(5)="0" And (Action = 2) Then Response.redirect "showerr.asp?ErrCodes=<li>"&template.Strings(29)&"&action=OtherErr"
	End Function
	'得到回复或引用帖子的判断和相关信息
	Public Function Get_Re_TopicInfo()
		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()

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -