var adultos = 1;
//var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
var jovem = 0;
var crianca = 0;
var bebe = 0;
var abriuWarning = false;
var auxBigBanner ="";
var bigBanner;
var warningptrcustoms;	

//***** France *****
// Aeroportos Portugal
var vAirportsPT = new Array();
vAirportsPT[0] = 'FAO';  // 'Faro',
vAirportsPT[1] = 'FLW';  // 'Flores Island',
vAirportsPT[2] = 'FNC';  // 'Funchal',
vAirportsPT[3] = 'HOR';  // 'Horta',
vAirportsPT[4] = 'LIS';  // 'Lisbon',
vAirportsPT[5] = 'PIX';  // 'Pico',
vAirportsPT[6] = 'PDL';  // 'Ponta Delgada',
vAirportsPT[7] = 'OPO';  // 'Porto',
vAirportsPT[8] = 'PXO';  // 'Porto Santo',
vAirportsPT[9] = 'SMA';  // 'Santa Maria',
vAirportsPT[10] = 'TER';  // 'Terceira',

// Aeroportos Brasil
var vAirportsBR = new Array();
vAirportsBR[0] = 'AJU';		// Aracaju
vAirportsBR[1] = 'BEL';		// Belem
vAirportsBR[2] = 'BPS';		// Porto Seguro
vAirportsBR[3] = 'BSB';		// Brasilia
vAirportsBR[4] = 'CGB';		// Cuiaba
vAirportsBR[5] = 'CGH';		// Sao Paulo, Congonhas
vAirportsBR[6] = 'CGR';		// Campo Grande
vAirportsBR[7] = 'CNF';		// Belo Horizonte
vAirportsBR[8] = 'CWB';		// Curitiba
vAirportsBR[9] = 'FLN';		// Florianopolis
vAirportsBR[10] = 'FOR';	// Fortaleza
vAirportsBR[11] = 'GIG';	// Rio de Janeiro
vAirportsBR[12] = 'GRU';	// Sao Paulo, Guarulhos
vAirportsBR[13] = 'GYN';	// Goiania
vAirportsBR[14] = 'IGU';	// Iguassu Falls
vAirportsBR[15] = 'IMP';	// Imperatriz
vAirportsBR[16] = 'IOS';	// Ilheus
vAirportsBR[17] = 'JPA';	// Joao Pessoa
vAirportsBR[18] = 'LDB';	// Londrina
vAirportsBR[19] = 'MAB';	// Maraba
vAirportsBR[20] = 'MAO';	// Manaus
vAirportsBR[21] = 'MCP';	// Macapa
vAirportsBR[22] = 'MCZ';	// Maceio
vAirportsBR[23] = 'NAT';	// Natal
vAirportsBR[24] = 'PMW';	// Palmas
vAirportsBR[25] = 'POA';	// Porto Alegre
vAirportsBR[26] = 'PVH';	// Porto Velho
vAirportsBR[27] = 'REC';	// Recife
vAirportsBR[28] = 'RBR';	// Rio Branco
vAirportsBR[29] = 'SAO';	// São Paulo (all airports)
vAirportsBR[30] = 'SLZ';	// Sao Luiz
vAirportsBR[31] = 'SSA';	// Salvador
vAirportsBR[32] = 'THE';	// Teresina
vAirportsBR[33] = 'VIX';	// Vitoria

function isAirportsPT(pValue) {

	if (pValue.length < 3)
		return false;
		
	for (var i = 0; i < vAirportsPT.length; i++) {
		var ind = vAirportsPT[i].toUpperCase().indexOf(pValue.toUpperCase());
		
		if ( ind != -1 )
			return true;
	}
	
	return false;
}

function isAirportsBR(pValue) {

	if (pValue.length < 3)
		return false;
		
	for (var i = 0; i < vAirportsBR.length; i++) {
		var ind = vAirportsBR[i].toUpperCase().indexOf(pValue.toUpperCase());
		
		if ( ind != -1 )
			return true;
	}
	//alert("passou: isAirportsBR");
	 
	return false;
}

function geraDestinosOrdMarket(pMarket)  {
	if ( pMarket != "PT" )  return true;

	var vTempAeroportoArray = new Array();
	var vTempAeroportoArray2 = new Array();

	vListaDestinos = document.formAvailAbility.param6.options;
	vListaDestinosTemp = vListaDestinos; 

	count1=1;
	
	// coloca em primeiro lugar os aeroportos do mercado == pMarket
	for (var i=1; i < vListaDestinosTemp.length; i++) {
		var destino = vListaDestinosTemp[i].value;
		//alert("origem: " + origem);
		if ( vAeroportos[destino]!= null && isAirportsPT(destino)) {
	       		vTempAeroportoArray[vAeroportos[destino]] = destino ;
	       		count1++;
	      	}
	}
	// depois coloca os aeroportos do mercado != pMarket
	vTempAeroportoArray['-----'] = 0; 
	count1++;
	for (var i=1; i < vListaDestinosTemp.length; i++) {
		var destino = vListaDestinosTemp[i].value;
		//alert("origem: " + origem);
		if ( vAeroportos[destino]!= null && !isAirportsPT(destino)) {
	       			vTempAeroportoArray[vAeroportos[destino]] = destino ;
	       			count1++;
	      	}
	}

	count = 0;
	for (var vIdAeroporto in vTempAeroportoArray){
		vTempAeroportoArray2[count] = vIdAeroporto;
		count++;
	}
	//vTempAeroportoArray2.sort();
	vListaDestinos.length  = 1;
	count = 0;
	for (var n in vTempAeroportoArray2){
		vListaDestinos[count+1] = new Option(htmlEntitiesToOctal(vTempAeroportoArray2[count]));
		vListaDestinos[count+1].value = vTempAeroportoArray[vTempAeroportoArray2[count]];
		count++;
	}
	
	vListaDestinos.selectedIndex = 0;
}
//******
	
// Aeroportos Warning
var vOrigemDestinosWarning = new Array();

