// Minicep script created for SAS Sverige by joakim.everstin@sas.se 2008

/* Definable variables in URL
intro = intro text in the header of the CEP
origins = builds origin list (all,common or string e.g UME-LLA-KRN etc.)
originDefault = sets the default origin
destinations = builds destination list (all,international,europe,intercont,domestic or string e.g CHI-NYC-SEA etc.)
destinationDefault = sets the default destination
outDays = days ahead calculated from current date
inDays = days ahead calculated from outDays
outDate = default out date e.g 20080616
inDate = default in date e.g 20080618
allowOW = display triptypes "roundtrip" and oneway (0 = not visible, 1 = visible)
WT.seg_4 = webtrends segment 4 id
WT.mc_id = web trends marketing id
*/

// Build airports Array of ALL SAS destinations
var airports = new Array();


airports["AAL"] = "Aalborg";
airports["AES"] = "Aalesund";
airports["AAR"] = "Aarhus";
airports["ABZ"] = "Aberdeen";
airports["ALF"] = "Alta"
airports["AMS"] = "Amsterdam";
airports["AGH"] = "Angelholm/Helsingborg";
airports["ATH"] = "Athens";
airports["BKK"] = "Bangkok";
airports["BCN"] = "Barcelona";
airports["BJS"] = "Beijing";
airports["BGO"] = "Bergen";
airports["BER"] = "Berlin";
airports["TXL"] = "Berlin";
airports["BHX"] = "Birmingham";
airports["BOO"] = "Bodo";
airports["BLQ"] = "Bologna";
airports["BUH"] = "Bucharest";
airports["BRU"] = "Brussels";
airports["CHI"] = "Chicago";
airports["CGN"] = "Cologne";
airports["CPH"] = "Copenhagen";
airports["DEL"] = "Delhi";
airports["DXB"] = "Dubai";
airports["DUB"] = "Dublin";
airports["DUS"] = "Dusseldorf";
airports["EDI"] = "Edinburgh";
airports["FRA"] = "Frankfurt";
airports["GDN"] = "Gdansk";
airports["GVA"] = "Geneva";
airports["GOT"] = "Gothenburg";
airports["HAM"] = "Hamburg";
airports["HAJ"] = "Hannover";
airports["HEL"] = "Helsinki";
airports["IST"] = "Istanbul";
airports["KLR"] = "Kalmar";
airports["SFJ"] = "Kangerlussuaq";
airports["IEV"] = "Kiev";
airports["KKN"] = "Kirkenes";
airports["KRN"] = "Kiruna";
airports["KTT"] = "Kittila";
airports["KRS"] = "Kristiansand";
airports["KUO"] = "Kuopio";
airports["LAS"] = "Las Vegas";
airports["LKL"] = "Lakslev";
airports["LON"] = "London";
airports["LYR"] = "Longyearbyen";
airports["LAX"] = "Los Angeles";
airports["LLA"] = "Lulea";
airports["LUX"] = "Luxembourg";
airports["LYS"] = "Lyon";
airports["MAD"] = "Madrid";
airports["MMX"] = "Malmo";
airports["MAN"] = "Manchester";
airports["MIA"] = "Miami";
airports["MIL"] = "Milan";
airports["LIN"] = "Milan";
airports["MXP"] = "Milan";
airports["MOL"] = "Molde";
airports["SVO"] = "Moscow";
airports["MOW"] = "Moscow";
airports["MUC"] = "Munich";
airports["EVE"] = "Narvik-Harstad";
airports["NCL"] = "Newcastle";
airports["NYC"] = "New York";
airports["EWR"] = "New York";
airports["NCE"] = "Nice";
airports["NUE"] = "Nuremberg";
airports["ORL"] = "Orlando";
airports["OER"] = "Ornskoldsvik";
airports["OSL"] = "Oslo";
airports["OSD"] = "Ostersund";
airports["OUL"] = "Oulu";
airports["PLQ"] = "Palanga";
airports["CDG"] = "Paris";
airports["POZ"] = "Poznan";
airports["REK"] = "Reykjavik";
airports["RIX"] = "Riga";
airports["FCO"] = "Rome";
airports["RNB"] = "Ronneby";
airports["RVN"] = "Rovaniemi";
airports["SAN"] = "San Diego";
airports["SFO"] = "San Francisco";
airports["SEA"] = "Seattle";
airports["SYD"] = "Sydney";
airports["SFT"] = "Skelleftea";
airports["SPU"] = "Split";
airports["SVG"] = "Stavanger";
airports["LED"] = "St Petersburg";
airports["ARN"] = "Stockholm";
airports["STR"] = "Stuttgart";
airports["SDL"] = "Sundsvall";
airports["TLL"] = "Tallinn";
airports["TMP"] = "Tampere";
airports["TYO"] = "Tokyo";
airports["TOS"] = "Tromso";
airports["TRD"] = "Trondheim";
airports["TKU"] = "Turku";
airports["UME"] = "Umea";
airports["VAA"] = "Vaasa";
airports["VCE"] = "Venice";
airports["VIE"] = "Vienna";
airports["VNO"] = "Vilnius";
airports["WAW"] = "Warsaw";
airports["WAS"] = "Washington";
airports["ZRH"] = "Zurich";

