<%
'#################################################################################
'## Copyright (C) 2000  Michael Anderson
'## 
'## 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.
'## 
'## 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.
'## 
'## Correspondence and Questions can be sent to:
'## reinhold@bigfoot.com
'## 
'## or
'## 
'## Snitz Communications 
'## C/O: Michael Anderson
'## PO Box 200
'## Harpswell, ME 04079
'#################################################################################
%>
<!--#INCLUDE FILE="config.asp" -->
<!--#INCLUDE FILE="inc_functions.asp" -->
<!--#INCLUDE FILE="inc_top.asp" -->
<% set rs = Server.CreateObject("ADODB.Recordset") %>
<table width="100%" border="0">
  <tr>
    <td align="left" valign="top">
    <font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>">
    <img src="icon_folder_open.gif" border="0">&nbsp;<a href="default.asp">All Forums</a><br>
<% If Request.QueryString("mode") = "DoIt" then %>
    <img src="icon_bar.gif" border="0"><img src="icon_folder_open.gif" border="0">&nbsp;<a href="search.asp">Search Form</a><br>
    <img src="icon_blank.gif" border="0"><img src="icon_bar.gif" border="0"><img src="icon_folder_open_topic.gif" border="0">&nbsp;Search Results
<% else %>
    <img src="icon_bar.gif" border="0"><img src="icon_folder_open_topic.gif" border="0">&nbsp;Search Form
<% end if %>
    </font>
    </td>
  </tr>
</table>
<%
If Request.QueryString("mode") = "DoIt" then
	if Request.Form("Search") <> "" then
		keywords = split(Request.Form("Search"), " ")
		keycnt = ubound(keywords)

		'## Forum_SQL - Find all records with the search criteria in them
		strSql = "SELECT " & strTablePrefix & "FORUM.FORUM_ID, " & strTablePrefix & "FORUM.F_SUBJECT, " & strTablePrefix & "FORUM.CAT_ID, " & strTablePrefix & "TOPICS.TOPIC_ID, " & strTablePrefix & "TOPICS.T_SUBJECT, " & strTablePrefix & "TOPICS.T_MAIL, " & strTablePrefix & "TOPICS.T_STATUS, " & strTablePrefix & "TOPICS.T_LAST_POST, " & strTablePrefix & "TOPICS.T_REPLIES, " & strMemberTablePrefix & "MEMBERS.MEMBER_ID, " & strMemberTablePrefix & "MEMBERS.M_NAME "
		strSql = strSql & " FROM ((" & strTablePrefix & "FORUM LEFT JOIN " & strTablePrefix & "TOPICS "
		strSql = strSql & " ON " & strTablePrefix & "FORUM.FORUM_ID = " & strTablePrefix & "TOPICS.FORUM_ID) LEFT JOIN " & strTablePrefix & "REPLY "
		strSql = strSql & " ON " & strTablePrefix & "TOPICS.TOPIC_ID = " & strTablePrefix & "REPLY.TOPIC_ID) LEFT JOIN " & strMemberTablePrefix & "MEMBERS "
		strSql = strSql & " ON " & strTablePrefix & "TOPICS.T_AUTHOR = " & strMemberTablePrefix & "MEMBERS.MEMBER_ID "
		strSql = strSql & " WHERE ("
		For Each word in keywords
			strSql = strSql & "     (" & strTablePrefix & "REPLY.R_MESSAGE LIKE '%" & word & "%'"
			strSql = strSql & " OR   " & strTablePrefix & "FORUM.F_DESCRIPTION LIKE '%" & word & "%'"
			strSql = strSql & " OR   " & strTablePrefix & "TOPICS.T_SUBJECT LIKE '%" & word & "%'"
			strSql = strSql & " OR   " & strTablePrefix & "TOPICS.T_MESSAGE LIKE '%" & word & "%') "
			if cnt < keycnt then strSql = strSql &  Request.Form("andor") 
			cnt = cnt + 1
		next
		strSql = strSql & " ) "
		cnt = 0
		if Request.Form("Forum") <> 0 then
			strSql = strSql & " AND " & strTablePrefix & "FORUM.FORUM_ID = " & Request.Form("Forum") & " "
		end if
		if Request.Form("SearchDate") <> 0 then
			dt = cint(Request.Form("SearchDate"))
			strSql = strSql & " AND (T_DATE > '" & DateToStr(dateadd("d", -dt, strForumTimeAdjust)) & "')"
		end if
		if Request.Form("SearchMember") <> 0 then
			strSql = strSql & " AND " & strMemberTablePrefix & "MEMBERS.MEMBER_ID = " & Request.Form("SearchMember") & " "
		end if
		strSql = strSql & " AND " & strTablePrefix & "FORUM.F_TYPE = " & 0 
		strSql = strSql & " ORDER BY " & strTablePrefix & "TOPICS.FORUM_ID DESC, "
		strSql = strSql & "          " & strTablePrefix & "TOPICS.T_LAST_POST DESC"

		mypage = request("whichpage")

		If mypage = "" then
			mypage = 1
		end if

		rs.Open strSql, my_Conn, 3,1