vOrigemDestinosWarning[0]    = 'PHL';
vOrigemDestinosWarning[1]    = 'HFD';
vOrigemDestinosWarning[2]    = 'ALB';
vOrigemDestinosWarning[3]    = 'PVD';
vOrigemDestinosWarning[4]    = 'BWI';
vOrigemDestinosWarning[5]    = 'BOS';
vOrigemDestinosWarning[6]    = 'WAS';
vOrigemDestinosWarning[7]    = 'MHT';
vOrigemDestinosWarning[8]    = 'SYR';
vOrigemDestinosWarning[9]    = 'ROC';
vOrigemDestinosWarning[10]   = 'BTV';
vOrigemDestinosWarning[11]   = 'PWM';
vOrigemDestinosWarning[12]   = 'RIC';
vOrigemDestinosWarning[13]   = 'ORF';
vOrigemDestinosWarning[14]   = 'BUF';
vOrigemDestinosWarning[15]   = 'PIT';
vOrigemDestinosWarning[16]   = 'ROA';
vOrigemDestinosWarning[17]   = 'CLE';
vOrigemDestinosWarning[18]   = 'RDU';
vOrigemDestinosWarning[19]   = 'DCA';
vOrigemDestinosWarning[20]   = 'GSO';
vOrigemDestinosWarning[21]   = 'CMH';
vOrigemDestinosWarning[22]   = 'DTT';
vOrigemDestinosWarning[23]   = 'CLT';
vOrigemDestinosWarning[24]   = 'MYR';
vOrigemDestinosWarning[25]   = 'DAY';
vOrigemDestinosWarning[26]   = 'CVG';
vOrigemDestinosWarning[27]   = 'CAE';
vOrigemDestinosWarning[28]   = 'GSP';
vOrigemDestinosWarning[29]   = 'GRR';
vOrigemDestinosWarning[30]   = 'CHS';
vOrigemDestinosWarning[31]   = 'TYS';
vOrigemDestinosWarning[32]   = 'SDF';
vOrigemDestinosWarning[33]   = 'IND';
vOrigemDestinosWarning[34]   = 'SAV';
vOrigemDestinosWarning[35]   = 'CHI';
vOrigemDestinosWarning[36]   = 'MKE';
vOrigemDestinosWarning[37]   = 'ATL';
vOrigemDestinosWarning[38]   = 'BNA';
vOrigemDestinosWarning[39]   = 'JAX';
vOrigemDestinosWarning[40]   = 'HSV';
vOrigemDestinosWarning[41]   = 'MSN';
vOrigemDestinosWarning[42]   = 'STL';
vOrigemDestinosWarning[43]   = 'DAB';
vOrigemDestinosWarning[44]   = 'ORL';
vOrigemDestinosWarning[45]   = 'MEM';
vOrigemDestinosWarning[46]   = 'TPA';
vOrigemDestinosWarning[47]   = 'MSP';
vOrigemDestinosWarning[48]   = 'DSM';
vOrigemDestinosWarning[49]   = 'PBI';
vOrigemDestinosWarning[50]   = 'SRQ';
vOrigemDestinosWarning[51]   = 'FLL';
vOrigemDestinosWarning[52]   = 'FMY';
vOrigemDestinosWarning[53]   = 'RSW';
vOrigemDestinosWarning[54]   = 'LIT';
vOrigemDestinosWarning[55]   = 'MIA';
vOrigemDestinosWarning[56]   = 'MKC';
vOrigemDestinosWarning[57]   = 'OMA';
vOrigemDestinosWarning[58]   = 'MSY';
vOrigemDestinosWarning[59]   = 'BTR';
vOrigemDestinosWarning[60]   = 'TUL';
vOrigemDestinosWarning[61]   = 'OKC';
vOrigemDestinosWarning[62]   = 'DFW';
vOrigemDestinosWarning[63]   = 'HOU';
vOrigemDestinosWarning[64]   = 'AUS';
vOrigemDestinosWarning[65]   = 'SAT';
vOrigemDestinosWarning[66]   = 'DEN';
vOrigemDestinosWarning[67]   = 'ABQ';
vOrigemDestinosWarning[68]   = 'ELP';
vOrigemDestinosWarning[69]   = 'PHX';
vOrigemDestinosWarning[70]   = 'BOI';
vOrigemDestinosWarning[71]   = 'GEG';
vOrigemDestinosWarning[72]   = 'LAS';
vOrigemDestinosWarning[73]   = 'SLC';
vOrigemDestinosWarning[74]   = 'SEA';
vOrigemDestinosWarning[75]   = 'SAN';
vOrigemDestinosWarning[76]   = 'PDX';
vOrigemDestinosWarning[77]   = 'FAT';
vOrigemDestinosWarning[78]   = 'LAX';
vOrigemDestinosWarning[79]   = 'SAC';
vOrigemDestinosWarning[80]   = 'OAK';
vOrigemDestinosWarning[81]   = 'SJC';
vOrigemDestinosWarning[82]   = 'SFO';
vOrigemDestinosWarning[83]   = 'ANC';
vOrigemDestinosWarning[84]   = 'HNL';
vOrigemDestinosWarning[85]   = 'ORD';
vOrigemDestinosWarning[86]   = 'IAH';
vOrigemDestinosWarning[87]   = 'EWR';
vOrigemDestinosWarning[88]   = 'IAD';

function isWarning(pValue) {

	if (pValue.length < 3)
		return false;
		
	for (var i = 0; i < vOrigemDestinosWarning.length; i++) {
		var ind = vOrigemDestinosWarning[i].toUpperCase().indexOf(pValue.toUpperCase());
		
		if ( ind != -1 )
			return true;
	}
	
	return false;
}
//***** brasil
var isInitialReset = true;
	
