// Afin d'écourter cette fonction ne rend plus que l'email ou doit être envoyé le mail... 
function repartition_cp () 
{
	
}
function tri_tab(ar) {
	var ret=[];
	var tmpar=[];
	var len=ar.length;
	if (len==0) {
		return [];
	}
	var tmp,tmp2,less,big,i,j,lessidx,bigidx;
	tmp=tmp2=ar[0];
	for (i=0;i<len;i++) {
		tmpar[i]=Number(ar[i])+0;
		if (ar[i]<tmp) {
			tmp=ar[i];
			lessidx=i;
		}
		if (ar[i]>tmp2) {
			tmp2=ar[i];
			bigidx=i;
		}
	}
	tmpar[lessidx]=null;
	tmpar[bigidx]=null;
	less=tmp;
	big=tmp2;
	//alert([big,less]);
	ret[0]=less;
	ret[len-1]=big;
	for (i=1;i<len-1;i++) {
		tmp=big;
		for (j=0;j<len;j++) {
			if (tmpar[j]!=null && tmpar[j]>less && tmpar[j]<tmp) {
				tmp=tmpar[j];
				lessidx=j;
			}
		}
		//
		tmpar[lessidx]=less;
		ret[i]=tmp;
	}
	return ret;
}

function Num(zechamps) 
{
	var i=0;
	for (i=0;i<document.Formulaire.length;i++) 
	{
		if (document.Formulaire.elements[i].name==zechamps) 
		{
			return i;
		}
	}
	return -1;
}
// **************************************************************
//
//      FONCTIONS DE CALCUL DE TAUX et DUREE MAX. DU CREDIT
//
// **************************************************************

function calc_tmp_0(montant,duree,taux,mensualite,taux_charge) {
	this.montant = montant
	this.duree = duree
	this.taux = taux
	this.mensualite = mensualite
	this.taux_charge = taux_charge
}

var calc_tmp = new calc_tmp_0(0,0,0,0,0);

function Calc2(qui,quel) 
{
	for (var i =0; i<qui.length; i++) 
	{
		if (qui.elements[i].name == "montant") 
		{
			var pt1 = i;	
		} 
		else 
		{
			if (qui.elements[i].name == "duree") 
			{
				var pt2 = i;	
			} 
			else 
			{}	
	        if (qui.elements[i].name == "taeg") 
			{
				var pt3 = i;	
	        } 
			else 
			{}	
	        if (qui.elements[i].name == "mensualite") 
			{
				var pt4 = i;	
	        } 
			else 
			{
  				if (qui.elements[i].name == "taux_charge") 
				{
					var pt5 = i;	
	            } 
				else 
				{}	
	        }	
	  }
	}	
	calc_tmp.montant = parseFloat(qui.elements[pt1].value);
	calc_tmp.duree = parseFloat(qui.elements[pt2].value);
	calc_tmp.taux = qui.elements[pt3].value;
	calc_tmp.mensualite = qui.elements[pt4].value;
	switch (quel) {
// le montant a ete modifie
	 case 1:
	  if (Calcul()==false){
	   return false;
	  }
	  break;
	 case 2:
// la duree a ete modifiee
	  if (Calcul2()==false){
	   return false;
	  }
	  break;
	 case 3:
// le TAUX a ete modifiee
	  if (Calcul3()==false){
	   return false;
	  }
	  break;
	}	
	qui.elements[pt1].value = ToString(calc_tmp.montant);
	qui.elements[pt2].value = ToString(calc_tmp.duree);
	//ToSelect (qui.elements[pt2],calc_tmp.duree);
	qui.elements[pt3].value = ToString (calc_tmp.taux);
	qui.elements[pt4].value = ToString (Math.floor(calc_tmp.mensualite * 100) / 100);
	qui.elements[pt5].value = ToString(calc_tmp.taux_charge);
	return true;
}

// VAIRABLES GLOBALES
  var gduree = 0;
  var gtaux = 0;

 // crée les rapports montant-duree
  var montant_duree = new Array(2500,3700,5600,7500,10000,15000,20000,37000,99999);
  var duree_duree = new Array(24,30,36,42,48,60,84,120,240);
  var nb_duree = montant_duree.length;

//  crée les rapports montant-taux
  var montant_taux = new Array(500,1250,5000,99999);
  var nb_montant_taux = montant_taux.length;
/*var taux495 =new Array();
taux495["12"] = 20.50;
taux495["24"] = 20.50;
var taux2500=new Array();
taux2500["12"] = 20.50;
taux2500["24"] = 7.25;
var taux10000=new Array();
taux10000["12"] = 20.50;
taux10000["24"] = 20.50;
taux10000["59"] = 15.50;
taux10000["60"] = 12;
taux10000["999"] = 12;
var taux245000=new Array();
taux245000["12"] = 20.50;
taux245000["24"] = 20.50;
taux245000["59"] = 15.50;
taux245000["60"] = 12;
taux245000["999"] = 12;
  
var taux_taux = new Array(4);
taux_taux[0] = taux495;
taux_taux[1] = taux2500;
taux_taux[2] = taux10000;
taux_taux[3] = taux245000;*/
 taux_taux=[];
 taux_taux[0]=[];
 taux_taux[0]["12"]=19;
 taux_taux[0]["24"]=19;
 taux_taux[1]=[];
 taux_taux[1]["12"]=19;
 taux_taux[1]["24"]=19;
 taux_taux[2]=[];
 taux_taux[2]["12"]=15;
 taux_taux[2]["24"]=15;
 taux_taux[2]["30"]=15;
 taux_taux[2]["36"]=15;
 taux_taux[3]=[];
 taux_taux[3]["12"]=11.5;
 taux_taux[3]["24"]=11.5;
 taux_taux[3]["30"]=11.5;
 taux_taux[3]["36"]=11.5;
 taux_taux[3]["42"]=11.5;
 taux_taux[3]["48"]=11.5;
 taux_taux[3]["60"]=11.5;
 taux_taux[3]["72"]=11.5;
 taux_taux[3]["84"]=11.5;
 taux_taux[3]["120"]=11.5;
 taux_taux[3]["240"]=11.5;

// controle TAUX
function _Controle_Taux(montant_pret,duree_pret) 
{
	var indice = 0;
	var taux_retour=0;
	for (i=nb_montant_taux;i>=0;i--) 
	{
		if (montant_pret<=montant_taux[i]) indice = i;
	}
	/*if (duree_pret>=0 && duree_pret<12) duree_pret = 12;
	if (duree_pret>12 && duree_pret<24) duree_pret = 24;
	if (duree_pret>24 && duree_pret<60) duree_pret = 60;
	if (duree_pret>60 && duree_pret<999) duree_pret = 999;*/
	
	taux_retour = taux_taux[indice][duree_pret];
	return taux_retour;
}
function Controle_Taux(montant_pret,duree_pret) 
{
	var indice = -1;
	var taux_retour=0;
	for (var i=nb_montant_taux;i>=0;i--) 
	{
		if (montant_pret<=montant_taux[i]) indice = i;
	}
	if (indice==-1) {
		indice=nb_montant_taux-1;
	}
	//alert(indice);
	var tmp_taux=taux_taux[indice];
	var att;
	//recupere les CLES de taux_taux
	var aks=[];
	var ctr=0;
	for (att in tmp_taux) {
		aks[ctr]=att;
		ctr++;
	}
	//tri croissant
	var durs=tri_tab(aks);
	//
	//alert(durs);
	var durs_len=durs.length;
	var last=0;
	////REMPLACE CECI ...
	//if (duree_pret>=0 && duree_pret<12) duree_pret = 12;
	//if (duree_pret>12 && duree_pret<24) duree_pret = 24;
	//if (duree_pret>24 && duree_pret<60) duree_pret = 60;
	//if (duree_pret>60 && duree_pret<999) duree_pret = 999;
	////PAR CA (meme chose mais dynamique):
	if (duree_pret>=last && duree_pret<durs[0]) duree_pret = durs[0];
	for (i=1;i<durs_len;i++) {
		last=durs[i-1];
		if (duree_pret>last && duree_pret<durs[i]) duree_pret = durs[i];
	}
	//
	//taux_retour = taux_taux[indice][duree_pret];
	taux_retour = tmp_taux[duree_pret];
	return taux_retour;
}
 // controle duree
 function Controle_Duree(montant_pret) {
  var duree_retour=0;
  for (i=nb_duree;i>=0;i--) {
   if (montant_pret<=montant_duree[i]) duree_retour = duree_duree[i];
  }
  return duree_retour;
 }

 function Calcul() {
 gduree = 0;
 gtaux = 0;
 // verifie validite du montant
 if (isNaN(calc_tmp.montant) || calc_tmp.montant=="") {
  alert("Le montant doit être composé uniquement de chiffre");
  return false;
 }
 if (calc_tmp.montant<2501 || calc_tmp.montant>9999999) {
  alert("Le montant minimum pouvant être emprunté est de 2501 EUR");
  return false;
 }
  
  // teste la duree par rapport au montant
  gduree = Controle_Duree(calc_tmp.montant);
  calc_tmp.duree = gduree;
  // tester le taux
  gtaux = Controle_Taux(calc_tmp.montant,gduree);
  calc_tmp.taux = gtaux;
  
  // calculde la mensualite
 emp = calc_tmp.montant;
 nbr = gduree;
 txc = gtaux / 100;
 tp1 = (1+txc)
 tp2 = (1/12)
 tp3 = (1+txc)
 tp4 = (nbr/12)
 tp5 = Math.pow(tp1,tp2)
 tp6 = Math.pow((1/tp3),tp4)
 ech = emp*(tp5 -1)/(1 - tp6)
 

 calc_tmp.mensualite = ech;
 agios = ech * gduree - calc_tmp.montant
 taux = (agios * 100) / (calc_tmp.montant * gduree)
 calc_tmp.taux_charge = Math.round(taux * 1000) / 1000;
 return true;
 }

