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

📄 logic_forum.asp

📁 学习管理 校友录有关的系统 本人学习的结果 与大家共享
💻 ASP
📖 第 1 页 / 共 2 页
字号:
		Exit Function
	End If
	If GBL_objPubDB.intRSNum > 0 Then
		Call GBL_objException.catchErr(E_USER_PUB,"该板块名已存在")
		SaveForumLogic = False
		Exit Function
	End If
	
	'== check master format
	strMaster = objFormData.Item("Master")
	If strMaster <> "" Then
		arrTmp = split(strMaster,"|")
		For i = Lbound(arrTmp) To Ubound(arrTmp)
			If arrTmp(i) = "" Then
				Call GBL_objException.catchErr(E_USER_PUB,"版主填写错误")
				SaveForumLogic = False
				Exit Function
			End If
		Next
	End If

	'== get old forum master and clear user's master field
	GBL_objPubDB.Clear()
	GBL_objPubDB.AllSQL = "SELECT FORUM_MASTER FROM CLASS_FORUM WHERE FORUM_ID=" & intForumId
	If Not GBL_objPubDB.SQLRSExecute() Then
		SaveForumLogic = False
		Exit Function
	End If
	Dim n,strNowUserOldMaster
	strOldMaster = Trim(GBL_objPubDB.objPubRS("FORUM_MASTER"))
	If strOldMaster <> "" Then
		arrOldMaster = split(strOldMaster,"|")
		For n = Lbound(arrOldMaster) To Ubound(arrOldMaster)
			GBL_objPubDB.Clear()
			GBL_objPubDB.AllSQL = "SELECT USER_IS_MASTER FROM CLASS_USER WHERE USER_ACCOUNT='" & arrOldMaster(n) & "'"
			If Not GBL_objPubDB.SQLRSExecute() Then
				SaveForumLogic = False
				Exit Function
			End If
			strNowUserOldMaster = GBL_objPubDB.objPubRS("USER_IS_MASTER")
			strNowUserOldMaster = Replace(strNowUserOldMaster,"|" & intForumId,"")

			GBL_objPubDB.Clear()
			GBL_objPubDB.AllSQL = "UPDATE CLASS_USER SET USER_IS_MASTER='" & strNowUserOldMaster & "' WHERE USER_ACCOUNT='" &  arrOldMaster(n) & "'"
			If Not GBL_objPubDB.SQLExecute() Then
				SaveForumLogic = False
				Exit Function
			End If
		Next
	End If

	strTmp = ""
	'== 校验斑竹是否存在
	If strMaster <> "" Then
		arrTmp = split(strMaster,"|")
		For i = Lbound(arrTmp) To Ubound(arrTmp)
			GBL_objPubDB.Clear()
			GBL_objPubDB.AllSQL = "SELECT USER_REALNAME,USER_IS_MASTER FROM CLASS_USER WHERE USER_ACCOUNT='" & Trim(arrTmp(i)) & "' AND USER_AUTHEN<>9"
			If Not GBL_objPubDB.SQLRSExecute() Then
				SaveForumLogic = False
				Exit Function
			End If
			If GBL_objPubDB.intRSNum <= 0 Then
				Call GBL_objException.catchErr(E_USER_PUB,"您所设定的版主" & arrTmp(i) & "不存在")
				SaveForumLogic = False
				Exit Function
			End If
			strTmp = strTmp & "|" & GBL_objPubDB.objPubRS(0)

			'== check user master is set
			strNowUserMaster = Trim(GBL_objPubDB.objPubRS("USER_IS_MASTER"))
			arrNowUserMaster = split(strNowUserMaster,"|")
			Flag = true
			For k = Lbound(arrNowUserMaster) To Ubound(arrNowUserMaster)
				If Cint(arrNowUserMaster(k)) = Cint(GetRSId) Then
					Flag = false
					Exit For
				End If
			Next
			strNowUserMaster = strNowUserMaster & "|" & GetRSId
			'== update user field:USER_IS_MASTER
			'==	format:forumid1|formid2|...
			If Flag Then
				GBL_objPubDB.Clear()
				GBL_objPubDB.AllSQL = "UPDATE CLASS_USER SET USER_IS_MASTER='" & strNowUserMaster & "' WHERE USER_ACCOUNT='" & Trim(arrTmp(i)) & "'  AND USER_AUTHEN<>9"
				If Not GBL_objPubDB.SQLExecute() Then
					SaveForumLogic = False
					Exit Function
				End If
			End If
		Next
		
	End If

	strMasterName = strTmp
	If Left(strMasterName,1) = "|" Then
		strMasterName = Right(strMasterName,Len(strMasterName) - 1)
	End If

	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_FORUM"
	GBL_objPubDB.SQLType = "UPDATE"
	GBL_objPubDB.Where = "FORUM_ID=" & intForumId
	GBL_objPubDB.AddField "FORUM_NAME",strName
	GBL_objPubDB.AddField "FORUM_DES",strDes
	GBL_objPubDB.AddField "FORUM_CATE_ID",intCate
	GBL_objPubDB.AddField "FORUM_ICO",strIco
	GBL_objPubDB.AddField "FORUM_ORDER",intOrder
	GBL_objPubDB.AddField "FORUM_READ_ONLY",intReadOnly
	GBL_objPubDB.AddField "FORUM_REG_ONLY",intRegOnly
	GBL_objPubDB.AddField "FORUM_VIP_ONLY",intVipOnly
	GBL_objPubDB.AddField "FORUM_ADMIN_ONLY",intAdminOnly
	GBL_objPubDB.AddField "FORUM_MASTER",strMaster
	GBL_objPubDB.AddField "FORUM_MASTER_NAME",strMasterName
	GBL_objPubDB.AddField "FORUM_LAST_TIME",Now()
	GBL_objPubDB.AddField "FORUM_LAST_ADMIN_ID",GBL_intAdminId
	GBL_objPubDB.AddField "FORUM_HOME_SHOW",intHomeShow
	If Not GBL_objPubDB.SQLExecute() Then
		SaveForumLogic = False
		Exit Function
	End If
	SaveForumLogic = True