%>
<table border="0" width="95%" cellspacing="0" cellpadding="0" align="center">
  <tr>
    <td bgcolor="<% =strTableBorderColor %>">
    <table border="0" width="100%" cellspacing="1" cellpadding="4">
      <tr>
        <td align="center" bgcolor="<% =strHeadCellColor %>">&nbsp;</td>
        <td align="center" bgcolor="<% =strHeadCellColor %>"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strHeadFontColor %>">Topic</font></b></td>
        <td align="center" bgcolor="<% =strHeadCellColor %>"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strHeadFontColor %>">Author</font></b></td>
        <td align="center" bgcolor="<% =strHeadCellColor %>"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strHeadFontColor %>">Replies</font></b></td>
        <td align="center" bgcolor="<% =strHeadCellColor %>"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strHeadFontColor %>">Last Post</font></b></td>
      </tr>
<%		if rs.EOF or rs.BOF then  '## No new topic posts found in DB %>
      <tr>
        <td bgcolor="<% =strForumCellColor %>" colspan="5"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>"><b>No Matches Found</b></font></td>
      </tr>
<%
		else 
			rs.MoveFirst
			currForum = 0 
			currTopic = 0
			do until rs.EOF
				if ChkForumAccess(rs("FORUM_ID")) then 
					if (currForum <> rs("FORUM_ID")) and (currTopic <> rs("TOPIC_ID")) then 
%>
      <tr>
        <td height="20" colspan="5" bgcolor="<% =strCategoryCellColor %>"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strCategoryFontColor %>"><b>&nbsp;<% =ChkString(rs("F_SUBJECT"),"display") %></b></font></td>
      </tr>
						
<%					currForum = rs("FORUM_ID")
					end if %>
<%					if currTopic <> rs("TOPIC_ID") then %>
      <tr>
<%						if rs("T_STATUS") <> 0 then %>
        <td bgcolor="<% =strForumCellColor %>" align="center"><a href="topic.asp?TOPIC_ID=<% =rs("TOPIC_ID") %>&FORUM_ID=<% =rs("FORUM_ID") %>&CAT_ID=<% =rs("CAT_ID") %>&Topic_Title=<% =ChkString(left(rs("T_SUBJECT"), 50),"urlpath") %>&Forum_Title=<% =ChkString(rs("F_SUBJECT"),"urlpath") %>"><% =ChkIsNew(rs("T_LAST_POST")) %></a></td>
<%						else %>
        <td bgcolor="<% =strForumCellColor %>" align="center"><a href="topic.asp?TOPIC_ID=<% =rs("TOPIC_ID") %>&FORUM_ID=<% =rs("FORUM_ID") %>&CAT_ID=<% =rs("CAT_ID") %>&Topic_Title=<% =ChkString(left(rs("T_SUBJECT"), 50),"urlpath") %>&Forum_Title=<% =ChkString(rs("F_SUBJECT"),"urlpath") %>"><img src="icon_folder_locked.gif" alt="Topic Locked" border="0"></a></td>
<%						end if %>
        <td bgcolor="<% =strForumCellColor %>"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>"><a href="topic.asp?TOPIC_ID=<% =rs("TOPIC_ID") %>&FORUM_ID=<% =rs("FORUM_ID") %>&CAT_ID=<% =rs("CAT_ID") %>&Topic_Title=<% =ChkString(left(rs("T_SUBJECT"), 50),"urlpath") %>&Forum_Title=<% =ChkString(rs("F_SUBJECT"),"urlpath") %>"><% =ChkString(left(rs("T_SUBJECT"), 50),"display") %></a>&nbsp;</font></td>
        <td bgcolor="<% =strForumCellColor %>" valign="top" align="center"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strForumFontColor %>"><% =ChkString(rs("M_NAME"),"display") %></font></td>
        <td bgcolor="<% =strForumCellColor %>" valign="top" align="center"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>" color="<% =strForumFontColor %>"><% =rs("T_REPLIES") %></font></td>
        <td bgcolor="<% =strForumCellColor %>" valign="top" align="center" nowrap><font face="<% =strDefaultFontFace %>" color="<% =strForumFontColor %>" size="<% =strFooterFontSize %>"><b><% =ChkDate(rs("T_LAST_POST")) %></b>&nbsp;<% =ChkTime(rs("T_LAST_POST")) %></font></td>
      </tr>