function ToString(param) {
 var buf = ""
 if (isNaN(param) || param == "") {
  return param;
 }
 buf = String(param);
 buf = buf.replace(".",",")
 return buf;
}

function Calcul2() 
{
	var buf = ""
 
	if (calc_tmp.montant=="") return false;
	if (calc_tmp.duree=="") return false;
	if (calc_tmp.taux=="") return false;
 
	emp = Number(calc_tmp.montant)
	nbr = Number(calc_tmp.duree)
	if (document.Formulaire.type_credit.value!="PH") {
		if (emp <= 3700)
		{
			if(nbr<24 || nbr > 30 )
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 30 mois");
				nbr = 30;
			}
		}
		if (emp > 3700 && emp <= 5600)
		{
			if(nbr<24 || nbr > 36 )
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 36 mois");
				nbr = 36;
			}
		}
		if (emp >= 5601 && emp <= 7500)
		{
			if(nbr<24 || nbr > 42 )
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 42 mois");
				nbr = 42;
			}
		}
		if (emp >= 7501 && emp <= 10000)
		{
			if(nbr<24 || nbr > 48)
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 48 mois");
				nbr = 48;
			}
		}
		if (emp >= 10001 &&emp <= 15000)
		{
			if(nbr<24 || nbr > 60)
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 60 mois");
				nbr = 60;
			}
		}
		if (emp >= 15001)
		{
			if(nbr<24 || nbr > 84 )
			{
				alert ("Pour le montant indiqué, la durée doit être comprise entre 24 et 84 mois");
				nbr = 84;
			}
		}
	}
	// tester le taux
	gtaux = Controle_Taux(emp,nbr);
	calc_tmp.taux = gtaux;
	buf = String(calc_tmp.taux)
	buf = buf.replace(",",".")
	txc = Number(buf) / 100
	tp1 = (1+txc)
	tp2 = (1/12)
	tp3 = (1+txc)
	tp4 = (nbr/12)
	tp5 = Math.pow(tp1,tp2)
	tp6 = Math.pow((1/tp3),tp4)
	ech = emp*(tp5 -1)/(1 - tp6)
	// ech = emp*(((1+txc)^(1/12))-1)/(1-(1/(1+txc))^(nbr/12))
	calc_tmp.mensualite = ech 
	// agios = ech * gduree - calc_tmp.montant
	// taux = (agios * 100) / (calc_tmp.montant * gduree)
	agios = ech * nbr - emp
	taux = (agios * 100) / (emp * nbr)
	calc_tmp.taux_charge = Math.round(taux * 1000) / 1000;
	calc_tmp.duree = nbr;
 
}

function Calcul3() {
 var buf = ""
 
 if (calc_tmp.montant=="") return false;
 if (calc_tmp.duree=="") return false;
 if (calc_tmp.taux=="") return false;
 
 emp = Number(calc_tmp.montant)
 nbr = Number(calc_tmp.duree)
 // tester le taux
 gtaux = Controle_Taux(emp,nbr);
 
 if (calc_tmp.taux>gtaux) {
  alert ("Le taeg ne peux dépasser " + String(gtaux) +" % / JKP moet niet groter dan " + String(gtaux) +" %");
  return false;
 }
 buf = String(calc_tmp.taux)
 buf = buf.replace(",",".")
 txc = Number(buf) / 100
 tp1 = (1+txc)
 tp2 = (1/12)
 tp3 = (1+txc)
 tp4 = (nbr/12)
 tp5 = Math.pow(tp1,tp2)
 tp6 = Math.pow((1/tp3),tp4)
 ech = emp*(tp5 -1)/(1 - tp6)
// ech = emp*(((1+txc)^(1/12))-1)/(1-(1/(1+txc))^(nbr/12))
 calc_tmp.mensualite = ech
// agios = ech * gduree - calc_tmp.montant
// taux = (agios * 100) / (calc_tmp.montant * gduree)
 agios = ech * nbr - emp
 taux = (agios * 100) / (emp * nbr)
 calc_tmp.taux_charge = Math.round(taux * 1000) / 1000;
 return true;
}

function ToSelect(champ,valeur) {
	var i,len,select
	len = champ.length
	select = len-1
	for (i=0;i<len ;i++ )
	{
		if (String(valeur)==champ.options[i].text)
		{
			select = i;
		}
	}
	champ.options[select].selected=true;
	
}
// TESTER ET CORRIGER LA DATE IMMEDIATEMENT APRES CHANGEMENT DE VALUER
function Teste_date(champs,diff) 
{
	var s1=0,s2=0,max=0;
	var jour=0,mois=0,annee=0;
	var sjour,smois,sannee;
	var valeur,format,buf,tmp;
	var m=new Date()
	var annee_debut;
	var annee_actu = m.getFullYear();

	annee_debut = annee_actu - 75;
	annee_actu = annee_actu - diff;
	valeur = champs.value;
	valeur = trim(valeur);
	if (valeur != "")
	{
		// d'abord verifier s'il il a des /, sinon les ajouter
		s1=valeur.indexOf("/");
		if (s1<0) 
		{
			buf = valeur.substring(0,2) + "/" + valeur.substring(2,4) + "/";
			tmp = valeur.substring(4,valeur.length);
			if (tmp.length<4) 
			{
				s1 = Number(tmp);
				if (!isNaN(s1)) 
				{
					if (s1<21) 
					{
						tmp = "20" + tmp;
					} 
					else 
					{
						tmp = "19" + tmp;
					}
				}
			}
			buf = buf + tmp;
			valeur = buf;
		}
		//
		format = "JJ/MM/AAAA";
		s1=format.indexOf("/");
		s2=format.lastIndexOf("/");

		// si la date est plus courte que le format choisi, il y a une erreur
		if (valeur.length!=format.length) 
		{
			alert("Le format de la date doit être de cette forme : JJ/MM/AAAA ou JJMMAAAA");
			champs.value="";
			champs.focus();
			return false;
		}
		// convertir les données jj mm aaaa en chiffres

		sjour = valeur.substring(0,s1);
		jour = Number(sjour);
		smois = valeur.substring(s1+1,s2);
		mois = Number(smois);
		sannee = valeur.substring(s2+1,s2+5);
		annee = Number(sannee);

 		// verifier l'annee

		if (isNaN(annee)) 
		{
			alert("L'année doit être uniquement composée de chiffres");
			champs.value="";
			champs.focus();
			return false;
		}

		if (annee<annee_debut || annee >annee_actu) 
		{
			alert("Cette date semble incohérente");
			champs.value="";
			champs.focus();
			return false;
		}
 
		// verifier le mois
		if (isNaN(mois)) 
		{
			alert("Le mois doit être composé uniquement de chiffres");
			champs.value="";
			champs.focus();
			return false;
		}

		if (mois<1 || mois >12) 
		{
			alert("Le mois doit être entre 1 et 12");
			champs.value="";
			champs.focus();
			return false;
		}
 
		// tester le jour uniquement si format DD/MM/JJJJ
		if (isNaN(jour)) 
		{
			alert("Le jour doit être uniquement composé de chiffre");
			champs.value="";
			champs.focus();
			return false;
		}
		max = 30;

		if (mois<8 && (parseInt(mois / 2)*2)!=mois) max = 31; 
		if (mois>7 && (parseInt(mois / 2)*2)==mois) max = 31; 
		if (mois==2) 
		{
			max = 28;
			if ((parseInt(annee/4)*4)==annee) max=29;
		}
		if (jour<1 || jour >max) 
		{
			alert("Le jour doit être entre 1 et "+max+"");
			champs.value="";
			champs.focus();
			return false;
		}
 
		champs.value = valeur;
		return true;
	}
	else
	{
		return true;
	}
}