// Beyond Destinations added 090828
airports["ATL"] = "Atlanta";
airports["AUS"] = "Austin";
airports["BWI"] = "Baltimore";
airports["BOS"] = "Boston";
airports["CLT"] = "Charlotte";
airports["CHI"] = "Chicago";
airports["CVG"] = "Cincinnati";
airports["CLE"] = "Cleveland";
airports["DFW"] = "Dallas";
airports["DEN"] = "Denver";
airports["DTW"] = "Detroit";
airports["FLL"] = "Fort Lauderdale";
airports["GSO"] = "Greensboro";
airports["HOU"] = "Houston";
airports["IND"] = "Indianapolis";
airports["MKC"] = "Kansas City";
airports["LAS"] = "Las Vegas";
airports["LAX"] = "Los Angeles";
airports["MEM"] = "Memphis";
airports["MIA"] = "Miami";
airports["MSP"] = "Minneapolis";
airports["BNA"] = "Nashville";
airports["NYC"] = "New York";
airports["MSY"] = "New Orleans";
airports["ORF"] = "Norfolk";
airports["ORL"] = "Orlando";
airports["PHL"] = "Philadelphia";
airports["PHX"] = "Phoenix";
airports["PIT"] = "Pittsburgh";
airports["PDX"] = "Portland";
airports["RDU"] = "Raleigh";
airports["SAC"] = "Sacramento";
airports["STL"] = "St Louis";
airports["SLC"] = "Salt Lake City";
airports["SAN"] = "San Diego";
airports["SFO"] = "San Francisco";
airports["SJC"] = "San Jose";
airports["SNA"] = "Santa Ana";
airports["SEA"] = "Seattle";
airports["SYD"] = "Sydney";
airports["TPA"] = "Tampa";
airports["TUS"] = "Tucson";
airports["WAS"] = "Washington";




// Declare GET variables by variable name
function getVar(name)
         {
         get_string = document.location.search;         
         return_value = '';
         
         do { //This loop is made to catch all instances of any get variable.
            name_index = get_string.indexOf(name + '=');
            
            if(name_index != -1)
              {
              get_string = get_string.substr(name_index + name.length + 1, get_string.length - name_index);
              
              end_of_value = get_string.indexOf('&');
              if(end_of_value != -1)                
                value = get_string.substr(0, end_of_value);                
              else                
                value = get_string;                
                
              if(return_value == '' || value == '')
                 return_value += value;
              else
                 return_value += ', ' + value;
              }
            } while(name_index != -1)
            
         //Restores all the blank spaces.
         space = return_value.indexOf('+');
         while(space != -1)
              { 
              return_value = return_value.substr(0, space) + ' ' + 
              return_value.substr(space + 1, return_value.length);
							 
              space = return_value.indexOf('+');
              }
          
         return(return_value);  
}

// Set intro text
var intro = getVar('intro');
var strReplaceAll = intro;
// Replace _ sign with space
var intIndexOfMatch = strReplaceAll.indexOf( "%20" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%20", " " )
	intIndexOfMatch = strReplaceAll.indexOf( "%20" );
}

// Replace å
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%A5" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%A5", "å" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%A5" );
}

// Replace Å
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%85" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%85", "Å" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%85" );
}

// Replace ä
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%A4" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%A4", "ä" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%A4" );
}

// Replace Ä
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%84" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%84", "Ä" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%84" );
}

// Replace ö
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%B6" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%B6", "ö" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%B6" );
}

// Replace Ö
var intIndexOfMatch = strReplaceAll.indexOf( "%C3%96" );
 
while (intIndexOfMatch != -1){
	strReplaceAll = strReplaceAll.replace( "%C3%96", "Ö" )
	intIndexOfMatch = strReplaceAll.indexOf( "%C3%96" );
}

var introText = strReplaceAll;

// Set origin list (all,common or string i.e UME-LLA-KRN etc.)
var origins = getVar('origins');
if(origins == "") {
	var origins = "all";
}
var originLen = origins.length;
originLen = originLen / 4;

// Set origin default
var originDefault = getVar('originDefault');
originDefault = originDefault.toUpperCase();
if(originLen < 1 && originDefault == "" && origins != "all" && origins != "common") {
	originDefault = origins.toUpperCase();
	alert(originDefault);
}
if(originDefault == "") {
	var originDefault = "YYY";
}

// Set destinations (all,domestic,europe,intercont or string i.e CHI-NYC etc.)
var destinations = getVar('destinations');
if(destinations == "") {
	var destinations = "all";
}
var destLen = destinations.length;
destLen = destLen / 4;

// Set destination default
var destinationDefault = getVar('destinationDefault');
destinationDefault = destinationDefault.toUpperCase();
if(destLen < 1 && destinationDefault == "" && destinations != "all" && destinations != "europe" && destinations != "intercont" && destinations != "domestic") {
	destinationDefault = destinations.toUpperCase();
}

// Set default out days ahead of current date.
var outDays = getVar('outDays');
if(outDays == "") {
	var outDays = 0;
}

// Set default in days ahead of out day.
var inDays = getVar('inDays');
if(inDays == "") {
	var inDays = 0;
}

var allowOW = getVar('ow');
if(allowOW == "") {
	var allowOW = 1;
}

// Set Webtrends marketing id
var WT_mc_id = getVar('WT.mc_id');


// Set Webtrends segment 4 id
var WT_seg_4 = getVar('WT.seg_4');


// Determine base date (todays date)
var d = new Date();
var day = d.getDate();
var month = d.getMonth() + 1;
// Test Year break
//var month = 12;
var year = d.getFullYear();

function calcMaxDays(month,year) {
	// Calculate MAX days in month
	switch(month) {
		case 1:
			return 31;
			break;
		case 2:
			// Make exception for leap year
			if(year == 2008 || year == 2012 || year == 2016) {
				return 29;
			} else {
				return 28;
			}
			break;
		case 3: 
			return 31;
			break;
		case 4: 
			return 30;
			break;
		case 5:
			return 31;
			break;
		case 6:
			return 30;
			break;
		case 7:
			return 31;
			break;
		case 8:
			return 31;
			break;
		case 9:
			return 30;
			break;
		case 10:
			return 31;
			break;
		case 11:
			return 30;
			break;
		case 12:
			return 31;
			break
			
	}
}

