$(document).ready(function(){
	$("#search").focus();
	var offset=$("#search").offset();
	var width=$("#search").width()-2;
	$("#ajax_response").css("left",offset.left);
	$("#ajax_response").css("width",width);
		
	$("#search").keyup(function(event){
		var str_array=new Array("~","!","@","#","%","^","&","*","(",")","-","_","|","/","\/","$","?","<",">",";",":","=","+"," ");
		var search=$("#search").val();
			for(j=0;j<str_array.length;j++)
			{
				if(search==str_array[j])
				{
					$("#search").val('');
					return false;
				}
			}
			if(search.length)
			{
				if(event.keyCode != 40 && event.keyCode != 38 && event.keyCode != 13)
				{
				$.ajax({
						type: "POST",
						url: "ajax_server.php",
						data: "search="+search,
						success: function(msg){
							if(msg!=0)
							{
							$("#ajax_response").fadeIn("slow").html(msg);
							}
							else
							{
							$("#ajax_response").fadeOut("slow")
							}
						}
					});
				}
				else
				{
						switch (event.keyCode)
				{
				 case 40:
				 {
					 found = 0;
					  $("li").each(function(){
						 if($(this).attr("class") == "selected")
							found = 1;
					  });
					  
					  if(found == 1)
					  {
						var sel = $("li[class='selected']");
						sel.next().addClass("selected");
						sel.removeClass("selected");
					  }
					  else
						
						$("li:first").addClass("selected");
					 }
				$("#search").val($("li[class='selected'] a").text()); 
				 break;
				 case 38:
				 {
					  found = 0;
					  $("li").each(function(){
						 if($(this).attr("class") == "selected")
							found = 1;
					  });
					  if(found == 1)
					  {
						var sel = $("li[class='selected']");
						sel.prev().addClass("selected");
						sel.removeClass("selected");
					  }
					  else
						$("li:last").addClass("selected");
					 $("#search").val($("li[class='selected'] a").text());
				 }
				 $("#search").val($("li[class='selected'] a").text()); 
				 break;
				 case 13:
					$("#ajax_response").fadeOut("slow");
					$("#search").val($("li[class='selected'] a").text());
					break;
				}
				}
			}
			else
			{
			$("#ajax_response").fadeOut("slow");
			}
	});

	$("#search").keydown(function(event){
	var str_array=new Array("~","!","@","#","%","^","&","*","(",")","-","_","|","/","\/","$","?","<",">",";",":","=","+"," ");
	var search=$("#search").val();
			for(j=0;j<str_array.length;j++)
			{
				if(search==str_array[j])
				{
					$("#search").val('');
					return false;
				}
			}
	});

	$("#ajax_response").mouseover(function(){
		$(this).find("li a:first-child").mouseover(function(){
			$(this).addClass("selected");
		});
		$(this).find("li a:first-child").mouseout(function(){
			$(this).removeClass("selected");
		});
		$(this).find("li a:first-child").click(function(){
			$("#search").val($(this).text());
			$("#ajax_response").fadeOut("slow");
		});
	});
});