// TESTER ET CORRIGER LA DATE IMMEDIATEMENT APRES CHANGEMENT DE VALUER
function Teste_date(champs,diff) 
{
	var s1=0,s2=0,max=0;
	var jour=0,mois=0,annee=0;
	var sjour,smois,sannee;
	var valeur,format,buf,tmp;
	var m=new Date()
	var annee_debut;
	var annee_actu = m.getFullYear();

	annee_debut = annee_actu - 75;
	annee_actu = annee_actu - diff;
	valeur = champs.value;
	valeur = trim(valeur);
	if (valeur != "")
	{
		// d'abord verifier s'il il a des /, sinon les ajouter
		s1=valeur.indexOf("/");
		if (s1<0) 
		{
			buf = valeur.substring(0,2) + "/" + valeur.substring(2,4) + "/";
			tmp = valeur.substring(4,valeur.length);
			if (tmp.length<4) 
			{
				s1 = Number(tmp);
				if (!isNaN(s1)) 
				{
					if (s1<21) 
					{
						tmp = "20" + tmp;
					} 
					else 
					{
						tmp = "19" + tmp;
					}
				}
			}
			buf = buf + tmp;
			valeur = buf;
		}
		//
		format = "JJ/MM/AAAA";
		s1=format.indexOf("/");
		s2=format.lastIndexOf("/");

		// si la date est plus courte que le format choisi, il y a une erreur
		if (valeur.length!=format.length) 
		{
			alert("Le format de la date doit être composé de cette forme : JJ/MM/AAAA ou JJMMAAAA");
			champs.value="";
			champs.focus();
			return false;
		}
		// convertir les données jj mm aaaa en chiffres

		sjour = valeur.substring(0,s1);
		jour = Number(sjour);
		smois = valeur.substring(s1+1,s2);
		mois = Number(smois);
		sannee = valeur.substring(s2+1,s2+5);
		annee = Number(sannee);

 		// verifier l'annee

		if (isNaN(annee)) 
		{
			alert("L'année doit être uniquement composée de chiffres");
			champs.value="";
			champs.focus();
			return false;
		}

		if (annee<annee_debut || annee >annee_actu) 
		{
			alert("Cette date semble incohérente");
			champs.value="";
			champs.focus();
			return false;
		}
 
		// verifier le mois
		if (isNaN(mois)) 
		{
			alert("Le mois doit être uniquement composé de chiffres");
			champs.value="";
			champs.focus();
			return false;
		}

		if (mois<1 || mois >12) 
		{
			alert("Le mois doit être entre 1 et 12");
			champs.value="";
			champs.focus();
			return false;
		}
 
		// tester le jour uniquement si format DD/MM/JJJJ
		if (isNaN(jour)) 
		{
			alert("Le jour doit être uniquement composé de chiffres");
			champs.value="";
			champs.focus();
			return false;
		}
		max = 30;

		if (mois<8 && (parseInt(mois / 2)*2)!=mois) max = 31; 
		if (mois>7 && (parseInt(mois / 2)*2)==mois) max = 31; 
		if (mois==2) 
		{
			max = 28;
			if ((parseInt(annee/4)*4)==annee) max=29;
		}
		if (jour<1 || jour >max) 
		{
			alert("Le jour doit être entre 1 et "+max+"");
			champs.value="";
			champs.focus();
			return false;
		}
 
		champs.value = valeur;
		return true;
	}
	else
	{
		return true;
	}
}

// tester si certains champs sont des chiffres
function TestCi(valeur,libelle,longueur) 
{
	// verifier si VALEUR est un chiffre
	if (isNaN(valeur)) 
	{
		if (longueur == 9)
		{
			alert("Le numéro de T.V.A. doit être uniquement composé de chiffres");
			return false;
		}
		else
		{
			alert("Le numéro de carte d'identité doit être uniquement composé de chiffres");
			return false;
		}
		
	}
	// verifier si VALEUR en LONGUEUR chiffres
	if (valeur.length!=longueur) 
	{
		if (longueur == 9)
		{
			alert("Le numéro de T.V.A. doit être composé de 9 chiffres");
			return false;
		}
		else
		{
			alert("Le numéro de carte d'identité doit être composé de 12 chiffres");
			return false;
		}
		
	}
	part1 = Number(valeur.substring(0,longueur-2));
	part2 = Number(valeur.substring(longueur-2,longueur));

	// cas du calcul d'un CI
	if (longueur==12) 
	{ 
		sous_result = parseInt(part1 / 97) * 97;
		result = part1 - sous_result;
		if (result!=part2) 
		{
			alert(libelle);
			return false;
		}
	}

	// cas du calcul de la TVA
	if (longueur==9) 
	{ 
		sous_result_float = parseFloat(part1 / 97);
		sous_result_int = parseInt(part1 / 97);
		sous_result = Math.round(parseFloat((sous_result_float - sous_result_int) * 97));
		result = 97 - sous_result;
		if (result!=part2) 
		{
			alert(libelle);
			return false;
		}
	}
 	//alert (result);
	return true;
}

// tester si email a bien un @ et un .
// tester si email a bien un @ et un .
function TestEmail(valeur,client) {
 var n1,n2;
 var b_correct;
 var s;
 
 if (valeur!='') {
	 b_correct = true;
	
	 n1 = valeur.indexOf("@",1);
	 n2 = valeur.lastIndexOf(".");
	 if (n2<n1 || n2==-1 || n1==-1) {
		b_correct = false;
	 }
	 // ERIC - Verifier si au moins 1 caractère avant le @
	 s = valeur.substring(0,n1);
	 if (s.length <1) {
		b_correct = false;
	 }
	 // ERIC - Verifier si au moins 2 caractères avant le .
	 s = valeur.substring(n1 +1, n2);
	 if (s.length <2) {
		b_correct = false;
	 }
	 // ERIC - Verifier si au moins 2 caractères apres le .
	 s = valeur.substring(n2 +1, valeur.length);
	 if (s.length <2) {
		b_correct = false;
	 }
	
	 if (b_correct == false) {
	  if (client !='') {
	  	alert ("Le format d'adresse email est incorrect pour le "+ client + " - Email is niet geldig voor " + client);
	  }
	  else {
	  	alert ("Le format d'adresse email est incorrect");
	  }
	  return false;
	 }
  }
  return true;
}

// valeur = la date encodée
// format = JJ/MM/AAAA ou MM/AAAA
// commentaire = nom du champs pour afficher message d'erreur

function Corrige_date(valeur,format,commentaire) {
 var s1=0,s2=0,max=0,nb=0;
 var jour=0,mois=0,annee=0;
 var sjour,smois,sannee;
 s1=format.indexOf("/");
 s2=format.lastIndexOf("/");
 if (s1==s2) nb=2; else nb=3;
 // si la date est plus courte que le format choisi, il y a une erreur
 if (valeur.length!=format.length) {
  alert("Le format de date est incorrect pour \n"+commentaire);
  return false;
 }
// convertir les données jj mm aaaa en chiffres
 if (nb<3) {
  sjour="";
  jour=-1; 
  smois = valeur.substring(0,s1);
  mois = Number(smois);
  sannee = valeur.substring(s1+1,s1+5);
  annee = Number(sannee);
 }
 else {
  sjour = valeur.substring(0,s1);
  jour = Number(sjour);
  smois = valeur.substring(s1+1,s2);
  mois = Number(smois);
  sannee = valeur.substring(s2+1,s2+5);
  annee = Number(sannee);
 }
 
 // verifier l'annee

 if (isNaN(annee)) {
  alert("L'année doit être uniquement composé de chiffres pour \n"+commentaire);
  return false;
 }

 if (annee<1900 || annee >2020) {
  alert("L'année doit se situer entre 1900 et 2020 pour \n"+commentaire);
  return false;
 }
 
 // verifier le mois
 if (isNaN(mois)) {
  alert("Le mois doit être uniquement composé de chiffres pour \n"+commentaire);
  return false;
 }

 if (mois<1 || mois >12) {
  alert("Le mois doit se situer entre 1 et 12 pour \n"+commentaire);
  return false;
 }
 
 // tester le jour uniquement si format JJ/MM/AAAA
 if (nb==3) {
  if (isNaN(jour)) {
   alert("Le jour doit être uniquement composé de chiffres pour \n"+commentaire);
   return false;
  }
  max = 30;

  if (mois<8 && (parseInt(mois / 2)*2)!=mois) max = 31; 
  if (mois>7 && (parseInt(mois / 2)*2)==mois) max = 31; 
  if (mois==2) {
   max = 28;
   if ((parseInt(annee/4)*4)==annee) max=29;
  }
  if (jour<1 || jour >max) {
   alert("Le jour doit se situer entre 1 et "+max+" pour \n"+commentaire);
   return false;
  }
 }
 return true;
}

