

$(document).ready(function(){

  /***	Autosuggest	***/
  function formatItem(row) {
		return row[2] + (row[4].length > 0 ? " (" + row[4] + ") " : "") + row[0];
	}
  function formatResult(row) {
		return row[2] + (row[4].length > 0 ? " (" + row[4] + ") " : "") + row[0];
	}

  /***  Reset test in input text  ***/
  $("#departureAirport").livequery("click",function(event){
    $(this).val("");
    $("#departureAirportCode").val("");
  });
  $("#arrivalAirport").livequery("click",function(event){
    $(this).val("");
    $("#arrivalAirportCode").val("");
  });
  $("#email").livequery("click",function(event){
    $(this).val("");
  });

  $("#departureAirport").autocomplete("ajax.htm", {
		minChars: 3,
    delay:50,
    matchSubset: false,
		max: 10,
    width: 400,
    scroll:false,
    formatItem: formatItem,
    formatResult:formatResult,
    selectFirst: true,
    extraParams: {
      action: "getAirportsSuggestion",
      airportPattern: function() { return $("#departureAirport").val(); },
      maxResults:10
    }
	});
  //Set IATA Code value in hidden input
  $("#departureAirport").result(function(event, data, formatted) {
    $("#departureAirportCode").val(data[1]);
  });


  $("#arrivalAirport").autocomplete("ajax.htm", {
		minChars: 3,
    delay:50,
    matchSubset: false,
		max: 10,
    width: 400,
    scroll:false,
    formatItem: formatItem,
    formatResult:formatResult,
    selectFirst: true,
    extraParams: {
      action: "getAirportsSuggestion",
      airportPattern: function() { return $("#arrivalAirport").val(); },
      maxResults:10
    }
	});
  //Set IATA Code value in hidden input
  $("#arrivalAirport").result(function(event, data, formatted) {
    $("#arrivalAirportCode").val(data[1]);
  });


  /***  Load airport lists by country  ***/
  $("#departureAirportCountryList").livequery("change",function(event){
    //showLoader();

    $.post("ajax.htm",
    {
      action: "getAirportsByCountryCode",
      direction: "departure",
      countryCode: function() { return $("#departureAirportCountryList").val(); }
    },
    function(data){
      $("#departureAirportListContainer").html(data);
    });
  });
  //Set IATA Code value in hidden input
  $("#departureAirportList").livequery("change",function(event){
    $("#departureAirportCode").val($("#departureAirportList").val());
    $("#departureAirport").val($("#departureAirportList :selected").text());
  });

  $("#arrivalAirportCountryList").livequery("change",function(event){
    //showLoader();
    $.post("ajax.htm",
    {
      action: "getAirportsByCountryCode",
      direction: "return",
      countryCode: function() { return $("#arrivalAirportCountryList").val(); }
    },
    function(data){
      $("#arrivalAirportListContainer").html(data);
    });
  });
  //Set IATA Code value in hidden input
  $("#arrivalAirportList").livequery("change",function(event){
    $("#arrivalAirportCode").val($("#arrivalAirportList").val());
    $("#arrivalAirport").val($("#arrivalAirportList :selected").text());
  });

  /***  Default Airportlist loading (IT)  ***/
  $.post("ajax.htm",
    {
      action: "getAirportsByCountryCode",
      direction: "departure",
      countryCode: "IT"
    },
    function(data){
      $("#departureAirportListContainer").html(data);
    });


  /***	Filters CheckBox Layout		***/
//  $("#result-filter-engine").checkbox({
//    checked: "images/checkBox/check_on.gif",
//    unchecked: "images/checkBox/check_off.gif",
//    disabled : "images/checkBox/check_disabled.gif"
//  });
  
});

