function togglePractices(itemClass, keyword)
{
  var htmlResults = '';
  if (itemClass == '')
  {
    $('div', '#praxenliste').each(function (idx, elem)
    {
      htmlResults += '<div class="search-entry"><div class="search-entry-top"></div><div class="search-entry-bottom"></div>' + $(elem).html() + '</div>';
    }).show();
  }
  else
  {
    $('div.' + itemClass + '', '#praxenliste').each(function (idx, elem)
    {
      htmlResults += '<div class="search-entry"><div class="search-entry-top"></div><div class="search-entry-bottom"></div>' + $(elem).html() + '</div>';
    }).show();
    $('div:not(.' + itemClass + ')', '#praxenliste').hide();
  }

  if (keyword != '')
  {
    $.ajax(
    {
  	   url: "/_ajax.get_practice.php",
  	   dataType: "json",
  	   data: { city: $('#search_city').val(), keyword:$('#search_keyword').val() },
  	   success: function(data)
  	   {
  	     htmlResults = '';
  	     $('div:visible', '#praxenliste').hide();
  	     $(data).each(function (idx, praxis_id)
  	     {
  	       $('#praxis-' + praxis_id, '#praxenliste').show();
          htmlResults += '<div class="search-entry"><div class="search-entry-top"></div><div class="search-entry-bottom"></div>' + $('#praxis-' + praxis_id, '#praxenliste').html() + '</div>';
  	     });
        $('#search-results').html(htmlResults);
  	   }
    });
  }
  else
    $('#search-results').html(htmlResults);

}

$(document).ready(function()
{
  var tooltip = $("#praxiskarte-tooltip");

  $('.praxiskarte-punkt', '#praxiskarte').hover(function ()
  {
    var praxis = $(this);
    $('.tooltip-body', tooltip).html('<p>' + $('h3 a', praxis).html() + '</p>');
    tooltip.css({'bottom':((parseInt(praxis.css('bottom')) + 12)), 'left':(parseInt(praxis.css('left')) + 6)});
  }, function ()
  {
    tooltip.css({'bottom':0, 'left':'-999em'});
    $('.tooltip-body', tooltip).html('');
  })


  $("#search_city").autocomplete(
  {
		 	source: '/_ajax.search_city.php',
		 	appendTo: '#container-search_city',
		 	minLength:0,
		 	focus: function( event, ui )
		 	{
				  $("#search_city").val(ui.item.value);
			   //togglePractices(ui.item.id);
  				return false;
			 },
			 select: function( event, ui )
			 {
				  $("#search_city_value").val(ui.item.id);
			   togglePractices(ui.item.id, $("#search_keyword").val());
				}
		});

  $("#search_keyword").autocomplete(
  {
		 	source: function(request, response)
		 	{
				  $.ajax(
				  {
					   url: "/_ajax.search_keyword.php",
					   dataType: "json",
					   data: { city: $('#search_city').val(), term:request.term },
					   success: function(data)
					   {
						    response( $.map(data, function(item)
						    {
      						return { label: item.label, value: item.value }
  						  }));
					   }
				  });
			 },
		 	appendTo: '#container-search_keyword',
		 	minLength:0,
			 select: function( event, ui )
			 {
			   $('#search_keyword').val(ui.item.value);
			   togglePractices($('#search_city_value').val(), ui.item.value);
				}
		});
});

// { "id": "Upupa epops", "label": "Eurasian Hoopoe", "value": "Eurasian Hoopoe" }
