
//var array = new Array("");

var canada = new Array("CALGARY/ BANFF/ LAKE LOUISE, AB, CANADA", "CHARLOTTETOWN, PE, CANADA", "CRANBROOK, CANADA", "HALIFAX/ YARMOUTH/ SYDNEY, NS, CANADA", "MONCTON, NB, CANADA", "MONTREAL/ MONTEBELLO, QC, CANADA", "NEWFOUNDLAND", "NEWFOUNDLAND", "NIAGARA FALLS, ON, CANADA/ BUFFALO AIRPORT", "OTTAWA, ON, CANADA", "QUEBEC CITY/ LA MALBAIE, QC, CANADA", "TORONTO, ON, CANADA", "VANCOUVER/ WHISTLER/ VICTORIA, BC, CANADA");
var canadacode = new Array("YYC", "YYG", "YXC", "YHZ", "YQM", "YUL", "YSJ", "YYT", "BUF", "YOW", "YQB", "YYZ", "YVR"); 

var caribbean = new Array("ANGUILLA", "ANTIGUA", "ARUBA", "BARBADOS", "BERMUDA", "BIMINI/Outer Isl of Bahamas", "BONAIRE", "CANOUAN ISLAND, ST. VINCENT", "CURACAO", "ELEUTHERA, BAHAMAS", "EXUMA/ GEORGETOWN, BAHAMAS", "FREEPORT, BAHAMAS", "GRAND CAYMAN/ GEORGE TOWN", "GRENADA/ ST GEORGES", "GUADELOUPE/ POINTE A PITRE", "KINGSTON, JAMAICA", "LA ROMANA, DOMINICAN REPUBLIC", "MARSH HARBOUR/ ABACO, BAHAMAS", "MARTINIQUE/ FORT DE FRANCE", "MONTEGO BAY/ NEGRIL/ OCHO, JAMAICA", "NASSAU/ CABLE BEACH/ PARADISE ISLAND", "NEVIS", "PUERTO PLATA, DOMINICAN REPUBLIC", "PUNTA CANA, DOMINICAN REPUBLIC", "SAN JUAN, PUERTO RICO", "SANTO DOMINGO, DOMINICAN REPUBLIC", "ST. BARTHELEMY/ ST. BARTS", "ST. CROIX, U.S.V.I", "ST. KITTS", "ST. LUCIA", "ST. MARTIN/ MAARTEN", "ST. THOMAS/ ST. JOHN, U.S.V.I.", "STANIEL CAY, BAHAMAS", "TOBAGO, TRINIDAD", "TORTOLA/ BEEF ISLAND, B.V.I.", "TREASURE CAY, BAHAMAS", "TURKS AND CAICOS/ PROVIDENCIALES", "VIRGIN GORDA, B.V.I");
var caribbeancode = new Array("AXA", "ANU", "AUA", "BGI", "BDA", "BIM", "BON", "CIW", "CUR", "ELH", "GGT", "FPO", "GCM", "GND", "PTP", "KIN", "LRM", "MHH", "FDF", "MBJ", "NAS", "NEV", "POP", "PUJ", "SJU", "SDQ", "SBH", "STX", "SKB", "UVF", "SXM", "STT", "TYM", "TAB", "EIS", "TCB", "PLS", "VIJ");

var centralamerica = new Array("BELIZE", "GUANACASTE/ LIBERIA, COSTA RICA", "GUATEMALA CITY, GUATEMALA", "MENDOZA, ARGENTINA", "PANAMA CITY, PANAMA", "SAN JOSE, COSTA RICA", "SAN SALAVADOR, EL SALVADOR");
var centralamericacode = new Array("BZE", "LIR", "GUA", "MDZ", "PTY", "SJO", "SAL");

var easternmediterranean = new Array("AMMAN, JORDAN", "ISRAEL, TEL AVIV/EILAT/JERUSALEM/HAIFA");
var easternmediterraneancode = new Array("AMM", "TLV");