function updateDays(io,newMonth) {
	var d = new Date();
	var month = d.getMonth() + 1;
	var ioDay = io+ "Day";
	var ioYear = io+ "Year";
	var selectedDay = document.getElementById(ioDay).value;
	var year = parseInt(document.getElementById(ioYear).value);
	if(newMonth < month) {
		year = year +1;
		document.getElementById(ioYear).value = year;
	}
	var month = parseInt(newMonth);
	var currentLength = document.getElementById(ioDay).options.length;
	var newLength = calcMaxDays(month,year);
	i = 1;
	while(i <= currentLength) {
		document.getElementById(ioDay).options[i] = null;
		i++;
	}
	
	i = 0;
	while(i <= newLength) {
		document.getElementById(ioDay).options[i] = new Option(i,i);
		i++;
	}
	document.getElementById(ioDay).options[0] = null;
	document.getElementById(ioDay).value = selectedDay;
}

// Calculate outDate
outDay = parseInt(day) + parseInt(outDays);
outMaxDays = calcMaxDays(month);
if(outDay > outMaxDays) {
	outDay = outDay - outMaxDays;
	if(month == 12) {
		outMonth = 1;
		outYear = year + 1;
	} else {
		outMonth = month + 1;
		outYear = year;
	}
} else {
	outDay = outDay;
	outMonth = month;
	outYear = year;
}
// End outDate

// Calculate inDate

inDay = parseInt(outDay) + parseInt(inDays);
inMaxDays = calcMaxDays(outMonth);

if(inDay > inMaxDays) {
	inDay = inDay - inMaxDays;
	if(outMonth == 12) {
		inMonth = 1;
		inYear = outYear + 1;
	} else {
		inMonth = outMonth + 1;
		inYear = outYear;
	}
} else {
	inDay = inDay;
	inMonth = outMonth;
	inYear = outYear;
}
// End inDate

function daySelect(io) {

	var dayLabel = io+ "Day";	

	if(io == "out") {
		document.writeln("<select name='"+ dayLabel+ "' id='"+ dayLabel+ "' style='width: 40px;font-family:Arial;font-size:11px;' onchange='javascript:document.getElementById(\"inDay\").value=this.value;' >\n");

	} else {
		document.writeln("<select name='"+ dayLabel+ "' id='"+ dayLabel+ "' style='width: 40px;font-family:Arial;font-size:11px;'>\n");
	}
		
	if(io == "out") {
		if(outMonth == month) {
			//xx = outDay - outDays;
			xx = 0;
		} else {
			xx = 0;
		}
		for(x = xx; x <= outMaxDays; x++) {
			
			if(x != 0) {
				if(outDay == x) {
					document.writeln("<option value='"+ x+ "' selected>"+ x+ "</option>\n");
				} else {
					document.writeln("<option value='"+ x+ "'>"+ x+ "</option>\n");
					
				}
			}
		}
	} else {
		if(inMonth == month) {
			//xx = outDay - outDays;
			xx = 0;
		} else {
			xx = 0;
		}
		for(x = xx; x <= inMaxDays; x++) {
			if(x != 0) {
				if(inDay == x) {
					document.writeln("<option value='"+ x+ "' selected>"+ x+ "</option>\n");
				} else {
					document.writeln("<option value='"+ x+ "'>"+ x+ "</option>\n");
					
				}
			}
		}
	}
	document.writeln("</select>");
}

function monthSelect(io) {
var langCode = 2;
var months = new Array('0|0|0','1|Jan|Jan','2|Feb|Feb','3|Mar|Mar','4|Apr|Apr','5|May|May','6|Jun|Jun','7|Jul|Jul','8|Aug|Aug','9|Sep|Sep','10|Oct|Oct','11|Nov|Nov','12|Dec|Dec')	;
	
	var monthLabel = io+ "Month";

	if(io == "out") {
		document.writeln("<select name='"+ monthLabel+ "' id='"+ monthLabel+ "' style='width: 45px;font-family:Arial;font-size:11px;' onchange='javascript:document.getElementById(\"inMonth\").value=this.value;updateDays(\"out\",this.value);updateDays(\"in\",this.value);' >\n");
	
	} else {
		document.writeln("<select name='"+ monthLabel+ "' id='"+ monthLabel+ "' style='width: 45px;font-family:Arial;font-size:11px;' onchange='updateDays(\"in\",this.value);'>\n");
	}
		
	if(io == "out") {
		for (x = 0; x < 13; x++) {
			var monthElem = months[x].split("|");
			if(x != 0) {
				if(outMonth == x) {
				   document.writeln("<option value='" + monthElem[0]+ "' selected>"+ monthElem[langCode]+ "</option>\n");
				} else {
				   document.writeln("<option value='" + monthElem[0]+ "'>"+ monthElem[langCode]+ "</option>\n");
				}
			}
		}
	} else {
		for (x = 0; x < 13; x++) {
			var monthElem = months[x].split("|");
			if(x != 0) {
				if(inMonth == x) {
				   document.writeln("<option value='" + monthElem[0]+ "' selected>"+ monthElem[langCode]+ "</option>\n");
				} else {
				   document.writeln("<option value='" + monthElem[0]+ "'>"+ monthElem[langCode]+ "</option>\n");
				}
			}
		}
	}	
	document.writeln("</select>\n");

}

