////////////////////////////////////////////////////////////////     Common Functions
function getXmlHttpRequestObject() 
	{
	if (window.XMLHttpRequest) 
		{
		return new XMLHttpRequest();
		}
	else if(window.ActiveXObject) 
		{
		return new ActiveXObject("Microsoft.XMLHTTP");
		}
	else 
		{
		alert("Your Browser Sucks!\nIt's about time to upgrade don't you think?");
		}
	}	

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

//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';
	}
////////////////////////////////////////////////////////////////     Common Functions ENDS
	
////////////////////////////////////////////////////////////////     TITLE SEARCH
function searchSuggestTitle() 
	{
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
		{
		var str = escape(document.getElementById('txtSearchT').value);
		searchReq.open("GET", 'searchSuggest.php?type=title&search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestTitle; 
		searchReq.send(null);
		var ss = document.getElementById('search_suggestT')
		ss.innerHTML = ' <div class="suggest_link"><b>please wait. loading.... <b></div> ';			
		}		
	}

//Called when the AJAX response is returned.
function handleSearchSuggestTitle() 
	{
	if (searchReq.readyState == 4) 
		{
		var ss = document.getElementById('search_suggestT')
		ss.innerHTML = '';
		var str = searchReq.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:setSearchT(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
			}
		}
	}

function setSearchT(value) 
	{
	document.getElementById('txtSearchT').value = value;
	document.getElementById('search_suggestT').innerHTML = '';
	}
////////////////////////////////////////////////////////////////     TITLE SEARCH ENDS

////////////////////////////////////////////////////////////////     ARTIST SEARCH
function searchSuggestArtist() 
	{
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
		{
		var str = escape(document.getElementById('txtSearchA').value);
		searchReq.open("GET", 'searchSuggest.php?type=artist&search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestArtist; 
		searchReq.send(null);
		var ss = document.getElementById('search_suggestA')
		ss.innerHTML = ' <div class="suggest_link"><b>please wait. loading.... <b></div> ';		
		}		
	}

//Called when the AJAX response is returned.
function handleSearchSuggestArtist() 
	{
	if (searchReq.readyState == 4) 
		{
		var ss = document.getElementById('search_suggestA')
		ss.innerHTML = '';
		var str = searchReq.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:setSearchA(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
			}
		}
	}

function setSearchA(value) 
	{
	document.getElementById('txtSearchA').value = value;
	document.getElementById('search_suggestA').innerHTML = '';
	}
////////////////////////////////////////////////////////////////     ARTIST SEARCH ENDS

////////////////////////////////////////////////////////////////     LABEL SEARCH
function searchSuggestLabel() 
	{
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
		{
		var str = escape(document.getElementById('txtSearchL').value);
		searchReq.open("GET", 'searchSuggest.php?type=label&search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestLabel; 
		searchReq.send(null);
		var ss = document.getElementById('search_suggestL')
		ss.innerHTML = ' <div class="suggest_link"><b>please wait. loading.... <b></div> ';		
		}		
	}

//Called when the AJAX response is returned.
function handleSearchSuggestLabel() 
	{
	if (searchReq.readyState == 4) 
		{
		var ss = document.getElementById('search_suggestL')
		ss.innerHTML = '';
		var str = searchReq.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:setSearchL(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
			}
		}
	}

function setSearchL(value) 
	{
	document.getElementById('txtSearchL').value = value;
	document.getElementById('search_suggestL').innerHTML = '';
	}
////////////////////////////////////////////////////////////////     LABEL SEARCH ENDS

////////////////////////////////////////////////////////////////     OTHER SEARCH
function searchSuggestOther() 
	{
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
		{
		var str = escape(document.getElementById('txtSearchO').value);
		searchReq.open("GET", 'searchSuggest.php?type=other&search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestOther; 
		searchReq.send(null);
		var ss = document.getElementById('search_suggestO')
		ss.innerHTML = ' <div class="suggest_link"><b>please wait. loading.... <b></div> ';		
		}		
	}

//Called when the AJAX response is returned.
function handleSearchSuggestOther() 
	{
	if (searchReq.readyState == 4) 
		{
		var ss = document.getElementById('search_suggestO')
		ss.innerHTML = '';
		var str = searchReq.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 style="z-index:5;" onmouseover="javascript:suggestOver(this);" ';
			suggest += 'onmouseout="javascript:suggestOut(this);" ';
			suggest += 'onclick="javascript:setSearchO(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
			}
		}
	}

function setSearchO(value) 
	{
	document.getElementById('txtSearchO').value = value;
	document.getElementById('search_suggestO').innerHTML = '';
	}
////////////////////////////////////////////////////////////////     OTHER SEARCH ENDS

////////////////////////////////////////////////////////////////     ALLL SEARCH
function searchSuggestAll() 
	{
	if (searchReq.readyState == 4 || searchReq.readyState == 0) 
		{
		var str = escape(document.getElementById('txtSearchAll').value);
		searchReq.open("GET", 'searchSuggest.php?type=all&search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggestAll; 
		searchReq.send(null);
		var ss = document.getElementById('search_suggestAll')
		ss.innerHTML = ' <div class="suggest_link"><b><small>please wait. loading.... </small><b></div> ';		
		}		
	}

//Called when the AJAX response is returned.
function handleSearchSuggestAll() 
	{
	if (searchReq.readyState == 4) 
		{
		var ss = document.getElementById('search_suggestAll')
		var currHTML = ss.innerHTML;
		ss.innerHTML = '';
		var tmr="Please narrow your search";
		var str0 = searchReq.responseText
		var contains=str0.indexOf(tmr);
		var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) 
			{
			if (contains<0)
				{
				var suggest = '<div style="z-index:5; width:350px;" onmouseover="javascript:suggestOver(this);" ';
				suggest += 'onmouseout="javascript:suggestOut(this);" ';
				suggest += 'onclick="javascript:setSearchAll(this.innerHTML);" ';
				suggest += 'class="suggest_link">' + str[i] + '</div>';
				ss.innerHTML += suggest;
				}
			else
				{
				var suggest = '<div style="z-index:5; width:350px;" onmouseover="javascript:suggestOver(this);" ';
				suggest += 'onmouseout="javascript:suggestOut(this);" ';
				suggest += 'onclick="javascript:setSearchAllB();" ';
				suggest += 'class="suggest_link">' + str[i] + '</div>';
				ss.innerHTML += suggest;					
				}
			}
		}
	}

function setSearchAll(valueN) 
	{
	document.getElementById('txtSearchAll').value = valueN;
	document.getElementById('search_suggestAll').innerHTML = '';
	}
function setSearchAllB() 
	{
	document.getElementById('search_suggestAll').innerHTML = '';
	}	
////////////////////////////////////////////////////////////////     ALLL SEARCH ENDS