<!--
function blocageBonusOption(strRef)
{
	val= document.formAuto.BONUS.value;
	ind1=val.indexOf(',');
  	if(ind1>=0)
    	val=val.substr(0, ind1)+'.'+val.substr(ind1+1,9999);
	bonus = parseFloat(val);
	if (bonus != 0.5)
	{
		document.formAuto[strRef].options[0].selected=true;
		document.formAuto[strRef].blur();
		document.formAuto.DATE_BDG1.focus();
	}
}


/* function changePeriodeSin() {
	var text="";
	if (document.formAuto.RI.value.length>0)
    	text = "Date des sinistres sur une periode de "+ document.formAuto.RI.value + " mois";
    else
	    text = "Date des sinistres";
    document.formAuto.layers['periodeSin'].open();
    document.formAuto.layers['periodeSin'].write(text);
    document.formAuto.layers['periodeSin'].close();
}

function changeContent(what,text) {
    if (document.all)
        what.innerHTML = text;
    else if (document.layers) {
        what.document.open();
        what.document.write(text);
        what.document.close();
    }
}
*/



function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}



//--- rechercheCodePostal: fonction, lance la recherche de la ville correspondante au code postal ---
function rechercheCodePostal(codePostal)
{
	url = "/pages/tarificationSouscription/getVille.asp";
	url += "?cp=" + escape(codePostal);
	parent.hiddenFrame.location.href=url;
}
var villetrouve=0;
//--- viderListeVille: fonction, vide la liste des villes ---
function viderListeVille() {
clearSelect('formAuto','selectVille');
villetrouve=0;}


//--- ajouterListeVille: fonction, ajoute un element a la liste des villes ---
function ajouterListeVille(val, text)
{	
	var l = document.formAuto.selectVille.options.length;
	var a = new Option(text,val);
	document.formAuto.selectVille.options[l]=a;
	if (text==document.formAuto.Ville.value){villetrouve=1;document.formAuto.selectVille.options[l].selected=true;}
	if (villetrouve!=1)
	 document.formAuto.selectVille.options[0].selected=true;
}

//--- isLeapYear: verifie si l'annee est bisextile ---
function isLeapYear(Year)
{ 
	if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0))
		return true;
	else 
		return false;
}



//--- getAge: fonction, renvoi l'age exact de la personne ---
function getAge(maNaissance)
{
	var temp, res;
	var monMois, monAnnee;
	var dateC, moisC, anneeC;

	//--- Recuperation de la date courrante ---
	dateC = new Date();
	anneeC = dateC.getYear();
	//--- Correctif pour netscape ---
	if (anneeC < 2000)
		anneeC+=1900;
	moisC = dateC.getMonth()+1;
	
	//--- Recuperation des informations sur la date de naissance ---
	temp = maNaissance.split('/');
	monMois = parseInt(temp[0],10);
	monAnnee = parseInt(temp[1],10);
	
	if (monMois==moisC)
		res = (anneeC-monAnnee)+";0";
	else
		if (monMois < moisC)
			res = (anneeC-monAnnee)+";"+(moisC-monMois);
		else
			res = (anneeC-monAnnee-1)+";"+(12-monMois+moisC);
	return res;
}

function getDeltaMois(myDate){
	
		//--- Recuperation de la date courrante ---
	dateC = new Date();
	anneeC = dateC.getYear();
	//--- Correctif pour netscape ---
	if (anneeC < 2000)
		anneeC+=1900;
	moisC = dateC.getMonth()+1;
	
	myDateT=myDate.split("/");
	deltaMois=(moisC-myDateT[0])+(12*(anneeC-myDateT[1]));
	return deltaMois;
	}

//--- validate_DATE_MEC: fonction, verifie la validite de la date de mise en circulation ---
function validate_DATE_MEC(maDate)
{
	document.formAuto.DATE_ACQ.value = 'mmaa';
	if (!ControlDate('DATE_MEC', document.formAuto, 'mmaa'))
	{
		//document.formAuto.DATE_MEC.value = 'mmaa';
		//document.formAuto.DATE_MEC.select();
		//document.formAuto.DATE_MEC.focus();
	}
}

//--- validate_DATE_ACQ: fonction, verifie la validite de la date d'acquisition ---
function validate_DATE_ACQ(maDate)
{
	var res;
	var dateMec = document.formAuto.DATE_MEC.value;
	var dateMecT, dateAcqT;
	if (dateMec == 'mmaa')
	{
		alert("Veuillez d'abord renseigner le champ: Date de 1ere mise en circulation");
		document.formAuto.DATE_ACQ.value = 'mmaa';
		document.formAuto.DATE_MEC.select();
		document.formAuto.DATE_MEC.focus();
	}
	else
	{
	
		if (!ControlDate('DATE_ACQ', document.formAuto, 'mmaa'))
		{
			//document.formAuto.DATE_ACQ.value = 'mmaa';
			//document.formAuto.DATE_ACQ.select();
			//document.formAuto.DATE_ACQ.focus();
		}
		else
			{	res=document.formAuto.DATE_ACQ.value 
				dateAcqT = res.split('/');
				dateMecT = dateMec.split('/');
				if ((dateMecT[1]>dateAcqT[1])||((dateMecT[1]==dateAcqT[1])&&(dateMecT[0]>dateAcqT[0])))
				{
		            alert("Incohérence entre la date d'acquisition et celle de mise en circulation");
					document.formAuto.DATE_ACQ.value = 'mmaa';
					document.formAuto.DATE_ACQ.select();
					document.formAuto.DATE_ACQ.focus();
				}
				else
					document.formAuto.DATE_ACQ.value = res;
			}
	}
}