function yearSelect(io) {

	var yearLabel = io+ "Year";
	maxYears = parseInt(year) + 1;

if(io == "out") {
		document.writeln("<select name='"+ yearLabel+ "' id='"+ yearLabel+ "' style='width: 52px;font-family:Arial;font-size:11px;' onchange='javascript:document.getElementById(\"inYear\").value=this.value'>\n");
		
	} else {
		document.writeln("<select name='"+ yearLabel+ "' id='"+ yearLabel+ "' style='width: 52px;font-family:Arial;font-size:11px;'>\n");
	
	}

	if(io == "out") {
		for(x = year; x <= maxYears; x++) {

			if(outYear == x) {
				document.writeln("<option value='"+ x+ "' selected>"+ x+ "</option>\n");
			} else {
				document.writeln("<option value='"+ x+ "'>"+ x+ "</option>\n");
				
			}
		}

	} else {
		for(x = year; x <= maxYears; x++) {

			if(inYear == x) {
				document.writeln("<option value='"+ x+ "' selected>"+ x+ "</option>\n");
			} else {
				document.writeln("<option value='"+ x+ "'>"+ x+ "</option>\n");
				
			}
		}
	}

	document.writeln("</select>\n");	
	

}

// Render origin list
function originSelect() {
	document.writeln("<select name='origin' id='origin' onchange='javascript:setValue(\"org\",this.value)' style='font-size:11px;width:143px;font-family:Arial, Helvetica, sans-serif;'>\n");
	if(origins == "all") {
		document.writeln("<option value='YYY'>-- Choose origin --</option>\n");
		document.writeln("<option value='AAL'>Aalborg</option>\n");
		document.writeln("<option value='AES'>Alesund</option>\n");
		document.writeln("<option value='AAR'>Aarhus</option>\n");
		document.writeln("<option value='ABZ'>Aberdeen</option>\n");
		document.writeln("<option value='ALF'>Alta</option>\n");
		document.writeln("<option value='AMS'>Amsterdam</option>\n");
		document.writeln("<option value='AGH'>Angelholm/Helsingborg</option>\n");
		document.writeln("<option value='ATH'>Athens</option>\n");
		document.writeln("<option value='BKK'>Bangkok</option>\n");
		document.writeln("<option value='BCN'>Barcelona</option>\n");
		document.writeln("<option value='BJS'>Beijing</option>\n");
		document.writeln("<option value='BGO'>Bergen</option>\n");
		document.writeln("<option value='TXL'>Berlin</option>\n");
		document.writeln("<option value='BHX'>Birmingham</option>\n");
		document.writeln("<option value='BOO'>Bodo</option>\n");
		document.writeln("<option value='BLQ'>Bologna</option>\n");
		document.writeln("<option value='BUH'>Bucharest</option>\n");
		document.writeln("<option value='BRU'>Brussels</option>\n");
		document.writeln("<option value='CHI'>Chicago</option>\n");
		document.writeln("<option value='CGN'>Cologne</option>\n");
		document.writeln("<option value='CPH'>Copenhagen</option>\n");
		document.writeln("<option value='DEL'>Delhi</option>\n");
		document.writeln("<option value='DXB'>Dubai</option>\n");
		document.writeln("<option value='DUB'>Dublin</option>\n");
		document.writeln("<option value='DUS'>Dusseldorf</option>\n");
		document.writeln("<option value='EDI'>Edinburgh</option>\n");
		document.writeln("<option value='FRA'>Frankfurt</option>\n");
		document.writeln("<option value='GDN'>Gdansk</option>\n");
		document.writeln("<option value='GVA'>Geneva</option>\n");
		document.writeln("<option value='GOT'>Gothenburg</option>\n");
		document.writeln("<option value='HAM'>Hamburg</option>\n");
		document.writeln("<option value='HAJ'>Hannover</option>\n");
		document.writeln("<option value='HEL'>Helsinki</option>\n");
		document.writeln("<option value='IST'>Istanbul</option>\n");
		document.writeln("<option value='KLR'>Kalmar</option>\n");
		document.writeln("<option value='SFJ'>Kangerlussuaq</option>\n");
		document.writeln("<option value='IEV'>Kiev</option>\n");
		document.writeln("<option value='KKN'>Kirkenes</option>\n");
		document.writeln("<option value='KRN'>Kiruna</option>\n");
		document.writeln("<option value='KTT'>Kittila</option>\n");
		document.writeln("<option value='KRS'>Kristiansand</option>\n");
		document.writeln("<option value='KUO'>Kuopio</option>\n");
		document.writeln("<option value='LAS'>Las Vegas</option>\n");
		document.writeln("<option value='LKL'>Lakselv</option>\n");			
		document.writeln("<option value='LON'>London</option>\n");
		document.writeln("<option value='LYR'>Longyearbyen</option>\n");
		document.writeln("<option value='LAX'>Los Angeles</option>\n");
		document.writeln("<option value='LLA'>Lulea</option>\n");
		document.writeln("<option value='LUX'>Luxembourg</option>\n");
		document.writeln("<option value='LYS'>Lyon</option>\n");
		document.writeln("<option value='MAD'>Madrid</option>\n");
		document.writeln("<option value='MMX'>Malmo</option>\n");
		document.writeln("<option value='MAN'>Manchester</option>\n");
		document.writeln("<option value='MIA'>Miami</option>\n");
		document.writeln("<option value='MIL'>Milan</option>\n");
		document.writeln("<option value='MOL'>Molde</option>\n");
		document.writeln("<option value='SVO'>Moscow</option>\n");
		document.writeln("<option value='MUC'>Munich</option>\n");
		document.writeln("<option value='EVE'>Narvik-Harstad</option>\n");
		document.writeln("<option value='NCL'>Newcastle</option>\n");
		document.writeln("<option value='NYC'>New York</option>\n");
		document.writeln("<option value='NCE'>Nice</option>\n");
		document.writeln("<option value='NUE'>Nuremberg</option>\n");
		document.writeln("<option value='ORL'>Orlando</option>\n");
		document.writeln("<option value='OER'>Ornskoldsvik</option>\n");
		document.writeln("<option value='OSL'>Oslo</option>\n");
		document.writeln("<option value='OSD'>Ostersund</option>\n");
		document.writeln("<option value='OUL'>Oulu</option>\n");
		document.writeln("<option value='PLQ'>Palanga</option>\n");
		document.writeln("<option value='CDG'>Paris</option>\n");
		document.writeln("<option value='POZ'>Poznan</option>\n");
		document.writeln("<option value='PRN'>Pristina</option>\n");
		document.writeln("<option value='REK'>Reykjavik</option>\n");
		document.writeln("<option value='RIX'>Riga</option>\n");
		document.writeln("<option value='FCO'>Rome</option>\n");
		document.writeln("<option value='RNB'>Ronneby</option>\n");
		document.writeln("<option value='RVN'>Rovaniemi</option>\n");
		document.writeln("<option value='SAN'>San Diego</option>\n");
		document.writeln("<option value='SFO'>San Francisco</option>\n");
		document.writeln("<option value='SEA'>Seattle</option>\n");
		document.writeln("<option value='SFT'>Skelleftea;</option>\n");
		document.writeln("<option value='SPU'>Split</option>\n");
		document.writeln("<option value='SVG'>Stavanger</option>\n");
		document.writeln("<option value='LED'>St Petersburg</option>\n");
		document.writeln("<option value='ARN'>Stockholm</option>\n");
		document.writeln("<option value='STR'>Stuttgart</option>\n");
		document.writeln("<option value='SDL'>Sundsvall</option>\n");
		document.writeln("<option value='SYD'>Sydney</option>\n");
		document.writeln("<option value='TLL'>Tallinn</option>\n");
		document.writeln("<option value='TMP'>Tampere</option>\n");
		document.writeln("<option value='TYO'>Tokyo</option>\n");
		document.writeln("<option value='TOS'>Tromso</option>\n");
		document.writeln("<option value='TRD'>Trondheim</option>\n");
		document.writeln("<option value='TKU'>Turku</option>\n");
		document.writeln("<option value='UME'>Umea</option>\n");
		document.writeln("<option value='VAA'>Vaasa</option>\n");
		document.writeln("<option value='VCE'>Venice</option>\n");
		document.writeln("<option value='VIE'>Vienna</option>\n");
		document.writeln("<option value='VNO'>Vilnius</option>\n");
		document.writeln("<option value='WAW'>Warsaw</option>\n");
		document.writeln("<option value='WAS'>Washington</option>\n");
		document.writeln("<option value='ZRH'>Zurich</option>\n");

	} else if(origins == "beyond") {
		document.writeln("<option value='YYY'>-- Choose origin --</option>\n");		
		document.writeln("<option value='ATL'>Atlanta</option>\n");
		document.writeln("<option value='AUS'>Austin</option>\n");
		document.writeln("<option value='BWI'>Baltimore</option>\n");
		document.writeln("<option value='BOS'>Boston</option>\n");
		document.writeln("<option value='CLT'>Charlotte</option>\n");
		document.writeln("<option value='CHI'>Chicago</option>\n");
		document.writeln("<option value='CVG'>Cincinnati</option>\n");
		document.writeln("<option value='CLE'>Cleveland</option>\n");
		document.writeln("<option value='DFW'>Dallas</option>\n");
		document.writeln("<option value='DEN'>Denver</option>\n");
		document.writeln("<option value='DTW'>Detroit</option>\n");
		document.writeln("<option value='FLL'>Fort Lauderdale</option>\n");
		document.writeln("<option value='GSO'>Greensboro</option>\n");
		document.writeln("<option value='HOU'>Houston</option>\n");
		document.writeln("<option value='IND'>Indianapolis</option>\n");
		document.writeln("<option value='MKC'>Kansas City</option>\n");
		document.writeln("<option value='LAS'>Las Vegas</option>\n");
		document.writeln("<option value='LAX'>Los Angeles</option>\n");
		document.writeln("<option value='MEM'>Memphis</option>\n");
		document.writeln("<option value='MIA'>Miami</option>\n");
		document.writeln("<option value='MSP'>Minneapolis</option>\n");
		document.writeln("<option value='BNA'>Nashville</option>\n");
		document.writeln("<option value='NYC'>New York</option>\n");
		document.writeln("<option value='MSY'>New Orleans</option>\n");
		document.writeln("<option value='ORF'>Norfolk</option>\n");
		document.writeln("<option value='ORL'>Orlando</option>\n");
		document.writeln("<option value='PHL'>Philadelphia</option>\n");
		document.writeln("<option value='PHX'>Phoenix</option>\n");
		document.writeln("<option value='PIT'>Pittsburgh</option>\n");
		document.writeln("<option value='PDX'>Portland</option>\n");
		document.writeln("<option value='RDU'>Raleigh</option>\n");
		document.writeln("<option value='SAC'>Sacramento</option>\n");
		document.writeln("<option value='STL'>St Louis</option>\n");
		document.writeln("<option value='SLC'>Salt Lake City</option>\n");
		document.writeln("<option value='SAN'>San Diego</option>\n");
		document.writeln("<option value='SFO'>San Francisco</option>\n");
		document.writeln("<option value='SJC'>San Jose</option>\n");
		document.writeln("<option value='SNA'>Santa Ana</option>\n");
		document.writeln("<option value='SEA'>Seattle</option>\n");
		document.writeln("<option value='SYD'>Sydney</option>\n");
		document.writeln("<option value='TPA'>Tampa</option>\n");
		document.writeln("<option value='TUS'>Tucson</option>\n");
		document.writeln("<option value='WAS'>Washington</option>\n");
	
	} else {
		origins = origins.toUpperCase();
		document.writeln("<option value='YYY'>-- Choose origin --</option>\n");		
		if(originLen > 0) {
			var originsString = origins.split("-");
			var originsArray = new Array();
			var originStart = 0;
			while(originStart < originLen) {
				originsArray[originStart] = originsString[originStart];
				originStart++;
			}
			var x;
			for(x in originsArray) {
				var iata = originsArray[x];
				var airportName = airports[iata];
				document.writeln("<option value='"+ iata+ "'>"+ airportName+ "</option>\n");
			}
		
		} else {
			var airportName = airports[origins];
			document.writeln("<option value='"+ origins+ "'>"+ airportName+ "</option>\n");
		}
	}
	
	document.writeln("</select>\n");
	
}