function reprendreDonneeDebiteur(valeur)
{
	if (valeur != "")
	{
		nn=Num('rue1');
		pp=Num('rue2');
		if(document.Formulaire.elements[pp].value=="")
		{
			document.Formulaire.elements[pp].value=document.Formulaire.elements[nn].value;
		}

		nn=Num('numero1');
		pp=Num('numero2');
		if(document.Formulaire.elements[pp].value=="")
		{
			document.Formulaire.elements[pp].value=document.Formulaire.elements[nn].value;
		}

			if(document.Formulaire["cp2"].value=="")
		{
			document.Formulaire["cp2"].value=document.Formulaire["cp1"].value;
			document.Formulaire["localite2"].value=document.Formulaire["localite1"].value;
		}
		// eric ajout du pays et de la date à l'adresse
		document.Formulaire["pays2"].value=document.Formulaire["pays1"].value;

		if(document.Formulaire["adresse_depuis2"].value=="")
		{
			document.Formulaire["adresse_depuis2"].value=document.Formulaire["adresse_depuis1"].value;
		}
		
		
		nn=Num('location1');
		mm=('loyer1');
		oo=Num('location2');
		pp=('loyer2');
		if (document.Formulaire.elements[nn].value=="O" && document.Formulaire.elements[mm].value!="")
		{
			document.Formulaire.elements[oo].value = "C"; 
			document.Formulaire.elements[pp].value = "";		
		}
		if (document.Formulaire.elements[nn].value=="C" && document.Formulaire.elements[mm].value=="")
		{
			document.Formulaire.elements[oo].value = "O"; 
			document.Formulaire.elements[pp].value = "";		
		}
		if (document.Formulaire.elements[nn].value=="N" && document.Formulaire.elements[mm].value!="")
		{
			document.Formulaire.elements[oo].value = "C"; 
			document.Formulaire.elements[pp].value = "";		
		}
	}
	else
	{
		pp=Num('rue2');
		document.Formulaire.elements[pp].value="";
		
		pp=Num('numero2');
		document.Formulaire.elements[pp].value="";
		
		pp=Num('cp2');
		document.Formulaire.elements[pp].value="";
		
		pp=Num('localite2');
		document.Formulaire.elements[pp].value="";

		pp=Num('adresse_depuis2');
		document.Formulaire.elements[pp].value="";
		
		pp=Num('pays2');
		document.Formulaire.elements[pp].value="BEL";
		
	}
	return true;
}