<%					currTopic = rs("TOPIC_ID")
					end if 
				end if
				rs.MoveNext 
			loop 
		end if 
%>
    </table>
    </td>
  </tr>
</table>
<%	Else %>

<p align="center"><font face="<% =strDefaultFontFace %>" size="<% =strHeaderFontSize %>">You must enter keywords</p>

<p align="center"><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>"><a href="JavaScript:history.go(-1)">Back To Search Page</a></p>
<meta http-equiv="Refresh" content="2; URL=JavaScript:history.go(-1)">
<%
	end if
Else
%>

<form action="Search.asp?mode=DoIt" method="post">
<table border="0" cellspacing="0" cellpadding="0" align=center>
  <tr>
    <td bgcolor="<% =strPopUpBorderColor %>">
    <table border="0" cellspacing="1" cellpadding="1">
      <tr>
        <td bgColor="<% =strPopUpTableColor %>" align="right" valign="top"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>">Search For:</font></b></td>
        <td bgColor="<% =strPopUpTableColor %>" align="left" valign="top"><input type="text" name="Search" size="40"><br>
        <font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>"><input type="radio" name="andor" value=" and " checked>Search for all Words<br>
        <input type="radio" name="andor" value=" or ">Match any of the words</font></td>
      </tr>
      <tr>
        <td bgColor="<% =strPopUpTableColor %>" align="right" valign="top"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>">Search Forum:</font></b></td>
        <td bgColor="<% =strPopUpTableColor %>" align="left" valign="top">
        <select name="Forum" size="1">
          <option value="0">All Forums</option>
<%
	'## Forum_SQL
	strSql = "SELECT " & strTablePrefix & "FORUM.FORUM_ID, " & strTablePrefix & "FORUM.F_SUBJECT "
	strSql = strSql & " FROM " & strTablePrefix & "FORUM"

	set rs = my_Conn.execute (strSql)

	On Error Resume Next

	do until rs.EOF
		if ChkForumAccess(rs("FORUM_ID")) then
			Response.Write "          <option value=""" & rs("FORUM_ID") & """>" & ChkString(left(rs("F_SUBJECT"), 50),"display") & "</option>" & vbCrLf
		end if
		rs.movenext
	loop
%>
        </select>
        </td>
      </tr>
      <tr>
        <td bgColor="<% =strPopUpTableColor %>" align="right" valign="top"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>">Search By Date:</font></b></td>
        <td bgColor="<% =strPopUpTableColor %>" align="left" valign="top">
        <select NAME="SearchDate">
          <option value="0">Any Date</option>
          <option VALUE="1">Since Yesterday</option>
          <option VALUE="2">Since 2 Days Ago</option>
          <option VALUE="5">Since 5 Days Ago</option>
          <option VALUE="7">Since 7 Days Ago</option>
          <option VALUE="14">Since 14 Days Ago</option>
          <option VALUE="30">Since 30 Days Ago</option>
          <option VALUE="60">Since 60 Days Ago</option>
          <option VALUE="120">Since 120 Days Ago</option>
          <option VALUE="365">In the Last Year</option>
        </select>
        </td>
      </tr>
      <tr>
        <td bgColor="<% =strPopUpTableColor %>" align="right" valign="top"><b><font face="<% =strDefaultFontFace %>" size="<% =strDefaultFontSize %>">Search By Member:</font></b></td>
        <td bgColor="<% =strPopUpTableColor %>" align="left" valign="top">
        <select name="SearchMember">
          <option value="0">All Members
<%
	'## Forum_SQL
	strSql = "SELECT " & strMemberTablePrefix & "MEMBERS.MEMBER_ID, " & strMemberTablePrefix & "MEMBERS.M_NAME "
	strSql = strSql & " FROM " & strMemberTablePrefix & "MEMBERS"
	strSql = strSql & " WHERE " & strMemberTablePrefix & "MEMBERS.M_STATUS = " & 1
	strSql = strSql & " ORDER BY " & strMemberTablePrefix & "MEMBERS.M_NAME ASC;"
	
	set rs = my_Conn.execute (strSql)
	
	On Error Resume Next
	
	do until rs.EOF
		Response.Write "          <option value=""" & rs("MEMBER_ID") & """>" & ChkString(left(rs("M_NAME"), 50),"display") & "</option>" & vbCrLf
		rs.movenext
	loop
%>
        </select>
        </td>
      </tr>
      <tr>
        <td bgColor="<% =strPopUpTableColor %>" align="center" valign="top" colspan="2"><input type="submit" value="Search"></td>
      </tr>
    </table>
    </td>
  </tr>
</table>

</form>
<% end if %>
<% on error resume next %>
<% set rs = nothing %>
<!--#INCLUDE FILE="inc_footer.asp" -->