/**
 *
 * Paul Streise
 * http://www.omc.ch/
 *
 * Created on 09.08.2010
 * @copyright 2010
 *
 **/



jQuery(function($){
	
	var cache = {};
	
	var depAjax = null;
	var dstAjax = null;
	
	$("#departureAirport").autocomplete({
		source: function(request, response) {
				if ( request.term in cache ) {
					response( cache[ request.term ] );
					return;
				}
				
				depAjax = $.ajax({
					url: baseUrl +'/flightsearch/autocomplete',
					dataType: "json",
					data: request,
					success: function( data )
					{
						depAjax = null;
						cache[ request.term ] = data;
						response( data );
					}
				});
			},
		minLength: 3
	
	}).data( "autocomplete" )._renderItem = function( ul, item) {
		return $( "<li></li>" )
			.data( "item.autocomplete", item )
			.append( $( "<a></a>" ).html( item.label ) )
			.appendTo( ul );
	};
	
	$("#departureAirport").blur(function(){
		if(depAjax)
			depAjax.abort();
	});
	
	$("#destinationAirport").autocomplete({
		source: function(request, response) {
				if ( request.term in cache ) {
					response( cache[ request.term ] );
					return;
				}
				
				dstAjax = $.ajax({
					url: baseUrl +'/flightsearch/autocomplete',
					dataType: "json",
					data: request,
					success: function( data )
					{
						dstAjax = null;
						cache[ request.term ] = data;
						response( data );
					}
				});
			},
		minLength: 3
	
	}).data( "autocomplete" )._renderItem = function( ul, item) {
		return $( "<li></li>" )
			.data( "item.autocomplete", item )
			.append( $( "<a></a>" ).html( item.label ) )
			.appendTo( ul );
	};
	
	$("#destinationAirport").blur(function(){
		if(dstAjax)
			dstAjax.abort();
	});
	
	
	$("#departureAirport").focus();
	
});