function warning(){

//	tag = document.formAvailAbility.param4.value;
//	index = tag.indexOf ( "EWR" );
//	ida = tag.substring ( index, tag.length );
//	ida = document.formAvailAbility.param4.value
//	tag = document.formAvailAbility.param6.value;
//	index = tag.indexOf ( "EWR" );
//	
//	volta = tag.substring ( index, tag.length );
//	volta = document.formAvailAbility.param6.value;
//	//alert ("ida: " + ida + " ---- volta: " + volta );
	
	ida = document.formAvailAbility.param4.value
	volta = document.formAvailAbility.param6.value;
	// Brasil
	// Brasil
	if (isAirportsBR(ida)) {
//		alert("passou: warning: isAirportsBR");
		var data = new Date();  
		var dia = data.getDate();  
		var mes = data.getMonth() + 1; 
		var mesSeguinte = mes  + 1; 	
		var horas = data.getHours(); 
		var minutos = data.getMinutes();
		//add a day to the date
		data.setDate(data.getDate() + 3); // diaSeguinte passa a ser 3 dias depois
		var diaSeguinte = data.getDate();
		if ( mesSeguinte > 12 ) mesSeguinte= 1;

		//alert ("dia: " + dia  + "--- mes: " + mes + " --- diaSeguinte: " + diaSeguinte + " --- mesSeguinte: " + mesSeguinte );	
		//-- departure --
		var vDepartDateDay = Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value); 			// Mandatory
		var vDepartDateMonth = Number(document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(4,6)); // Mandatory
		var vDepartDateYear = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(0,4);		// Mandatory
		//-- return -- 
		var vReturnDateDay = Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value);
		var vReturnDateMonth = Number(document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value.substring(4,6));
		var vReturnDateYear = document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value.substring(0,4);		

		if ((vDepartDateDay < diaSeguinte && vDepartDateMonth == mes) || (vDepartDateDay > diaSeguinte && diaSeguinte < 4 && diaSeguinte < dia && vDepartDateMonth == mes) || (vDepartDateDay < diaSeguinte && diaSeguinte < 4 && vDepartDateMonth == mesSeguinte )) {
//			alert( "passou entrou ");
			vIncPartida = 3;
			isInitialReset = false;			
			inicializarCombos(0,0,0,vReturnDateDay,vReturnDateMonth,vReturnDateYear);
			//inicializarCombos(0,0,0,0,0,0);
		} 
		
	} else if (!isInitialReset) {
//			alert( "passou else");
			vIncPartida = 0;
			isInitialReset = true;
			inicializarCombos(0,0,0,0,0,0);
	}

	var existBigbanner = false;

	if(document.getElementById('bigbanner')) {
		//alert("existe bigbanner");  
		existBigbanner = true ;
		bigBanner = document.getElementById('bigbanner');
	}
	if(!abriuWarning && auxBigBanner == "" && existBigbanner) {
		auxBigBanner = bigBanner.innerHTML;
		//alert ( "atribuiu");
	}	
	if(document.getElementById('warningptrcustoms')) {
		//alert("existe warningptrcustoms");  
		warningptrcustoms = document.getElementById('warningptrcustoms');
		pageWarning = warningptrcustoms.innerHTML;
	}	

	if ( isWarning(ida) || isWarning(volta) ) {
		//auxBigBanner = document.getElementById('bigbanner').innerHTML;

		// if(!abriuWarning) {
			//window.open ( pageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=350,left=500,top=200",alwaysRaised=true );
			if (existBigbanner)
				bigBanner.innerHTML = pageWarning ;
			else {
				if(document.all)
					window.open ( linkPageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=550,left=500,top=200",alwaysRaised=true );
				else
					window.open ( linkPageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=350,left=500,top=200",alwaysRaised=true );
			}
		// }
		abriuWarning = true;
		
	} else {
		if (existBigbanner && abriuWarning )
			bigBanner.innerHTML = auxBigBanner;
		abriuWarning = false;	
	}

        //verResident();
        //verAdultoResident();                   
}

function warningGoVoyages(){
//	tag = document.formAvailAbility.Provenance.value;
//	index = tag.indexOf ( "EWR" );
//	ida = tag.substring ( index, tag.length );
//	tag = document.formAvailAbility.Destination.value;	
//	index = tag.indexOf ( "EWR" );	
//	volta = tag.substring ( index, tag.length );
	
	ida = document.formAvailAbility.Provenance.value;
	volta = document.formAvailAbility.Destination.value;
	
	var existBigbanner = false;

	if(document.getElementById('bigbanner')) {
		//alert("existe bigbanner");  
		existBigbanner = true ;
		bigBanner = document.getElementById('bigbanner');
	}
	if(!abriuWarning && auxBigBanner == "" && existBigbanner) {
		auxBigBanner = bigBanner.innerHTML;
		//alert ( "atribuiu");
	}	
	if(document.getElementById('warningptrcustoms')) {
		//alert("existe warningptrcustoms");  
		warningptrcustoms = document.getElementById('warningptrcustoms');
		pageWarning = warningptrcustoms.innerHTML;
	}	

	if ( isWarning(ida) || isWarning(volta) ) {
		//auxBigBanner = document.getElementById('bigbanner').innerHTML;

		if(!abriuWarning) {
			//window.open ( pageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=350,left=500,top=200",alwaysRaised=true );
			if (existBigbanner)
				bigBanner.innerHTML = pageWarning ;
			else {
				if(document.all)
					window.open ( linkPageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=550,left=500,top=200",alwaysRaised=true );
				else
					window.open ( linkPageWarning ,"","toolbar=no,scrollbars=no,location=0,statusbar=0,menubar=0,resizable=no,width=300,height=350,left=500,top=200",alwaysRaised=true );
			}				
		}
		abriuWarning = true;
		
	} else {
		if (existBigbanner && abriuWarning )
			bigBanner.innerHTML = auxBigBanner;
		abriuWarning = false;	
	}

        //verResident();
        //verAdultoResident();                   
}

function preencherParametros(adulto, jovem, crianca, bebe)
{
	var cont = 1;
	var j = 10;
	
	//Preencher parâmetros para o adulto + bebe
	for(var i = 1; i <= adulto; i++)
	{
		document.formAvailAbility['param'+j].value = 'TRAVELLER_TYPE_'+cont+'=ADT'
		
		if(bebe >= cont)
		{
			j++;
			document.formAvailAbility['param'+j].value = 'HAS_INFANT_'+cont+'=TRUE'
		}
		j++;
		cont++;
	}

	//Preencher parâmetros para o jovem + bebe
	for(var i = 1; i <= jovem; i++)
	{
		document.formAvailAbility['param'+j].value = 'TRAVELLER_TYPE_'+cont+'=YTH'
		
		if(bebe >= cont)
		{
			j++;
			document.formAvailAbility['param'+j].value = 'HAS_INFANT_'+cont+'=TRUE'
		}
		j++;
		cont++;
	}
	
	//Preencher parâmetros para a criança
	for(var i = 1; i <= crianca; i++)
	{
		
		document.formAvailAbility['param'+j].value = 'TRAVELLER_TYPE_'+cont+'=CHD';
		
		j++;
		cont++;
	}
	
	//Limpar parâmetros
	for(var i = j; i <= 27; i++)
	{
		document.formAvailAbility['param'+i].value = "vazio";
	}
}

function preencherParametros2r()
{
	//Data Partida
	document.formAvailAbility.param8.value = "B_DATE_1=" + document.formAvailAbility.combomespartida.value + "" + insere0(Number(document.formAvailAbility.combodiapartida.value)) + "" + document.formAvailAbility.combohorapartida.value;
	
	//Se for escolhida o modo de Ida e Volta, preenche os campos de Regresso
	if (document.formAvailAbility.param3[0].checked)
	{
		document.formAvailAbility.param9.value = "B_DATE_2=" + document.formAvailAbility.combomesregresso.value + "" + insere0(Number(document.formAvailAbility.combodiaregresso.value)) + "" + document.formAvailAbility.combohoraregresso.value;
		document.formAvailAbility.param5.value = "B_LOCATION_2=" + document.formAvailAbility.param6.value.substring(13);
		document.formAvailAbility.param7.value = "E_LOCATION_2=" + document.formAvailAbility.param4.value.substring(13);
		
		if (document.formAvailAbility.combohoraregresso.value == "000")
			document.formAvailAbility.param30.value = "B_ANY_TIME_2=TRUE";
		else if (document.formAvailAbility.combohoraregresso.value != "000")
			document.formAvailAbility.param30.value = "B_ANY_TIME_2=FALSE";
	}
	//De acordo com o método de pesquisa, redirecciona para páginas diferentes.
	if (document.formAvailAbility.procurarpor[0].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/<%=language%>/ValuePricerServlet";
	else if (document.formAvailAbility.procurarpor[1].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/<%=language%>/AirAvailabilityServlet";

	if (document.formAvailAbility.combohorapartida.value == "000")
		document.formAvailAbility.param29.value = "B_ANY_TIME_1=TRUE";
	else if (document.formAvailAbility.combohorapartida.value != "000")
		document.formAvailAbility.param29.value = "B_ANY_TIME_1=FALSE";
}

function preencherParametros2(pLanguage)
{
	//Origem
	var origem = document.formAvailAbility.param4.value;
	document.formAvailAbility.param4.options[document.formAvailAbility.param4.selectedIndex].value = "B_LOCATION_1=" + origem;
	
	//Destino
	var destino = document.formAvailAbility.param6.value;
	document.formAvailAbility.param6.options[document.formAvailAbility.param6.selectedIndex].value = "E_LOCATION_1=" + destino;
	
	//alert("origem: " + origem + "--- document.formAvailAbility.param4.value: " + document.formAvailAbility.param4.value + " --- destino: " + destino + "--- document.formAvailAbility.param6.value: " + document.formAvailAbility.param6.value); 
	
	//Data Partida
	document.formAvailAbility.param8.value = "B_DATE_1=" + document.formAvailAbility.combomespartida.value + "" + insere0(Number(document.formAvailAbility.combodiapartida.value)) + "" + document.formAvailAbility.combohorapartida.value;
		
	//Se for escolhida o modo de Ida e Volta, preenche os campos de Regresso
	if (document.formAvailAbility.param3[0].checked)
	{
		document.formAvailAbility.param9.value = "B_DATE_2=" + document.formAvailAbility.combomesregresso.value + "" + insere0(Number(document.formAvailAbility.combodiaregresso.value)) + "" + document.formAvailAbility.combohoraregresso.value;
		document.formAvailAbility.param5.value = "B_LOCATION_2=" + document.formAvailAbility.param6.value.substring(13);
		document.formAvailAbility.param7.value = "E_LOCATION_2=" + document.formAvailAbility.param4.value.substring(13);
		
		if (document.formAvailAbility.combohoraregresso.value == "000")
			document.formAvailAbility.param30.value = "B_ANY_TIME_2=TRUE";
		else if (document.formAvailAbility.combohoraregresso.value != "000")
			document.formAvailAbility.param30.value = "B_ANY_TIME_2=FALSE";
	}
	//De acordo com o método de pesquisa, redirecciona para páginas diferentes.
	
	if (document.formAvailAbility.procurarpor[0].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/" + pLanguage + "/ValuePricerServlet";
	else if (document.formAvailAbility.procurarpor[1].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/" + pLanguage + "/AirAvailabilityServlet";

	if (document.formAvailAbility.combohorapartida.value == "000")
		document.formAvailAbility.param29.value = "B_ANY_TIME_1=TRUE";
	else if (document.formAvailAbility.combohorapartida.value != "000")
		document.formAvailAbility.param29.value = "B_ANY_TIME_1=FALSE";
}

function preencherParametros2Vertical(pLanguage)



{
	//Origem
	var origem = document.formAvailAbility.param4.value;
	document.formAvailAbility.param4.options[document.formAvailAbility.param4.selectedIndex].value = "B_LOCATION_1=" + origem;
	
	//Destino
	var destino = document.formAvailAbility.param6.value;
	document.formAvailAbility.param6.options[document.formAvailAbility.param6.selectedIndex].value = "E_LOCATION_1=" + destino;
	
	//alert("origem: " + origem + "--- document.formAvailAbility.param4.value: " + document.formAvailAbility.param4.value + " --- destino: " + destino + "--- document.formAvailAbility.param6.value: " + document.formAvailAbility.param6.value); 
	
	//Data Partida
	document.formAvailAbility.param8.value = "B_DATE_1=" + document.formAvailAbility.combomespartida.value + "" + insere0(Number(document.formAvailAbility.combodiapartida.value)) + "000";
		
	//Se for escolhida o modo de Ida e Volta, preenche os campos de Regresso
	if (document.formAvailAbility.param3[0].checked)
	{
		document.formAvailAbility.param9.value = "B_DATE_2=" + document.formAvailAbility.combomesregresso.value + "" + insere0(Number(document.formAvailAbility.combodiaregresso.value)) + "000";
		document.formAvailAbility.param5.value = "B_LOCATION_2=" + document.formAvailAbility.param6.value.substring(13);
		document.formAvailAbility.param7.value = "E_LOCATION_2=" + document.formAvailAbility.param4.value.substring(13);
		
		document.formAvailAbility.param30.value = "B_ANY_TIME_2=TRUE";

	}
	//De acordo com o método de pesquisa, redirecciona para páginas diferentes.
	
	if (document.formAvailAbility.procurarpor[0].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/" + pLanguage + "/ValuePricerServlet";
	else if (document.formAvailAbility.procurarpor[1].checked)
		document.formAvailAbility.servletAddress.value = "http://wftc2.e-travel.com/pl/tapv7/" + pLanguage + "/AirAvailabilityServlet";


	document.formAvailAbility.param29.value = "B_ANY_TIME_1=TRUE";

}

function linkMultiCity(pLanguage)
{
	document.formMultiCity.ADRESS.value = "http://wftc2.e-travel.com/pl/tapv7/" + pLanguage + "/AirComplexSearchServlet";
	//document.formMultiCity.addressFlag.value = "http://www.tap-airportugal.pt/portal/v10/PT/";
	document.formMultiCity.addressFlag.value = "http://amadeus.flytap.com/booking/";	
	document.formMultiCity.siteFlag.value = urlSiteFlag;
	document.formMultiCity.urlSiteFlag.value = urlSiteFlag;

	//alert( " document.formMultiCity.siteFlag.value: " + document.formMultiCity.siteFlag.value + " ----- document.formMultiCity.urlSiteFlag.value: " + document.formMultiCity.urlSiteFlag.value);
	//document.formMultiCity.action = "http://www.tap-airportugal.pt/portal/v10/PT/jsp/horariosReservas/reserva.jsp";
	//document.formMultiCity.action = "http://www.tap-airportugal.pt/portal/v10/PT/jsp/horariosReservas/reserva3.jsp";
	document.formMultiCity.action = "http://amadeus.flytap.com/booking/reserva3.jsp";
	document.formMultiCity.method = "get";
	document.formMultiCity.submit();
}

function linkEB2()
{
	document.formMultiCity.action = "http://booking.flytap.com/TP/Reservation.do";
	document.formMultiCity.siteFlag.value = urlSiteFlag;
	document.formMultiCity.urlSiteFlag.value = urlSiteFlag;
	document.formMultiCity.method = "post";
	//document.formMultiCity.target = "blank";
	document.formMultiCity.submit();
}

function linkAnixe()
{
    	document.formAvailAbility.siteFlag.value = urlSiteFlag;
    	document.formAvailAbility.urlSiteFlag.value = urlSiteFlag;
    	//alert( " document.formAvailAbility.siteFlag.value: " + document.formAvailAbility.siteFlag.value + " ----- document.formAvailAbility.urlSiteFlag.value: " + document.formAvailAbility.urlSiteFlag.value);
  	if (verDados() == 1 ) start();
  	preencherParametrosAnixe();	
	document.formAvailAbility.action = vAdvancedSearch; 
	document.formAvailAbility.searchType.value = ""; 
        document.formAvailAbility.depTime.value = 0;
    	//document.formAvailAbility.method = "post";
    	document.formAvailAbility.method = "get";
  	document.formAvailAbility.target = "_blank";
  	if (verDados() == 1 ) return false;
       //alert("	document.formAvailAbility.searchType: "  + 	document.formAvailAbility.searchType.value); 
	document.formAvailAbility.submit();	
}
function linkExternalToAnixe()
{
    	document.formAvailAbility.siteFlag.value = urlSiteFlag;
    	document.formAvailAbility.urlSiteFlag.value = urlSiteFlag;
    	//alert( " document.formAvailAbility.siteFlag.value: " + document.formAvailAbility.siteFlag.value + " ----- document.formAvailAbility.urlSiteFlag.value: " + document.formAvailAbility.urlSiteFlag.value);
  	if (verDados() == 1 ) start();
  	preencherParametrosAnixe();	
	document.formAvailAbility.action = vAdvancedSearch; 
	document.formAvailAbility.searchType.value = ""; 
        document.formAvailAbility.depTime.value = 0;
    	//document.formAvailAbility.method = "post";
    	document.formAvailAbility.method = "get";
  	document.formAvailAbility.target = "_blank";
  	if (verDados() == 1 ) return false;
	document.formAvailAbility.submit();	
}
function linkTapTours()
{
    	document.formAvailAbility.siteFlag.value = urlSiteFlag;
    	document.formAvailAbility.urlSiteFlag.value = urlSiteFlag;
    	//alert( " document.formAvailAbility.siteFlag.value: " + document.formAvailAbility.siteFlag.value + " ----- document.formAvailAbility.urlSiteFlag.value: " + document.formAvailAbility.urlSiteFlag.value);
  	if (verDados() == 1 ) start();
  	preencherParametrosTapTours();	
	document.formAvailAbility.action = urlTapTours; 
    	document.formAvailAbility.method = "post";
    	//document.formAvailAbility.method = "get";
  	//document.formAvailAbility.target = "blank";
  	if (verDados() == 1 ) return false;
	document.formAvailAbility.submit();	
}


function linkAnixeVertical()
{
    	document.formAvailAbility.siteFlag.value = urlSiteFlag;
    	document.formAvailAbility.urlSiteFlag.value = urlSiteFlag;
    	//alert( " document.formAvailAbility.siteFlag.value: " + document.formAvailAbility.siteFlag.value + " ----- document.formAvailAbility.urlSiteFlag.value: " + document.formAvailAbility.urlSiteFlag.value);
  	if (verDadosVertical() == 1 ) start();
  	preencherParametrosAnixeVertical();	
	document.formAvailAbility.action = vAdvancedSearch; 
    	//document.formAvailAbility.method = "post";
    	document.formAvailAbility.method = "get";
  	//document.formAvailAbility.target = "blank";
  	if (verDadosVertical() == 1 ) return false;
	document.formAvailAbility.submit();	
}

function linkMultiCityAnixe()
{
    	document.formAvailAbility.siteFlag.value = urlSiteFlag;
    	document.formAvailAbility.urlSiteFlag.value = urlSiteFlag;
    	//alert( " document.formAvailAbility.siteFlag.value: " + document.formAvailAbility.siteFlag.value + " ----- document.formAvailAbility.urlSiteFlag.value: " + document.formAvailAbility.urlSiteFlag.value);
  	if (verDados() == 1 ) start();
  	preencherParametrosAnixe();
  	document.formAvailAbility.action = vMultiCity; 
    	//document.formAvailAbility.method = "post";
    	document.formAvailAbility.method = "get";
  	document.formAvailAbility.target = "_blank";
  	if (verDados() == 1 ) return false;
	document.formAvailAbility.submit();	
}


function verBebesCriancas(adultos, bebe , crianca ) {
//		alert ( "passou verBebesCriancas" );
//    	var maxBebe = 1;
//	//var maxBebeCrianca = 2;
//	var maxBebeCrianca = 1;
//	var maxCrianca = 4;
//
//	if( adultos == 1) {
//		if( bebe > 0) {
//			diviBebe= bebe / adultos;
//			diviCrianca = crianca / adultos;
//	
//			if( diviBebe > maxBebe  || diviCrianca > maxBebeCrianca )
//				return false;
//	
//		} else if( crianca > 0) {
//			diviCrianca = crianca / adultos;
//	
//			if( diviCrianca  > maxCrianca )
//				return false;
//		} 
//	} else 
//	{
//		res_adults = adultos - bebe;
////		if ( res_adults < 1 ) // no adults
////			return false;
//		
//		num_criancas_permitido = res_adults * maxCrianca;
//		num_criancas = crianca - bebe;
//		
//		alert ( "crianca: " + crianca + " --- bebe: " + bebe + " --- res_adults: " + res_adults + " --- num_criancas_permitido: " + num_criancas_permitido + " --- num_criancas: " + num_criancas );
//		
//		if ( num_criancas_permitido < num_criancas ) 
//			return false;
//	}

	return verifyInfantsChildren(adultos, bebe , crianca );
}

function verifyInfantsChildren(adults, infants , children ) {
    	var max_infants = 1;
	var max_infants_children = 1;
	var max_children = 4;

	if( adults == 1 ) {
		if( infants > 0 ) {
			divi_infants= infants / adults;


			divi_children = children / adults;
	
			if( divi_infants > max_infants  || divi_children > max_infants_children )
				return false;
	
		} else if( children > 0 ) {
			divi_children = children / adults;
	
			if( divi_children  > max_children )
				return false;
		} 
	} else {
		res_adults = adults - infants;
		num_children_allowed = res_adults * max_children;
		num_children = children - infants;
		
	//	alert ( "children: " + children + " --- infants: " + infants + " --- res_adults: " + res_adults + " --- num_children_allowed: " + num_children_allowed + " --- num_children: " + num_children );
		
		if ( num_children_allowed < num_children ) 
			return false;
	}

	return true;
}


function verDados()
{
	var flag = 0;
	var data = new Date();  
	var dia = data.getDate();  
	var mes = data.getMonth() + 1; 
	//alert ("dia: " + dia );
	//alert ("mes: " + mes );
	
	if (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value == document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		if (Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value) > Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value))
			flag = 1;
	}
	else if  (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value >= document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		flag = 1;
	}

	//-- departure --
	var vDepartDateDay = Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value); 			// Mandatory
	var vDepartDateMonth = Number(document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(4,6)); // Mandatory
	//var vDepartDateYear = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(0,4);		// Mandatory
	
	//alert ("vDepartDateMonth: " + vDepartDateMonth );
//	if (vDepartDateDay == dia && vDepartDateMonth == mes)
//		flag = 1;

	if (Number(document.formAvailAbility.param4.options[document.formAvailAbility.param4.selectedIndex].value) == 0)
		flag = 2;

	if (Number(document.formAvailAbility.param6.options[document.formAvailAbility.param6.selectedIndex].value) == 0)
		flag = 2;

	/*
	var adultos = Number(document.formAvailAbility.adulto.options[document.formAvailAbility.adulto.selectedIndex].value);
	var adultosA = Number(document.formAvailAbility.adultoa.options[document.formAvailAbility.adultoa.selectedIndex].value);
	var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
	var senior = Number(document.formAvailAbility.senior.options[document.formAvailAbility.senior.selectedIndex].value);
	//var jovem = 0;

	var crianca = Number(document.formAvailAbility.crianca.options[document.formAvailAbility.crianca.selectedIndex].value);
	var bebe = Number(document.formAvailAbility.bebe.options[document.formAvailAbility.bebe.selectedIndex].value);
	*/

	adultos = Number(document.formAvailAbility.adulto.options[document.formAvailAbility.adulto.selectedIndex].value);
	//var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
	jovem = 0;
	
	crianca = Number(document.formAvailAbility.crianca.options[document.formAvailAbility.crianca.selectedIndex].value);
	bebe = Number(document.formAvailAbility.bebe.options[document.formAvailAbility.bebe.selectedIndex].value);
	
	//alert( "adultos: " + adultos + "--- crianca: " + crianca + "--- bebe: " + bebe + "--- jovem: " + jovem);	

	if ((adultos + jovem + crianca) == 0 )

		flag = 3;
	else if ((adultos + jovem + crianca) > 9)
		flag = 4;
	/*else if ((adultos + jovem) < bebe)
		flag = 5;*/
	else if (adultos==0 && crianca>0)
		flag = 6;
	/*else if (adultos==0 && jovem>0)
		flag = 7;
	else if ((jovem + senior + adultosA) == 0  && vModoAdvanced )
		flag = 8;*/
	else if (!verBebesCriancas(adultos, bebe , crianca ) )
		flag = 9;

	return flag;
}


function verDadosAnixe()
{
	var flag = 0;

/*	if (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value == document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		if (Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value) > Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value))
			flag = 1;
	}
	else if  (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value >= document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		flag = 1;
	}
*/
	if (Number(document.formAvailAbility.param4.options[document.formAvailAbility.param4.selectedIndex].value) == 0)
		flag = 2;

	if (Number(document.formAvailAbility.param6.options[document.formAvailAbility.param6.selectedIndex].value) == 0)
		flag = 2;

	/*
	var adultos = Number(document.formAvailAbility.adulto.options[document.formAvailAbility.adulto.selectedIndex].value);
	var adultosA = Number(document.formAvailAbility.adultoa.options[document.formAvailAbility.adultoa.selectedIndex].value);
	var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
	var senior = Number(document.formAvailAbility.senior.options[document.formAvailAbility.senior.selectedIndex].value);
	//var jovem = 0;

	var crianca = Number(document.formAvailAbility.crianca.options[document.formAvailAbility.crianca.selectedIndex].value);
	var bebe = Number(document.formAvailAbility.bebe.options[document.formAvailAbility.bebe.selectedIndex].value);
	*/

	adultos = Number(document.formAvailAbility.adulto.options[document.formAvailAbility.adulto.selectedIndex].value);
	//var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
	jovem = 0;
	
	crianca = Number(document.formAvailAbility.crianca.options[document.formAvailAbility.crianca.selectedIndex].value);
	bebe = Number(document.formAvailAbility.bebe.options[document.formAvailAbility.bebe.selectedIndex].value);
	
	//alert( "adultos: " + adultos + "--- crianca: " + crianca + "--- bebe: " + bebe + "--- jovem: " + jovem);	

	if ((adultos + jovem + crianca) == 0 )
		flag = 3;
	else if ((adultos + jovem + crianca) > 9)
		flag = 4;
	/*else if ((adultos + jovem) < bebe)
		flag = 5;*/
	else if (adultos==0 && crianca>0)
		flag = 6;
	/*else if (adultos==0 && jovem>0)
		flag = 7;
	else if ((jovem + senior + adultosA) == 0  && vModoAdvanced )
		flag = 8;*/
	else if (!verBebesCriancas(adultos, bebe , crianca ) )
		flag = 9;

	return flag;
}

function verDadosVertical()
{
	var flag = 0;

	if (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value == document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		if (Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value) > Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value))
			flag = 1;
	}
	else if  (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value >= document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		flag = 1;
	}

	if (Number(document.formAvailAbility.param4.options[document.formAvailAbility.param4.selectedIndex].value) == 0)
		flag = 2;

	if (Number(document.formAvailAbility.param6.options[document.formAvailAbility.param6.selectedIndex].value) == 0)
		flag = 2;

	adultos = Number(document.formAvailAbility.adulto.options[document.formAvailAbility.adulto.selectedIndex].value);
	//var jovem = Number(document.formAvailAbility.jovem.options[document.formAvailAbility.jovem.selectedIndex].value);
	var jovem = 0;
	//crianca = Number(document.formAvailAbility.crianca.options[document.formAvailAbility.crianca.selectedIndex].value);
	var crianca = 0; 
	//bebe = Number(document.formAvailAbility.bebe.options[document.formAvailAbility.bebe.selectedIndex].value);
	var bebe = 0;
	

	if ((adultos + jovem + crianca) == 0 )
		flag = 3;
	else if ((adultos + jovem + crianca) > 9)
		flag = 4;
	/*else if ((adultos + jovem) < bebe)
		flag = 5;*/
	else if (adultos==0 && crianca>0)
		flag = 6;
	/*else if (adultos==0 && jovem>0)
		flag = 7;
	else if ((jovem + senior + adultosA) == 0  && vModoAdvanced )
		flag = 8;*/
	else if (!verBebesCriancas(adultos, bebe , crianca ) )
		flag = 9;

	return flag;
}

function verDadosGoVoyages()
{
	var flag = 0;

	if (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value == document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		if (Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value) > Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value))
			flag = 1;
	}
	else if  (document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value >= document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value)
	{
		flag = 1;
	}

	if (Number(document.formAvailAbility.Provenance.options[document.formAvailAbility.Provenance.selectedIndex].value) == 0)
		flag = 2;

	if (Number(document.formAvailAbility.Destination.options[document.formAvailAbility.Destination.selectedIndex].value) == 0)
		flag = 2;

	document.formAvailAbility.depart_dd.value = insere0(Number(document.formAvailAbility.combodiapartida.options[document.formAvailAbility.combodiapartida.selectedIndex].value));
	//	document.formAvailAbility.depart_mm.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value;
	//	document.formAvailAbility.depart_yyyy.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value;
	document.formAvailAbility.depart_mm.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(4,6) ;
	document.formAvailAbility.depart_yyyy.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value.substring(0,4);

	document.formAvailAbility.retour_dd.value = insere0(Number(document.formAvailAbility.combodiaregresso.options[document.formAvailAbility.combodiaregresso.selectedIndex].value));
	//	document.formAvailAbility.retour_mm.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value;
	//	document.formAvailAbility.retour_yyyy.value = document.formAvailAbility.combomespartida.options[document.formAvailAbility.combomespartida.selectedIndex].value;
	document.formAvailAbility.retour_mm.value = document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value.substring(4,6);
	document.formAvailAbility.retour_yyyy.value = document.formAvailAbility.combomesregresso.options[document.formAvailAbility.combomesregresso.selectedIndex].value.substring(0,4);


	var adultos = Number(document.formAvailAbility.Adultes.options[document.formAvailAbility.Adultes.selectedIndex].value);
	var crianca = Number(document.formAvailAbility.Enfants.options[document.formAvailAbility.Enfants.selectedIndex].value);
	var bebe = Number(document.formAvailAbility.Bebes.options[document.formAvailAbility.Bebes.selectedIndex].value);

	//alert( "adultos: " + adultos + "--- crianca: " + crianca + "--- bebe: " + bebe );	
	
	if ((adultos + crianca) == 0)
		flag = 3;
	else if ((adultos + crianca) > 9)
		flag = 4;
	/*else if (adultos < bebe)
		flag = 5;*/
	else if (adultos==0 && crianca>0)
		flag = 6;
	else if (!verBebesCriancas(adultos, bebe , crianca ))
		flag = 9;

	return flag;
}