End Function

''===================================================================
'= Function    : RemoveForumsLogic()
'= Time		   : Created At 2006-5-5
'= Input	   : strWhere : 符合条件
'= Return      : boolean
'= Description : 删除论坛板块
'==================================================================='
Function RemoveForumsLogic(strWhere)
	'== 清空版主身份???
	'== 删除回帖
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_REPLY"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "REPLY_FORUM_ID IN (SELECT FORUM_ID FROM CLASS_FORUM WHERE 1=1 " & strWhere & ")"
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveForumsLogic = False
		Exit Function
	End If

	'== 删除帖子
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_TOPICS"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "TOPICS_FORUM_ID IN (SELECT FORUM_ID FROM CLASS_FORUM WHERE 1=1 " & strWhere & ")"
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveForumsLogic = False
		Exit Function
	End If

	'== 删除板块记录
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_FORUM"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where =  " 1=1 " & strWhere 
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveForumsLogic = False
		Exit Function
	End If

	RemoveForumsLogic = True
End Function

''===================================================================
'= Function    : RemoveCatesLogic()
'= Time		   : Created At 2006-5-5
'= Input	   : strWhere : 符合条件
'= Return      : boolean
'= Description : 删除论坛分类
'==================================================================='
Function RemoveCatesLogic(strWhere)
	'== 清空版主身份???
	'== 删除回帖
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_REPLY"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "REPLY_CATE_ID IN (SELECT CATE_ID FROM CLASS_CATE WHERE 1=1 " & strWhere & ")"
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveCatesLogic = False
		Exit Function
	End If

	'== 删除主贴
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_TOPICS"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "TOPICS_CATE_ID IN (SELECT CATE_ID FROM CLASS_CATE WHERE 1=1 " & strWhere & ")"
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveCatesLogic = False
		Exit Function
	End If

	'== 删除板块
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_FORUM"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "FORUM_CATE_ID IN (SELECT CATE_ID FROM CLASS_CATE WHERE 1=1 " & strWhere & ")"
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveCatesLogic = False
		Exit Function
	End If
	'== 删除分类
	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_CATE"
	GBL_objPubDB.SQLType = "DELETE"
	GBL_objPubDB.Where = "1=1 " & strWhere 
	If Not GBL_objPubDB.SQLExecute() Then
		RemoveCatesLogic = False
		Exit Function
	End If
	RemoveCatesLogic = True
End Function

''===================================================================
'= Function    : CreateForumLogic()
'= Time		   : Created At 2006-5-5
'= Input	   : intAdminId : 操作管理员ID
'= Input	   : objFormData : 表单数据
'= Return      : boolean
'= Description : 创建新的论坛板块
'==================================================================='
Function CreateForumLogic(intAdminId,objFormData)
	Dim strName,strDes,intCateId
	Dim strSql

	strName = objFormData.Item("Name")
	strDes = objFormData.Item("Des")
	intCateId = objFormData.Item("CateId")

	'== 判断重复
	strSql = " AND FORUM_NAME='" & strName & "'"
	If Not GetForumsLogic(strSql) Then
		CreateForumLogic = False
		Exit Function
	End If
	If GBL_objPubDB.intRSNum > 0 Then
		Call GBL_objException.catchErr(E_USER_PUB,"该板块名已存在")
		CreateForumLogic = False
		Exit Function
	End If

	GBL_objPubDB.Clear()
	GBL_objPubDB.TableName = "CLASS_FORUM"
	GBL_objPubDB.SQLType = "INSERT"
	GBL_objPubDB.AddField "FORUM_NAME",strName
	GBL_objPubDB.AddField "FORUM_DES",strDes
	GBL_objPubDB.AddField "FORUM_CATE_ID",intCateId
	GBL_objPubDB.AddField "FORUM_ORDER",1
	GBL_objPubDB.AddField "FORUM_ICO",CONST_FORUM_ICO
	GBL_objPubDB.AddField "FORUM_ADD_ADMIN_ID",intAdminId
	GBL_objPubDB.AddField "FORUM_LAST_ADMIN_ID",intAdminId
	GBL_objPubDB.AddField "FORUM_ADD_TIME",Now()
	GBL_objPubDB.AddField "FORUM_LAST_TIME",Now()
	If Not GBL_objPubDB.SQLExecute() Then
		CreateForumLogic = False
		Exit Function
	End If
	CreateForumLogic = True
End Function


''===================================================================
'= Function    : GetMaxForumLogic()
'= Time		   : Created At 2006-5-5
'= Input	   : strWhere : 符合条件
'= Input	   : intForumId : 表单数据
'= Return      : boolean
'= Description : 获得最新一条板块记录ID
'==================================================================='
Function GetMaxForumLogic(strWhere,ByRef intForumId)
	GBL_objPubDB.Clear()
	GBL_objPubDB.AllSQL = "SELECT MAX(FORUM_ID) FROM CLASS_FORUM WHERE 1=1 " & strWhere
	If Not GBL_objPubDB.SQLRSExecute() Then
		GetMaxForumLogic = False
		Exit Function
	End If
	intForumId = GBL_objPubDB.objPubRS(0)
	GetMaxForumLogic = True
End Function
%>

⌨️ 快捷键说明

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