<% @ Language=VBScript %> <% Option Explicit %> <% '**************************************************************************************** '** Copyright Notice '** '** Web Wiz Guide - Web Wiz Forums '** '** Copyright 2001-2004 Bruce Corkhill All Rights Reserved. '** '** This program is free software; you can modify (at your own risk) any part of it '** under the terms of the License that accompanies this software and use it both '** privately and commercially. '** '** All copyright notices must remain in tacked in the scripts and the '** outputted HTML. '** '** You may use parts of this program in your own private work, but you may NOT '** redistribute, repackage, or sell the whole or any part of this program even '** if it is modified or reverse engineered in whole or in part without express '** permission from the author. '** '** You may not pass the whole or any part of this application off as your own work. '** '** All links to Web Wiz Guide and powered by logo's must remain unchanged and in place '** and must remain visible when the pages are viewed unless permission is first granted '** by the copyright holder. '** '** This program is distributed in the hope that it will be useful, '** but WITHOUT ANY WARRANTY; without even the implied warranty of '** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR ANY OTHER '** WARRANTIES WHETHER EXPRESSED OR IMPLIED. '** '** You should have received a copy of the License along with this program; '** if not, write to:- Web Wiz Guide, PO Box 4982, Bournemouth, BH8 8XP, United Kingdom. '** '** '** No official support is available for this program but you may post support questions at: - '** http://www.webwizguide.info/forum '** '** Support questions are NOT answered by e-mail ever! '** '** For correspondence or non support questions contact: - '** info@webwizguide.info '** '** or at: - '** '** Web Wiz Guide, PO Box 4982, Bournemouth, BH8 8XP, United Kingdom '** '**************************************************************************************** 'Set the timeout of the page Server.ScriptTimeout = 1000 'Set the response buffer to true as we maybe redirecting Response.Buffer = True 'Dimension variables Dim intForumID 'Holds the forum ID to be deleted Dim lngPollID 'Holds the poll ID if there is one to delete Dim rsPost 'Recordset to get the post ID from db to check against guest post names 'Intialise the ADO recordset object Set rsPost = Server.CreateObject("ADODB.Recordset") 'Get the forum ID to delete intForumID = CInt(Request.QueryString("FID")) 'Get all the Topics from the database to be deleted 'Initalise the strSQL variable with an SQL statement to get the topic from the database strSQL = "SELECT " & strDbTable & "Topic.* FROM " & strDbTable & "Topic WHERE " & strDbTable & "Topic.Forum_ID =" & intForumID & ";" 'Query the database rsCommon.Open strSQL, adoCon 'Loop through all the threads for the topics and delete them Do While NOT rsCommon.EOF 'First we need to delete any entry in the GuestName table incase this was a guest poster posting the message 'Initalise the strSQL variable with an SQL statement to get thread ID from the database strSQL = "SELECT " & strDbTable & "Thread.Thread_ID FROM " & strDbTable & "Thread WHERE " & strDbTable & "Thread.Topic_ID =" & CLng(rsCommon("Topic_ID")) & ";" 'Query the database rsPost.Open strSQL, adoCon 'Loop through thread ID's Do While NOT rsPost.EOF 'First we need to delete any entry in the GuestName table incase this was a guest poster posting the message strSQL = "DELETE FROM " & strDbTable & "GuestName WHERE " & strDbTable & "GuestName.Thread_ID=" & CLng(rsPost("Thread_ID")) & ";" 'Excute SQL adoCon.Execute(strSQL) 'Movenext rs rsPost.MoveNext Loop 'Close rs rsPost.Close 'Delete the posts in this topic strSQL = "DELETE FROM " & strDbTable & "Thread WHERE " & strDbTable & "Thread.Topic_ID =" & CLng(rsCommon("Topic_ID")) & ";" 'Write to database adoCon.Execute(strSQL) 'Delete any poll that is in the topic 'Get the Poll ID lngPollID = CLng(rsCommon("Poll_ID")) 'If there is a poll delete that as well If lngPollID > 0 Then 'Delete the poll choice strSQL = "DELETE FROM " & strDbTable & "PollChoice WHERE " & strDbTable & "PollChoice.Poll_ID =" & lngPollID & ";" 'Delete the threads adoCon.Execute(strSQL) 'Delete the poll choice strSQL = "DELETE FROM " & strDbTable & "Poll WHERE " & strDbTable & "Poll.Poll_ID =" & lngPollID & ";" 'Delete the threads adoCon.Execute(strSQL) End If 'Move to the next record rsCommon.MoveNext Loop 'Delete any group permissions set for the forum strSQL = "DELETE FROM " & strDbTable & "Permissions WHERE " & strDbTable & "Permissions.Forum_ID =" & intForumID & ";" 'Write to database adoCon.Execute(strSQL) 'Delete the topics in this forum strSQL = "DELETE FROM " & strDbTable & "Topic WHERE " & strDbTable & "Topic.Forum_ID =" & intForumID & ";" 'Write to database adoCon.Execute(strSQL) 'Delete the forum strSQL = "DELETE FROM " & strDbTable & "Forum WHERE " & strDbTable & "Forum.Forum_ID =" & intForumID & ";" 'Write to database adoCon.Execute(strSQL) 'Reset Server Objects Set rsPost = Nothing rsCommon.Close Set rsCommon = Nothing adoCon.Close Set adoCon = Nothing 'Return to the forum categories page Response.Redirect "view_forums.asp" %>