var europe = new Array("AIX EN PROVENCE, FRANCE", "AMSTERDAM, HOLLAND, THE NETHERLANDS", "ATHENS, GREECE", "AVIGNON", "BARCELONA, SPAIN", "BATH, ENGLAND, UK", "BELFAST, NORTHERN IRELAND, UK", "BERGEN, NORWAY", "BERLIN, GERMANY", "BERNE, SWITZERLAND", "BILBAO, SPAIN", "BIRMINGHAM, ENGLAND, UK", "BORDEAUX,FRANCE", "BRUGGE, BELGIUM", "BRUSSELS, BELGIUM", "BUDAPEST, HUNGARY", "CADIZ,SPAIN", "CAGLIARI, SARDINIA", "CALABRIA, ITALY", "CANNES, FRANCE", "CARCASSONNE, FRANCE", "CARDIFF, WALES, UK", "CHESTER, ENGLAND, UK", "COLOGNE, GERMANY", "COPENHAGEN, DENMARK", "CORDOBA, SPAIN", "CORK, IRELAND", "CRETE, GREECE", "DRESDEN, GERMANY", "DUBAI, UNITED ARAB EMIRATES", "DUBLIN, IRELAND", "DUBROVNIK/HVAR/SPLIT, CROATIA", "EDINBURGH, SCOTLAND, UK", "EXETER, ENGLAND, UK", "FARO/ALGARVE, PORTUGAL", "FLORENCE, ITALY", "FRANKFURT, GERMANY", "GALWAY, IRELAND", "GENEVA, SWITZERLAND", "GENOA, ITALY", "GLASGOW, SCOTLAND, UK", "GRANADA, SPAIN", "HAMBURG, GERMANY", "HELSINKI, FINLAND", "IBIZA, SPAIN", "ISTANBUL, TURKEY", "JEREZ DE LA ");
var europecode = new Array("QXB", "AMS", "ATH", "AVN", "BCN", "QQX", "BFS", "BGO", "BER", "BRN", "BIO", "BHX", "BOD", "ZGJ", "BRU", "BUD", "CDZ", "CAG", "REG", "CEQ", "CCF", "CWL", "CEG", "CGN", "CPH", "ODB", "ORK", "HER", "DRS", "DXB", "DUB", "DBV", "EDI", "EXT", "FAO", "FLR", "FRA", "GWY", "GVA", "GOA", "GLA", "GRX", "HAM", "HEL", "IBZ", "IST", "XRY", "KIR", "KKY", "NOC", "KRK", "LIS", "LPL", "LON", "QLJ", "LUG", "LYN", "FNC", "MAD", "AGP", "MAN", "QRL", "MRS", "MIL", "MCM", "MUC", "JMK", "NAP", "NCE", "OSL", "OVD", "OXF", "PMO", "PMI", "PAR", "PEG", "PSA", "OPO", "PRG", "RHO", "ROM", "SZG", "JTR", "SVQ", "SNN", "SAY", "RRO", "STO", "VLC", "VCE", "VRS", "VIE", "WAW", "WAT", "ZAG", "ZRH");

var mexico = new Array("ACAPULCO, MEXICO", "CANCUN/ RIVIERA MAYA, MEXICO", "COZUMEL, MEXICO", "GUADALAJARA, MEXICO", "GUANAJUATO/ LEON / BAJO, MEXICO", "HUATULCO, MEXICO", "IXTAPA/ ZIHUATANEJO, MEXICO", "LORETO/ BAJA CALIFORNIA SUR, MEXICO", "MANZANILLO, MEXICO", "MAZATLAN, MEXICO", "MERIDA, MEXICO", "MEXICO CITY, MEXICO", "MONTERREY, MEXICO", "OAXACA, MEXICO", "PUEBLA, MEXICO", "PUERTO VALLARTA/ NUEVO, MEXICO", "SAN JOSE CABO/ LOS CABOS, MEXICO");
var mexicocode = new Array("ACA", "CUN", "CZM", "GDL", "BJX", "HUX", "ZIH", "LTO", "ZLO", "MZT", "MID", "MEX", "MTY", "OAX", "PBC", "PVR", "SJD");

var russia = new Array("MOSCOW, RUSSIA", "ST. PETERSBURG, RUSSIA");
var russiacode = new Array("SVO", "LED");

