function showHideRetour()
{
	showHide('TypeTrajetAllerSimple');
}

function showHide(idToShowHide)
{
	var rdTypeVoyageAller = document.getElementById(TypeTrajetAllerSimple);
	
	if(rdTypeVoyageAller == null)
    {
        return;
    }
    
    var myStyle;
    if (rdTypeVoyageAller.checked)
    {
		myStyle = 'hidden';	
    }
    else
    {
    	myStyle = 'visible';	
    }

    //var tblRetour = document.getElementById("tblRetour");
    var tblDateRetour = document.getElementById(idToShowHide);

    //tblRetour.style.display = myStyle;
    tblDateRetour.style.visibility = myStyle;
}

function displayCalendar(isAller)
{
	var divCal;
	if (isAller == 1)
	{
		divCal = document.getElementById("divCalAller");
	}
	else
	{
		divCal = document.getElementById("divCalRetour");
	}
	if (verifIdDepartAndIdRetour())
	{
		 divCal.style.display = 'block'; 
		 setIfrmSrc(isAller);
	}
}

function verifDateAller()
{
    var result = true;
	var txtDate = txtDateDepartAller;
	
	try
	{
		if (isValidDate(txtDate.value) && txtDate.value != '')
		{
			var dateAller = Date.fromString(txtDate.value, shortDatePattern);
			oldTxtDateValueAller = dateAller.asString(shortDatePattern);
		    dateAller.addDays(nbDaysAddedToArrival);
			if(typeof txtDateDepartRetour != 'undefined' && txtDateDepartRetour != null)
			{
				txtDateDepartRetour.value = dateAller.asString(shortDatePattern); 	
			}
		}
		else
		{
			showMessageErrorDate(txtDate, oldTxtDateValueAller);
			result = false;
		}
	}
	catch(ex)
	{
		showMessageErrorDate(txtDate, oldTxtDateValueAller);
		result = false;
	}
	
	
	return result;
}

function _dateAdapter(sDate1)
{
	var jour1;
	var mois1;
	var annee1;

	// Récupération du contexte linguistique
	//SelLocal = jsGetLocale;
    tableauDate = sDate1.split("/");
    if (SelLocal=="1033")
    {
        // Dates Anglaises & Autres mm/jj/aaaa
        this.jour = tableauDate[1];
        this.mois = tableauDate[0];
        this.annee = tableauDate[2];
    }
    else 
    {
        // Dates Francaises    jj/mm/aaaa
        this.jour = tableauDate[0];
        this.mois = tableauDate[1];
        this.annee = tableauDate[2];
    }
}

function showMessageErrorDate(txtDate, oldTxtDateValue)
{
	txtDate.value = oldTxtDateValue;
	alert(msgErreurDateInvalide);
	txtDate.focus();
}

function verifDateRetour()
{
	var result = true;
	
    try
	{
		//test si la date est valide
		var txtDate = txtDateDepartRetour;
		if ( !isValidDate(txtDate.value) )
		{
			showMessageErrorDate(txtDate, oldTxtDateValueRetour);
			result = false;
		}
		else
		{
			oldTxtDateValueRetour = txtDate.value;
		}
	}
	catch(ex)
	{
		showMessageErrorDate(txtDate,oldTxtDateValueRetour);
		result = false;
	}
	
	return result;
	
}