function Verifie() 
{
	if(document.Formulaire["montant"].value == "")
	{
		alert('Le montant du crédit est obligatoire');
		return false;		
	}
	else
	{
		if (isNaN(document.Formulaire["montant"].value)) 
		{
			alert('Le montant du crédit doit être uniquement composé de chiffres');
			return false;
		}
	}

	if(document.Formulaire["duree"].value == "")
	{
		alert('La durée du crédit est obligatoire');
		return false;		
	}
	else
	{
		if (isNaN(document.Formulaire["duree"].value)) 
		{
			alert('La durée du crédit doit être uniquement composée de chiffres');
			return false;
		}
	}
	
	// verifier la validité de la carte d'identité uniquement pour les belges
	if (document.Formulaire["ci1"].value == "") 
	{
		alert("Le numéro de carte d'identité du demandeur est obligatoire");
		return false;
	}
	else
	{
		if (document.Formulaire["nationalite1"].value == "BEL") 
		{
//			Tester_type_carte_identite(document.Formulaire["client*str*no_carte_identite"]);
		}
	}

	if (document.Formulaire["rn1"].value == "") 
	{
		alert("Le numéro de registre national du demandeur est obligatoire");
		return false;
	}

	if (document.Formulaire["nom1"].value == "") 
	{
		alert('Le nom du demandeur est obligatoire');
		return false;	
	}

	if (document.Formulaire["prenom1"].value == "") 
	{
		alert('Le prénom du demandeur est obligatoire');
		return false;	
	}

	if (document.Formulaire["lieu_naissance1"].value=="")
	{
		alert('Le lieu de naissance du demandeur est obligatoire');
		return false;
	}

	if (document.Formulaire["date_naissance1"].value=="")
	{
		alert('La date de naissance du demandeur est obligatoire');
		return false;
	}

	if (isNaN(document.Formulaire["loyer1"].value)) 
	{
		alert('Le montant du loyer du demandeur doit être uniquement composé de chiffres');
		return false;
	}
	
	if(document.Formulaire["location1"].value == "O")
	{
		if(document.Formulaire["loyer1"].value == "0" || document.Formulaire["loyer1"].value == "")
		{
			alert('Le demandeur est locataire : veuillez indiquer le montant du loyer');
			return false;
		}
		else
		{
			if (isNaN(document.Formulaire["loyer1"].value)) 
			{
				alert('Le montant du loyer du demandeur doit être uniquement composé de chiffres');
				return false;
			}
		}
	}
		
	if(document.Formulaire["rue1"].value == "")
	{
		alert('La rue de l\'adresse du demandeur est obligatoire');
		return false;
	}

	if (document.Formulaire["numero1"].value == "")
	{
		alert('Le numéro de l\'adresse du demandeur est obligatoire');
		return false;
	}

	if (document.Formulaire["cp1"].value == "")
	{
		alert('Le code postal de l\'adresse du demandeur est obligatoire');
		return false;
	}
	
	if (document.Formulaire["localite1"].value =="" || document.Formulaire["localite1"].value == "null")
	{
		alert('La localité de l\'adresse du demandeur est obligatoire');
		return false;
	}
	
	if (document.Formulaire["adresse_depuis1"].value == "")
	{
		alert("La date à partir de laquelle le demandeur habite à l'adresse mentionnée est obligatoire");
		return false;
	}

	// si pays à l'adresse différent de nationalité alors belge depuis est obligatoire
	if (document.Formulaire["nationalite1"].value != "BEL") 
	{
		if (document.Formulaire["belge_depuis1"].value == "")
		{
			alert('la date depuis laquelle le demandeur vit en Belgique est obligatoire');
			return false;
		}
	} 

	if (document.Formulaire["telephone1"].value == "")
	{
		if (document.Formulaire["gsm1"].value == "")
		{
			if (document.Formulaire["email1"].value != "") 
			{
				if (TestEmail(document.Formulaire["email1"].value,"demandeur")!=true) 
				{
						return false; 
				}
			}
			else
			{
			// ERIC 08/11/2004 - Verifier si codebiteur n'a pas de tel, gsm ou email
				if (document.Formulaire["nom2"].value != "")
				{
					if (document.Formulaire["telephone2"].value == "")
					{
						if (document.Formulaire["gsm2"].value == "")
						{
							if (document.Formulaire["email2"].value != "") 
							{
								if (TestEmail(document.Formulaire["email2"].value,"co-demandeur")!=true) 
								{
										return false; 
								}
							}
							else
							{
								alert('Le numéro de téléphone OU le numéro de gsm OU l\'email d\'un des demandeurs est obligatoire');
								return false;
							}
						}
					}
				}
				else
				{
					alert('Le numéro de téléphone OU le numéro de gsm OU l\'email d\'un des demandeurs est obligatoire');
					return false;
				}
					
			}
		}
	}
	
	if (document.Formulaire["email1"].value != "") 
	{
		if (TestEmail(document.Formulaire["email1"].value,"demandeur")!=true) return false; 
	}
	
	if (document.Formulaire["profession1"].value == "011" || document.Formulaire["profession1"].value == "070" || document.Formulaire["profession1"].value == "021" || document.Formulaire["profession1"].value == "023" || document.Formulaire["profession1"].value == "012" || document.Formulaire["profession1"].value == "022" || document.Formulaire["profession1"].value == "061" || document.Formulaire["profession1"].value == "062")
	{
		
		if(document.Formulaire["profession1"].value == "021" || document.Formulaire["profession1"].value == "022" || document.Formulaire["profession1"].value == "023" || document.Formulaire["profession1"].value == "061" || document.Formulaire["profession1"].value == "062")
		{
			document.Formulaire["secteur_activite1"].value = "998";
			document.Formulaire["type_contrat1"].value = "998";
		}
		
		if(document.Formulaire["profession1"].value == "011" || document.Formulaire["profession1"].value == "012")
		{
			document.Formulaire["secteur_activite1"].value = "002";
			document.Formulaire["type_contrat1"].value = "002";
		}

		if (document.Formulaire["employeur1"].value == "")
		{
			alert("Le nom de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le nom de l'organisme)");
			return false;
		}
		if (document.Formulaire["employ_date1"].value == "")
		{
			alert("La date depuis laquelle le demandeur travaille chez l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la date à partir de laquelle ils sont dans cette situation)");
			return false;
		}
		
		if (document.Formulaire["rue_employeur1"].value == "")
		{
			alert("La rue de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la rue de l'organisme)");
			return false;
		}
		
		if (document.Formulaire["numero_employeur1"].value == "")
		{
			alert("Le numéro de l'adresse de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le numéro de l'adresse de l'organisme)");
			return false;
		}

		if (document.Formulaire["cp_employeur1"].value == "")
		{
			alert("Le code postal de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le code postal de l'organisme)");
			return false;
		}
	
		if (document.Formulaire["localite_employeur1"].value == "" ||document.Formulaire["localite_employeur1"].value == "null")
		{
			alert("La localité de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la localité de l'organisme)");
			return false;
		}

		if (document.Formulaire["revenu1"].value == "")
		{
			alert("Le salaire du demandeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le salaire reçu par l'organisme)");
			return false;
		}
		else
		{
			if (document.Formulaire["revenu1"].value == "0")
			{
				alert("Le salaire du demandeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le salaire reçu par l'organisme)");
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["revenu1"].value))
				{
					alert("Le salaire du demandeur doit être uniquement composé de chiffres");
					return false;
				}
				
			}
		}
	}
	else
	{
		document.Formulaire["employeur1"].value = "";
		document.Formulaire["secteur_activite1"].value = "998";
		document.Formulaire["type_contrat1"].value = "998";
		document.Formulaire["client_employeur*dtm*date_in"].value = "";
		document.Formulaire["rue_employeur1"].value = "";
		document.Formulaire["numero_employeur1"].value = "";
		document.Formulaire["cp_employeur1"].value = "";
		document.Formulaire["localite_employeur1"].value = "";
		document.Formulaire["revenu1"].value = 0;
	} // end test employeur
	
	if (isNaN(document.Formulaire["revenu1"].value))
	{
		alert("Le salaire du demandeur doit être uniquement composé de chiffres");
		return false;
	}
	
	// Gestion des autres revenus
  	if(document.Formulaire["autre_revenu1d"].value == "none")
	{
		// Eric - tester si un revenu est renseigné et obliger à donner le type
		if (document.Formulaire["autre_montant1d"].value != "") {
			alert('Vous avez spécifié un autre revenu 1 sans indiquer son type');
			return false;
		}  	
	}
	else
	{
		if (document.Formulaire["autre_montant1d"].value == "" || document.Formulaire["autre_montant1d"].value == "0")    
		{
			alert('Vous avez spécifié un autre revenu 1 sans indiquer le montant');
			return false;
		}
		else
		{
			if (isNaN(document.Formulaire["autre_montant1d"].value))
			{
				alert("Autre revenu 1 du demandeur doit être uniquement composé de chiffres");
				return false;
			}
		}
	}
	
	if(document.Formulaire["autre_revenu2d"].value == "none")
	{
		// Eric - tester si un revenu est renseigné et obliger à donner le type
		if (document.Formulaire["autre_montant2d"].value != "") {
			alert('Vous avez spécifié un autre revenu 2 sans indiquer son type');
			return false;
		}  	
	}
	else
	{
		if (document.Formulaire["autre_montant2d"].value == "" || document.Formulaire["autre_montant2d"].value == "0")    
		{
			alert('Vous avez spécifié un autre revenu 2 sans indiquer le montant');
			return false;
		}
		else
		{
			if (isNaN(document.Formulaire["autre_montant2d"].value))
			{
				alert("Autre revenu 2 du demandeur doit être uniquement composé de chiffres");
				return false;
			}
		}
	}

	if(document.Formulaire["autre_revenu3d"].value == "none")
	{
		// Eric - tester si un revenu est renseigné et obliger à donner le type
		if (document.Formulaire["autre_montant3d"].value != "") {
			alert('Vous avez spécifié un autre revenu 3 sans indiquer son type');
			return false;
		}  	
	}
	else
	{
		if (document.Formulaire["autre_montant3d"].value == "" || document.Formulaire["autre_montant3d"].value == "0")    
		{
			alert('Vous avez spécifié un autre revenu 3 sans indiquer le montant');
			return false;
		}
		else
		{
			if (isNaN(document.Formulaire["autre_montant3d"].value))
			{
				alert("Autre revenu 3 du demandeur doit être uniquement composé de chiffres");
				return false;
			}
		}
	}
	
	if (isNaN(document.Formulaire["alloc_fam1"].value))
	{
		alert("Les allocations familiales du demandeur doivent uniquement composées de chiffres");
		return false;
	}	
				
	if (document.Formulaire["alloc_fam1"].value != "")
	{
		if (!isNaN(document.Formulaire["alloc_fam1"].value))
		{
			if (Number(document.Formulaire["alloc_fam1"].value) > 0 )
			{
				if (document.Formulaire["nb_enfants1"].value == "")
				{
					alert('Le nombre d\'enfant à charge est obligatoire car vous avez mentionné des allocations familiales pour le demandeur');
					return false;
				}
			}	
		}
		else
		{
			alert("Les allocations familiales du demandeur doivent être uniquement composées de chiffres");
			return false;
		}
	}

	if (document.Formulaire["profession1"].value=="013")
	{
		document.Formulaire["secteur_activite1"].value = "998";
		document.Formulaire["type_contrat1"].value = "002";
	
		if(document.Formulaire["ben_net1"].value == "" || document.Formulaire["ben_net1"].value == "0")
		{
			alert('Si le demandeur est indépendant, le bénéfice net est obligatoire');
			return false;	
		}
		else
		{
			if (isNaN(document.Formulaire["ben_net1"].value))
			{
				alert("Le bénéfice net du demandeur doit être uniquement composé de chiffres");
				return false;
			}	
		}
	}
	
	// verifie les codebiteur uniquement si son nom est rempli SINON vide les champs
	if(document.Formulaire["etat_civil1"].value == "020" && document.Formulaire["nom1"].value == "")
	{
		alert('Le demandeur étant marié, veuillez indiquer les coordonnées du (de la) conjoint(e)');
		return false;
	}

	if (document.Formulaire["nom2"].value != "")
	{
		// verifier la validité de la carte d'identité uniquement pour les belges
		if (document.Formulaire["ci2"].value == "") 
		{
			alert("Le numéro de carte d'identité du co-demandeur est obligatoire");
			return false;
		}
		else
		{
			if (document.Formulaire["nationalite2"].value == "BEL") 
			{
			//	if (Tester_type_carte_identite(document.Formulaire["_client*str*no_carte_identite"]==false) {
			//	}
			}
		}

		if (document.Formulaire["rn2"].value == "") 
		{
			alert("Le numéro de registre national du co-demandeur est obligatoire");
			return false;
		}
		if (document.Formulaire["prenom2"].value == "")
		{
			alert('Le prénom du co-demandeur est obligatoire');
			return false;	
		}
				
		if (document.Formulaire["lieu_naissance2"].value == "")
		{
			alert('Le lieu de naissance du co-demandeur est obligatoire');
			return false;
		}

		if (document.Formulaire["date_naissance2"].value == "")
		{
			alert('La date de naissance du co-demandeur est obligatoire');
			return false;
		}
		
		if (document.Formulaire["rue2"].value == "")
		{
			alert('La rue de l\'adresse du co-demandeur est obligatoire');
			return false;
		}
		
		if (document.Formulaire["numero2"].value == "")
		{
			alert('Le numéro de l\'adresse du co-demandeur est obligatoire');
			return false;
		}
		
		if (document.Formulaire["cp2"].value == "")
		{
			alert('Le code postal de l\'adresse du co-demandeur est obligatoire');
			return false;
		}
		nn=Num('localite2');
		if (document.Formulaire.elements[nn].value=="" || document.Formulaire.elements[nn].value=="null")
		{
			alert('La localité de l\'adresse du co-demandeur est obligatoire');
			return false;
		}
		
		if (isNaN(document.Formulaire["loyer2"].value)) 
		{
			alert('Le montant du loyer du co-demandeur doit être uniquement composé de chiffres');
			return false;
		}
		
		if (isNaN(document.Formulaire["loyer2"].value)) 
		{
			alert('Le montant du loyer du co-demandeur doit être uniquement composé de chiffres');
			return false;
		}
		
		if(document.Formulaire["location2"].value == "O")
		{
			if(document.Formulaire["loyer2"].value == "0" || document.Formulaire["loyer2"].value == "")
			{
				alert('Le co-demandeur est locataire : veuillez indiquer le montant du loyer');
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["loyer2"].value)) 
				{
					alert('Le montant du loyer du co-demandeur doit être uniquement composé de chiffres');
					return false;
				}
			}
		}

		nn=Num('location2');
		mm=Num('loyer2');
		if (document.Formulaire.elements[nn].value =="C")
		{
			document.Formulaire.elements[mm].value = "0"
		}
		
		// si pays à l'adresse différent de nationalité alors belge depuis est obligatoire
		if (document.Formulaire["nationalite2"].value != "BEL") 
		{
			if (document.Formulaire["belge_depuis2"].value == "")
			{
				alert('La date depuis laquelle le co-demandeur vit en Belgique est obligatoire');
				return false;
			}
		}

		if (document.Formulaire["profession2"].value == "011" || document.Formulaire["profession2"].value == "070" || document.Formulaire["profession2"].value == "021" || document.Formulaire["profession2"].value == "023" || document.Formulaire["profession2"].value == "012" || document.Formulaire["profession2"].value == "022" || document.Formulaire["profession2"].value == "061" || document.Formulaire["profession2"].value == "062")
		{
			
			if(document.Formulaire["profession2"].value == "021" || document.Formulaire["profession2"].value == "022" || document.Formulaire["profession2"].value == "023" || document.Formulaire["profession2"].value == "061" || document.Formulaire["profession2"].value == "062")
			{
				document.Formulaire["secteur_activite2"].value = "998";
				document.Formulaire["type_contrat2"].value = "998";
			}
			if(document.Formulaire["profession2"].value == "011" || document.Formulaire["profession2"].value == "012")
			{
				document.Formulaire["secteur_activite2"].value = "002";
				document.Formulaire["type_contrat2"].value = "002";
			}
			
			if (document.Formulaire["employeur2"].value == "")
			{
				alert("Le nom de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le nom de l'organisme)");
				return false;
			}
		
			if (document.Formulaire["employ_date2"].value == "")
			{
				alert("La date depuis laquelle le co-demandeur travaille chez l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la date à partir de laquelle ils sont dans cette situation)");
				return false;
			}
		
			if (document.Formulaire["rue_employeur2"].value == "")
			{
				alert("La rue de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la rue de l'organisme)");
				return false;
			}
		
			if (document.Formulaire["numero_employeur2"].value == "")
			{
				alert("Le numéro de l'adresse de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le numéro de l'adresse de l'organisme)");
				return false;
			}

			if (document.Formulaire["cp_employeur2"].value == "")
			{
				alert("Le code postal de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le code postal de l'organisme)");
				return false;
			}
	
			if (document.Formulaire["localite_employeur2"].value == "" ||document.Formulaire["localite_employeur2"].value == "null")
			{
				alert("La localité de l'employeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, la localité de l'organisme)");
				return false;
			}

			if (document.Formulaire["revenu2"].value == "" || document.Formulaire["revenu2"].value == "0")
			{
				alert("Le salaire du co-demandeur est obligatoire (pour les chômeurs, les invalides, la mutuelle, les prépensionnés ou les retraités, le salaire reçu par l'organisme)");
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["revenu2"].value))
				{
					alert("Le salaire du co-demandeur doit être uniquement composé de chiffres");
					return false;
				}
			}
			
		}
		else
		{
			document.Formulaire["employeur2"].value = "";
			document.Formulaire["_client_employeur*str*secteur_activite"].value = "998";
			document.Formulaire["_client_employeur*str*type_travail"].value = "998";
			document.Formulaire["employ_date2"].value = "";
			document.Formulaire["rue_employeur2"].value = "";
			document.Formulaire["numero_employeur2"].value = "";
			document.Formulaire["cp_employeur2"].value = "";
			document.Formulaire["localite_employeur2"].value = "";
			document.Formulaire["revenu2"].value = 0;
		}
		
		if(document.Formulaire["autre_revenu1c"].value == "none")
		{
			// Tester si un revenu est renseigné et obliger à donner le type
			if (document.Formulaire["autre_montant1c"].value != "") {
				alert('Vous avez spécifié un autre revenu 1 sans indiquer son type');
				return false;
			}  	
		}
		else
		{
			if (document.Formulaire["autre_montant1c"].value == "" || document.Formulaire["autre_montant1c"].value == "0")    
			{
				alert('Vous avez spécifié un autre revenu 1 sans indiquer le montant');
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["autre_montant1c"].value))
				{
					alert("Autre revenu 1 du co-demandeur doit être uniquement composé de chiffres");
					return false;
				}
			}
		}

		if(document.Formulaire["autre_revenu2c"].value == "none")
		{
			// Tester si un revenu est renseigné et obliger à donner le type
			if (document.Formulaire["autre_montant2c"].value != "") {
				alert('Vous avez spécifié un autre revenu 2 sans indiquer son type');
				return false;
			}  	
		}
		else
		{
			if (document.Formulaire["autre_montant2c"].value == "" || document.Formulaire["autre_montant2c"].value == "0")    
			{
				alert('Vous avez spécifié un autre revenu 2 sans indiquer le montant');
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["autre_montant2c"].value))
				{
					alert("Autre revenu 2 du co-demandeur doit être uniquement composé de chiffres");
					return false;
				}
			}
		}

		if(document.Formulaire["autre_revenu3c"].value == "none")
		{
			// Tester si un revenu est renseigné et obliger à donner le type
			if (document.Formulaire["autre_montant3c"].value != "") {
				alert('Vous avez spécifié un autre revenu 3 sans indiquer son type');
				return false;
			}  	
		}
		else
		{
			if (document.Formulaire["autre_montant3c"].value == "" || document.Formulaire["autre_montant3c"].value == "0")    
			{
				alert('Vous avez spécifié un autre revenu 3 sans indiquer le montant');
				return false;
			}
			else
			{
				if (isNaN(document.Formulaire["autre_montant3c"].value))
				{
					alert("Autre revenu 3 du co-demandeur doit être uniquement composé de chiffres");
					return false;
				}
			}
		}

		 
		// vérification des données concernant l'indépendant..
		if (document.Formulaire["profession2"].value == "013")
		{
			// Verifier le numéro de tva
			if (document.Formulaire["tva2"].value=="")
			{
				alert('Si le co-demandeur est indépendant, le numéro d\'entreprise est obligatoire');
				return false;
			}
			
			if(document.Formulaire["ben_net2"].value == "" || document.Formulaire["ben_net2"].value == "0")
			{
				alert('Si le co-demandeur est indépendant, le bénéfice net est obligatoire');
				return false;	
			}
			else
			{
				if (isNaN(document.Formulaire["ben_net2"].value))
				{
					alert("Le bénéfice net du co-demandeur doit être uniquement composé de chiffres");
					return false;
				}	
			}
			document.Formulaire["secteur_activite2"].value = "998";
			document.Formulaire["type_contrat2"].value = "002";
			
		}
		
		if (isNaN(document.Formulaire["alloc_fam2"].value))
		{
			alert("Les allocations familiales du co-demandeur doivent doit uniquement composée de chiffres. Attention, si les allocations ont déjà été indiquées chez le premier demandeur, veuillez ne pas les indiquer une seconde fois");
			return false;
		}	
				
		if (document.Formulaire["alloc_fam2"].value != "")
		{
			if (!isNaN(document.Formulaire["alloc_fam2"].value))
			{
				if (Number(document.Formulaire["alloc_fam2"].value) > 0 )
				{
					if (document.Formulaire["nb_enfants2"].value == "")
					{
						alert('Nombre d\'enfant à charge obligatoire car vous avez mentionné des allocations familiales pour le co-demandeur. Attention, si le nombre d\'enfant à charge a déjà été indiqué chez le premier demandeur, veuillez ne pas l\'indiquer une seconde fois');
						return false;
					}
				}	
			}
			else
			{
				alert("Les allocations familiales du co-demandeur doivent être uniquement composées de chiffres");
				return false;
			}
		}

		if (document.Formulaire["adresse_depuis2"].value == "")
		{
			alert("La date à partir de laquelle le co-demandeur habite à l'adresse mentionnée est obligatoire");
			return false;
		}
				
		if (document.Formulaire["profession2"].value =="032" || document.Formulaire["profession2"].value =="998" || document.Formulaire["profession2"].value =="999") 
		{
			document.Formulaire["employ_date2"].value = "";
		}
	}
	else 
	{
		document.Formulaire["date_naissance2"].value = "";
		document.Formulaire["adresse_depuis2"].value = "";
		document.Formulaire["belge_depuis2"].value = "";
		document.Formulaire["employ_date2"].value = ""
		document.Formulaire["autre_montant1c"].value = "";
		document.Formulaire["autre_montant2c"].value = "";
		document.Formulaire["autre_montant3c"].value = "";
	}
	return true;
}

