
        /************************************************************************************/
function AfficheErreursDates()
{
	if(!document.dontShowAlert && MessageDate != "")
	{
		alert("La date saisie n'existe pas.");
	}
}
/************************************************************************************/
function AfficheErreursDatesTypo()
{
  if(!document.dontShowAlert && MessageDateTypo != "")
  {
    alert(MessageDateTypo);
  }
}
/************************************************************************************/
function VerifieValiditeDate(jour, mois, annee, ImgName)
{
	jour = parseInt(jour,10);
	mois = parseInt(mois,10);
	annee = parseInt(annee,10);

	if ((jour<1) || (jour>31))
	{
		MessageDate += "Erreur";
	}
	if ((mois<1) || (mois>12))
	{
		MessageDate += "Erreur";
	}
	if ((annee<1850) || (annee>2500))
	{
		MessageDate += "Erreur";
	}

	var DateJavaScript = new Date(annee, mois-1, jour);

	var JourJavaScript = DateJavaScript.getDate();
        JourJavaScript = parseInt(JourJavaScript,10);
	var MoisJavaScript = DateJavaScript.getMonth()+1;
	MoisJavaScript = parseInt(MoisJavaScript);
	var AnneeJavaScript = DateJavaScript.getFullYear();
	AnneeJavaScript = parseInt(AnneeJavaScript,10);
	
	
	// Cas de Safari : on ne peut pas creer de date anterieure au 13/12/1901 (toute date anterieure est ramenee a cette date)
	if (JourJavaScript == 13 && MoisJavaScript == 12 && AnneeJavaScript == 1901) {
		// OK (soit c'est la date saisie, soit c'est la limite de Safari, et on suppose que c'est OK)
	} else {
		if ((jour != JourJavaScript) || (mois != MoisJavaScript) || (annee != AnneeJavaScript))
		{
	        	MessageDate += "DateInvalide";
			DstepRoll(ImgName,ImgON,0);
		}
	}
}

/************************************************************************************/
function VerifieValiditeDateTypo(jour, mois, annee, ImgName)
{
	jour = parseInt(jour,10);
	mois = parseInt(mois,10);
	annee = parseInt(annee,10);

	if ((jour<1) || (jour>31))
	  MessageDate += "Erreur jour ";

	if ((mois<1) || (mois>12))
	  MessageDate += "Erreur mois ";

	var DateJavaScript = new Date(annee, mois-1, jour);
	var DateJavaScriptCourante = new Date();

	var JourJavaScript = DateJavaScript.getDate();
        JourJavaScript = parseInt(JourJavaScript,10);
	var MoisJavaScript = DateJavaScript.getMonth()+1;
	MoisJavaScript = parseInt(MoisJavaScript);
	var AnneeJavaScript = DateJavaScript.getFullYear();
	AnneeJavaScript = parseInt(AnneeJavaScript,10);

	var JourJavaScriptCourante = DateJavaScriptCourante.getDate();
        JourJavaScriptCourante = parseInt(JourJavaScriptCourante,10);
	var MoisJavaScriptCourante = DateJavaScriptCourante.getMonth()+1;
	MoisJavaScriptCourante = parseInt(MoisJavaScriptCourante);
	var AnneeJavaScriptCourante = DateJavaScriptCourante.getFullYear();
	AnneeJavaScriptCourante = parseInt(AnneeJavaScriptCourante,10);

	if ((AnneeJavaScript<1850) || (AnneeJavaScript>AnneeJavaScriptCourante))
	  MessageDate += "Erreur annee ";

	/* On verifie que la date entree est possible*/
	if ( (jour != JourJavaScript) || (mois != MoisJavaScript))
	{
	        MessageDate += "DateInvalide";
		DstepRoll(ImgName,ImgON,0);
	}
	else /* Alors il reste a verifier que la date existe et est inferieur a la date du jour*/
	{
	  if (AnneeJavaScript > AnneeJavaScriptCourante)
	    MessageDate += "DateInvalide";
	  else
	  {
	    if ( (AnneeJavaScript == AnneeJavaScriptCourante) && (MoisJavaScript > MoisJavaScriptCourante) )
	    {
	      MessageDate += "DateInvalide";
	    }
	    else
	    {
	      if ( (AnneeJavaScript == AnneeJavaScriptCourante) && (MoisJavaScript == MoisJavaScriptCourante) && (JourJavaScript > JourJavaScriptCourante) )
	      {
	        MessageDate += "DateInvalide";
	      }
	    }
	  }

	  if (MessageDate != "")
	    DstepRoll(ImgName,ImgON,0);
	}
}

