% '################################################################################# '## Copyright (C) 2000-01 Michael Anderson and Pierre Gorissen '## '## This program is free software; you can redistribute it and/or '## modify it under the terms of the GNU General Public License '## as published by the Free Software Foundation; either version 2 '## of the License, or any later version. '## '## All copyright notices regarding Snitz Forums 2000 '## must remain intact in the scripts and in the outputted HTML '## The "powered by" text/logo with a link back to '## http://forum.snitz.com in the footer of the pages MUST '## remain visible when the pages are viewed on the internet or intranet. '## '## This program is distributed in the hope that it will be useful, '## but WITHOUT ANY WARRANTY; without even the implied warranty of '## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the '## GNU General Public License for more details. '## '## You should have received a copy of the GNU General Public License '## along with this program; if not, write to the Free Software '## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. '## '## Support can be obtained from support forums at: '## http://forum.snitz.com '## '## Correspondence and Marketing Questions can be sent to: '## reinhold@bigfoot.com '## '## or '## '## Snitz Communications '## C/O: Michael Anderson '## PO Box 200 '## Harpswell, ME 04079 '################################################################################# %> <% If Session(strCookieURL & "Approval") = "15916941253" Then %>
All Forums Admin Section Forum Deletion/Archival |
|
|
Deletion Completed, Click Here To return to Forum Administration
")
Elseif request.querystring("confirm") = "" AND request.querystring("id") <> "" then
response.write("
|
|
Updating Counts | "
response.write "|
Topics: | "
set rs = Server.CreateObject("ADODB.Recordset")
set rs1 = Server.CreateObject("ADODB.Recordset")
'## Forum_SQL - Get contents of the Forum table related to counting
strSql = "SELECT FORUM_ID, F_TOPICS FROM " & strTablePrefix & "FORUM WHERE F_TYPE <> 1 " & fIDSQL
rs.Open strSql, my_Conn
rs.MoveFirst
i = 0
do until rs.EOF
i = i + 1
'## Forum_SQL - count total number of topics in each forum in Topics table
strSql = "SELECT count(FORUM_ID) AS cnt "
strSql = strSql & " FROM " & strTablePrefix & "TOPICS "
strSql = strSql & " WHERE FORUM_ID = " & rs("FORUM_ID")
set rs1 = my_Conn.Execute( strSql)
if rs1.EOF or rs1.BOF then
intF_TOPICS = 0
Else
intF_TOPICS = rs1("cnt")
End if
rs1.Close
'## Forum_SQL - count total number of archived topics in each forum in A_Topics table
strSql = "SELECT count(FORUM_ID) AS cnt "
strSql = strSql & " FROM " & strTablePrefix & "A_TOPICS "
strSql = strSql & " WHERE FORUM_ID = " & rs("FORUM_ID")
set rs1 = my_Conn.Execute( strSql)
if rs1.EOF or rs1.BOF then
intF_A_TOPICS = 0
Else
intF_A_TOPICS = rs1("cnt")
End if
rs1.Close
strSql = "UPDATE " & strTablePrefix & "FORUM "
strSql = strSql & " SET F_TOPICS = " & intF_TOPICS
strSql = strSql & " , F_A_TOPICS = " & intF_A_TOPICS
strSql = strSql & " WHERE FORUM_ID = " & rs("FORUM_ID")
my_conn.execute(strSql)
rs.MoveNext
Response.Write "."
if i = 80 then
Response.Write " " i = 0 End if loop rs.Close Response.Write " | "
Response.Write "
Topic Replies: | " Response.Write ""
'## Forum_SQL
strSql = "SELECT TOPIC_ID, T_REPLIES FROM " & strTablePrefix & "TOPICS" & fIDSQL2
rs.Open strSql, my_Conn
i = 0
do until rs.EOF
i = i + 1
'## Forum_SQL - count total number of replies in Topics table
strSql = "SELECT count(REPLY_ID) AS cnt "
strSql = strSql & " FROM " & strTablePrefix & "REPLY "
strSql = strSql & " WHERE TOPIC_ID = " & rs("TOPIC_ID")
rs1.Open strSql, my_Conn
if rs1.EOF or rs1.BOF or (rs1("cnt") = 0) then
intT_REPLIES = 0
Else
intT_REPLIES = rs1("cnt")
End if
strSql = "UPDATE " & strTablePrefix & "TOPICS "
strSql = strSql & " SET T_REPLIES = " & intT_REPLIES
strSql = strSql & " WHERE TOPIC_ID = " & rs("TOPIC_ID")
my_conn.execute(strSql)
rs1.Close
rs.MoveNext
Response.Write "."
if i = 80 then
Response.Write " " & vbNewline i = 0 End if loop rs.Close Response.Write " | " & vbNewline
Response.Write "
Forum Replies: | " & vbNewline Response.Write ""
'## Forum_SQL - Get values from Forum table needed to count replies
strSql = "SELECT FORUM_ID, F_COUNT FROM " & strTablePrefix & "FORUM WHERE F_TYPE <> 1 "
rs.Open strSql, my_Conn, 2, 3
do until rs.EOF
'## Forum_SQL - Count total number of Replies
strSql = "SELECT Sum(" & strTablePrefix & "TOPICS.T_REPLIES) AS SumOfT_REPLIES, Count(" & strTablePrefix & "TOPICS.T_REPLIES) AS cnt "
strSql = strSql & " FROM " & strTablePrefix & "TOPICS "
strSql = strSql & " WHERE " & strTablePrefix & "TOPICS.FORUM_ID = " & rs("FORUM_ID")
rs1.Open strSql, my_Conn
if rs1.EOF or rs1.BOF then
intF_COUNT = 0
intF_TOPICS = 0
Else
intF_COUNT = rs1("cnt") + rs1("SumOfT_REPLIES")
intF_TOPICS = rs1("cnt")
End if
If IsNull(intF_COUNT) then intF_COUNT = 0
if IsNull(intF_TOPICS) then intF_TOPICS = 0
rs1.Close
'## Forum_SQL - Count total number of Archived Replies
strSql = "SELECT Sum(" & strTablePrefix & "A_TOPICS.T_REPLIES) AS SumOfT_A_REPLIES, Count(" & strTablePrefix & "A_TOPICS.T_REPLIES) AS cnt "
strSql = strSql & " FROM " & strTablePrefix & "A_TOPICS "
strSql = strSql & " WHERE " & strTablePrefix & "A_TOPICS.FORUM_ID = " & rs("FORUM_ID")
rs1.Open strSql, my_Conn
if rs1.EOF or rs1.BOF then
intF_A_COUNT = 0
intF_A_TOPICS = 0
Else
intF_A_COUNT = rs1("cnt") + rs1("SumOfT_A_REPLIES")
intF_A_TOPICS = rs1("cnt")
End if
If IsNull(intF_A_COUNT) then intF_A_COUNT = 0
if IsNull(intF_A_TOPICS) then intF_A_TOPICS = 0
rs1.Close
strSql = "UPDATE " & strTablePrefix & "FORUM "
strSql = strSql & " SET F_COUNT = " & intF_COUNT
strSql = strSql & ", F_TOPICS = " & intF_TOPICS
strSql = strSql & ", F_A_COUNT = " & intF_A_COUNT
strSql = strSql & ", F_A_TOPICS = " & intF_A_TOPICS
strSql = strSql & " WHERE FORUM_ID = " & rs("FORUM_ID")
my_conn.execute(strSql)
rs.MoveNext
Response.Write "."
if i = 80 then
Response.Write " " & vbNewline i = 0 End if loop rs.Close Response.Write " | " & vbNewline
Response.Write "
Totals: | " & vbNewline Response.Write ""
'## Forum_SQL - Total of Topics
strSql = "SELECT Sum(" & strTablePrefix & "FORUM.F_TOPICS) "
strSql = strSql & " AS SumOfF_TOPICS "
strSql = strSql & " FROM " & strTablePrefix & "FORUM WHERE F_TYPE <> 1 "
rs.Open strSql, my_Conn
Response.Write "Total Topics: " & RS("SumOfF_TOPICS") & " " & vbNewline strSumOfF_TOPICS = rs("SumOfF_TOPICS") rs.Close '## Forum_SQL - Total of Archived Topics strSql = "SELECT Sum(" & strTablePrefix & "FORUM.F_A_TOPICS) " strSql = strSql & " AS SumOfF_A_TOPICS " strSql = strSql & " FROM " & strTablePrefix & "FORUM WHERE F_TYPE <> 1 " rs.Open strSql, my_Conn Response.Write "Total Archived Topics: " & RS("SumOfF_A_TOPICS") & " " & vbNewline strSumOfF_A_TOPICS = rs("SumOfF_A_TOPICS") rs.Close '## Forum_SQL - Total all the replies for each topic strSql = "SELECT Sum(" & strTablePrefix & "FORUM.F_COUNT) " strSql = strSql & " AS SumOfF_COUNT " strSql = strSql & ", Sum(" & strTablePrefix & "FORUM.F_A_COUNT) " strSql = strSql & " AS SumOfF_A_COUNT " strSql = strSql & " FROM " & strTablePrefix & "FORUM WHERE F_TYPE <> 1 " set rs = my_Conn.Execute (strSql) 'rs.Open strSql, my_Conn if rs("SumOfF_COUNT") <> "" then Response.Write "Total Posts: " & RS("SumOfF_COUNT") & " " & vbNewline strSumOfF_COUNT = rs("SumOfF_COUNT") else Response.Write "Total Posts: 0 " & vbNewline strSumOfF_COUNT = "0" end if if rs("SumOfF_A_COUNT") <> "" then Response.Write "Total Archived Posts: " & RS("SumOfF_A_COUNT") & " " & vbNewline strSumOfF_A_COUNT = rs("SumOfF_A_COUNT") else Response.Write "Total Archived Posts: 0 " & vbNewline strSumOfF_A_COUNT = "0" end if rs.Close '## Forum_SQL - Write totals to the Totals table strSql = "UPDATE " & strTablePrefix & "TOTALS " strSql = strSql & " SET T_COUNT = " & strSumOfF_TOPICS strSql = strSql & ", P_COUNT = " & strSumOfF_COUNT strSql = strSql & ", T_A_COUNT = " & strSumOfF_A_TOPICS strSql = strSql & ", P_A_COUNT = " & strSumOfF_A_COUNT my_Conn.Execute strSql Response.Write " | " & vbNewline
Response.Write "
" Response.Write "Count Update Complete | " & vbNewline
Response.Write "