//http://jqueryui.com/

$(function(){
	var SearchImg = document.getElementById("JStopsearch");
	var EnableSearchAction = false;
  
	$('#autocomplete').click(function() {
  		$("#autocomplete").autocomplete( "search", $("#autocomplete").value);
		SearchImg.style.visibility = "hidden";
	}),
	$('#searchImgBg').click(function() {
  		$("#autocomplete").autocomplete( "search", $("#autocomplete").value);
		
	}),
	$("#autocomplete").keypress(function(e) {
		if(e.keyCode == "13") {
			e.preventDefault();
		}
	}),
	$("#autocomplete").autocomplete({
		source: function( request, response ) {
			$.ajax({
				url: "/scripts/dbsearch.asp",
				dataType: "jsonp",
				data: {
					name_startsWith: request.term
				},
				success: function( data ) {
					
					response( $.map( data, function( item ) {
						return {
							term: request.term,
							id: item.id,
							searchtype: item.search,
							label: item.label,
							img: item.img, 
							vnr: item.vnr, 
							pris: item.pris
						}
					}));
				}
			});
		},
		minLength: 3,
					
		select: function(event, ui){
			location.href = "/scripts/dbsearchredirect.asp?id=" + ui.item.id + "&st=" + ui.item.searchtype;
		}
	}
	).data("autocomplete")._renderItem = function( ul, item ) {
	
		if (item.searchtype == "")
		{
			EnableSearchAction = true;
			result = $( "<li class=\"group\"></li>" ).data( "item.autocomplete", item );
			result.append( "<p>&nbsp;" +  item.label + "</p>" );
		}
		else if (item.searchtype == "searchdb")
		{
			EnableSearchAction = false;
			
			result = $( "<li class=\"category\"></li>" ).data( "item.autocomplete", item );
			result.append( "<a>" +  item.label.toLowerCase().replace(item.term.toLowerCase(), "<span>"+item.term+"</span>") + "</a>" );
		}
		else if (item.searchtype == "searchdbprodukter")
		{
			EnableSearchAction = true;
			
			result = $( "<li class=\"product\"></li>" ).data( "item.autocomplete", item );
			var SearchItem = item.label.toLowerCase();
			arrSearchTerm = item.term.toLowerCase().split(" ");

			for(i = 0; i < arrSearchTerm.length; i++)
			{
				SearchItem = SearchItem.replace(arrSearchTerm[i], "<b>"+arrSearchTerm[i]+"</b>")
			}
			
			result.append( "<a><div class=\"img\"><img src=\""+ item.img +"\" /></div><div class=\"content\">" + SearchItem  + "<div class=\"vnr\">Varenr. " + item.vnr + "</div><div class=\"pris\">" + item.pris + " DKK</div></div></a>" );
		}
		else if (item.searchtype == "searchdbemptyResults")
		{
			EnableSearchAction = false;			
			
			result = $( "<li class=\"noProducts\"></li>" ).data( "item.autocomplete", item );
			result.append( "<p>Der blev ikke fundet nogle produkter<br />på din søgning.<br /><br /><b>Mente du:</b><br /><br /></p>" );
		}
		else if (item.searchtype == "searchdbemptyNoResults")
		{
			EnableSearchAction = false;
			
			result = $( "<li class=\"noProducts\"></li>" ).data( "item.autocomplete", item );
			result.append( "<p>Der blev ikke fundet nogle produkter<br />på din søgning.</p>" );
		}
		else if (item.searchtype == "searchdbemptyResultsEND")
		{
			EnableSearchAction = false;
		}
		else
		{
			EnableSearchAction = false;
		}
		
		

		if (EnableSearchAction == true)
			SearchImg.style.visibility = "visible";
		else
			SearchImg.style.visibility = "hidden";
			
		result.appendTo( ul );
		return result;
	
	
	};
	
});