function setIfrmSrc(isAller)
{
	var ifrm;
	var tb;
	
	var idDeparture;
	var idArrival;

	var DateDepart;
	var nbPassager = 0;

	var elmnt;
	elmnt = document.Form1.elements;					
	for (i = 0; i < elmnt.length; i++)
	{						
		if (elmnt[i].name.lastIndexOf('ddlNbPassager') != -1 )
		{							
			nbPassager += parseInt(elmnt[i].options[elmnt[i].options.selectedIndex].value);
		}
	}

	if (nbPassager == 0)
	{
		divCal = isAller == 1 ? document.getElementById(divCalAller) : document.getElementById(divCalRetour);
		divCal.style.display = 'none';
		alert(msgErreurAuMoinsUnPassagerObligatoire);
		return;
	}							
	
	if(typeof cmbDep != 'undefined' && typeof cmbArr != 'undefined')
	{
		idDeparture = cmbDep.options[cmbDep.options.selectedIndex].value;
		idArrival = cmbArr.options[cmbArr.options.selectedIndex].value;
	}
	else if(typeof idDep != 'undefined' && typeof idArr != 'undefined')
	{
		idDeparture = idDep;
		idArrival = idArr;
	}
	
	if (isAller == 1)
	{
		tb = txtDateAllerClientID;
		ifrm = document.getElementById(ifrmCalAller);
		
		dateDepart = txtDateDepartAller.value;
	}
	else
	{
		tb = txtDateRetourClientID;
		ifrm = document.getElementById(ifrmCalRetour);
		
		if (txtDateDepartRetour.value != '')
		{
			dateDepart = txtDateDepartRetour.value;			
		}
		else
		{
			dateDepart = txtDateDepartAller.value;
		}
	}

	var src = "PopupFlightDispo.aspx?tb=" + tb + "&id_Sessionlangue="+idLangue+ "&dateFormat=dd/MM/yyyy&Id_Depart=" + idDeparture  + "&Id_Arrivee=" + idArrival + "&dateDepart=" + dateDepart + "&ph=&nbpassager=" + nbPassager + "&typestck=&isAller=" + isAller;
	ifrm.src = src;  
	ifrm.opener=window;
	ifrm.parent=window;
	//window.document.domain="lavion.fr"
	//alert("window.document.domain="+window.document.domain);
	//alert(""Source = "" + ifrm.src);
}

function verifIdDepartAndIdRetour()
{
	if(typeof cmbArr != 'undefined' && typeof cmbDep != 'undefined')
	{
		var idDep = cmbArr.options[cmbArr.options.selectedIndex].value;
		var idArr = cmbDep.options[cmbDep.options.selectedIndex].value;
	}
	
	if (idDep == intMinValue || idArr == intMinValue )
	{
		alert(msgErreurAeroportObligatoire);
		return false;
	}
	
	return true;
}

function getDates()
{
	document.getElementById('Annee_Aller').value = getAnnee(txtDateDepartAller.value);
	document.getElementById('Mois_Aller').value = getMois(txtDateDepartAller.value);
	document.getElementById('Jour_Aller').value = getJour(txtDateDepartAller.value);

	document.getElementById('Annee_Retour').value = getAnnee(txtDateDepartRetour.value);
	document.getElementById('Mois_Retour').value = getMois(txtDateDepartRetour.value);
	document.getElementById('Jour_Retour').value = getJour(txtDateDepartRetour.value);
}

function setDate(dte, isAller)
{
	if (isAller == 1)
	{
		txtDateDepartAller.value = dte;
		var dateAller = Date.fromString(dte, shortDatePattern);
		dateAller.addDays(nbDaysAddedToArrival);
		if(typeof txtDateDepartRetour != 'undefined' && txtDateDepartRetour != null)
		{
			txtDateDepartRetour.value = dateAller.asString(shortDatePattern); 
		}
		oldTxtDateValueAller = dte;
	}
	else
	{
		txtDateDepartRetour.value = dte;
		oldTxtDateValueRetour = dte;
	}
}

function checkForm()
{
	var idDep = '';
	var idArr = '';
	var isAllerSimple = false;
	
	if (typeof rdTypeTrajetAllerSimple != 'undefined' && rdTypeTrajetAllerSimple && rdTypeTrajetAllerSimple != null) 
	{
		rdTypeTrajetAllerSimple = document.getElementById(TypeTrajetAllerSimple);
		if (typeof rdTypeTrajetAllerSimple != 'undefined' && rdTypeTrajetAllerSimple && rdTypeTrajetAllerSimple != null) 
		{
			isAllerSimple = rdTypeTrajetAllerSimple.checked;
		}
	}
	else if (typeof TypeTrajetAllerSimple != 'undefined' && TypeTrajetAllerSimple && TypeTrajetAllerSimple != null) 
	{
		radioOneWay = document.getElementById(TypeTrajetAllerSimple);
		if (typeof radioOneWay != 'undefined' && radioOneWay && radioOneWay != null) 
		{
			isAllerSimple = radioOneWay.checked;
		}
	}

	
	try
	{
		idDep = cmbArr.options[cmbArr.options.selectedIndex].value;
		idArr = cmbDep.options[cmbDep.options.selectedIndex].value;
	}
	catch(ex)
	{
		//For modification screen
		idDep = '-1';
		idArr = '-1'; 
	}
	
	  
	//var rdTypeTrajetAllerSimple;
	

	if ((txtDateDepartAller.value == '' && ( !isBackOffice || !chkAllerOpen.checked ))
	 || (txtDateDepartRetour.value == '' && !isAllerSimple && ( !isBackOffice || !chkRetourOpen.checked ))
	 || idDep == ''
	 || idArr == '')
	{
		alert(msgErreurSaisissezTousLesChamps);
		return false;
	}
	/*else
	{
		getDates();	    
	} */
}