function desactivarVolta()
{
	document.formAvailAbility.combodiaregresso.disabled = true;
	document.formAvailAbility.combomesregresso.disabled = true;
	//document.formAvailAbility.combohoraregresso.disabled = true;
}

function desactivarVoltaAmadeus()
{
	desactivarVolta();
	document.formAvailAbility.combohoraregresso.disabled = true;
}

function activarVolta()
{
	document.formAvailAbility.combodiaregresso.disabled = false;
	document.formAvailAbility.combomesregresso.disabled = false;
	//document.formAvailAbility.combohoraregresso.disabled = false;
}

function activarVoltaAmadeus()
{
	activarVolta();
	document.formAvailAbility.combohoraregresso.disabled = false;
}

function start()
{
	inicializarCombos(0,0,0,0,0,0);
	//getInputParameters();	
       //descheckarFlexibleDates();
	if ( vMarket == "GB" || vMarket == "gb" ) {
		document.formAvailAbility.param4.value = 'LON';
		geraDestinos();
	} else if ( vMarket == "BL" || vMarket == "bl" || vMarket == "BE" ) {
		document.formAvailAbility.param4.value = 'BRU';
		geraDestinos();
	} else if ( vMarket == "LU" || vMarket == "lu") {
		document.formAvailAbility.param4.value = 'LUX';
		geraDestinos();
	} else if ( vMarket == "NL" || vMarket == "nl") {
		document.formAvailAbility.param4.value = 'AMS';
		geraDestinos();
	} else if ( vMarket == "DE" || vMarket == "de") {
		document.formAvailAbility.param4.value = 'FRA';
		geraDestinos();
	} else if ( vMarket == "ES" || vMarket == "es") {
		document.formAvailAbility.param4.value = 'MAD';
		geraDestinos();
	} else if ( vMarket == "FR" || vMarket == "fr") {
		if ( document.formAvailAbility.language.value == "FR" ) geraOrigens();
		document.formAvailAbility.param4.value = 'ORY';
		geraDestinos();
		checkarFlexibleDates();
	}else if ( vMarket == "DK" || vMarket == "dk") {
		document.formAvailAbility.param4.value = 'CPH';
		geraDestinos();
	}else if ( vMarket == "SE" || vMarket == "se") {
		document.formAvailAbility.param4.value = 'ARN';
		geraDestinos();
	}else if ( vMarket == "NO" || vMarket == "no") {
		document.formAvailAbility.param4.value = 'OSL';
		geraDestinos();
	}else if ( vMarket == "PL" || vMarket == "pl") {
		document.formAvailAbility.param4.value = 'WAW';
		geraDestinos();	
		checkarFlexibleDates();
	}else if ( vMarket == "PT" || vMarket == "pt") {
		document.formAvailAbility.param4.value = 'LIS';
		geraDestinos();
	}else if ( vMarket == "AR" || vMarket == "ar") {
		document.formAvailAbility.param4.value = 'EZE';
		geraDestinos();
	}else if ( vMarket == "CL" || vMarket == "cl") {
		document.formAvailAbility.param4.value = 'SCL';
		geraDestinos();
	}else if ( vMarket == "CZ" || vMarket == "cz") {
		document.formAvailAbility.param4.value = 'PRG';
		geraDestinos();
	}else if ( vMarket == "FI" || vMarket == "fi") {
		document.formAvailAbility.param4.value = 'HEL';
		geraDestinos();
	}else if ( vMarket == "HU" || vMarket == "hu") {
		document.formAvailAbility.param4.value = 'BUD';
		geraDestinos();
	}else if ( vMarket == "RU" || vMarket == "ru") {
		document.formAvailAbility.param4.value = 'DME';
		geraDestinos();
	}else if ( vMarket == "VE" || vMarket == "ve") {
		document.formAvailAbility.param4.value = 'CCS';
		geraDestinos();
	}else {}

	getInputParameters();		
}

