var searchField=$('#search_form input[type=text]');searchField.attr('autocomplete','off');searchField.focus(function(){if($(this).attr('value')==$(this).attr('name')){$(this).attr('value','');$(this).css('color','white');$(this).css('text-align','left');}}).blur(function(){if($(this).attr('value')==''){$(this).css('color','silver');$(this).css('text-align','center');$(this).attr('value',$(this).attr('name'));}});var dictionary=new Array();var suggestions=new Array();var selected=-1;searchField.keydown(function(event){if(event.keyCode==13)
{if(selected!=-1)
{setValue(suggestions[selected]);return false;}}}).keyup(function(event){var phrase=$(this).attr("value");var phraseLow=phrase.toLowerCase();if(event.keyCode==38)
{if(selected>0)
{selected--;updateSelected()}}
else if(event.keyCode==40)
{if(selected<suggestions.length-1)
{selected++;updateSelected();}}
else if(phrase.length==2&&dictionary[phraseLow]==null){$.ajax({type:"POST",dataType:"json",url:"/games/ajaxSearchSuggestion/"+phrase,beforeSend:function(){},success:function(data){dictionary[phraseLow]=data;displayTitles(phraseLow);},error:function(){},complete:function(){}});}
else
{displayTitles(phraseLow);}});function updateSelected()
{$('#suggestions li').removeClass('selected');if(selected>=0)
{$('#suggestions li:eq('+selected+')').addClass('selected');}}
function setValue(value)
{searchField.attr('value',value);displayTitles(value.toLowerCase());$('#search_form').submit();}
function displayTitles(phraseLow)
{var phraseTwo=phraseLow.substr(0,2);var suggestionString="";suggestions.length=0;if(phraseLow.length>=2&&dictionary[phraseTwo]!=null)
{var suggestionCount=0;$.each(dictionary[phraseTwo],function(i,item){if(suggestionCount==10)
{return;}
var name=item.name;var start=name.toLowerCase().search(phraseLow);var len=phraseLow.length;if(start!=-1)
{var bolded=name.substr(0,start)+"<b>"+name.substr(start,len)+"</b>"+name.substr(start+len);suggestions.push(name);name=name.replace("'","\\'");suggestionString+="<li><a href=\"javascript:setValue('"+name+"')\">"+bolded+"</a></li>";suggestionCount++;}});selected=-1;updateSelected();}
$('#suggestions ul').html(suggestionString);if(suggestions.length==0)
{$('#suggestions').hide();}
else
{$('#suggestions').show();}}