// AJAX Search
// Copyright 2008 Jason Mohr
// www.jason-mohr.com

var Ajs_ElementOutput;
var Ajs_ObjXmlHttp;
var Ajs_Page = "ajaxSearch.php";

function Ajs_Init(ElementOutput, LinkPrefix)
{
	Ajs_ObjXmlHttp = Ajs_GetAjax();
	Ajs_ElementOutput = ElementOutput;
}

function Ajs_GetAjax()
{
	var ObjXmlHttp = null;
	
	try
	{
		ObjXmlHttp = new XMLHttpRequest();
	}
	catch (e)
	{
		try
		{
			ObjXmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			ObjXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	
	return ObjXmlHttp;
}

function Ajs_Search(searchText, advSearch, SearchAdvDateSelected, SearchAdvDateStartMonth, SearchAdvDateStartDay, SearchAdvDateStartYear, SearchAdvDateEndMonth, SearchAdvDateEndDay, SearchAdvDateEndYear, SearchAdvIdSelected, SearchAdvIdStart, SearchAdvIdEnd, SearchAdvOptTitle, SearchAdvOptKeyword, SearchAdvOptDesc)
{
	Parameters = "SearchText=" + encodeURI(searchText);
	
	if (advSearch == true)
		Parameters += "&SearchType=" + encodeURI("adv") + "&SearchAdvDateSelected=" + encodeURI(SearchAdvDateSelected) + "&SearchAdvDateStartMonth=" + encodeURI(SearchAdvDateStartMonth) + "&SearchAdvDateStartDay=" + encodeURI(SearchAdvDateStartDay) + "&SearchAdvDateStartYear=" + encodeURI(SearchAdvDateStartYear) + "&SearchAdvDateEndMonth=" + encodeURI(SearchAdvDateEndMonth) + "&SearchAdvDateEndDay=" + encodeURI(SearchAdvDateEndDay) + "&SearchAdvDateEndYear=" + encodeURI(SearchAdvDateEndYear) + "&SearchAdvIdSelected=" + encodeURI(SearchAdvIdSelected) + "&SearchAdvIdStart=" + encodeURI(SearchAdvIdStart) + "&SearchAdvIdEnd=" + encodeURI(SearchAdvIdEnd) + "&SearchAdvOptTitle=" + encodeURI(SearchAdvOptTitle) + "&SearchAdvOptKeyword=" + encodeURI(SearchAdvOptKeyword) + "&SearchAdvOptDesc=" + encodeURI(SearchAdvOptDesc);
		
	Ajs_ObjXmlHttp = Ajs_GetAjax();
	Ajs_ObjXmlHttp.onreadystatechange = Ajs_Search_StateChanged;
	Ajs_ObjXmlHttp.open("POST", Ajs_Page + "?uid=" + Math.random(), true);
	Ajs_ObjXmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	Ajs_ObjXmlHttp.setRequestHeader("Content-length", Parameters.length);
	Ajs_ObjXmlHttp.setRequestHeader("Connection", "close");
	Ajs_ObjXmlHttp.send(Parameters);
}

function Ajs_Search_StateChanged()
{
	if (Ajs_ObjXmlHttp.readyState == 4 || Ajs_ObjXmlHttp.readyState == "complete")
	{
		if (Ajs_ObjXmlHttp.status == 200)
			Ajs_ElementOutput.innerHTML = Ajs_ObjXmlHttp.responseText;
		else
			Ajs_ElementOutput.innerHTML = "<h2 class=\"TextGrey\" id=\"ResultsCount\">Unable to perform search.</h2>";
	}
}