//----selectZone: fonction, permet d'enregistrer la zone selectionnée pour la passer au formulaire de tarification----
function selectZone(maZone)
{
alert(maZone);
var temp;
temp=maZone;
document.formAuto.ZONE_RC.value = temp;
}



//--- validate_DATE_NAISSANCE: fonction, verifie la validite de la date de naissance ---
function validate_DATE_NAISSANCE(maDate)
{
	//document.formAuto.COND_ACC.checked = false;
	document.formAuto.DATE_PERMIS.value = 'mmaa';
	if (!ControlDate('DATE_NAISSANCE', document.formAuto, 'mmaa'))
	{
		//document.formAuto.DATE_NAISSANCE.value = 'mmaa';
		//document.formAuto.DATE_NAISSANCE.select();
		//document.formAuto.DATE_NAISSANCE.focus();
	}
//	else
//		{
//			monAge = getAge(document.formAuto.DATE_NAISSANCE.value);
//			temp = monAge.split(";");
//			if (temp[0]>=75)
	else if(CompareDateMA(AddDateMA(document.formAuto.DATE_NAISSANCE.value, "0/75"),GetCurDateMA())<=0)
	{
		alert("Conducteur trop agé, tarification impossible. L'age maximum est de 74 ans");
		document.formAuto.DATE_NAISSANCE.value = 'mmaa';
		document.formAuto.DATE_NAISSANCE.select();
		document.formAuto.DATE_NAISSANCE.focus();
	}
//	}
}

//--- validate_DATE_PERMIS: fonction, verifie la validite de la date permis ---
function validate_DATE_PERMIS(maDate)
{
	var res;
	var dateNaissance = document.formAuto.DATE_NAISSANCE.value;
	var dateNaissanceT, datePermisT;
	
	document.formAuto.SelectRI.options[0].selected=true;
	document.formAuto.BONUS.value='';
	
	if (dateNaissance == 'mmaa')
	{
		alert("Veuillez d'abord renseigner le champ: Date de naissance");
		document.formAuto.DATE_PERMIS.value = 'mmaa';
		document.formAuto.DATE_NAISSANCE.select();
		document.formAuto.DATE_NAISSANCE.focus();
	}
	else
	{
		
		if (!ControlDate('DATE_PERMIS', document.formAuto, 'mmaa'))
		{
			//document.formAuto.DATE_PERMIS.value = 'mmaa';
			//document.formAuto.DATE_PERMIS.select();
			//document.formAuto.DATE_PERMIS.focus();
		}
		else
			{
				datePermisT = document.formAuto.DATE_PERMIS.value.split('/');
				dateNaissanceT = dateNaissance.split('/');
				if (((datePermisT[1]-18)<dateNaissanceT[1])||(((datePermisT[1]-18)==dateNaissanceT[1])&&(dateNaissanceT[0]>datePermisT[0])))
				{
		            alert("Incohérence entre la date de naissance et celle du permis de conduire");
					document.formAuto.DATE_PERMIS.value = 'mmaa';
					document.formAuto.DATE_PERMIS.select();
					document.formAuto.DATE_PERMIS.focus();
				}
			}
	}
}


//--- validate_COND_ACC: fonction, verifie les conditions d'acces à la conduite accompagnee
function validate_COND_ACC(isChecked)
{
	var monAge, temp;
	if (isChecked)
	{
		if (document.formAuto.DATE_NAISSANCE.value=='mmaa')
		{
			alert("Veuillez d'abord renseigner le champ Date de Naissance");
			document.formAuto.COND_ACC.checked = false;
			document.formAuto.DATE_NAISSANCE.select();
			document.formAuto.DATE_NAISSANCE.focus();
		}
		else
		{
			monAge = getAge(document.formAuto.DATE_NAISSANCE.value);
			temp = monAge.split(";");
			if (temp[0]>=19)
			{
				alert("Choix incompatible avec l'age du conducteur");
				document.formAuto.COND_ACC.checked = false;
			}
		}
	}
}

//--- validate_IR: fonction, valide la periode couverte par les releves d'information ---
function validate_IR(maPeriode)
{
	var temp;
	temp=parseInt(maPeriode,10);
	var maDatePermis=document.formAuto.DATE_PERMIS.value;
	var deltaMois, maDatePermisT;
	var dateC, moisC, anneeC;
	
if (maDatePermis=='mmaa')
	{
		alert("Veuillez d'abord renseigner le champ Permis de conduire");
		document.formAuto.SelectRI.options[0].selected=true;
		document.formAuto.DATE_PERMIS.select();
		document.formAuto.DATE_PERMIS.focus();
	}
	else
	{
	deltaMois=getDeltaMois(maDatePermis);
	
	if (temp-11>=deltaMois) {
		alert("incohérence entre la date du permis et les antécédents d'assurance");
		document.formAuto.SelectRI.options[0].selected=true;
	}
	}
}

