//Javascript
//Clears the searchbox
function clear_dirsearch(obj) {
  var txtbox = document.getElementById(obj);
  if (txtbox.value == "Search by first name, last name, department, title, school, building, etc.") 
    txtbox.value = "";
}

//GetXmlHttpObject
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;
}


//Change State	
function stateChanged() 
{ 
	if (xmlHttp.readyState==4)
		{ 
		document.getElementById("hintbox").innerHTML=xmlHttp.responseText;
		showit('hintbox');
		}
}


//Show Hint
function showHint(e,str)
{

	//var KeyID = (window.event) ? event.keyCode : b.keyCode;
	
	//var code;
	//var e;
	//if (!e) var e = window.event;
	//if (e.keyCode) code = e.keyCode;
	//else if (e.which) code = e.which;
		
	evt = e || window.event;
    var keyPressed = evt.which || evt.keyCode;
	//alert(keyPressed);
	
	//If the key pressed was NOT an up arrow or down arrow or the enter key then we want to get hints
	//Otherwise, we want to control the hint box and not keep requesting new hints
	if ((keyPressed != 38) && (keyPressed != 40) && (keyPressed != 13))
	{
		
		//This all helps to get hints from hints.aspx
		if (str.length == 0)
		  { 
		  document.getElementById("hintbox").innerHTML="";
		  return;
		  }
		
		xmlHttp=GetXmlHttpObject();

		var url="sectionincs/hints.aspx";
		url=url+"?searchterm="+str;
		url=url+"&sid="+Math.random();
		xmlHttp.onreadystatechange=stateChanged;
		xmlHttp.open("get",url,true);
		xmlHttp.send(null);

	}
	else if (keyPressed == 13)
	{
		var gostring = "default.aspx?searchterms=" + document.getElementById("searchterms").value;
		gostring = gostring.replace("&","%26");
		window.location = gostring;
	}
}


function arrowmove(e,hintid,ops)
{

	evt = e || window.event;
    var keyPressed = evt.which || evt.keyCode;
	
	//alert(keyPressed);
	
	hintid = parseInt(hintid);
	ops = parseInt(ops);

	switch(keyPressed)
	{
		
		case 38: //Arrow Up
			
			if (ops != 9998)
			{
				
				if (hintid != 0)
				{
					setfocusup(hintid);
					document.getElementById(hintid - 1).setAttribute("className", "hintover");
					document.getElementById(hintid - 1).setAttribute("class", "hintover");
					
					document.getElementById(hintid).setAttribute("className", "hintlink");
					document.getElementById(hintid).setAttribute("class", "hintlink");
					
					document.getElementById("searchterms").value = document.getElementById(hintid - 1).innerHTML;
				}
			
			}
			else 
			{
				
				if (hintid == 0)
				{
					document.getElementById("searchterms").focus();
					document.getElementById("searchterms").select();
					document.getElementById(hintid).setAttribute("className", "hintlink");
					document.getElementById(hintid).setAttribute("class", "hintlink");
				}
				
			}
			
		break;
		
		case 40: //arrow down
			
			if (ops != 9999)
			{
			
				if (hintid == 2000)
				{
					document.getElementById("searchterms").blur();
					document.getElementById(0).focus();
					document.getElementById(0).hideFocus = true;
					
					document.getElementById(0).setAttribute("className", "hintover");
					document.getElementById(0).setAttribute("class", "hintover");
					
					document.getElementById("searchterms").value = document.getElementById(0).innerHTML;
					
				}
				else
				{
				
					setfocusdown(hintid);
					
					document.getElementById(hintid + 1).setAttribute("className", "hintover");
					document.getElementById(hintid + 1).setAttribute("class", "hintover");
					
					document.getElementById(hintid).setAttribute("className", "hintlink");
					document.getElementById(hintid).setAttribute("class", "hintlink");
					
					document.getElementById("searchterms").value = document.getElementById(hintid + 1).innerHTML;
					
				}
			}
			
		break;
		
		case 13: //Enter

				window.location = "default.aspx?searchterms=" + document.getElementById("searchterms").value;

		break;

	}

}

//This sets focus on an id
function setfocusdown(elementid)
{

   document.getElementById(elementid).blur();
   document.getElementById(elementid + 1).focus();
   document.getElementById(elementid + 1).hideFocus = true;
   //alert(elementid);
}

//This sets focus on an id
function setfocusup(elementid)
{
   document.getElementById(elementid).blur();
   document.getElementById(elementid - 1).focus();
   document.getElementById(elementid - 1).hideFocus = true;
   //alert(elementid);
}