/*
 *	##############################################
 *             		AJAX SEARCH
 *  ##############################################
 */


	var curr_item = 0;
	var old_search_text = "";
	var max_num = 10;
	var help_text = 'Nokia 5800 XpressMusic';

	function init_search(){

		if(document.getElementById('searchoncatalog').className === 'active')
		{
			$("#search-input").addClass('search_example');
			$("#search-input").val(help_text);
		}

		$("#search-input").keyup(function(e){
        	if(e.keyCode == 40){
				return;
        	}
    		getSearchResults($(this));
        });

    	$("#search-input").focus(function(){
			var input = $(this);
			var curr_text = input.val();
			if(curr_text == help_text)
			{
				input.val('');
				input.removeClass('search_example');
			}
    		getSearchResults($(this));
    	});

		$("#search-input").blur(function(){
			var input = $(this);
			var catalog_active = (document.getElementById('searchoncatalog').className === 'active');
			if(!catalog_active)
			{
				input.removeClass('search_example');
				return;
			}
			var curr_text = input.val();
			if( ! curr_text.length)
			{
				input.addClass('search_example');
				input.val(help_text);
			}
		});

    	$(document).keyup(function(e){
    		if(e.keyCode == 40){
    			if($("#search_results").css("display") == "block"){
    				navigate(1);
    			}
    			return;
    		}
    		if(e.keyCode == 38){
    			if($("#search_results").css("display") == "block"){
    				navigate(-1);
    			}
    			return;
    		}
    		if(e.keyCode == 13){
    			if(curr_item > 0){
    				document.location.href = $("#link_"+curr_item).attr("href");
    			}
    		}
        });
	}

		function navigate(direction){
			if(curr_item == 0){
				$("#search-input").blur();
			}
			if(curr_item + direction <= 0){
				disselectItem(curr_item);
				$("#search-input").focus();
				curr_item = 0;
				return;
			}
			
			if(curr_item + direction == max_num+1){
				return;
			}
			
			disselectItem(curr_item);
			curr_item = curr_item + direction;
			selectItem(curr_item);
		}
  		
		function selectItem(item_number){
			if($("#item_"+curr_item).attr("class") == 'not_selected_item_cat')
			{
				$("#item_"+curr_item).attr("class","selected_item_cat");
			}
			else
			{
				$("#item_"+curr_item).attr("class","selected_item");
			}
		}
		
		function disselectItem(){
			if($("#item_"+curr_item).attr("class") == 'selected_item_cat')
			{
				$("#item_"+curr_item).attr("class","not_selected_item_cat");
			}
			else
			{
				$("#item_"+curr_item).attr("class","not_selected_item");
			}
		}
		

  		function getSearchResults(input){
  			var search_text = input.attr("value");
			var catalog_active = (document.getElementById('searchoncatalog').className === 'active');
			if((search_text === old_search_text) && search_text.length){
				if(($("#search_results").css("display") !== "block") && catalog_active){
					showSearchResults();
				}
				return;
			}
  			if((search_text.length > 0) && catalog_active){
  				showSpinner();
	  			$.get("http://"+host+"/search/catalog/",{"s":search_text},onAjaxSuccess);
  				old_search_text = search_text;
  			}else{
  				$("#search_results").hide();
  			}
  		}							
  		
  		function showSpinner(){
  			$("#search-input").css("background-image","url(http://static.catalog.onliner.by/pic/restyle/spinner.gif)");
  		}
  		
  		function hideSpinner(){
  			$("#search-input").css("background-image","none");
  		}

  		function onAjaxSuccess(data){
  			var ie = !$.support.objectAll;
  	  		var search_results = $("#search_results");
  	  		var width_popravka = -2;
  	  		search_results.width($("#search-input").attr("offsetWidth")+width_popravka);
//  	  	  	search_results.css({top: $("#search-input").offset().top + $("#search-input").attr("offsetHeight"), left: $("#search-input").offset().left})
  	  	  	if(data.length){
	  	  	  	search_results.html(data);
	  	  	  	showSearchResults();
	  	  	  	hideSpinner();
  	  	  	}else{
  	  	  		hideSpinner();
  	  	  	  	search_results.hide();
  	  	  	}
  		}

  		function showSearchResults(){
  			//$("#search_results").slideDown("slow");
  			$("#search_results").show();
  		}

		$(document).mousedown(function(e){
				var search_results = $("#search_results");
				var left = search_results.offset().left;
				var top = $("#search-input").offset().top;
				var right = search_results.offset().left + search_results.width();
				var bottom = search_results.offset().top + $("#search_table").height();
				
				/*
					var x = "";
					x += "X:"+e.pageX+"\n"+"Y:"+e.pageY+"\n";
					x += "left:"+left+"\n";
					x += "top:"+top+"\n";
					x += "right:"+right+"\n";
					x += "bottom:"+bottom+"\n";
				*/
				
				var hide = !(left < e.pageX && right > e.pageX && top < e.pageY && bottom > e.pageY);
					//x += "hide:"+hide+"\n";
				if(hide){
					search_results.hide();
					disselectItem();
					hideSpinner();
					curr_item = 0;
				}
			});


							function searchSubmit() {
							   if (document.getElementById('search-input').value == '') {
								 document.getElementById('search-input').value = 'Введите текст для поиска';
								 return false;
							   }
							   switch (document.getElementById('global_search').value) {
								 case 'googleFormSite':
								 case 'googleFormForum':
								 case 'googleFormCountry':
								   document.getElementById(document.getElementById('global_search').value).q.value = document.getElementById('search-input').value;
								   break;
								 case 'formCatalog':
								   document.getElementById(document.getElementById('global_search').value).search_text.value = document.getElementById('search-input').value;
								   break;
								 case 'googleFormBaraxolka':
									window.location.href = 'http://forum.onliner.by/baraxolka.php?fkeyw=' + document.getElementById('search-input').value;
									return false;
								break;
							   }
							   document.getElementById(document.getElementById('global_search').value).submit();
							   return false;
							  }

							  function searchthis(what) {

								var site	   = document.getElementById('searchonsite'); site.className = '';
								var catalog	   = document.getElementById('searchoncatalog'); catalog.className = '';
								var forum	   = document.getElementById('searchonforum'); forum.className = '';
								var baraxolka  = document.getElementById('sbaraxolka'); baraxolka.className = '';
								var global = document.getElementById('global_search');

								if(what == 'baraxolka'){
									baraxolka.className = 'active';
									global.value = 'googleFormBaraxolka';
								}
								if(what == 'site') {
									site.className = 'active';
									global.value = 'googleFormSite';
								}
								if(what == 'catalog') {
									catalog.className = 'active';
									global.value = 'formCatalog';
								}
								if(what == 'forum') {
									forum.className = 'active';
									global.value = 'googleFormForum';
								}
								document.getElementById('search-input').focus();
							}