//--- validate_INTERRUPTION: fonction, valide la duree d'interruption ---
function validate_INTERRUPTION(maDuree)
{
	var temp=parseInt(maDuree, 10);
	if (isNaN(temp))
	{
		alert("La durée d'interruption doit être un entier");
		document.formAuto.INTERRUPTION.value='';
		document.formAuto.INTERRUPTION.select();
		document.formAuto.INTERRUPTION.focus();
	}
	else
		if ((temp>24) || (temp<0))
		{
			alert("La durée maximum d'interruption est de 24 mois");
			document.formAuto.INTERRUPTION.value='';
			document.formAuto.INTERRUPTION.select();
			document.formAuto.INTERRUPTION.focus();
		}
}

//--- validate_BONUS: fonction, valide le bonus ---
function validate_BONUS(monBonus)
{	
	function clearbonus(txt)
	{ alert(txt);
		document.formAuto.BONUS.value='';
		document.formAuto.BONUS.select();
		document.formAuto.BONUS.focus();
	}
	
	monBonus=monBonus.replace(",",".");
	document.formAuto.BONUS.value=monBonus;
	var temp;
	var maDatePermis=document.formAuto.DATE_PERMIS.value;
	var deltaMois, maDatePermisT;
	var dateC, moisC, anneeC;
	var mesAntecedants=document.formAuto.SelectRI.options[document.formAuto.SelectRI.options.selectedIndex].value;
	
	//--- Recuperation de la date courrante ---
	dateC = new Date();
	anneeC = dateC.getYear();
	//--- Correctif pour netscape ---
	if (anneeC < 2000)
		anneeC+=1900;
	moisC = dateC.getMonth()+1;
	if (monBonus!='')
	if (maDatePermis=='mmaa')
	{
		alert("Veuillez d'abord renseigner le champ Permis de conduire");
		//document.formAuto.BonusOption.options[0].selected = true;
		document.formAuto.BONUS.value='';
		document.formAuto.DATE_PERMIS.select();
		document.formAuto.DATE_PERMIS.focus();
		return false;
	}
	else
	{
		temp=parseFloat(monBonus);
		if (isNaN(temp)/*||monBonus.indexOf(".")==-1*/) {clearbonus("Coefficient Bonus incorrect:\nUtilisez un '.' comme separateur pour les décimales");return false;}
		else
		{
			if ((temp<0.5)||(temp>1.5)) {clearbonus("Le bonus doit être compris entre 0.5 et 1.5");return false;}
			else
			{  
				//Cas des antécédents <= 5ans
				if (mesAntecedants<0) {if (temp!=1) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être différent de 1");return false;} }
				else 
				if (mesAntecedants==0) {if (temp<0.95) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être inférieur à 0.95");return false;} }
				else 
				if (mesAntecedants==12) {if (temp<0.9) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être inférieur à 0.90");return false;} }
				else
				if (mesAntecedants==24) {if (temp<0.85) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être inférieur à 0.85");return false;} }
				else 
				if (mesAntecedants==36) {if (temp<0.80) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être inférieur à 0.80");return false;} }
				else 
				if (mesAntecedants==48) {if (temp<0.76) {clearbonus("Compte tenu de vos antécédents,\n le bonus ne peut être inférieur à 0.76");return false;} }
				else {
					
				//Cas des antécédents > 5 ans
				
				maDatePermisT=maDatePermis.split("/");
				deltaMois=(moisC-maDatePermisT[0])+(12*(anneeC-maDatePermisT[1]));
				
				if ((deltaMois<=72)&&(temp<0.72)) {clearbonus("Coefficient Bonus incorrect (0.72 minimum)");return false;}
				else
				if ((deltaMois<=84)&&(temp<0.68)) {clearbonus("Coefficient Bonus incorrect (0.68 minimum)");return false;}
				else
				if ((deltaMois<=96)&&(temp<0.65)) {clearbonus("Coefficient Bonus incorrect (0.65 minimum)");return false;}
				else
				if ((deltaMois<=108)&&(temp<0.62)) {clearbonus("Coefficient Bonus incorrect (0.62 minimum)");return false;}
				else
				if ((deltaMois<=120)&&(temp<0.59)) {clearbonus("Coefficient Bonus incorrect (0.59 minimum)");return false;}
				else
				if ((deltaMois<=132)&&(temp<0.56)) {clearbonus("Coefficient Bonus incorrect (0.56 minimum)");return false;}
				else
				if ((deltaMois<=144)&&(temp<0.53)) {clearbonus("Coefficient Bonus incorrect (0.53 minimum)");return false;}
				else
				if ((deltaMois<=156)&&(temp<0.50)) {clearbonus("Coefficient Bonus incorrect (0.50 minimum)");return false;}
				
				}				
			}
		}
		return true;
	}
	return false;
	
}



//--- validate_BonusOption: fonction, valide le bonus ---
function validate_BonusOption()
{
	if (!((document.formAuto.BONUS.value=="0.5")||(document.formAuto.BONUS.value=="0.50")))
		document.formAuto.BonusOption.options[0].selected = true;
}

//---  validate_DATE_SINISTRE: fonction, valide la date des sinistres ---
function validate_DATE_SINISTRE(theField)
{	
	var j, l;
	var res, bool, temp, deltaMois;
	var fieldList = new Array("DATE_BDG1","DATE_BDG2","DATE_BDG3","DATE_BDG4","DATE_NRT1","DATE_NRT2","DATE_NRT3","DATE_VI1","DATE_VI2","DATE_VI3","DATE_RMAT1","DATE_RMAT2","DATE_RMAT3","DATE_RCOR1","DATE_RCOR2");
	var dateC, moisC, anneeC;
	f=theField.form;
	VmoisC = parseInt(f.moisC.value,10);
	VanneeC = parseInt(f.anneeC.value,10);

	with (f){
	//--- Recuperation de la date courrante ---
	/*dateC = new Date();
	anneeC = dateC.getYear();
	//--- Correctif pour netscape ---
	if (anneeC < 2000)
		anneeC+=1900;
	moisC = dateC.getMonth()+1;*/

	l = fieldList.length;
	bool=true;
	PeriodeRI=(parseInt(SelectRI.options[SelectRI.options.selectedIndex].value,10))
	/*if (PeriodeRI<=0)
	{
		//alert("Veuillez d'abord renseigner le champ Periode couverte");
		//document.formAuto.RI.select();
		//document.formAuto.RI.focus();
		for(j=0;j<l;j++)
			eval("document.formAuto."+fieldList[j]+".value='mmaa'");
	}
	else
	{*/
		 
		if (!ControlDate(theField.name,f, 'mmaa'))
		{
			//eval("document.formAuto."+formName+".value='mmaa'");
			//eval("document.formAuto."+formName+".select();");
			//eval("document.formAuto."+formName+".focus();");
		}
		else
		{
			switch (theField.name)
			{
				case "DATE_BDG2":
					if (DATE_BDG1.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_BDG2.value = 'mmaa';
						DATE_BDG1.select();
						DATE_BDG1.focus();
						bool=false;
					}
					break;
				case "DATE_BDG3":
					if (DATE_BDG2.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_BDG3.value = 'mmaa';
						DATE_BDG2.select();
						DATE_BDG2.focus();
						bool=false;
					}
					break;
				case "DATE_BDG4":
					if (DATE_BDG3.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_BDG4.value = 'mmaa';
						DATE_BDG3.select();
						DATE_BDG3.focus();
						bool=false;
					}
					break;
				case "DATE_VI2":
					if (DATE_VI1.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_VI2.value = 'mmaa';
						DATE_VI1.select();
						DATE_VI1.focus();
						bool=false;
					}
					break;
				case "DATE_VI3":
					if (DATE_VI2.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_VI3.value = 'mmaa';
						DATE_VI2.select();
						DATE_VI2.focus();
						bool=false;
					}
					break;
				case "DATE_RMAT2":
					if (DATE_RMAT1.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_RMAT2.value = 'mmaa';
						DATE_RMAT1.select();
						DATE_RMAT1.focus();
						bool=false;
					}
					break;
				case "DATE_RMAT3":
					if (DATE_RMAT2.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_RMAT3.value = 'mmaa';
						DATE_RMAT2.select();
						DATE_RMAT2.focus();
						bool=false;
					}
					break;
				case "DATE_RCOR2":
					if (DATE_RCOR1.value=='mmaa')
					{
						alert("Veuillez d'abord renseigner le champ précédent");
						DATE_RCOR2.value = 'mmaa';
						DATE_RCOR1.select();
						DATE_RCOR1.focus();
						bool=false;
					}
					break;
				default:
					break;
			}
			if (bool)
			{   res=theField.value;
				temp=res.split("/");
				deltaMois=(VmoisC-parseInt(temp[0],10))+(12*(VanneeC-parseInt(temp[1],10)));
			
				if (deltaMois<0)
				{
					alert("La date doit être antérieure à la date courante.");
					theField.value='mmaa';
					theField.select();
					theField.focus();
				}
				else
					if (deltaMois > PeriodeRI)
					{
						alert("La date est antérieure à la période proposée.");
						theField.value='mmaa';
						theField.select();
						theField.focus();
					}
					else
						theField.value=res;
			}
		}
	}
}

//--- validate_DATE_EFFET: fonction, valide la date d'effet ---
function validate_DATE_EFFET(strIn)
{
   var xDate,CurDate,CurMonth,CurYear,intDumm,Jour,Mois,An,strWork;
   var mValues = "312831303130313130313031";
   var lastDate = 0;
   var d=document.formAuto.DATE_EFFET;
   xDate = new Date();
   CurDate = xDate.getDate();
   CurMonth = xDate.getMonth()+1;
   CurYear = xDate.getYear()
   strWork = strIn
   intDumm = strWork.indexOf('/');
   if ( intDumm == -1 )
     {
        alert("Veuillez rentrer une date sous la forme jj/mm/aaaa")
        d.value="jj/mm/aaaa";
		d.focus();
        d.select();
        return (false);
     }
   Jour = strWork.substr(0,intDumm);
   strWork = strWork.substr(intDumm+1,9999);
   intDumm = strWork.indexOf('/');
   if  ( intDumm == -1 )
     {
       alert("Veuillez rentrer une date sous la forme jj/mm/aaaa")
        d.value="jj/mm/aaaa";
		d.focus();
        d.select();
       return (false);
     }
   Mois = strWork.substr(0,intDumm);
   An = strWork.substr(intDumm+1,999)
   if ( (isNaN(Jour)) || (isNaN(Mois)) || ( isNaN(An)) )
     {
        alert("Veuillez saisir une date cohérente: jj/mm/aaaa");
        d.value="jj/mm/aaaa";
		d.focus();
        d.select();
        return false;
     }
   if ( ((Jour > 31 )||(Jour < 1)) || ((Mois > 12)||(Mois < 1)) )
     {
        alert("Veuillez saisir une date cohérente : jj/mm/aaaa");
        d.value="jj/mm/aaaa";
        d.focus();
        d.select();

        return false;
     }

   if ( (An < CurYear) || ( (An == CurYear)&&(Mois < CurMonth) ) || ( (An == CurYear)&&(Mois == CurMonth)&&(Jour < CurDate) ) )
     {
        alert("La date ne peut être antérieure à la date d'aujourd'hui.");
		d.value="jj/mm/aaaa";
        d.focus();
        d.select();
		return false;
     }
   else if  ( (An > CurYear) || ( (An == CurYear)&&(Mois > (CurMonth + 2)) ) || ( (An == CurYear)&&(Mois == (CurMonth + 2))&&(Jour > CurDate) ) )
     {
        alert("La date saisie ne peut être postérieure de plus de 2 mois à la date d'aujourd'hui.")
        d.value="jj/mm/aaaa";
        d.focus();
        d.select();
        return false;
     }
/* Check la validité de la future date */

	if (Mois == 2){
		if (isLeapYear(An)) {
			lastDate = 29
		}
		else{
			lastDate = 28
		}
	} 
	else {
		lastDate = mValues.substring((Mois-1)*2, (Mois-1)*2+2)
	}

	if ( (Jour > lastDate) )
         {
		alert("Date incohérente avec le calendrier");
        d.value="jj/mm/aaaa";
		d.focus();
        d.select();
		return false;
	}

   return true;
}

//--- validate_Franchise: fonction, verifie que la franchise est dans la fourchette ---
function validate_Franchise(maFranchise)
{
	var temp=parseInt(maFranchise,10);
	var monMini = document.formAuto.FRANCHISE_FMIN.value;
	var monMax = document.formAuto.FRANCHISE_FMAX.value;
	if ((monMini=="")||(monMax==""))
	{
		alert("Veuillez d'abord sélectionner un véhicule");
		openWindow('vehiculeWindow','RechercheVehicule/frameRechercheVehicule.htm',400,575,20,20);
	}
	else
	{
		if (isNaN(temp)||(temp<0))
		{
			alert("Veuiller entrer un nombre entier pour la franchise");
			document.formAuto.FRANCHISE_CHOISIE.value="";
			document.formAuto.FRANCHISE_CHOISIE.select();
			document.formAuto.FRANCHISE_CHOISIE.focus();
		}
		else
		if ((temp>monMax)||(temp<monMini))
		{
			alert("La franchise saisie est en dehors des bornes");
			document.formAuto.FRANCHISE_CHOISIE.value="";
			document.formAuto.FRANCHISE_CHOISIE.select();
			document.formAuto.FRANCHISE_CHOISIE.focus();
		}
	}
	
}

//--- validate_check_remorque: fonction, verifie qu'un poids a ete entre ---
function validate_check_remorque(monEtat)
{
	var monPoids = document.formAuto.KG_Remorque.value;
	if (!monEtat)
		document.formAuto.KG_Remorque.value="";
	else
		if (monPoids=="")
		{
			alert("Veuillez entrer un poids pour la remorque");
			document.formAuto.KG_Remorque.select();
			document.formAuto.KG_Remorque.focus();
		}
}

//--- validate_KG_remorque: fonction, verifie que le poids entre est coherent ---
function validate_KG_remorque(monPoids)
{
	var temp=parseInt(monPoids,10);
	if (isNaN(temp)||temp<=0)
	{
		alert("Veuiller entrer un nombre entier pour le poids de la remorque");
		document.formAuto.KG_Remorque.value="";
		document.formAuto.KG_Remorque.select();
		document.formAuto.KG_Remorque.focus();
	}
}

//--- valid_Submit: fonction, verifie que le formulaire soit bien rempli ---
function valid_Submit()
{
	var msgTarifImpos = "Pour l'instant, Superassureur n'est pas en mesure de proposer une solution adaptée à votre situation.\nPour toute information complémentaire, vous pouvez contacter nos conseillers au 01 40 82 81 47."
	var temp;
	var monAge, monSexe;
	var index, NomVille;

	if ( ( document.formAuto.Marque.value == '' ) || ( document.formAuto.Marque.value == 'Marque' ) ){
		alert("Tarification impossible, selectionner un véhicule");		
		return;
		}

	if ((document.formAuto.Zon_CodePostal.value=="")||(document.formAuto.selectVille.options.length==0))
	{
		alert("Veuillez entrer un code postal");
		document.formAuto.Zon_CodePostal.select();
		document.formAuto.Zon_CodePostal.focus();
	}
	else
	{   if (!(document.formAuto.SEXE[0].checked) && !(document.formAuto.SEXE[1].checked)) {
		alert("Veuillez selectionner le sexe de l'assuré");
		}
	else if (document.formAuto.DATE_NAISSANCE.value=='mmaa')
	{
		alert("Veuillez entrer la date de naissance de l'assuré");
		document.formAuto.DATE_NAISSANCE.select();
		document.formAuto.DATE_NAISSANCE.focus();
	}
	else if (document.formAuto.DATE_PERMIS.value=='mmaa')
	{
		alert("Veuillez entrer la date de permis de l'assuré");
		document.formAuto.DATE_PERMIS.select();
		document.formAuto.DATE_PERMIS.focus();
	}
	/*else if (isNaN(parseInt(document.formAuto.RI.value,10))||(parseInt(document.formAuto.RI.value,10)<0)||(parseInt(document.formAuto.RI.value,10)>60))
	{
		alert("Veuillez entrer la période couverte par les relevés d'informations");
		document.formAuto.RI.select();
		document.formAuto.RI.focus();
	}
		else if (isNaN(parseInt(document.formAuto.INTERRUPTION.value,10))||(parseInt(document.formAuto.INTERRUPTION.value,10)<0)||(parseInt(document.formAuto.INTERRUPTION.value,10)>parseInt(document.formAuto.RI.value,10)))
	{
		alert("Veuillez entrer la période d'interruption");
		document.formAuto.INTERRUPTION.select();
		document.formAuto.INTERRUPTION.focus();
	}*/

	else if (document.formAuto.BONUS.value=='')
	{
		alert("Veuillez entrer le bonus");
		document.formAuto.BONUS.select();
		document.formAuto.BONUS.focus();
	}
	/*else if (document.formAuto.DATE_ECHEANCE.value=='jjmm')
	{
		alert("Veuillez la date d'échéance de votre contrat");
		document.formAuto.DATE_ECHEANCE.select();
		document.formAuto.DATE_ECHEANCE.focus();
	}*/
	
	else{   
		FClass = "YZABCDEFGHJX";
		temp=getAge(document.formAuto.DATE_NAISSANCE.value).split(";");
		monAge=temp[0];
		monSexe = (document.formAuto.SEXE[0].checked) ? "M" : "F";
		temp=document.formAuto.GROUPE.value;
		temp=(isNaN(temp))? 17 : temp;
		FClass2=FClass.indexOf(document.formAuto.CLASSE.value);
		IdxRI= document.formAuto.SelectRI.selectedIndex;
		if ((IdxRI<2)&&(monSexe=="M")&&(monAge<25)&&((parseInt(temp,10)>30)))
			alert("Tarification impossible\nVéhicule trop puissant pour l'expérience du conducteur");
		else if ((IdxRI<2)&&(monSexe=="F")&&(monAge<25)&&((parseInt(temp,10)>30)))
			alert("Tarification impossible\nVéhicule trop puissant pour l'expérience de la conductrice");
		else {

			if (document.formAuto.selectVille.value<0)
			{
				alert("Veuillez selectionner une ville");
				//document.formAuto.selectVille.select();
				document.formAuto.selectVille.focus();
				return;
			}
												
			//---On passe au champ caché "Ville" la ville sélectionnée par l'intermédiaire.
			index = document.formAuto.selectVille.options.selectedIndex;
			NomVille = document.formAuto.selectVille.options[index].text;
			document.formAuto.Ville.value = NomVille;
			document.formAuto.ZONE_RC.value=document.formAuto.selectVille.options[index].value;
			
			if (!(document.formAuto.TAXI[0].checked) && !(document.formAuto.TAXI[1].checked)){
			alert("Merci de bien vouloir spécifier si vous êtes artisan taxi");
			return;
			}

			if ((!(document.formAuto.radioFuite[0].checked) && !(document.formAuto.radioFuite[1].checked))|| 
			(!(document.formAuto.radioIvresse[0].checked) && !(document.formAuto.radioIvresse[1].checked)) || 
			(!(document.formAuto.radioStup[0].checked) && !(document.formAuto.radioStup[1].checked)) || 
			(!(document.formAuto.radioAnnulation[0].checked) && !(document.formAuto.radioAnnulation[1].checked)) || 
			(!(document.formAuto.radioSuspension[0].checked) && !(document.formAuto.radioSuspension[1].checked) && !(document.formAuto.radioSuspension[2].checked)) || 
			(!(document.formAuto.radioResilie[0].checked) && !(document.formAuto.radioResilie[1].checked))){
			alert("Merci de bien vouloir répondre à toutes les questions posées sur les antécédents du conducteur");
			return;
			}
			// on teste les dates de sinistres par rapport au nombre selectionné
			ChNoSin=new Array("NbSIN0","NbSIN1","NbSIN2","NbSIN3");
			NotOk=false;
			for (j=0;j<3;j++){
				myname=ChNoSin[j];
			if (myname=="NbSIN4") { chmp= new Array("DATE_BDG1","DATE_BDG2","DATE_BDG3","DATE_BDG4");}
			else if (myname=="NbSIN3") { chmp= new Array("DATE_VI1","DATE_VI2","DATE_VI3");}
			else if (myname=="NbSIN2") { chmp= new Array("DATE_NRT1","DATE_NRT2","DATE_NRT3");}
			else if (myname=="NbSIN1") { chmp= new Array("DATE_RMAT1","DATE_RMAT2","DATE_RMAT3");}
			else if (myname=="NbSIN0") { chmp= new Array("DATE_RCOR1","DATE_RCOR2");}
			nb=document.formAuto[myname].options.selectedIndex;
			for (i=1;i<=nb;i++){NotOk = NotOk || (document.formAuto[chmp[i-1]].value=='mmaa');}}
				if (NotOk) {
					alert("Merci de renseigner la date de vos sinistres");
			return;
			}
			
			with (document.formAuto)
			
			{ 
				if (!validate_BONUS(BONUS.value)) return;
				
				if ((radioStup[0].checked)||(radioAnnulation[0].checked)) { alert(msgTarifImpos);
				return;
					}
			// Refus de souscription
			 if ((parseInt(GROUPE_SRA,10)>36)||(CLASSE_SRA>'P')||TAXI[0].checked) {
			 	if (radioIvresse[0].checked || radioResilie[0].checked || radioFuite[0].checked) {alert(msgTarifImpos);
				return;}
			 	}
			
			//if ((BONUS.value>1.5) ||(BONUS.value>1 && NbSIN0.value>=1) || (radioIvresse[0].checked)){alert("Afin de vous offrir une solution personnalisée,\nnous vous invitons à contacter nos conseillers au 01.40.82.XX.XX.\nIls vous communiqueront un tarif adapté à vos antécédent d'assurance");return;}
				
			 if (!TAXI[0].checked &&((GROUPE.value=="*") || (CLASSE.value=="J") || (CLASSE.value=="X"))) {
				if (monAge<30) { alert("Tarification impossible,\nLe souscripteur doit être au minimum agé de 30 ans pour assurer ce véhicule haut de gamme");
				return;
					}
				if (parseFloat(BONUS.value)>.76) {alert("Tarification impossible,\nLe souscripteur doit posséder au minimum un bonus de 0.76 pour assurer ce véhicule haut de gamme");
				return;
				}
				if (!(radioSuspension[2].checked)) { alert(msgTarifImpos);
				return;
					}
				if (!(CompteSin(24)<=1 || (CompteSin(24,2)+CompteSin(24,3))==1 && (CompteSin(24,4)+CompteSin(24,5))==1) ||  CompteSin(24,1)>=1) { alert(msgTarifImpos);
				return;
					}
				}
				
			if (TAXI[0].checked) { 
				if (radioSuspension[0].checked || BONUS.value>1) { alert(msgTarifImpos);
				return;
					}
				if (CompteSin(24,2)>1 || CompteSin(12)>2 || CompteSin(24)>3|| CompteSin(24,1)>0){ alert(msgTarifImpos);
				return;}
			}
			if ((BONUS.value>1.5) ||(BONUS.value>1 && NbSIN0.value>=1) || (radioIvresse[0].checked)){alert(msgTarifImpos);return;}
				//if ((DATE_BDG1.value=='mmaa')&&(DATE_BDG2.value=='mmaa')&&(DATE_BDG3.value=='mmaa')&&(DATE_BDG4.value=='mmaa')&&(DATE_VI1.value=='mmaa')&&(DATE_VI2.value=='mmaa')&&(DATE_VI3.value=='mmaa')&&(DATE_RMAT1.value=='mmaa')&&(DATE_RMAT2.value=='mmaa')&&(parseInt(SelectRI.value)!=0))
					//if (!confirm("Le souscripteur déclare n'avoir subi aucun sinistre sur les "+SelectRI.value+" derniers mois ?")) return;
			}
			
			//calculBonus();
			 document.formAuto.submit();
		}
		}
	}
	

}


//--- init_DATE_EFFET: fonction, met la date du jour dans le champ date effet ---
function init_DATE_EFFET()
{
	var dateC, moisC, anneeC, jourC;
	var temp;

	//--- Recuperation de la date courrante ---
	dateC = new Date();
	anneeC = dateC.getYear();
	//--- Correctif pour netscape ---
	if (anneeC < 2000)
		anneeC+=1900;
	moisC = dateC.getMonth()+1;
	jourC = dateC.getDate();

	temp=""+jourC;
	if (temp.length==1)
		jourC="0"+jourC;
	temp=""+moisC;
	if (temp.length==1)
		moisC="0"+moisC;
	temp=jourC+"/"+moisC+"/"+anneeC;
	
	document.formAuto.DATE_EFFET.value=temp;
}


function Retour(){
	window.history.go(-1)
}
function ChercheVehicule(){
//	alert("Les conducteurs habituels et occasionnels déclarent n'avoir jamais fait l'objet \nde retrait ou suspension de permis supérieur à 30 jours ni de poursuites pour \nconduite en état d'ivresse ni de résiliation par le précédent assureur ni de \ncondamnation pour délit de fuite.");
	openWindow('vehiculeWindow','/pages/tarificationSouscription/RechercheVehicule/frameRechercheVehicule.htm',400,575,20,20); 
	return;
}

function changeVille()
{
	//---On passe au champ caché "Ville" la ville sélectionnée par l'intermédiaire.
	var index = document.formAuto.selectVille.options.selectedIndex;
	if (index > -1) {
		var NomVille = document.formAuto.selectVille.options[index].text;
		document.formAuto.Ville.value = NomVille;
		//document.formTarifAuto.Ville.value = NomVille;
		}
}


function Etape2(str1,str2,str3,str4,str5)
  {
    if (document.formTarifAuto.TypeProc.value == 'Souscription')
    {
    if (document.formTarifAuto.TypeProcedure[0].checked != true && document.formTarifAuto.TypeProcedure[1].checked != true){alert("choisissez Devis ou Souscription");return;}
    }
    else
    {
    if (document.formTarifAuto.TypeProcedure.checked != true ){alert("Veuillez cocher la case Devis");return;}    
    }
    testaquis();
    document.formTarifAuto.NUMERO_FORMULE.value = str3;
    document.formTarifAuto.FRACTION.value = str2;
    document.formTarifAuto.Prime_prix.value = document.formTarifAuto[str1].value;
    document.formTarifAuto.TYPE_FRANCHISE.value = str4;
    
    if(str3=='1')
       {
       if(str5=="OUI")
          {
          alert("La garantie Effets, Objets et Accessoires n'est pas autorisée en Formule 1\nRe-Calculez sans cette option ou choisissez une Formule supérieure");
          }
       else
          {
  		  document.formTarifAuto.submit();
          }
       }
    else
       {
	   document.formTarifAuto.submit();
       }
  }

function changeFormValue()
{
	if (document.formAuto.affichage.value=="1")
	{
	
		document.formAuto.affichage.value="0";
		document.formAuto.operation.value="saveSession";
		document.formAuto.submit();
	}
}

function VerifieCodePostal()
{
	Tmp2 = document.formAuto.Zon_CodePostal.value;
	Tmp2 = Tmp2.substring(0,2);
	if ((Tmp2 == 20)||(Tmp2 == 97)||(Tmp2 == 98)) 
	{
		alert("Tarification impossible, véhicule non assurable dans ce département");
		document.formAuto.Zon_CodePostal.value = '';
		return false;
	}
	else
		return true;
}

function CompteSin(periode,Stype)
{
	// -- renvoie le nombre de sinistres des XX derniers mois  --
	// periode : integer = nombre de mois à prendre en compte
	// responsable : integer = parametre de selection des sinistres à comptabiliser
	//		1 : Les sinistres responsables corporels seuls
	//		2 : Les sinistres responsables matériels seuls
	//		3 : Les sinistres non responsables avec tiers seuls
	//		4 : Les sinistres neutres vol, incendie et stationnement seuls
	//		5 : Les sinistres bris de glace seuls
	//		null ou autre : tous les sinistres
	
	var NbType 	 = 5;
	var fieldList 	 = new Array(NbType);
	 fieldList[0] = new Array("DATE_RCOR1","DATE_RCOR2");
	 fieldList[1] = new Array("DATE_RMAT1","DATE_RMAT2","DATE_RMAT3");
	 fieldList[2] = new Array("DATE_NRT1","DATE_NRT2","DATE_NRT3");
	 fieldList[3] = new Array("DATE_VI1","DATE_VI2","DATE_VI3");
	 fieldList[4] = new Array("DATE_BDG1","DATE_BDG2","DATE_BDG3","DATE_BDG4");
	var myNbSin=0;
	if (!Stype) Stype=0;
	if (Stype>0 && Stype<(NbType+1))  
	for (i=0;i<fieldList[Stype-1].length;i++){
		strVal=eval("document.formAuto."+fieldList[Stype-1][i]+".value"); 
		if (strVal!="mmaa"){
			if (getDeltaMois(strVal)<=periode)myNbSin++;}}
	else
	for (j=0;j<NbType;j++){
		for (i=0;i<fieldList[j].length;i++){
		strVal=eval("document.formAuto."+fieldList[j][i]+".value"); 
		if (strVal!="mmaa"){
			if (getDeltaMois(strVal)<=periode)myNbSin++;}}}	
	return 	myNbSin;	
}

function TestBonusOption(myField,myTime){
	LBonusLib=new Array("Depuis .....","Depuis moins de 1 an","Depuis 1 an","Depuis 2 ans","Depuis 3 ans et plus");
	LBonusVal=new Array("#","0","1","2","3");
	s=myField.form.elements[myTime];
	SIndex=s.selectedIndex;
	if (parseFloat(myField.value.replace(",","."))!=0.5) {for(j=s.length-1;j>=1;j--)s.options[j]=null;
	s.options[0]=new Option("-----","#");s.options[0].selected=true;}
	else {for(j=0;j<=LBonusVal.length-1;j++)s.options[j]=new Option(LBonusLib[j],LBonusVal[j]);
	if (SIndex>0) s.options[SIndex].selected=true;
	else s.options[0].selected=true;
	}
}

function verifBonusOption(){TestBonusOption(document.formAuto.BONUS,'BonusOption');}
//-->