// Render destination list
function destinationSelect() {
	
	document.writeln("<select name='destination' id='destination' onchange='javascript:setValue(\"dest\",this.value)' style='font-size:11px;width:143px;font-family:Arial, Helvetica, sans-serif;'>");
	if(destLen > 1 || destinations == "all") {
		document.writeln("<option value='' selected='selected'>-- Choose destination --</option>\n");
	}
	
	if(destinations == "all" || destinations == "international" || destinations == "neurope" || destinations == "europe" || destinations == "intercont" || destinations == "beyond") {
		if(destinations == "all" || destinations == "international" || destinations == "neurope") {
					document.writeln("<optgroup label='Northern Europe'>\n");
				document.writeln("<option value='AAL'>Aalborg</option>\n");
				document.writeln("<option value='AES'>Alesund</option>\n");
				document.writeln("<option value='AAR'>Aarhus</option>\n");
				document.writeln("<option value='ALF'>Alta</option>\n");
				document.writeln("<option value='AGH'>Angelholm/Helsingborg</option>\n");
				document.writeln("<option value='BGO'>Bergen</option>\n");
				document.writeln("<option value='BOO'>Bodo</option>\n");
				document.writeln("<option value='CPH'>Copenhagen</option>\n");
				document.writeln("<option value='GOT'>Gothenburg</option>\n");
				document.writeln("<option value='HEL'>Helsinki</option>\n");
				document.writeln("<option value='KLR'>Kalmar</option>\n");
				document.writeln("<option value='SFJ'>Kangerlussuaq</option>\n");
				document.writeln("<option value='KKN'>Kirkenes</option>\n");
				document.writeln("<option value='KRN'>Kiruna</option>\n");
				document.writeln("<option value='KTT'>Kittila</option>\n");
				document.writeln("<option value='KRS'>Kristiansand</option>\n");
				document.writeln("<option value='KUO'>Kuopio</option>\n");
				document.writeln("<option value='LKL'>Lakselv</option>\n");			
				document.writeln("<option value='LYR'>Longyearbyen</option>\n");
				document.writeln("<option value='LLA'>Lulea</option>\n");
				document.writeln("<option value='MMX'>Malmo</option>\n");
				document.writeln("<option value='MOL'>Molde</option>\n");
				document.writeln("<option value='EVE'>Narvik-Harstad</option>\n");
				document.writeln("<option value='OER'>Ornskoldsvik</option>\n");
				document.writeln("<option value='OSL'>Oslo</option>\n");
				document.writeln("<option value='OSD'>Ostersund</option>\n");
				document.writeln("<option value='OUL'>Oulu</option>\n");
				document.writeln("<option value='REK'>Reykjavik</option>\n");
				document.writeln("<option value='RIX'>Riga</option>\n");
				document.writeln("<option value='RNB'>Ronneby</option>\n");
				document.writeln("<option value='RVN'>Rovaniemi</option>\n");
				document.writeln("<option value='SFT'>Skelleftea;</option>\n");
				document.writeln("<option value='SVG'>Stavanger</option>\n");
				document.writeln("<option value='ARN'>Stockholm</option>\n");
				document.writeln("<option value='SDL'>Sundsvall</option>\n");
				document.writeln("<option value='TLL'>Tallinn</option>\n");
				document.writeln("<option value='TMP'>Tampere</option>\n");
				document.writeln("<option value='TOS'>Tromso</option>\n");
				document.writeln("<option value='TRD'>Trondheim</option>\n");
				document.writeln("<option value='TKU'>Turku</option>\n");
				document.writeln("<option value='UME'>Umea</option>\n");
				document.writeln("<option value='VAA'>Vaasa</option>\n");
				document.writeln("<option value='VNO'>Vilnius</option>\n");
				document.writeln("</optgroup>\n");
		}
		if(destinations == "all" || destinations == "international" || destinations == "europe") {
					document.writeln("<optgroup label='Rest of Europe'>\n");
				document.writeln("<option value='ABZ'>Aberdeen</option>\n");
				document.writeln("<option value='AMS'>Amsterdam</option>\n");
				document.writeln("<option value='ATH'>Athens</option>\n");
				document.writeln("<option value='BCN'>Barcelona</option>\n");
				document.writeln("<option value='TXL'>Berlin</option>\n");
				document.writeln("<option value='BLQ'>Bologna</option>\n");
				document.writeln("<option value='BUH'>Bucharest</option>\n");
				document.writeln("<option value='BRU'>Brussels</option>\n");
				document.writeln("<option value='CGN'>Cologne</option>\n");
				document.writeln("<option value='DUB'>Dublin</option>\n");
				document.writeln("<option value='DUS'>Dusseldorf</option>\n");
				document.writeln("<option value='EDI'>Edinburgh</option>\n");
				document.writeln("<option value='FRA'>Frankfurt</option>\n");
				document.writeln("<option value='GDN'>Gdansk</option>\n");
				document.writeln("<option value='GVA'>Geneva</option>\n");
				document.writeln("<option value='HAM'>Hamburg</option>\n");
				document.writeln("<option value='HAJ'>Hannover</option>\n");
				document.writeln("<option value='IST'>Istanbul</option>\n");
				document.writeln("<option value='IEV'>Kiev</option>\n");
				document.writeln("<option value='LON'>London</option>\n");
				document.writeln("<option value='LUX'>Luxembourg</option>\n");
				document.writeln("<option value='LYS'>Lyon</option>\n");
				document.writeln("<option value='MAD'>Madrid</option>\n");
				document.writeln("<option value='MAN'>Manchester</option>\n");
				document.writeln("<option value='MIL'>Milan</option>\n");
				document.writeln("<option value='SVO'>Moscow</option>\n");
				document.writeln("<option value='MUC'>Munich</option>\n");
				document.writeln("<option value='NCE'>Nice</option>\n");
				document.writeln("<option value='NUE'>Nuremberg</option>\n");
				document.writeln("<option value='PLQ'>Palanga</option>\n");
				document.writeln("<option value='CDG'>Paris</option>\n");
				document.writeln("<option value='POZ'>Poznan</option>\n");
				document.writeln("<option value='PRN'>Pristina</option>\n");
				document.writeln("<option value='FCO'>Rome</option>\n");
				document.writeln("<option value='SPU'>Split</option>\n");
				document.writeln("<option value='LED'>St Petersburg</option>\n");
				document.writeln("<option value='STR'>Stuttgart</option>\n");
				document.writeln("<option value='VCE'>Venice</option>\n");
				document.writeln("<option value='VIE'>Vienna</option>\n");
				document.writeln("<option value='WAW'>Warsaw</option>\n");
				document.writeln("<option value='ZRH'>Zurich</option>\n");	
				document.writeln("</optgroup>\n");
		}
		if(destinations == "all" || destinations == "international" || destinations == "intercont") {
			document.writeln("<optgroup label='Rest of the World'>\n");
			document.writeln("<option value='BKK'>Bangkok</option>\n");
			document.writeln("<option value='BJS'>Beijing</option>\n");
			document.writeln("<option value='CHI'>Chicago</option>\n");
			document.writeln("<option value='DEL'>Delhi</option>\n");
			document.writeln("<option value='DXB'>Dubai</option>\n");
			document.writeln("<option value='NYC'>New York</option>\n");
			document.writeln("<option value='SEA'>Seattle</option>\n");
			document.writeln("<option value='TYO'>Tokyo</option>\n");
			document.writeln("<option value='WAS'>Washington</option>\n");
			document.writeln("</optgroup>\n");

		}
		
		if(destinations == "beyond") {
			document.writeln("<option value='ATL'>Atlanta</option>\n");
			document.writeln("<option value='AUS'>Austin</option>\n");
			document.writeln("<option value='BWI'>Baltimore</option>\n");
			document.writeln("<option value='BOS'>Boston</option>\n");
			document.writeln("<option value='CLT'>Charlotte</option>\n");
			document.writeln("<option value='CHI'>Chicago</option>\n");
			document.writeln("<option value='CVG'>Cincinnati</option>\n");
			document.writeln("<option value='CLE'>Cleveland</option>\n");
			document.writeln("<option value='DFW'>Dallas</option>\n");
			document.writeln("<option value='DEN'>Denver</option>\n");
			document.writeln("<option value='DTW'>Detroit</option>\n");
			document.writeln("<option value='FLL'>Fort Lauderdale</option>\n");
			document.writeln("<option value='GSO'>Greensboro</option>\n");
			document.writeln("<option value='HOU'>Houston</option>\n");
			document.writeln("<option value='IND'>Indianapolis</option>\n");
			document.writeln("<option value='MKC'>Kansas City</option>\n");
			document.writeln("<option value='LAS'>Las Vegas</option>\n");
			document.writeln("<option value='LAX'>Los Angeles</option>\n");
			document.writeln("<option value='MEM'>Memphis</option>\n");
			document.writeln("<option value='MIA'>Miami</option>\n");
			document.writeln("<option value='MSP'>Minneapolis</option>\n");
			document.writeln("<option value='BNA'>Nashville</option>\n");
			document.writeln("<option value='NYC'>New York</option>\n");
			document.writeln("<option value='MSY'>New Orleans</option>\n");
			document.writeln("<option value='ORF'>Norfolk</option>\n");
			document.writeln("<option value='ORL'>Orlando</option>\n");
			document.writeln("<option value='PHL'>Philadelphia</option>\n");
			document.writeln("<option value='PHX'>Phoenix</option>\n");
			document.writeln("<option value='PIT'>Pittsburgh</option>\n");
			document.writeln("<option value='PDX'>Portland</option>\n");
			document.writeln("<option value='RDU'>Raleigh</option>\n");
			document.writeln("<option value='SAC'>Sacramento</option>\n");
			document.writeln("<option value='STL'>St Louis</option>\n");
			document.writeln("<option value='SLC'>Salt Lake City</option>\n");
			document.writeln("<option value='SAN'>San Diego</option>\n");
			document.writeln("<option value='SFO'>San Francisco</option>\n");
			document.writeln("<option value='SJC'>San Jose</option>\n");
			document.writeln("<option value='SNA'>Santa Ana</option>\n");
			document.writeln("<option value='SEA'>Seattle</option>\n");
			document.writeln("<option value='SYD'>Sydney</option>\n");
			document.writeln("<option value='TPA'>Tampa</option>\n");
			document.writeln("<option value='TUS'>Tucson</option>\n");
			document.writeln("<option value='WAS'>Washington</option>\n");
		}
	
	} else {
		destinations = destinations.toUpperCase();
		if(destLen > 0) {
			var destinationsString = destinations.split("-");
			var destinationsArray = new Array();
			var destinationstart = 0;
			while(destinationstart < destLen) {
				destinationsArray[destinationstart] = destinationsString[destinationstart];
				destinationstart++;
			}
			var x;
			for(x in destinationsArray) {
				var iata = destinationsArray[x];
				var airportName = airports[iata];
				document.writeln("<option value='"+ iata+ "'>"+ airportName+ "</option>\n");
			}
		
		} else {
			var airportName = airports[destinations];
			document.writeln("<option value='"+ destinations+ "'>"+ airportName+ "</option>\n");
		}
	}
	
	document.writeln("</select>\n");

}

