var ajax = {
	
	xhr : false,
	
	versions : new Array(
		"MSXML2.XmlHttp.6.0",
		"MSXML2.XmlHttp.5.0",
		"MSXML2.XmlHttp.5.0",
		"MSXML2.XmlHttp.4.0",
		"MSXML2.XmlHttp.3.0",
		"MSXML2.XmlHttp.2.0",
		"Microsoft.XmlHttp"),
	
	createXHR : function() {
		if (window.XMLHttpRequest) {
			try {
				this.xhr = new XMLHttpRequest();
				return this.xhr;
			} catch (e) {
				this.xhr = false;
			}
		}
		else if (window.ActiveXObject) {
			for (var i = 0; i < this.versions.length; i++) {
				try {
					this.xhr = new ActiveXObject(this.versions[i]);
					return this.xhr;
				} catch(e){
					this.xhr = false;
				}
			}
		}
	}
	
};

xhr = new ajax.createXHR();

function show(display) {
	var display = (display) ? 'block' : 'none';
	document.getElementById('livesearch').style.display = display;
}

function showResult(str) {
	if (str.length == 0) { 
		document.getElementById('livesearch').innerHTML = '';
		document.getElementById('livesearch').style.border = '0px';
		return;
	}

	if (xhr == null) {
		alert ('Browser does not support HTTP Request');
		return;
	} 

	var url = 'livesearch.php';
	url = url + '?q=' + str;
	xhr.onreadystatechange = callback;
	xhr.open('get', url, true);
	xhr.send(null);
}

function callback() { 
	var box = document.getElementById('livesearch');
	switch (xhr.readyState) {
		case 0:
		case 1:
		case 2:
		case 3:
			box.innerHTML = '<img src="img/loading.gif" alt="loading..." align="center" />';
		break;
		case 4:
			//box.style.border = "1px solid black";
			if (xhr.status == 200) {
				box.innerHTML = xhr.responseText;
			} else {
				box.innerHTML = 'Error: ' + xhr.status;
			}
		break;
	}
}