var southamerica = new Array("BARILOCHE, ARGENTINA", "BUENOS AIRES, ARGENTINA", "CUSCO, PERU", "EL CALAFATE, ARGENTINA", "FLORIANOPOLIS, BRAZIL", "IGUASSU FALLS, BRAZIL", "IGUAZU, ARGENTINA", "LIMA, PERU", "MANAUS, BRAZIL", "MONTEVIDEO, URUGUAY", "NATAL, BRAZIL", "PUERTO MADRYN, ARGENTINA", "RECIFE, BRAZIL", "RIO DE JANEIRO, BRAZIL", "SALVADOR/ BAHIA, BRAZIL", "SANTIAGO, CHILE", "SAO LUIZ, MARANHAO BRAZIL", "SAO PAULO, BRAZIL", "USHUAIA, ARGENTINA");
var southamericacode = new Array("BRC", "EZE", "CUZ", "FTE", "FLN", "IGU", "IGR", "LIM", "MAO", "MVD", "NAT", "REL", "REC", "GIG", "SSA", "SCL", "SLZ", "GRU", "USH");

var southpacific = new Array("MOOREA, FRENCH POLYNESIA", "RAIATEA/TAHAA, FRENCH POLYNESIA", "RANGIROA, FRENCH POLYNESIA", "TAHITI, FRENCH POLYNESIA");
var southpacificcode = new Array("MOZ", "RFP", "RGI", "PPT");

var unitedstates = new Array("ANAHEIM/ ORANGE COUNTY, CA", "ASPEN, COLORADO", "CRESTED BUTTE, CO", "DAYTONA BEACH, FL", "DENVER, COLORADO", "FT. LAUDERDALE/ DEERFIELD BEACH, FL", "FT. MYERS / MARCO/ NAPLES/ SANIBEL, FL", "HILO / BIG ISLAND, HI", "HONOLULU/ WAIKIKI/ OAHU, HI", "JACKSON HOLE, WYOMING", "JACKSONVILLE/ AMELIA ISLAND, FL", "KEY WEST, FL", "KONA/ BIG ISLAND, HI", "LANAI, HI", "LAS VEGAS, NV", "LIHUE/ KAUAI, HI", "LOS ANGELES, CA", "MARATHON/ DUCK KEY, FL", "MAUI/ KAHULUI, HI", "MELBOURNE, FL", "MIAMI, FL", "NEW ORLEANS, LA", "NEW YORK CITY, NY", "ORLANDO, FL", "PALM SPRINGS, CA", "PHOENIX, AZ", "RENO, NEVADA", "SALT LAKE CITY, UTAH", "SAN DIEGO, CA", "SAN FRANCISCO, CA", "SARASOTA/ LONGBOAT KEY, FL", "STEAMBOAT SPRINGS, CO", "TAMPA/ ST. PETE/ CLEARWATER, FL", "TELLURIDE, MONTROSE, CO", "TUCSON, AZ", "VAIL, BEAVER CRK, BRECKENRIDGE, CO", "WEST PALM BEACH/ BOCA RATON, FL");
var unitedstatescode = new Array("SNA", "ASE", "GUC", "DAB", "DEN", "FLL", "RSW", "ITO", "HNL", "JAC", "JAX", "EYW", "KOA", "LNY", "LAS", "LIH", "LAX", "MTH", "OGG", "MLB", "MIA", "MSY", "NYC", "MCO", "PSP", "PHX", "RNO", "SLC", "SAN", "SFO", "SRQ", "HDN", "TPA", "MTJ", "TUS", "EGE", "PBI");