function startVertical(){
	inicializarCombos(0,0,0,0,0,0);
	//getInputParameters();	
}
// Input Parameters
function getInputParameters(){
	if(document.getElementById('Provenance')) 
		getInputParameterstoGoVoyages();
	else
		getInputParameterstoIBE();
}

function getInputParameterstoIBE(){
	//if ( lang != "") document.formAvailAbility.lang.value = lang;
	var isDeparture = false;
	var isReturn = false;
	var diaP = 0;
	var mesP = 0;
	var anoP = 0;
	var diaR = 0;
	var mesR = 0;
	var anoR = 0;
		
	if ( fromCity != "") {
		document.formAvailAbility.fromCity.value = fromCity;
		document.formAvailAbility.param4.value = fromCity;
		//alert("passou");
		geraDestinos();
		
	}	
	if ( toCity != "" && fromCity != "") {
		document.formAvailAbility.toCity.value = toCity;
		document.formAvailAbility.param6.value = toCity;
	}
	//-- departure --
	if ((departDateDay != "") && (departDateMonth != "") && (departDateYear != "")) {
		diaP = Number(departDateDay);		// Mandatory
		mesP = Number(departDateMonth)+1;	// Mandatory
		anoP = Number(departDateYear);		// Mandatory
		isDeparture = true;
	
		document.formAvailAbility.data_partida.value = insere0(diaP)+ "-" +insere0(mesP)+ "-" +insere0(anoP); 
		mudaDataP();	
	}
	
	//-- return -- optional
	if ((returnDateDay != "") && (returnDateMonth != "") && (returnDateYear != "")) {
		diaR = Number(returnDateDay);		
		mesR = Number(returnDateMonth)+1;	
		anoR = Number(returnDateYear);		
		isReturn = true;

		document.formAvailAbility.data_regresso.value = insere0(diaR)+ "-" +insere0(mesR)+ "-" +insere0(anoR); 	
		mudaDataR();

	}
	
	if (returnJourneySpan == "false") {
		document.formAvailAbility.param3[1].checked = true;
		
		if(document.getElementById('combohoraregresso')) 
			desactivarVoltaAmadeus()
		else	


			desactivarVolta();
	}
	
	if (officeID != "")
		document.formAvailAbility.officeID.value = officeID;
		
	//inicializarCombos(diaP, mesP, anoP, diaR, mesR, anoR);
}

