function getXMLHttp()
{
  var xmlHttp

  try
  {
	//Firefox, Opera 8.0+, Safari, Chrome
	xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
	//Internet Explorer
	try
	{
	  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
	  try
	  {
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	  }
	  catch(e)
	  {
		alert("Your browser does not support AJAX!")
		return false;
	  }
	}
  }
  return xmlHttp;
}
function MakeRequest(method, page, div, parameters)
{
  var xmlHttp = getXMLHttp();
  
  xmlHttp.onreadystatechange = function()
  {
	if(xmlHttp.readyState == 4)
	{
	  HandleResponse(xmlHttp.responseText, div);
	}
  }

  xmlHttp.open(method, page, true); 
  if(method == "POST")
  {
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xmlHttp.setRequestHeader("Content-length", parameters.length);
    xmlHttp.setRequestHeader("Connection", "close");
    xmlHttp.send(parameters);
  }
  else
  {
	xmlHttp.send(null);
  }
}
function HandleResponse(response, div)
{
  document.getElementById(div).innerHTML = response;
}
function get(page, div)
{
  MakeRequest("GET", page, div, "");
}
function getData(page, div, field)
{
  if(field.value.length > 0)
  {
	page = page + field.value;
	MakeRequest("GET", page, div, "");
  }
  else
  {
	document.getElementById(div).innerHTML = "";
  }
}
function post(page, div, form)
{
  var postData = getFormValues(form);
  MakeRequest("POST", page, div, postData);
}
function getFormValues(form)
{
   var str = "";
   var valueArr = null;
   var val = "";
   var cmd = "";
   for(var i = 0;i < form.elements.length;i++)
   {
       switch(form.elements[i].type)
       {
           case "text":
                str += form.elements[i].name +
                 "=" + escape(form.elements[i].value) + "&";
                 break;
			case "textarea":
                str += form.elements[i].name +
                 "=" + escape(form.elements[i].value) + "&";
                 break;
			case "password":
                str += form.elements[i].name +
                 "=" + escape(form.elements[i].value) + "&";
                 break;
			case "hidden":
                str += form.elements[i].name +
                 "=" + escape(form.elements[i].value) + "&";
                 break;
           case "select-one":
                str += form.elements[i].name +
                "=" + form.elements[i].options[form.elements[i].selectedIndex].value + "&";
                break;
       }
   }
   str = str.substr(0,(str.length - 1));
   return str;
}
function suggestOver(div_value) {
	div_value.className = 'suggest_link_over';
}

function setSearch(value) {
	document.getElementById('search').value = value;
	document.getElementById('suggestions').innerHTML = '';
}

function suggestOut(div_value) {
	div_value.className = 'suggest_link';
}