function updateDestinationCity(ctl)
{
	removeAllOptions("drpcity");
	addOption(ctl, "Choose...", "Choose...");
	dest = document.getElementById("region").value;
	
	switch(dest) {
		case "CANADA":
				for (var i=0; i < canada.length; i++) addOption(ctl, canada[i], canadacode[i]);
				break;
		case "CARIBBEAN":
				for (var i=0; i < caribbean.length; i++) addOption(ctl, caribbean[i], caribbeancode[i]);
				break;
		case "CENTRAL AMERICA":
				for (var i=0; i < centralamerica.length; i++) addOption(ctl, centralamerica[i], centralamericacode[i]);
				break;
		case "EASTERN MEDITERRANEAN":
				for (var i=0; i < easternmediterranean.length; i++) addOption(ctl, easternmediterranean[i], easternmediterraneancode[i]);
				break;
		case "EUROPE":
				for (var i=0; i < europe.length; i++) addOption(ctl, europe[i], europecode[i]);
				break;
		case "MEXICO":
				for (var i=0; i < mexico.length; i++) addOption(ctl, mexico[i], mexicocode[i]);
				break;
		case "RUSSIA":
				for (var i=0; i < russia.length; i++) addOption(ctl, russia[i], russiacode[i]);
				break;
		case "SOUTH AMERICA":
				for (var i=0; i < southamerica.length; i++) addOption(ctl, southamerica[i], southamericacode[i]);
				break;
		case "SOUTH PACIFIC":
				for (var i=0; i < southpacific.length; i++) addOption(ctl, southpacific[i], southpacificcode[i]);
				break;
		case "UNITED STATES":
				for (var i=0; i < unitedstates.length; i++) addOption(ctl, unitedstates[i], unitedstatescode[i]);
				break;						  
	}
}
function addOption(ctl,text,value )
{
  var optn = document.createElement("option");
  optn.text = text;
  optn.value = value;
  document.getElementById(ctl).options.add(optn);
}
function removeAllOptions(ctl)
{
	len = document.getElementById(ctl).options.length;
	for (i=len; i>0; i--)document.getElementById(ctl).remove(i-1);
}
function setMode(mode)
{
	//alert(mode);
	if(mode=="package") {
		document.getElementById("lblfrom").style.display = "block";
		document.getElementById("drpfrom").style.display = "block";
		document.getElementById("fromspacer").style.display = "none";		
		
		//document.getElementById("lblfrom").style.display = "block";
	} else {
		document.getElementById("lblfrom").style.display = "none";
		document.getElementById("drpfrom").style.display = "none";
		document.getElementById("fromspacer").style.display = "block";		
	}
}
function compareTwoDates(fromdate, todate)
{
	//var today = new Date();
	var minDate = new Date();	
	minDate.setDate(minDate.getDate()+5);
	var maxDate = new Date();	
	maxDate.setDate(maxDate.getDate()+329);

  var fDate=new Date();
	yr = fromdate.substring(6, 10);
	mo = fromdate.substring(0, 2);
	da = fromdate.substring(3, 5);
  fDate.setFullYear(yr, mo-1, da);
  
	var tDate=new Date();
	yr = todate.substring(6, 10);
	mo = todate.substring(0, 2);
	da = todate.substring(3, 5);
  tDate.setFullYear(yr, mo-1, da);
		
	//alert(tDate);
	msg = "";	
	if (fDate>tDate) msg = "Depart Date must be earlier than Return Date.";
	if (fDate<minDate) msg = "Depart Date must be 4 days in future.";
	if (fDate>maxDate) msg = "Depart Date must be within<br/> &nbsp;&nbsp;330 days from today.";
  //alert(today);
	return msg;	
}
function validateBookingEngine()
{
	isvalid = "true";
	msg = "";	
	mode = "";
	
	room = "";
	numPass = ValidateNumberOfPassengers();
	if(numPass > 7) msg = "Maximum number of passengers is 7.<br/>";	
	
	if(document.getElementById("rdopackage").checked) mode = "Air/Hotel"; 
	else mode = "HotelOnly";
	
	if(document.getElementById("rdoRoom1").checked) room = "1"; 
	else room = "2";

	from = document.getElementById("drpfrom").value;
	//alert(from);
	fromdesc = document.getElementById("drpfrom").options[document.getElementById("drpfrom").selectedIndex].text;
	region = document.getElementById("region").value;
	//regiondesc = document.getElementById("region").options[document.getElementById("region").selectedIndex].text;
	city = document.getElementById("drpcity").value;
	//alert(city);
	//al
	//citydesc = document.getElementById("drpcity").options[document.getElementById("drpcity").selectedIndex].text;
	if(city != "") { citydesc = document.getElementById("drpcity").options[document.getElementById("drpcity").selectedIndex].text; }
	

	fromdate = document.getElementById("cfromdate").value;
	todate = document.getElementById("ctodate").value;
	
	// room 1 passengers	
	adult1 = document.getElementById("drpadults1").value;
	children1 = document.getElementById("drpChildrenRoom1").value;
	child11 = document.getElementById("drpRoom1Child1").value;
	child12 = document.getElementById("drpRoom1Child2").value;
	child13 = document.getElementById("drpRoom1Child3").value;
	child14 = document.getElementById("drpRoom1Child4").value;

	// room 2 passengers	
	adult2 = document.getElementById("drpadults2").value;
	children2 = document.getElementById("drpChildrenRoom2").value;
	child21 = document.getElementById("drpRoom2Child1").value;
	child22 = document.getElementById("drpRoom2Child2").value;
	child23 = document.getElementById("drpRoom2Child3").value;
	child24 = document.getElementById("drpRoom2Child4").value;

	if(mode=="Air/Hotel") if(from == "Choose...") msg += "Leaving From is required.<br/>";
	if(region == "Choose...") msg += "Going to is required.<br/>";
	if(city == "Choose...") msg += "Destination City is required.<br/>";	
	if(fromdate == "") msg += "Depart Date is required.<br/>";
	if(todate == "") msg += "Return Date is required.<br/>";		
	msg += compareTwoDates(fromdate, todate);

	
	if(msg != "") {
		document.getElementById("divvalidation").innerHTML = msg;
		return;
	} else {
		str = "site=1&mode="+mode+"&from="+from+"&to="+region+"&city="+city+"&fromdate="+fromdate+"&todate="+todate+"&room="+room+"&numpass="+numPass+"&fromdesc="+fromdesc+"&citydesc="+citydesc;
		str +="&adult1="+adult1+"&children1="+children1+"&1child1="+child11+"&1child2="+child12+"&1child3="+child13+"&1child4="+child14;
		str +="&adult2="+adult2+"&children2="+children2+"&2child1="+child21+"&2child2="+child22+"&2child3="+child23+"&2child4="+child24;		
		//str = "http://www.codingcapital.net/tripcrave/redirect.aspx?" + str;
		str = "http://www.tripcrave.com/redirect.aspx?" + str;		
		
		//document.getElementById("divurl").innerHTML = str;
		//alert(str);
		window.location = str;
	}
}
 function displayChildAgesControls_BookingEngine2(id) 
 {
		var selectedIndex = document.getElementById("drpChildrenRoom" + id).selectedIndex;
    if(selectedIndex == 0) { document.getElementById("divChildAgesRoom" + id).style.display = "none"; }
    else { document.getElementById("divChildAgesRoom" + id).style.display = "block"; }        
        //hide all child age dropdowns
    for (var i=1; i <= 4; i++) { document.getElementById("drpRoom" + id + "Child" + i).style.display = "none"; }        
        //display/hide child age dropdowns
    for (var i=1; i <= selectedIndex; i++) { document.getElementById("drpRoom" + id + "Child" + i).style.display = "block"; }
}
 function toggleModeRooms_BookingEngine2(id) 
 {                
    var selectedIndex = document.getElementById("drpChildrenRoom2").selectedIndex;
    
    if(id=='1') { document.getElementById("divPassengerRoom2").style.display='none'; document.getElementById("divChildAgesRoom2").style.display = "none"; }
    else { 
        document.getElementById("divPassengerRoom2").style.display='block'; 
        if(selectedIndex > 0) { document.getElementById("divChildAgesRoom2").style.display = "block";  }        
    }  
} 
function ValidateNumberOfPassengers()
{
    var numPass = parseInt(document.getElementById("drpadults1").value);
    var numC = parseInt(document.getElementById("drpChildrenRoom1").value);
    numPass = numPass + numC;
    
    // if room2 selected, count these passenger numbers too
    var mode =  document.getElementById("rdoRoom1").checked;

    if(mode == false) {
        var num2 = parseInt(document.getElementById("drpadults2").value);
        var numC2 = parseInt(document.getElementById("drpChildrenRoom2").value);
        numPass = numPass + num2 + numC2;
    }
		return numPass;   
}