function closeDiv(isAller)
{
	var divCal;
	if (isAller == 1)
	{
		divCal = document.getElementById("divCalAller");
	}
	else
	{
		divCal = document.getElementById("divCalRetour");
	}
	divCal.style.display = 'none';
}

function fillDdlArrivee(idArrivee)
{
	if (cmbDep == null)
	{
		return;
	}
	// On vide la ddl pour la remplir avec les nouvelles donnees
	for (i = cmbArr.length; i > -1; i--)
	{
		cmbArr.remove(i);
	}
	
	// On recherche dans la table d'association générée coté serveur l'element associé au code de la ddlDepart
	var codeDestGeoDepart = cmbDep.value;
	if (codeDestGeoDepart < 0)
	{
//		var oOption = new Option();
		
		opt=document.createElement('option');
        opt.appendChild(document.createTextNode(sArrivee));
        cmbArr.appendChild(opt);
//sel.appendChild(opt);
//				
//		oOption.text = sArrivee;
//		
//		oOption.value = '';
//		cmbArr.options.add(oOption);
		return;
	}
	//
	// MaJ SGD le 31/01/2007
	var elementSelected;
	//
	for (var j = 0; j<tabAssoDepart_Arrivee[codeDestGeoDepart].length; j++)
	{
	   
		var theOption=tabAssoDepart_Arrivee[codeDestGeoDepart][j];
		var attr=document.createAttribute('value');
		attr.nodeValue=theOption.value;
        var opt=document.createElement("option");
        opt.setAttributeNode(attr);
        opt.appendChild(document.createTextNode(theOption.text));
        cmbArr.appendChild(opt);
		//cmbArr.options.add(theOption);
		if ( theOption.value==idArrivee )
		{	
		    // MaJ SGD le 31/01/2007
		    //
		    //alert(theOption.selected);
			//theOption.selected = true;
			//alert(theOption.selected);	
			elementSelected = j;
		}	
	}	
	// MaJ SGD le 31/01/2007
	cmbArr.options.selectedIndex = elementSelected;
}

function onalleropen()
{
	txtDateDepartAller.disabled = chkAllerOpen.checked;
	if(h_depart)
	{	
		h_depart.disabled = chkAllerOpen.checked;
	}
	var rblChoixMoteur = document.getElementById(rblChoixMoteurIDClient);
	var rblChoixMoteurDefaut = document.getElementById(rblChoixMoteurDefautIDClient);
	if (rblChoixMoteur != null)
	{
		rblChoixMoteur.disabled = chkAllerOpen.checked || chkRetourOpen.checked;
		if (rblChoixMoteur.disabled && rblChoixMoteur.checked)
		{
			rblChoixMoteurDefaut.checked = true;
		}
	}
}

function onretouropen()
{
	txtDateDepartRetour.disabled = chkRetourOpen.checked;
	if (h_Retour)
	{
		h_Retour.disabled = chkRetourOpen.checked;
	}
	var rblChoixMoteur = document.getElementById(rblChoixMoteurIDClient);
	var rblChoixMoteurDefaut = document.getElementById(rblChoixMoteurDefautIDClient);
	if (rblChoixMoteur != null)
	{
		rblChoixMoteur.disabled = chkAllerOpen.checked || chkRetourOpen.checked;
		if (rblChoixMoteur.disabled && rblChoixMoteur.checked)
		{
			rblChoixMoteurDefaut.checked = true;
		}
	}
}

function dcDateAller_ValueChanged(oControl, oDate, igFireEvents2)
    {
        oControlRetour=igdrp_getComboById(dcDateRetourClientID);
	  
        try
        {
            var arrivalDate = Date.fromString(oControl.getText(), shortDatePattern);
            arrivalDate.addDays(nbDaysAddedToArrival);
            oControlRetour.setValue(arrivalDate);    
        }
        catch(ex)
        {
        }
    }