// enleve les caracteres speciaux des localites
function vide_caracteres (controle) 
{
	var buf,i,c,champs
	champs = controle.value;
	
	if (champs=="") return;
	buf = "";
	for (i=0;i<champs.length;i++) 
	{
		c=champs.charAt(i);
		if ((c>="A" && c<="Z") || (c>="a" && c<="z")) 
		{
			buf = buf + c;
		}
		else 
		{
			buf = buf + " ";
		}
	}
	controle.value = buf;

}

// mofifie le crédit en cours numéro 1 pour en faire un PH si proprietaire avec un loyer
function verifie_ph_proprietaire () 
{
	nn=Num('location2');
	if (document.Formulaire.elements[nn].value!="")
	{
		nn=Num('location2');
		if (document.Formulaire.elements[nn].value=="N")
		{
			document.Formulaire.type_credit1.value="PH";
			document.Formulaire.mensualite1.value=document.Formulaire.loyer1.value;
			alert ("Veuillez encoder les données du prêt hypothécaire\nen fin de formulaire dans la partie Crédit en cours n°1 votre habitation est toujours en cours de paiement");
		}
	}
}

function CheckDate(d) {
      // Cette fonction vérifie le format JJ/MM/AAAA saisi et la validité de la date.
      // Le séparateur est défini dans la variable separateur
      var amin=1850; // année mini
      var amax=2500; // année maxi
      var separateur="/"; // separateur entre jour/mois/annee
      var j=(d.substring(0,2));
      var m=(d.substring(3,5));
      var a=(d.substring(6));
      var ok=1;
      if ( ((isNaN(j))||(j<1)||(j>31)) && (ok==1) ) {
         alert("Le jour n'est pas correct - De dag is niet correct"); ok=0;
      }
      if ( ((isNaN(m))||(m<1)||(m>12)) && (ok==1) ) {
         alert("Le mois n'est pas correct - De maand is niet correct"); ok=0;
      }
      if ( ((isNaN(a))||(a<amin)||(a>amax)) && (ok==1) ) {
         alert("L'année n'est pas correcte - Het jaartal is niet correct"); ok=0;
      }
      if ( ((d.substring(2,3)!=separateur)||(d.substring(5,6)!=separateur)) && (ok==1) ) {
         alert("Les séparateurs doivent être des " + separateur + " - Het scheidingsteken moet een " + separateur + " zijn"); ok=0;
      }
      if (ok==1) {
         var d2=new Date(a,m-1,j);
         j2=d2.getDate();
         m2=d2.getMonth()+1;
         a2=d2.getYear();
         if (a2<=100) {a2=1900+a2}
         if ( (j!=j2)||(m!=m2)||(a!=a2) ) {
            alert("La date "+d+" n'existe pas !");
            ok=0;
         }
		 ok=d2;
      }
      return ok;
   }

