var xmlHttp;
var timer;
var delay = 300;
var searchString;
var lastClicked;

function setUserID(userID, userName){
	var idField = document.getElementById("userId");
	var ownerField = document.getElementById("ownerInput");
	idField.value = userID;
	ownerField.value = userName;
	showResultHelper('');
	var userform = document.getElementById("userForm");
	if(userform != null)
		userform.submit();
}

function showResultHelper(str){
	var searchBox = document.getElementById("livesearch");
	var ownerField = document.getElementById("ownerInput");
	var ownerLeft = findPosX(ownerField);
	var ownerTop = findPosY(ownerField);		
	if(!document.all){
		searchBox.style.position = "absolute";
	}
	searchBox.style.left = ownerLeft;
	searchBox.style.top = ownerTop + 15;
	searchBox.style.height = "";
	searchBox.style.overflowY = "auto";
	searchBox.style.overflowX = "auto";
	searchBox.style.visibility = "visible";
	str = new String(str);
	str = str.replace(",","");
	if (str.length==0)
	{
	searchBox.
	innerHTML="";
	searchBox.
	style.border="0px";
	searchBox.style.height = "";
	searchBox.style.overflow = "";
	searchBox.style.visibility = "hidden";
	return
	}else{
	searchBox.innerHTML= "<table style='width:100%; border:0px; border-collapse:collapse; padding:0px; background-image:url(images/middleBG2.gif);'><p align='center'><img src='images/ajax-loader2.gif'></p>Loading...</table>";

	}
	
	var arr = str.split(" ");
	var str1 = arr[0];
	if(arr[1] != null)
		str1 += arr[1];

	xmlHttp=GetXmlHttpObject()
	
	if (xmlHttp==null)
	{
	alert ("Browser does not support HTTP Request")
	return
	} 

	var url="livesearch.php"
	url+="?input="+str1;
	url=url+"&sid="+Math.random()
	xmlHttp.onreadystatechange=stateChanged 
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function setSearchString(str){
	searchString = str;
}

function showResult()
{
        var searchBox = document.getElementById("livesearch");
        str = new String(searchString);
        str = str.replace(",","");
	if (str.length==0)
	{
		searchBox.
		innerHTML="";
		searchBox.
		style.border="0px";
		searchBox.style.height = "";
		searchBox.style.overflow = "";
		searchBox.style.visibility = "hidden";
		return;
	}
	var d = new Date();
	lastClicked = d.getTime();
	setTimeout("timerCheck()",delay);
}

function timerCheck(){
	var d = new Date();
	var now = d.getTime();
	var diff = now - lastClicked;
	if(diff >= (delay-15)){
		showResultHelper(searchString);
	}
}

  function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1)
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }

function stateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		var searchBox = document.getElementById("livesearch");
		searchBox.style.height = "";
		searchBox.style.overflow = "";
		searchBox.
		innerHTML= "<table style='width:100%; border:0px; border-collapse:collapse; padding:0px;'>" + xmlHttp.responseText + "</table>";
		searchBox.
		style.border="1px solid #7E0000";
		if(searchBox.offsetHeight > 300){
			searchBox.style.height = "300px";
			searchBox.style.overflowY = "scroll";
      searchBox.style.overflowX = "hidden";
		}else{
			searchBox.style.height = "";
			searchBox.style.overflowY = "auto";
      searchBox.style.overflowX = "auto";
		}
	} 
}

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
	// Firefox, Opera 8.0+, Safari
	xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
	// Internet Explorer
	try
	{
	xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	}
	return xmlHttp;
}