function clearFrame(id) {
	var elemId = id;
	document.getElementById(elemId).style.border='0';
}

// Change button color
function buttonSwitch(action) {
	if(action == 1) {
		document.getElementById("button1").style.background = "url(/images/icons/i_button_red_m.gif) repeat-x";
		document.getElementById("button2").style.background = "url(/images/icons/i_button_red_l.gif) no-repeat";
		document.getElementById("button3").style.background = "url(/images/icons/i_button_red_r.gif) no-repeat right top";
	} else {
		document.getElementById("button1").style.background = "url(/images/icons/i_button_blue_m.gif) repeat-x";
		document.getElementById("button2").style.background = "url(/images/icons/i_button_blue_l.gif) no-repeat";
		document.getElementById("button3").style.background = "url(/images/icons/i_button_blue_r.gif) no-repeat right top";
	}
}

function setValue(id,val) {
	var elemId = id;
	var elemVal = val;
	document.getElementById(elemId).value = elemVal;
}

function showHideIn(val) {
	if(val == 1) {
		document.getElementById('inboundDate').style.display = 'block';
	} else {
		document.getElementById('inboundDate').style.display = 'none';
	}
}

// Render the form
function renderForm() {
	var outDate = getVar('outDate');
	var inDate = getVar('inDate');

	if(outDate != "") {
		document.getElementById('outYear').value = outDate.substr(0,4);
		document.getElementById('outMonth').value = parseInt(outDate.substr(4,2));
		document.getElementById('outDay'). value = outDate.substr(6,2);
	}

	if(inDate != "") {
		document.getElementById('inYear').value = inDate.substr(0,4);
		document.getElementById('inMonth').value = parseInt(inDate.substr(4,2));
		document.getElementById('inDay'). value = inDate.substr(6,2);
	}
	
	if(outDate != "" && inDate == "") {
		document.getElementById('inYear').value = outDate.substr(0,4);
		document.getElementById('inMonth').value = parseInt(outDate.substr(4,2));
		document.getElementById('inDay'). value = outDate.substr(6,2);		
	}

	document.getElementById('origin').value = originDefault;
	document.getElementById('destination').value = destinationDefault;
	if(allowOW == 0) {
		document.getElementById('tripType').style.display = "none";
	}
}