function TestChiffre(valeur,limite1,limite2,commentaire,client) {
 var nom;
 var val,lim1,lim2;
 val = Number(valeur);
 lim1 = Number(limite1);
 lim2 = Number(limite2);
 if (client==1) nom=" pour le débiteur"; else nom=" pour le co-débiteur";
 if (client==0) nom="";
 if (isNaN(val)) {
  alert (commentaire+" doit être un CHIFFRE"+nom);
  return false;
 }
 if (limite1>=0) {
  if (val<lim1) {
   alert (commentaire+" doit être plus grand(e) ou égal(e) à "+limite1+nom);
   return false;
  }
 }

 if (limite2>0) {
  if (val>lim2) {
   alert (commentaire+" doit être plus petit(e) où égal(e) à "+limite2+nom);
   return false;
  }
 }
 return true;
}
function verifie_bypart(all_parts) {
	////
	var if_codeb = document.Formulaire.titre2.value != "" ;
	//verifie support pub
	if (document.Formulaire.type_support.value == "") {
		document.Formulaire.type_support.focus();
		alert("Vous n'avez pas choisi le support publicitaire\n\nKies de publiciteit");
		return false;
	}
	if (!TestChiffre(document.Formulaire.montant.value, "2501", "1000000", "Le montant du prêt", 0)) {
		return false;
	}
	if (!if_codeb) {
		document.Formulaire.date_naissance2.value = "";
		document.Formulaire.adresse_depuis2.value = "";
		document.Formulaire.belge_depuis2.value = "";
		document.Formulaire.employ_date2.value = "";
		document.Formulaire.nationalite2.value = "";
		document.Formulaire.etat_civil2.value = "";
		document.Formulaire.location2.value = "";
		document.Formulaire.pays2.value = "";
		document.Formulaire.profession2.value = "";
		//document.Formulaire.secteur_activite2.value=""
		document.Formulaire.type_contrat2.value = "";
		document.Formulaire.pays_employeur2.value = "";
		//document.Formulaire.lieu_rc2.value = "";
		document.Formulaire.titre2.value = "";
		document.Formulaire.autre_montant1c.value = "";
		//document.Formulaire.autre_montant2c.value=""
		//document.Formulaire.autre_montant3c.value=""
	}
	////fin GENERAL 
	if (cur_form_part == 0 || all_parts) {
		////
		if(document.Formulaire.nom1.value=="" || document.Formulaire.prenom1.value==""){
			alert("Le nom est obligatoire");
			return false;
		}
		if(if_codeb){
			if(document.Formulaire.nom2.value=="" || document.Formulaire.prenom2.value==""){
				alert("Le nom est obligatoire");
				return false;
			}
		}
		if (document.Formulaire.ci1.value != "") {
			if (document.Formulaire.nationalite1.value == "BEL") {
				//if (TestCi(document.Formulaire.ci1.value,"La carte d'identité du débiteur",12)==false) return false;
			}
		}
		if (document.Formulaire.ci2.value != "") {
			if (document.Formulaire.nationalite2.value == "BEL") {
				//if (TestCi(document.Formulaire.ci2.value,"La carte d'identité du codébiteur",12)==false) return false;
			}
		}
		// verifier le registre nat 
		if (document.Formulaire["rn1"].value == "") {
			alert("Le numéro de registre national du demandeur est obligatoire");
			return false;
		} else {
			if (!TestNational(document.Formulaire["rn1"], 11)) {
				return false;
			}
		}
		// verifier les validitées des adresses e-mail
		if (document.Formulaire.email1.value != "") {
			if (TestEmail(document.Formulaire.email1.value, "débiteur") != true) {
				return false;
			}
		}
		if (!Corrige_date(document.Formulaire.date_naissance1.value, "JJ/MM/AAAA", "la date de naissance de l\'emprunteur")) {
			return false;
		}
		//if (!Corrige_date(document.Formulaire.adresse_depuis1.value,"JJ/MM/AAAA","la date à l\'adresse de l\'emprunteur")) return false; 
		// verifier date RESIDENCE uniquement si nationalite differente de l'adresse
		if (document.Formulaire.nationalite1.value != document.Formulaire.pays1.value) {
			if (!Corrige_date(document.Formulaire.belge_depuis1.value, "JJ/MM/AAAA", "la date de résidence de l\'emprunteur")) {
				return false;
			}
		} else {
			document.Formulaire.belge_depuis1.value = "";
		}
		if (document.Formulaire["rue1"].value == "") {
			alert("Veuillez indiquer votre rue");
			return false;
		}
		if (document.Formulaire["numero1"].value == "") {
			alert("Veuillez indiquer le numéro de votre maison");
			return false;
		}
		if (String(Number(document.Formulaire.cp1.value)).length == 4 && !isNaN(Number(document.Formulaire.cp1.value))) {
		} else {
			alert("Le code postal de l'adresse actuelle est invalide");
			return false;
		}
		if (document.Formulaire["localite1"].value == "") {
			alert("Veuillez indiquer votre localité (village/ville)");
			return false;
		}
		if (document.Formulaire["adresse_depuis1"].value == "") {
			alert("Veuillez indiquer depuis quand vous vivez à cette adresse");
			return false;
		}
		// verifie le code postale de l'adresse (cp1) 
		if (document.Formulaire["loyer1"].value == "") {
			alert("Veuillez indiquer le montant du loyer que vous payez actuellement");
			return false;
		}
		if (!TestChiffre(document.Formulaire.loyer1.value, "-1", "-1", "Le loyer", 1)) {
			return false;
		}
		if(if_codeb){
		// tester adresse e-mail 
		if (document.Formulaire.email2.value != "") {
			if (TestEmail(document.Formulaire.email2.value, "codébiteur") != true) {
				return false;
			}
		}
		if (!TestChiffre(document.Formulaire.loyer2.value, "-1", "-1", "Le loyer", 2)) {
			return false;
		}
		if (!Corrige_date(document.Formulaire.date_naissance2.value, "JJ/MM/AAAA", "la date de naissance du co-emprunteur")) {
			return false;
		}
		/*if (!Corrige_date(document.Formulaire.adresse_depuis2.value, "JJ/MM/AAAA", "la date à l\'adresse du co-emprunteur")) {
			return false;
		}*/
		if (document.Formulaire.nationalite2.value != document.Formulaire.pays2.value) {
			if (!Corrige_date(document.Formulaire.belge_depuis2.value, "JJ/MM/AAAA", "la date de résidence du co-emprunteur")) {
				return false;
			}
		} else {
			document.Formulaire.belge_depuis2.value = "";
		}
		}
		////fin part0
	}
	//// 
	if (cur_form_part == 1 || all_parts) {
		////
		if (document.Formulaire["employeur1"].value == "") {
			alert("Veuillez indiquer le nom de votre employeur, le nom de votre caisse de chômage, le nom de votre mutuelle, le nom de votre caisse de pension, ... (indiquez précisément le nom de l'organisme qui vous rémunère)");
			return false;
		}
		if (document.Formulaire["rue_employeur1"].value == "") {
			alert("Veuillez indiquer l'adresse de votre employeur");
			return false;
		}
		if (document.Formulaire["numero_employeur1"].value == "") {
			alert("Veuillez indiquer le numéro de la rue de votre employeur");
			return false;
		}
		if (document.Formulaire["cp_employeur1"].value == "") {
			alert("Veuillez indiquer le code postal de la localité de votre employeur");
			return false;
		}
		if (document.Formulaire["localite_employeur1"].value == "") {
			alert("Veuillez indiquer la localité de votre employeur");
			return false;
		}
		if (!Corrige_date(document.Formulaire.employ_date1.value, "JJ/MM/AAAA", "la date d\'engagement de l\'emprunteur")) {
			return false;
		}
		if (document.Formulaire["revenu1"].value == "") {
			alert("Veuillez indiquer le salaire que vous percevez (ceci est valable pour les salariés, les chômeurs, les bénéficiaires d'allocations d'invalidité, les retraités, ...)");
			return false;
		}
		// verifie le code postale de l'adresse (cp1) 
		if (String(Number(document.Formulaire.cp1.value)).length == 4 && !isNaN(Number(document.Formulaire.cp1.value))) {
		} else {
			alert("Le code postal de l'adresse actuelle est invalide");
			return false;
		}
		if (!TestChiffre(document.Formulaire.revenu1.value, "-1", "-1", "Le revenu", 1)) {
			return false;
		}
		if (if_codeb) {
			if (document.Formulaire.profession2.value != "032" && document.Formulaire.profession2.value != "998" && document.Formulaire.profession2.value != "999") {
				if (!Corrige_date(document.Formulaire.employ_date2.value, "JJ/MM/AAAA", "la date d\'engagement du co-emprunteur")) {
					return false;
				}
			} else {
				document.Formulaire.employ_date2.value = "";
				//document.Formulaire.secteur_activite2.value=""
				document.Formulaire.type_contrat2.value = "";
			}
			if (!TestChiffre(document.Formulaire.revenu2.value, "-1", "-1", "Le revenu", 2)) {
				return false;
			}
		}
		////fin part1
	}
	//// 
	if (cur_form_part == 2 || all_parts) {
		////
		// verifier la validité du numero de compte debiteur
		if (document.Formulaire.no_compte1.value=="") {
		    //if (TestCi(document.Formulaire.no_compte1.value,"Le numéro de compte du débiteur",12)==false) return false;
		    //if (!Corrige_date(document.Formulaire.compte_depuis1.value,"JJ/MM/AAAA","la date d\'ouverture du compte de  l\'emprunteur")) return false;
		    alert("le numero de compte du débiteur est obligatoire");
		    return false;
		}
		// Verifier le numéro de tva
		//if (document.Formulaire.tva1.value!="")
		//if (TestCi(document.Formulaire.tva1.value,"Le n° de TVA du débiteur",9)==false) return false;
		if (!TestChiffre(document.Formulaire.ben_net1.value, "-1", "-1", "Le bénéfice net", 1)) {
			return false;
		}
		if (!TestChiffre(document.Formulaire.autre_montant1d.value, "-1", "-1", "L'autre revenu 1", 1)) {
			return false;
		}
		//if (!TestChiffre(document.Formulaire.autre_montant2d.value,"-1","-1","L'autre revenu 2",1)) return false; 
		//if (!TestChiffre(document.Formulaire.autre_montant3d.value,"-1","-1","L'autre revenu 3",1)) return false;
		/*if (!TestChiffre(document.Formulaire.montant_acompte.value, "-1", "-1", "Le montant d'acompte", 0)) {
			return false;
		}*/
		if (!TestChiffre(document.Formulaire.alloc_fam1.value, "-1", "-1", "L'allocation familialle", 1)) {
			return false;
		}
		if (!TestChiffre(document.Formulaire.revenu_sup1.value, "-1", "-1", "Le revenu supplémentaire", 1)) {
			return false;
		}
		// verifie les codebiteur uniquement si son nom est rempli SINON vide les champs 
		if (if_codeb) {
			if (!TestChiffre(document.Formulaire.ben_net2.value, "-1", "-1", "Le bénéfice net", 2)) {
				return false;
			}
			if (!TestChiffre(document.Formulaire.autre_montant1c.value, "-1", "-1", "L'autre revenu 1", 2)) {
				return false;
			}
			//if (!TestChiffre(document.Formulaire.autre_montant2c.value,"-1","-1","L'autre revenu 2",2)) return false; 
			//if (!TestChiffre(document.Formulaire.autre_montant3c.value,"-1","-1","L'autre revenu 3",2)) return false;
			// verifier la validité du numero de compte COdebiteur
			/*if (document.Formulaire.no_compte2.value!="") {
			    if (TestCi(document.Formulaire.no_compte2.value,"Le numéro de compte du codébiteur",12)==false) return false;
			    if (!Corrige_date(document.Formulaire.compte_depuis2.value,"JJ/MM/AAAA","la date d\'ouverture du compte du codebiteur")) return false;
			  }*/
		}
		// Verifier le numéro de tva 
		//if (document.Formulaire.tva2.value!="")
		//if (TestCi(document.Formulaire.tva2.value,"Le n° de TVA du codébiteur",9)==false) return false;
		if (!TestChiffre(document.Formulaire.alloc_fam2.value, "-1", "-1", "L'allocation familialle", 2)) {
			return false;
		}
		if (!TestChiffre(document.Formulaire.revenu_sup2.value, "-1", "-1", "Le revenu supplémentaire", 2)) {
			return false;
		}
		////fin part2 
	}
	// verifier les dates d'echeances des prets en cours seulement si l'organisme est remplis 
	/*  if (document.Formulaire.organisme1.value!="" || document.Formulaire.mensualite1.value!="") {
	   if (!Corrige_date(document.Formulaire.echeance1.value,"JJ/MM/AAAA","la date du prêt n° 1")) return false;
	   if (!TestChiffre(document.Formulaire.montant1.value,"992","250000","Le montant du prêt n° 1",0)) return false;
	   if (!TestChiffre(document.Formulaire.duree1.value,"12","360","La durée du prêt n° 1",0)) return false;
	   if (!TestChiffre(document.Formulaire.mensualite1.value,"12","744","La mensualité du prêt n° 1",0)) return false;
	  } else {
	   document.Formulaire.echeance1.value="";
	   document.Formulaire.type_credit1.value="";
	  }
	
	  if (document.Formulaire.organisme2.value!="") {
	   if (!Corrige_date(document.Formulaire.echeance2.value,"JJ/MM/AAAA","la date du prêt n° 2")) return false;
	   if (!TestChiffre(document.Formulaire.montant2.value,"992","250000","Le montant du prêt n° 2",0)) return false;
	   if (!TestChiffre(document.Formulaire.duree2.value,"12","360","La durée du prêt n° 2",0)) return false;
	   if (!TestChiffre(document.Formulaire.mensualite2.value,"12","744","La mensualité du prêt n° 2",0)) return false;
	  } else {
	   document.Formulaire.echeance2.value="";
	   document.Formulaire.type_credit2.value="";
	  }
	
	  */
	 for(i=0;i<10;i++){
	 	if(!document.Formulaire["organisme"+i]) continue;
	  if (document.Formulaire["organisme"+i].value!="") {
	   if (!Corrige_date(document.Formulaire["echeance"+i].value,"JJ/MM/AAAA","la date du prêt n° "+i)) return false;
	   if (!TestChiffre(document.Formulaire["montant"+i].value,"1","250000","Le montant du prêt n° "+i,0)) return false;
	   if (!TestChiffre(document.Formulaire["duree"+i].value,"12","999","La durée du prêt n° "+i,0)) return false;
	   if (!TestChiffre(document.Formulaire["mensualite"+i].value,"12","99999","La mensualité du prêt n° "+i,0)) return false;
	  } else {
	   document.Formulaire["echeance"+i].value="";
	   document.Formulaire["type_credit"+i].value="";
	  }
     }
	// vider les champs autre revenu vide
	if (document.Formulaire.autre_montant1d.value == "") {
		document.Formulaire.autre_revenu1d.value = "";
	}
	//if (document.Formulaire.autre_montant2d.value=="")    document.Formulaire.autre_revenu2d.value=""; 
	//if (document.Formulaire.autre_montant3d.value=="")    document.Formulaire.autre_revenu3d.value="";
	if (document.Formulaire.autre_montant1c.value == "") {
		document.Formulaire.autre_revenu1c.value = "";
	}
	//if (document.Formulaire.autre_montant2c.value=="")    document.Formulaire.autre_revenu2c.value=""; 
	//if (document.Formulaire.autre_montant3c.value=="")    document.Formulaire.autre_revenu3c.value="";
	// changer le destinataire par rapport au code postal  
	repartition_cp();
	//return true;
	var fi1,fi2,comm1;
	if(all_parts && (fi1=document.Formulaire["fichage1"]) && (fi2=document.Formulaire["fichage2"]) && (comm1=document.Formulaire["commentaire1"]) ) {
		comm1.value+=". fichage BNB debiteur: "+fi1.value;
		if(if_codeb){
			comm1.value+=". fichage BNB codebiteur: "+fi2.value;
		}
	}
	return true;
}

function aMajorite(dt,nom) 
{
	if (dt=="")
	{
		return true;
	}
	var d=CheckDate(dt)
	var m=new Date()
	var age=""; var age_a=0;var age_m=0;
	
	if (d.getTime()>m.getTime()) 
	{
		alert('La date de naissance est supérieure à la date du jour !');
		return false;
	}
	age_a = m.getFullYear()-d.getFullYear();
	m.setYear(d.getYear());
	if ((d.getTime()>m.getTime())&&(d.getMonth()-m.getMonth()!=0)) {age_a--;}
	if(age_a < 18 || age_a > 75)
	{
		alert('Vous devez avoir entre 18 et 75 ans - U moet tussen 18 en 75 jaar zijn');
		nn=Num(nom);
		document.Formulaire.elements[nn].value =""; 
		return false;
	}
	else
	{
		return true;
	}
}



