function ResetSearch(KeepText)
{
	Effect.Fade('SearchResults', {duration:0.2});
	
	if(!KeepText)
	{
		$('SearchBox').value = "Search";
		$('SearchBox').blur();
	}
}

var OnKeyRequestBuffer = 
    {
        bufferText: false,
        bufferTime: 150,
        
        modified : function(strId)
        {
                setTimeout('OnKeyRequestBuffer.compareBuffer("'+strId+'","'+xajax.$(strId).value+'");', this.bufferTime);
        },
        
        compareBuffer : function(strId, strText)
        {
            if (strText == xajax.$(strId).value && strText != this.bufferText)
            {
                this.bufferText = strText;
                OnKeyRequestBuffer.makeRequest(strId);
            }
        },
        
        makeRequest : function(strId)
        {
            StartSearch(xajax.$(strId).value);
			this.bufferText = false;
        }
    }

function StartSearch(Keyword)
{
	if(!Keyword)	return;
	SR_NextIndex = null;
	//document.getElementById('Search_Indicator').style.display = 'block';
	//document.getElementById('x_SearchResults').innerHTML = "<p align='center'><img src='/img/App_GUI/Misc/indicator_6.gif' /></p>";

	//Effect.Fade('SideBar', {duration:0.2});
	Effect.Appear('SearchResults', {duration:0.3});
	//setTimeout("document.getElementById('SearchResults').style.display = 'block';", 210);
	//alert(Keyword);
	xajax_Search(Keyword);
}


var SR_LastIndex, SR_NextIndex, SR_ItemSelected;
function MoveCursor(Offset)
{
	var SearchResults = $('x_SearchResults');
	var Item = SearchResults.firstChild;
	var ItemClass, tmpIndex = 0;
	
	SR_ItemSelected = null;
	
	if(SR_NextIndex==null)
		SR_NextIndex = 0;
	else
		SR_NextIndex = SR_NextIndex + Offset;
	
	if(SR_NextIndex < 0)	SR_NextIndex = 0;
	
	//alert("Last:"+SR_LastIndex+" Next:"+SR_NextIndex);
	
	while(Item = Item.nextSibling)
	{
		if(Item.tagName!="A")
		{
			continue;
		}
		else
		{
			if(Item.className == "CloseSearchResult" || Item.className == "CloseSearchResult2")	continue;
			if(tmpIndex == SR_LastIndex)
			{
				//alert(tmpIndex);
				ItemClass = Item.className.split(" ");
				Item.className = "SR_Item "+ItemClass[1];
			}
			
			if(SR_NextIndex == tmpIndex)
			{
				ItemClass = Item.className.split(" ");
				Item.className = "SR_Item_hover "+ItemClass[1];
				
				SR_ItemSelected = tmpIndex;
			}
			
			tmpIndex ++;
		}
	}

	if(SR_ItemSelected >= 0 && SR_ItemSelected != null)
	{
		SR_LastIndex = SR_ItemSelected;
	}
	else
	{
		SR_NextIndex = null;
	}
}

function SR_OpenResult()
{

	if(SR_LastIndex < 0 || SR_LastIndex == null)	return false;
	
	var Item = $('x_SearchResults').firstChild;
	var tmpIndex = 0;
	
	while(Item = Item.nextSibling)
	{
		if(Item.tagName!="A")
		{
			continue;
		}

		if(Item.className == "CloseSearchResult" || Item.className == "CloseSearchResult2")	continue;
		
		if(tmpIndex == SR_LastIndex)
		{
			//alert(Item.onclick);
			//eval(Item.onclick+"onclick();");
			document.location.href = Item.href;
		}
		
		tmpIndex ++;
	}
}

function SR_Keyboard(keycode)
{
	if($('SearchResults').style.display == 'none')	return false;
	
	var Offset;
	if(keycode==38)
		Offset = -1;
		//go up
	else if(keycode==40)
		Offset = 1;
		//go down
	else if(keycode==13)
		SR_OpenResult();
	else
		return;
	
	MoveCursor(Offset);
}