// Validate and submit form
function submitform() {
	var months = new Array('0|0|0','1|Jan|Jan','2|Feb|Feb','3|Mar|Mar','4|Apr|Apr','5|May|May','6|Jun|Jun','7|Jul|Jul','8|Aug|Aug','9|Sep|Sep','10|Oct|Oct','11|Nov|Nov','12|Dec|Dec')	;
	var outDay = document.getElementById('outDay').value;
	if(outDay < 10) {
		var outDay = "0"+ outDay;
	}
	var outMonth = document.getElementById('outMonth').value;
	var monthOutElem = months[outMonth].split("|");
	var outTextMonth = monthOutElem[1].toUpperCase();
	var outYear = document.getElementById('outYear').value;
	document.getElementById('out').value = outDay+ outTextMonth+ outYear.substr(2,2);
	var inDay = document.getElementById('inDay').value;
	if(inDay < 10) {
		var inDay = "0"+ inDay;
	}
	var inMonth = document.getElementById('inMonth').value;
	var monthInElem = months[inMonth].split("|");
	var inTextMonth = monthInElem[1].toUpperCase()
	var inYear = document.getElementById('inYear').value;
	var ret = document.getElementById('inboundDate').style.display;
	if(ret != "none") {
		document.getElementById('ret').value = inDay+ inTextMonth+ inYear.substr(2,2);
	}
	var origin = document.getElementById('org').value;
	if(origin == "") {
		document.getElementById('org').value = document.getElementById('origin').value;
	}
	var destination = document.getElementById('dest').value;
	if(destination == "") {
		document.getElementById('dest').value = document.getElementById('destination').value
	}
	var destination = document.getElementById('dest').value;
	var adults = parseInt(document.getElementById('adt').value);
	var child_2_11 = parseInt(document.getElementById('chd_2-11').value);
	var child_12_15 = parseInt(document.getElementById('chd_12-15').value);
	var infants = parseInt(document.getElementById('inf').value);	
	var pax = adults + child_2_11 + child_12_15;

	errCount = 0;
	var msg = 'The following information is needed in order to search for flights:';
	
	if(destination == '') {
		msg = msg+ '\n- Destination';
		errCount++;
	}
	
	if(ret != "none") {
		if(outMonth == inMonth) {
			if(inDay - outDay < 0) {
				msg = '\n- Return flight is before outward flight!';
				errCount++;
			}
		}
	}
		
	if(pax > 9) {
		msg = '\n- Only up to 9 passengers can be booked online at a time. Please contact SAS Travel Center +45 70 10 20 00';
		errCount++;
	}
	
	if(infants > adults) {
		msg = '\n- The number of infants may not exceed number of adults';
		errCount++;
	}
		
	if(errCount > 0) {
		alert(msg);
	
	} else {
		document.getElementById('WT.mc_id').value = WT_mc_id;
		document.getElementById('WT.seg_4').value = WT_seg_4;
		document.getElementById('fastLaneForm').submit();
	}
}