/**************************************************************************************/
function VerifieValiditeDateResa(jour, anneemois, ImgName)
{
	jour = parseInt(jour,10);
	var date = String(anneemois);
        var annee = date.substring(0,4);
        annee = parseInt(annee,10);
        var mois = date.substring(4,6);
	mois = parseInt(mois,10);

	if ((jour<1) || (jour>31))
	{
		MessageDate += "Erreur";
	}
	if ((mois<1) || (mois>12))
	{
		MessageDate += "Erreur";
	}
	if ((annee<1850) || (annee>2500))
	{
		MessageDate += "Erreur";
	}

	var DateJavaScript = new Date(annee, mois-1, jour);
	var JourJavaScript = DateJavaScript.getDate();
        JourJavaScript = parseInt(JourJavaScript,10);
	var MoisJavaScript = DateJavaScript.getMonth()+1;
	MoisJavaScript = parseInt(MoisJavaScript);
	var AnneeJavaScript = DateJavaScript.getYear();
	AnneeJavaScript = parseInt(AnneeJavaScript,10);
        
        var NetscapeSix = false;
        var APP=navigator.appName;
        var VERS=parseFloat(navigator.appVersion);
        if ((APP.indexOf("N") != -1) && (VERS>=4))
        {
		NetscapeSix = true;
        }

        if((document.layers) || NetscapeSix)
	{
		AnneeJavaScript = 1900 + AnneeJavaScript;
	}

	if ((jour != JourJavaScript) || (mois != MoisJavaScript) || (annee != AnneeJavaScript))
	{
	        MessageDate += "DateInvalide";
		DstepRoll(ImgName,ImgON,0);
	}
}
/**************************************************************************************
Attention : Le message afficher est a remanier de la meme maniere que
les autres messages qui se trouvent dans les js !!!*/

function VerifieDateNaissanceTypologie(agemini, agemaxi, jour, mois, annee, ImgName)
{
  var date1 = new Date(1980,1,1);
  var date2 = new Date(2000,1,1);
  var dateNum1 = date1.getTime();
  var dateNum2 = date2.getTime();
  var UnAnEnMillisecondes = (dateNum2 - dateNum1) / 20;

  var dateJourJavaScript  = new Date();
  dateJourJavaScript.setHours(0);
  dateJourJavaScript.setMinutes(0);
  dateJourJavaScript.setSeconds(0);
  dateJourJavaScript.setMilliseconds(0);
  
  /* Le jour courant*/
  /* Les dates javascript commencant le 1/1/1970 on rajoute 100 annees pour etre sur d avoir des dates coherentes*/
  var dateJourMillisecondes = dateJourJavaScript.getTime() + UnAnEnMillisecondes*100;

  /* Le jour max*/
  var dateMaxMillisecondes  =  dateJourMillisecondes - agemini*UnAnEnMillisecondes;
  /* Le jour min*/
  var dateMinMillisecondes  =  dateJourMillisecondes - agemaxi*UnAnEnMillisecondes;

  /* Les dates javascript commencant le 1/1/1970 on rajoute 100 annees pour etre sur d avoir des dates coherentes*/
  var dateJavaScript = new Date(annee, mois-1, jour);
  var dateMillisecondes = dateJavaScript.getTime() + UnAnEnMillisecondes*100;  
  
  if ( (dateMillisecondes > dateMaxMillisecondes) || (dateMillisecondes < dateMinMillisecondes) )
  {
    MessageDateTypo = "La date de naissance ne correspond pas à la typologie indiquée (Jeune , Adulte , Senior).";
    DstepRoll(ImgName,ImgON,0);
  }
}
/**************************************************************************************/
/* Fonction qui verifie que le passager a l age requis pour le type de typologie qu'il a choisi */
function VerifieDateNaissCompatibleTypoEtResa(agemini, agemaxi, jourNaiss, moisNaiss, anneeNaiss, ImgName,jourVoyage,moisVoyage,anneeVoyage,champ){

  var agePassager = 0;
  var dateDepartVoyage = new Date(anneeVoyage,moisVoyage-1,jourVoyage,0,0,0);
  var dateAnniversaire =  new Date(anneeVoyage, moisNaiss-1, jourNaiss, 0,0,0);
  /*on teste si la date anniversaire est passee ou pas  ex: si on a souffle les bougies et re&ccedil;u le cadeau ou si on attend encore un peu*/
  var tempsRestantAvantAnniversaire = dateAnniversaire.getTime() - dateDepartVoyage.getTime();
  if(tempsRestantAvantAnniversaire>0){
  	//anniversaire plus tard dans l annee que date resa
  	//anniversaire non passe, on enleve une annee
	agePassager = anneeVoyage - anneeNaiss-1;
  }else{
        //anniversaire passe
  	agePassager = anneeVoyage - anneeNaiss;
  }
  /* Exemple: a la date du voyage (et pas de la resa), si intervalle pour un jeune et 18-24, le passager peut avoir 18 ans et 1jour, ou 24 ans 11mois et30jours*/	
  if(agePassager > agemaxi || agePassager <agemini){
  	MessageDateTypo = "La date de naissance ne correspond pas à la typologie indiquée (Jeune , Adulte , Senior).";
    	DstepRoll(ImgName,ImgON,0);
	
	if (document.showError) {
		document.showError(champ, ImgName, MessageDateTypo);
        }
	
  }


}
/**************************************************************************************/


