$(document).ready(function(){

	function format_item(item, i, total)
	{
		if (item.last)
		{
			return 'and ' + item.total + ' more...';
		}
		else
		{
			if (item.image !== '' && item.image != false)
			{
				//return '<div style="float:left;"><img src="' + item.image +'" width="30" height="30" style="margin-right:5px;" /></div>' + item.name + ' <br /><span>(' + item.category + ')</span>';
				
				product_string = '<div style="float:left;"><img src="' + item.image +'" width="30" height="30" style="margin-right:5px;" /></div>' + item.name;
				
				if ($.trim(item.category) != '')
				{
					product_string += ' <span> - (' + item.category + ')</span>';
				}
				
				return product_string;
			}
			else
			{
				product_string = item.name;
				
				if ($.trim(item.category) != '')
				{
					product_string += '<br /><span>(' + item.category + ')</span>';
				}
				
				return product_string;				
			}
		}		
	}
	
	function parse_response(data)
	{
		return $.map(data, function(row) {
					return {
							data: row,
							value: row.name,
							result: row.name
							}
			   });
	}
	
	function result_callback(e, item) 
	{
		if (item.last)
		{
			$('#frm_search').submit();
		}
		else
		{
			location.href = item.url;
		}
	}
	
	search_options = {
			width: 286,
			selectFirst: false,
			resultsClass: "ac_results",
			max: 13,
			cacheLength: 0,
			minChars: 1,
			scroll: false,
			dataType: "json",
			parse: parse_response,
			formatItem: format_item
	};
	
	//search_url = site_url('sell/search/autocomplete') + $('#search-tools-query').val();
	search_url = site_url('catalogsearch/autocomplete');
		
	$("#search-tools-query").autocomplete(search_url, search_options).result(result_callback);
	
	$('#search-tools-in').change(function(){
		update_url();
	});
	
	function update_url()
	{
		$("#search-tools-query").setOptions({
			//url: site_url('catalogsearch/autocomplete') + '/' + $('#search-tools-in').val()
			url: site_url('sell/search/autocomplete') + $('#search-tools-query').val()
		});
	}
	
	/* Categories Nav Search */
	$('#frm_search').submit(function(){
		if ($.trim($('#search-tools-query').val()) == '')
		{
			window.location = site_url('catalog/category');
			return false;
		}
		
		action_url = site_url('catalog/search') + '/' + $.trim($('#search-tools-query').val());
		
		$(this).attr("action", action_url);
	});
	
	/* Most Wanted */
	$('#frm_most_wanted').submit(function(){
		if ($.trim($('#search_query_mostwanted').val()) == '')
		{
			window.location = site_url('catalog/category');
			return false;
		}
		
		action_url = site_url('catalog/search') + '/' + $.trim($('#search_query_mostwanted').val());
		
		$(this).attr("action", action_url);
	});
	
	/* Front Search */
	$('#frm_sell_search').submit(function(){
		if ($.trim($('#search_query').val()) == '' || $.trim($('#search_query').val()) == 'Product name or UPC')
		{
			window.location = site_url('catalog/category');
			return false;
		}
		
		action_url = site_url('catalog/search') + '/' + $.trim($('#search_query').val());
		
		$(this).attr("action", action_url);
	});	
	
	$('#search_query').focus(function(){
		if ($(this).val() == 'find your product to sell')
		{
			$(this).val('');
		}
	});
	
	$('#search_query').blur(function(){
		if ($(this).val() == '')
		{
			$(this).val('find your product to sell');
		}
	});
});
