﻿function AirportInformation(control) 
{
	this.control = control;
	this.Initialise();
}

AirportInformation.prototype.Initialise = function() {
    this.lstCountry = $("select.ddlCountry", this.control)[0];
    $(this.lstCountry).change(CallInContext(this, this.ChangeCountry));

    this.lstDepartureAirports = $("select.ddlAirport", this.control)[0];

    window.setTimeout(CallInContext(this,this.ChangeCountry) , 1);
};


AirportInformation.prototype.ChangeCountry = function(eventObject)
{
	// get the country
	var countryCode = this.lstCountry.value;
	// get the departure airports
	ExecuteJsonRequest(null, "AirportInformation=GetDepartureAirports&CountryCode=" + countryCode, this, this.HandleDepartureAirports, null);
};

AirportInformation.prototype.HandleDepartureAirports = function(response)
{
	this.lstDepartureAirports.options.length = 0;

	// add the please select line
	//this.lstDepartureAirports.options.add(new Option(this.displayText["PleaseSelect"], 0));
	this.lstDepartureAirports.options.add(new Option("please select" , 0));
	//this.lstDepartureAirports.options.add(new Option(this.displayText["SeparatorLine"], 0));

	//	response.sort(this.SortByName);
	
	// create the airport disctionary
	var airportDictionary = new Object();
	for (var iAirport = 0; iAirport < response.length; iAirport++)
	{
		var airport = response[iAirport];
		airportDictionary[airport.Code] = airport.Name;
	}

	for (iAirport = 0; iAirport < response.length; iAirport++)
	{
		airport = response[iAirport];

		var option = new Option(airport.Name, airport.Code);

		this.lstDepartureAirports.options.add(option);

	}
};
