// JavaScript Document

function show_services()	{
	SelectAll('services_list');
	$('#service_results').fadeIn(400, function() {
	// Animation complete
	});
	
	$('#service_list').focusout(function() {
		$('#service_results').fadeOut(400, function() {
		// Animation complete
			document.getElementById('services_list').value = "Search our full list of services...";
			document.getElementById('services_list').blur();
		});
	});  
}


function SelectAll(id)
{
    document.getElementById(id).focus();
    document.getElementById(id).select();
}

function submitForm(src)	{
	document.getElementById(src).submit();
}

function highlight(src, colour)	{
	var obj = document.getElementById(src);
	obj.style.backgroundColor = colour;
}

function show_spinner(frm)	{
	$('#to_hide').fadeOut(100, function() {
		$('#spinner').fadeIn(100, function() {
			submitForm(frm);
		// Animation complete
		});	
	// Animation complete
	});	
}

// ********************************************* AJAX functions ***********************************************

var xmlHttp;
var targetDiv;

function update_search_list()	{ 
	var obj = document.getElementById("services_list").value;
	if ((obj.length >= 1) || (obj.length == 0))	{
		url = "Includes/ajax_output_search_list.php?filter="+obj;
		targetDiv = "service_results";
		
		xmlHttp=GetXmlHttpObject(stateChanged)
		xmlHttp.open("GET", url , true)
		xmlHttp.send(null)
	}
}

function fetch_news(page,no_stories)	{ 
	url = "../Includes/ajax_output_news.php?page="+page+"&no_stories="+no_stories;
	targetDiv = "displayed_stories";
	
	xmlHttp=GetXmlHttpObject(stateChanged)
	xmlHttp.open("GET", url , true)
	xmlHttp.send(null)
}


//-------------------------- AJAX Code ---------------------------------

function stateChanged() { 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")	{ 
		document.getElementById(targetDiv).innerHTML=xmlHttp.responseText
	} 
}


function GetXmlHttpObject(handler)	{ 
	var objXmlHttp=null

	if (navigator.userAgent.indexOf("Opera")>=0)	{
		alert("This example doesn't work in Opera") 
		return 
	}

	if (navigator.userAgent.indexOf("MSIE")>=0)	{ 
		var strName="Msxml2.XMLHTTP"
		if (navigator.appVersion.indexOf("MSIE 5.5")>=0)	{
			strName="Microsoft.XMLHTTP"
		} 
		try
			{ 
			objXmlHttp=new ActiveXObject(strName)
			objXmlHttp.onreadystatechange=handler 
			return objXmlHttp
			} 
		catch(e)
			{ 
			alert("Error. Scripting for ActiveX might be disabled") 
			return 
			} 
		} 

	if (navigator.userAgent.indexOf("Mozilla")>=0)	{
		objXmlHttp=new XMLHttpRequest()
		objXmlHttp.onload=handler
		objXmlHttp.onerror=handler 
		return objXmlHttp
	}
} 