// to do
function getInputParameterstoGoVoyages(){
}

//SCRIPT PARA O CALENDÁRIO
function calendarioCall(modo)
{
	var diaIPartArr = new Array();
	var diaUPartArr = new Array();
	
	var diaIRegrArr = new Array();
	var diaURegrArr = new Array();
	
	var diaArr = new Array();
	
	diaArr = dataHoje();
	
	if (modo == "P")
	{
		diaIPartArr = diaArr;
		diaUPartArr = calcularUltData("P", diaIPartArr);
		
		diaUPartArr[0] ++;
		diaUPartArr = validaData(diaUPartArr);
		
		show_calendar("formAvailAbility.data_partida",null,"","DD-MM-YYYY","POPUP","Title=" + data_partida + ";CloseOnSelect=Yes;v_CallFunction=mudaDataP();v_AllowWeekends=Yes;v_SelectAfter="+ diaIPartArr[0] + "-" + diaIPartArr[1] + "-" + diaIPartArr[2] +";v_SelectBefore="+ diaUPartArr[0] + "-" + diaUPartArr[1] + "-" + diaUPartArr[2] +"");
	
	
	}
	else if (modo == "R")
	{
		diaIRegrArr = diaArr;
		diaURegrArr = calcularUltData("R", diaIRegrArr);
		
		diaURegrArr[0] ++;
		diaURegrArr = validaData(diaURegrArr);
				
		show_calendar("formAvailAbility.data_regresso",null,"","DD-MM-YYYY","POPUP","Title=" + data_regresso + ";CloseOnSelect=Yes;v_CallFunction=mudaDataR();v_AllowWeekends=Yes;v_SelectAfter="+ diaIRegrArr[0] + "-" + diaIRegrArr[1] + "-" + diaIRegrArr[2] +";v_SelectBefore="+ diaURegrArr[0] + "-" + diaURegrArr[1] + "-" + diaURegrArr[2] +"");	
	
	
	}
}

