/*
Soficus Content Management System
ver.4.0.100
Copyright (C) 2008 Soficus Ltd
Soficus Ltd
Suite 8, Centre for Advanced Industry
Coble Dene
North Shields
Tyne & Wear
NE29 6DE
United Kingdom

E-mail: info@soficus.co.uk
Tel: +44 (0) 191 645 0605
web: http://www.soficus.co.uk

------------------------ LICENCE ----------------------------
THIS COPY IS LICENSED ONLY TO:
Normansh of Billingham
for http://www.normansoffice.co.uk

REDISTRIBUTION, MODIFICATION OR USE IN SOURCE OR BINARY FORMS OF THIS SOURCE CODE IS PROHIBITED.
UNAUTHORISED CHANGES ON THE SOURCE CODE WILL BREACH YOUR LICENCE AND WARRANTY!

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS`` AND ANY
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------
*/


function createRequestObject()
{
   var tmpReqObject;
   var browser = navigator.appName;

   tmpReqObject = null;
 
   if(browser == "Microsoft Internet Explorer")
   {     
      try {
        tmpReqObject = new ActiveXObject("Microsoft.XMLHTTP");
      }
      catch(e0) {
        tmpReqObject = null;
	alert('You cannot use this page \\n because your browser does not support AJAX technology!');
      }
   }
   else
   {
      try {
	tmpReqObject = new XMLHttpRequest();
      }
      catch(e1) {	
	tmpReqObject = null;
	alert('You cannot use this page \\n because your browser does not support AJAX technology!');
      }
   }
   return tmpReqObject;
}//createRequestObject

/*----------------------------------------------------------------------------------------------------------------*/

var httpSS = createRequestObject();

/*----------------------------------------------------------------------------------------------------------------*/

//Start
function searchSuggest() 
{

	if (httpSS.readyState == 4 || httpSS.readyState == 0)
	{
		var divMe = document.getElementById('dcodess');
		showProgressIndicatorInNode(divMe, ' ');
		ShowHideObjectByID(divMe, true);

		var str = escape(document.getElementById('idSearch').value);
		httpSS.open("GET", '/search_suggest.html?fldSearch=' + str, true);
		httpSS.onreadystatechange = handleSearchSuggest;
		httpSS.send(null);
	}
}

/*----------------------------------------------------------------------------------------------------------------*/

//AJAX response
function handleSearchSuggest() 
{
	if(httpSS.readyState == 4)
	{
		if (httpSS.status ==200)
		{
			var ss = document.getElementById('search_suggest');
			ss.innerHTML = '';
			var str = httpSS.responseText.split("\n");
			for(i=0; i < str.length - 1; i++) 
			{
				//Build our element string.  This is cleaner using the DOM, but
				//IE doesn't support dynamically added attributes.
				var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
				suggest += 'onmouseout="javascript:suggestOut(this);" ';
				suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
				suggest += 'class="suggest_link">' + str[i] + '</div>';
				ss.innerHTML += suggest;
			}

			var divMe = document.getElementById('dcodess');
			ShowHideObjectByID(divMe, false);
		}
	}
}

/*----------------------------------------------------------------------------------------------------------------*/

//Mouse over function
function suggestOver(div_value) 
{
	div_value.className = 'suggest_link_over';
}

/*----------------------------------------------------------------------------------------------------------------*/

//Mouse out function
function suggestOut(div_value)
{
	div_value.className = 'suggest_link';
}

/*----------------------------------------------------------------------------------------------------------------*/

//Click function
function setSearch(value)
{
	valStr = value.replace("</a>", "");
	str = valStr.split(">");
	ct = count(str);
	for(i=1; i<ct; i++)
	{
		value += str[i];
	}	
	document.getElementById('idSearch').value = value;
	document.getElementById('search_suggest').innerHTML = '';
}

/*----------------------------------------------------------------------------------------------------------------*/

function ShowHideObjectByID(oObject, bShow)
{
	document.getElementById("schimg").setAttribute("src","/images/search.gif");
	if (bShow==true)
	{
		document.getElementById("schimg").setAttribute("src","/javascript/loading.gif");
		document.getElementById("search_suggest").style.display="";
	}
}//ShowHideObjectByID

/*----------------------------------------------------------------------------------------------------------------*/

function showProgressIndicatorInNode(oNode, sMessageHTML)
{
	oNode._oldInnerHTML = oNode.innerHTML;
	var sHTML = '<img src="/javascript/loading.gif" border="0" id="schimg" alt="Searching" />';
	oNode.innerHTML = sHTML; 
}//showProgressIndicatorInNode

/*----------------------------------------------------------------------------------------------------------------*/