<% server.scripttimeout = 20000 dim types, objRS, objCon, id, SQL, catID, allCat dim sort, IsPrivate, moderator, moderatorName, PGDCode dim allowUpload, modUpload, memUpload, guestUpload dim modUpSize, modUpExt, memUpSize, memUpExt, guestUpSize, guestUpExt dim enableRating, isModerated, NoIMGinPosts, groupPermissionOn,uploadNum types = request("types") id = request("id") SELECT CASE types Case "addCat" Dim lastCatID, lastsort set objRS = server.CreateObject("adodb.recordset") with objRS .CursorLocation=adUseClient .open "SELECT Max(CatID) as CatID, Max(sort) as sort FROM pgd_category", datastore, , adLockOptimistic, adcmdText lastCatID = .fields("CatID") lastSort = .fields("sort") .close .open "SELECT CatID, CatName, sort FROM pgd_category WHERE (1=0)", datastore, , adLockOptimistic, adcmdText .addnew .fields("CatID") = lastCatID + 1 .fields("CatName") = request("catName") .fields("sort") = lastSort + 1 .update .close end with set objRS = nothing call updateCat response.redirect ("admin_ForumM.asp") response.end Case "deleteCat" SQL="DELETE FROM pgd_category where CatID="&id set objCon = server.CreateObject("adodb.connection") with objCon .open datastore .execute SQL, , adCmdText + adExecuteNoRecords .close end with set objCon = nothing call updateCat response.redirect ("admin_ForumM.asp") response.end Case "editCat" dim catName catName=request("catName") SQL="UPDATE pgd_category SET CatName='"& catName &"' WHERE catid = "&id set objCon = server.CreateObject("adodb.connection") with objCon .open datastore .execute SQL, , adCmdText + adExecuteNoRecords .close end with set objCon = nothing call updateCat response.redirect ("admin_ForumM.asp") response.end Case "moveCat" dim move, arrMove, cat1, cat2 move = request("move") arrMove = split(move,",") set objRS = server.CreateObject("adodb.recordset") with objRS .open "SELECT CatID, sort FROM pgd_category", datastore, , , adCmdText .filter = "sort = "& arrMove(0) cat1 = .fields("catID") .filter = "sort = "& arrMove(1) cat2 = .fields("catID") set objcon = .activeconnection .close end with set objRS = nothing with objCon SQL = "UPDATE pgd_category SET sort="&arrMove(0)&" WHERE catID="&cat2 .execute SQL, , adCmdText+adExecuteNoRecords SQL = "UPDATE pgd_category SET sort="&arrMove(1)&" WHERE catID="&cat1 .execute SQL, , adCmdText+adExecuteNoRecords .close end with set objCon = nothing erase arrMove call updateCat response.redirect ("admin_ForumM.asp") response.end Case "moveForum" dim Forum1, Forum2 catID = request("catID") move = request("move") arrMove = split(move,",") set objRS = server.CreateObject("adodb.recordset") with objRS .open "SELECT ForumID, sort FROM pgd_forums WHERE catID="& catID, datastore, , , adCmdText .filter = "sort = "& arrMove(0) Forum1 = .fields("ForumID") .filter = "sort = "& arrMove(1) Forum2 = .fields("ForumID") set objcon = .activeconnection .close end with set objRS = nothing with objCon SQL = "UPDATE pgd_forums SET sort="&arrMove(0)&" WHERE ForumID="&Forum2&" AND catID="& catID .execute SQL, , adCmdText+adExecuteNoRecords SQL = "UPDATE pgd_forums SET sort="&arrMove(1)&" WHERE ForumID="&Forum1&" AND catID="& catID .execute SQL, , adCmdText+adExecuteNoRecords .close end with set objCon = nothing erase arrMove call updateForum response.redirect ("admin_ForumM.asp?types=selectForum&catID="& catID) response.end Case "addForum" PGDCode = CheckedOrNot(request.form("PGDCode")) IsPrivate = CheckedOrNot(request.form("IsPrivate")) allowUpload = CheckedOrNot(request.form("allowUpload")) enableRating = request.form("enableRating") NoIMGinPosts = CheckedOrNot(request.form("NoIMGinPosts")) isModerated = CheckedOrNot(request.form("isModerated")) groupPermissionOn = CheckedOrNot(request.form("groupPermissionOn")) uploadNum = abs(cint(request.form("uploadNum"))) uploadNum = iff(uploadNum=0,1,uploadNum) modUpload = checkUploadSize(request.form("modUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("modUpExt")),"/") memUpload = checkUploadSize(request.form("memUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("memUpExt")),"/") guestUpload = checkUploadSize(request.form("guestUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("guestUpExt")),"/") dim maxID catID = request.form("catID") set objRS = server.CreateObject("adodb.recordset") with objRS .open "SELECT Max(ForumID) as maxID FROM pgd_forums;", datastore, , , adCmdText maxID = .fields("maxID") if not isNull(maxID) then maxID = maxID + 1 else maxID = 1 end if .close .open "SELECT Max(sort) as maxSort FROM pgd_forums WHERE catID="&catID, datastore, , , adCmdText sort = .fields("maxSort") if not isNull(sort) then sort = sort + 1 else sort = 1 end if .close .open "SELECT * FROM pgd_forums WHERE (0=1)", datastore, , adLockOptimistic, adCmdText .addNew .fields("ForumID") = maxID .fields("ForumTitle") = left(""&request.form("ForumTitle"),50) .fields("ForumDesc") = request.form("ForumDesc") .fields("IsPrivate") = IsPrivate .fields("PGDCode") = PGDCode .fields("PrivateUserRight") = request.form("privateUserRight") .fields("GuestRight") = request.form("guestRight") .fields("MemberRight") = request.form("authenticatedRight") .fields("allowsubscribe") = request.form("allowsubscribe") .fields("allowUpload") = allowUpload .fields("modUpload") = modUpload .fields("memUpload") = memUpload .fields("guestUpload") = guestUpload .fields("allowpoll") = request.form("allowpoll") .fields("allowvote") = request.form("allowvote") .fields("timefilter") = CheckDelimitedFormat(request.form("timefilter"),",") .fields("deleteRight") = request.form("deleteRight") .fields("enableRating") = enableRating .fields("isModerated") = isModerated .fields("NoIMGinPosts") = NoIMGinPosts .fields("ttPaging") = request.form("ttPaging") .fields("upRestriction") = upDownRestriction(request.form("upRestriction")) .fields("downRestriction") = upDownRestriction(request.form("downRestriction")) .fields("sortOrder") = request.form("sortOrder") .fields("needRevision") = CheckedOrNot(request.form("needRevision")) .fields("smode") = request.form("smode") .fields("groupPermissionOn") = groupPermissionOn .fields("uploadNum") = uploadNum .fields("sort") = sort .fields("catID") = catID .upDate .close end with set objRS = nothing call updateForum response.redirect ("admin_ForumM.asp?types=editForum&catID="& catID &"&id="&maxID) response.end Case "editForum" PGDCode = CheckedOrNot(request.form("PGDCode")) IsPrivate = CheckedOrNot(request.form("IsPrivate")) allowUpload = CheckedOrNot(request.form("allowUpload")) enableRating = request.form("enableRating") NoIMGinPosts = CheckedOrNot(request.form("NoIMGinPosts")) isModerated = CheckedOrNot(request.form("isModerated")) groupPermissionOn = CheckedOrNot(request.form("groupPermissionOn")) uploadNum = abs(cint(request.form("uploadNum"))) uploadNum = iff(uploadNum=0,1,uploadNum) modUpload = checkUploadSize(request.form("modUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("modUpExt")),"/") memUpload = checkUploadSize(request.form("memUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("memUpExt")),"/") guestUpload = checkUploadSize(request.form("guestUpSize"))&"|"&CheckDelimitedFormat(SQLStrip(request.form("guestUpExt")),"/") catID = request.form("catID") set objRS = server.CreateObject("adodb.recordset") with objRS .open "SELECT * FROM pgd_forums WHERE forumid="&request.form("forumid"), datastore, , adLockOptimistic, adCmdText .fields("ForumTitle") = left(""&request.form("ForumTitle"),50) .fields("ForumDesc") = request.form("ForumDesc") .fields("IsPrivate") = IsPrivate .fields("PGDCode") = PGDCode .fields("PrivateUserRight") = request.form("privateUserRight") .fields("GuestRight") = request.form("guestRight") .fields("MemberRight") = request.form("authenticatedRight") .fields("allowsubscribe") = request.form("allowsubscribe") .fields("allowUpload") = allowUpload .fields("modUpload") = modUpload .fields("memUpload") = memUpload .fields("guestUpload") = guestUpload .fields("allowpoll") = request.form("allowpoll") .fields("allowvote") = request.form("allowvote") .fields("timefilter") = CheckDelimitedFormat(request.form("timefilter"),",") .fields("deleteRight") = request.form("deleteRight") .fields("enableRating") = enableRating .fields("isModerated") = isModerated .fields("NoIMGinPosts") = NoIMGinPosts .fields("ttPaging") = request.form("ttPaging") .fields("upRestriction") = upDownRestriction(request.form("upRestriction")) .fields("downRestriction") = upDownRestriction(request.form("downRestriction")) .fields("sortOrder") = request.form("sortOrder") .fields("needRevision") = CheckedOrNot(request.form("needRevision")) .fields("groupPermissionOn") = groupPermissionOn .fields("uploadNum") = uploadNum .fields("smode") = request.form("smode") .upDate .close end with set objRS = nothing call updateForum response.redirect ("admin_ForumM.asp?types=editForum&catID="& catID &"&id="&request("forumid")) response.end Case "deleteforum" SQL="DELETE FROM pgd_forums where forumID="&id set objCon = server.CreateObject("adodb.connection") with objCon .open datastore .execute SQL, , adCmdText + adExecuteNoRecords .close end with set objCon = nothing call updateForum response.redirect ("admin_ForumM.asp?types=selectForum&catID="&request("catID")) response.end Case "moveForumAround" catID = request("catID") set objRS = server.CreateObject("adodb.recordset") with objRS .open "SELECT Max(sort) as maxSort FROM pgd_forums WHERE catID="&catID, datastore, , , adCmdText sort = .fields("maxSort") if not isNull(sort) then sort = sort + 1 else sort = 1 end if set objCon = .activeconnection objCon.execute "Update pgd_forums SET catID="&catID&", sort="&sort&" WHERE forumID="&replace(request("id"),"moveCat_","") _ ,, adCmdText+adExecuteNoRecords objCon.close set objcon = nothing if .state <> adStateClosed then .close End With set objRS = nothing call updateForum response.redirect ("admin_ForumM.asp?types=selectForum&catID="&request("catID")) response.end Case "mergePosts" Dim oriForumID, newForumID newForumID = request.queryString("newForumID") oriForumID = replace(request.queryString("id"),"mergePosts_","") SQL = "UPDATE pgd_messages SET forumID="&newForumID&" WHERE forumID="&oriForumID set objCon = server.CreateObject("adodb.connection") with objCon .open datastore .execute SQL, , adCmdText + adExecuteNoRecords SQL = dbOwnerPrefix&"spUpdateForumTotalTopicCount ("&oriForumID&")" .execute SQL, , adCmdStoredProc + adExecuteNoRecords SQL = dbOwnerPrefix&"spUpdateForumTotalTopicCount ("&newForumID&")" .execute SQL, , adCmdStoredProc + adExecuteNoRecords .close end with set objCon = nothing call updateForum response.redirect ("admin_ForumM.asp?types=selectForum&catID="&request("catID")&"&from=merger") response.end Case "copyforum" Dim copyForumID:copyForumID = Clng(request.form("forumid")) Dim copyMod:copyMod = CheckedOrNot(request.form("copymod")) Dim copyPrivate:copyPrivate = CheckedOrNot(request.form("copyprivate")) Dim copyPermission:copyPermission = CheckedOrNot(request.form("copypermission")) Dim objCom Set objCom = server.createobject("adodb.command") with objCom .activeconnection = datastore '.commandTimeout = 200 .commandText = dbOwnerPrefix&"spCopyForum" .commandType = adCmdStoredProc '.Parameters.Append .Createparameter("@RETURN_VALUE", adInteger, adParamReturnValue, 0 ) .Parameters.Append .Createparameter("@copyForumID", adInteger, adParamInput, 0, copyForumID) .Parameters.Append .Createparameter("@copyMod", adInteger, adParamInput, 0, copyMod) .Parameters.Append .Createparameter("@copyPrivate", adInteger, adParamInput, 0, copyPrivate) .Parameters.Append .Createparameter("@copyPermission", adInteger, adParamInput, 0, copyPermission) .Parameters.Append .Createparameter("@newID", adInteger, adParamOutput, 0) .Parameters.Append .Createparameter("@catID", adInteger, adParamOutput, 0) .execute , , adExecuteNoRecords catID = .parameters("@catID") newForumId = .parameters("@newID") end with Set objCom = nothing If copyMod = 1 or copyPrivate = 1 then Application.lock Application(dbName&"updatePMcache") = 1 Application.unlock End if call updateForum response.write("") response.end Case else END SELECT %>