function mudaDataP()
{
	var diaEscolhidoPart = new Array();
	var data = document.formAvailAbility.data_partida.value;
	
	diaEscolhidoPart[0] = Number(data.substring(0,2));
	diaEscolhidoPart[1] = Number(data.substring(3,5));
	diaEscolhidoPart[2] = Number(data.substring(6,10));
	
	mesPartidaAlt_Calendario(diaEscolhidoPart);
}

function mudaDataR()
{
	var diaEscolhidoRegr = new Array();
	var data = document.formAvailAbility.data_regresso.value;
	
	diaEscolhidoRegr[0] = Number(data.substring(0,2));
	diaEscolhidoRegr[1] = Number(data.substring(3,5));
	diaEscolhidoRegr[2] = Number(data.substring(6,10));
	
	mesRegressoAlt_Calendario(diaEscolhidoRegr);
}

function geraDestinos()  {
    var origem = document.formAvailAbility.param4.value;
    var seleccionado = true;

    if ( document.formAvailAbility.param4.options.selectedIndex == -1 )
       seleccionado = false;

    if ( document.formAvailAbility.param4.options.selectedIndex == 0 )
       seleccionado = false;

    var vTempAeroportoArray = new Array();
    var vTempAeroportoArray2 = new Array();

	if (seleccionado) {
		var vDestinoAnterior = document.formAvailAbility.param6.selectedIndex;
		vListaDestinos = document.formAvailAbility.param6.options;
		vListaDestinos.length = 1;

		var n = 0;
		for (var i=0; i < vOrigemDestinos.length; i++) {
			if ( vOrigemDestinos[i].length > 5 ) {
				var index = vOrigemDestinos[i].indexOf(origem);
	                	var vDestino = vOrigemDestinos[i].substring(3,6);
 				if (index == 0 && vAeroportos[vDestino]!= null ) {
					//alert (" vOrigemDestinos[i].length: " + vOrigemDestinos[i].length);
	                		vDestino = vOrigemDestinos[i].substring(3,6);
	                		vTempAeroportoArray[vAeroportos[vDestino]] = vDestino;
				}
			}
		}

		count = 0;
		for (var vIdAeroporto in vTempAeroportoArray){
			vTempAeroportoArray2[count] = vIdAeroporto;
			count++;
		}
		vTempAeroportoArray2.sort();
		count = 0;
		for (var n in vTempAeroportoArray2){
			vListaDestinos[count+1] = new Option(htmlEntitiesToOctal(vTempAeroportoArray2[count]));
			vListaDestinos[count+1].value = vTempAeroportoArray[vTempAeroportoArray2[count]];
            count++;
		}

		vListaDestinos.selectedIndex = 0;
	}
	if ( vMarket == "FR" || vMarket == "fr") geraDestinosOrdMarket("PT");
	warning();
}

function geraOrigens()  {
	var origem = document.formAvailAbility.param4.value;
	var vTempAeroportoArray = new Array();
	var vTempAeroportoArray2 = new Array();

	vListaOrigens = document.formAvailAbility.param4.options;
	vListaOrigensTemp = vListaOrigens; 
	//vListaDestinos.length = 1;
	
	//alert( " vListaOrigens: " + vListaOrigens.length + " ----- vListaOrigensTemp: " + vListaOrigensTemp.length); 
	
	origem = 0;
	var aux = vAeroportos[origem];
	

	count1=0;
	if ( vMarket == "UK" || vMarket == "uk" ) {
		origem = 'LON';
		if(vAeroportos[origem]!= null) {vTempAeroportoArray[vAeroportos[origem]]=origem; count1++;}
		origem = 'LHR';
		if(vAeroportos[origem]!= null) {vTempAeroportoArray[vAeroportos[origem]]=origem; count1++;}
		origem = 'LGW';
		if(vAeroportos[origem]!= null) {vTempAeroportoArray[vAeroportos[origem]]=origem; count1++;}
		
		//alert( "count1: " +  count1);
		for (var i=1; i < vListaOrigensTemp.length; i++) {
			var origem = vListaOrigensTemp[i].value;
			//alert("origem: " + origem);
			if ( vAeroportos[origem]!= null && origem != 'LHR' && origem != 'LGW' && origem != 'LON') {
		       		if ( origem == 0 )
		       			vTempAeroportoArray['-----'] = origem; 
		       		else
		       			vTempAeroportoArray[vAeroportos[origem]] = origem ;
		      	}
		}
	} else if ( (vMarket == "FR" || vMarket == "fr" ) && document.formAvailAbility.language.value == "FR" )   {
			for (var i=1; i < vListaOrigensTemp.length; i++) {
			var origem = vListaOrigensTemp[i].value;
			//alert("origem: " + origem);
			// colocar 'PIX' : 'île de Pico' antes de 'IOS' : 'Ilheus',
			if ( vAeroportos[origem]!= null && origem == 'IOS' ) {
				vTempAeroportoArray[vAeroportos['PIX']] = 'PIX';
	       			vTempAeroportoArray[vAeroportos[origem]] = origem;
		      	} else 	
		      	if ( vAeroportos[origem]!= null && origem != 'IOS' && origem != 'PIX' ) {
		       		if ( origem == 0 )
		       			vTempAeroportoArray['-----'] = origem; 
		       		else
		       			vTempAeroportoArray[vAeroportos[origem]] = origem ;
		      	}
		}	
		
	}
	
	count = 0;
	for (var vIdAeroporto in vTempAeroportoArray){
		vTempAeroportoArray2[count] = vIdAeroporto;
		count++;
	}
	//vTempAeroportoArray2.sort();
	vListaOrigens.length  = 1;
	count = 0;
	for (var n in vTempAeroportoArray2){
		vListaOrigens[count+1] = new Option(htmlEntitiesToOctal(vTempAeroportoArray2[count]));
		vListaOrigens[count+1].value = vTempAeroportoArray[vTempAeroportoArray2[count]];
		count++;
	}
	
	vListaOrigens.selectedIndex = 0;
}

function valoresCombo(pCombo){
  val = pCombo.value;
 alert("value: " + val);
}



function getSiteFlag() {
	var vSiteFlag = String(window.location);
	//alert (" vSiteFlag: " + vSiteFlag);
	var vPosF = 0;
	if (vSiteFlag != "" ) {
		vPosF = vSiteFlag.lastIndexOf("/");
		if (vPosF != -1) 
			vSiteFlag =  vSiteFlag.substring(0,vPosF);
	}
	//alert (" vSiteFlag: " + vSiteFlag);
	return vSiteFlag;
}