// Pavé dynamique
	var survol_rachat_credit = false;
				
	function showLayer(layerName) {
  		document.getElementById(layerName).style.visibility = "visible";
	}

	// debut menu deroulant rachat credit
	function hide_rachat_credit() {
		if(!survol_rachat_credit) {
	 		document.getElementById('rachat_credit').style.visibility = "hidden";
		} else {
			document.getElementById('rachat_credit').style.visibility = "visible";
		}
	}
	
	function hide_rachat_credit2(){
		document.getElementById('rachat_credit').style.visibility = "hidden";
	}
	// fin menu deroulant rachat credit
	

		// debut menu deroulant exemples
	function hide_exemple_rachat_credit() {
		if(!survol_exemple_rachat_credit) {
	 		document.getElementById('exemple_rachat_credit').style.visibility = "hidden";
		} else {
			document.getElementById('exemple_rachat_credit').style.visibility = "visible";
		}
	}
	
	function hide_exemple_rachat_credit2(){
		document.getElementById('exemple_rachat_credit').style.visibility = "hidden";
	}
	// fin menu deroulant exemples
// JavaScript Document

function MM_openBrWindow(theURL,winName,features) {
  window.open(theURL,winName,features);
}

<!-- POPUP WCB //-->
function newwin(url){
window.open(url,"popuplinkeo",'width=400,height=370,top=5,left=5,toolbar=no,location=no, directories=no,status=no,scrollbars=no,resizable=1');
}

function signet_possible()
{
  if(!window.external)
    return false
  return true
}

function signet(reference, nom)
{
  if(!signet_possible())
  {
    alert("Cette fonction n'est pas prise en charge par votre navigateur!")
    return
  }
  window.external.AddFavorite(reference, nom)
}

	
	// Calcul de la mensualité d'un emprunt
	function calculerMens() {
		var montant = document.info_pret.montant.value.replace(",", ".") ;
		var interets = document.info_pret.interets.value.replace(",", ".") / 100 / 12 ;
		var nb_mois = document.info_pret.annees.value * 12 ;
		
		// Calcul actuariel du montant d'une mensualité
		var x = Math.pow(1 + interets, nb_mois) ;
		var mensualite = (montant*x*interets)/(x-1) ;
		
		// Verifie que le resultat est un nombre fini
		if(!isNaN(mensualite) && (mensualite != Number.POSITIVE_INFINITY) && (mensualite != Number.NEGATIVE_INFINITY)) {
			document.info_pret.mensualite.value = round(mensualite) ;			
		} else {
			// Les données entrée par l'utilisateur son probablement invalide
			// donc ne rien faire
			document.info_pret.mensualite.value = "" ;
		}
	}
	
	// Calcul de la capacité d'emprunt
	function calculerCap() {
		var revenu = document.info_cap.revenu.value.replace(",", ".") ;
		var charges = document.info_cap.charges.value.replace(",", ".") ;
		
		var capacite = (revenu - charges) * 0.34 ;
		
		// Verifie que le resultat est un nombre fini et que les 2 champs sont rempli
		if(!isNaN(capacite) && (capacite != Number.POSITIVE_INFINITY) && (capacite != Number.NEGATIVE_INFINITY) && revenu && charges) {
			document.info_cap.capacite.value = round(capacite) ;			
		} else {
			// Les données entrée par l'utilisateur son probablement invalide
			// donc ne rien faire
			document.info_cap.capacite.value = "" ;			
		}
	}
		
	// Calcul de la durée du pret
	function calculerDuree() {
		var montant = document.info_pret.montant.value.replace(",", ".") ;
		var interets = document.info_pret.interets.value.replace(",", ".") / 100 / 12 ;
		var nb_mois = document.info_pret.annees.value * 12 ;
		
		// Calcul actuariel du montant d'une mensualité
		var x = Math.pow(1 + interets, nb_mois) ;
		var mensualite = (montant*x*interets)/(x-1) ;
		
		// Verifie que le resultat est un nombre fini
		if(!isNaN(mensualite) && (mensualite != Number.POSITIVE_INFINITY) && (mensualite != Number.NEGATIVE_INFINITY)) {
			document.info_pret.mensualite.value = round(mensualite) ;			
		} else {
			// Les données entrée par l'utilisateur son probablement invalide
			// donc ne rien faire
			document.info_pret.mensualite.value = "" ;			
		}
	}
	
	// Calcul d'epargne
	function calculerEp() {
	
		var montant = document.info_ep.montant.value.replace(",", ".") ;
		var vers_libre = parseFloat(document.info_ep.vers_libre.value.replace(",", ".")) ;
		var interets = document.info_ep.interets.value.replace(",", ".") / 100 / 12 ;
		var annees = document.info_ep.annees.value ;
		
		var nb_mens = annees * 12 ;
		if(!vers_libre) vers_libre = 0 ;
		if(!interets) interets = 0 ;
		
		debug = "" ;
		temp = 0 ;
		valeur = 0 ;
		valeur = (montant * nb_mens) + vers_libre ;
		
		for (i=0; i<nb_mens; i++) {
			valeur *= (1+interets) ;
			temp = temp + valeur ;
			//debug += temp + "\n" ;
		}
		//alert(debug) ;
		
		// Verifie que le resultat est un nombre fini
		if(!isNaN(valeur) && (valeur != Number.POSITIVE_INFINITY) && (valeur != Number.NEGATIVE_INFINITY)) {
			if(montant && interets && annees) {
			document.info_ep.total.value = Math.round(valeur) ;
			}
		} else {
			// Les données entrée par l'utilisateur son probablement invalide
			// donc ne rien faire
			document.info_ep.total.value = "" ;
		}
	}
	
	// fonction arrondi
	function round(x) {
		return Math.round(x*100)/100 ;
	}
	
	// WCB
	
		    agent = navigator.userAgent.toLowerCase();
        app = navigator.appName.toLowerCase();

        function isNavigatorOk() {
            if (agent.indexOf("msie 5") != -1 && agent.indexOf("mac_powerpc") != -1) return false;
            if (agent.indexOf("firefox") != -1) return true;
            if (agent.indexOf("safari") != -1) return true;
            if (agent.indexOf("msie") != -1) return true;
            if (agent.indexOf("mozilla/5.0") != -1) return true;
            return false;
        }

<!-- BLOC POPUP DEFFENSIF //-->
var bloc=false;
function blocage()
{
bloc=true;
}

<!-- POPUP DEFFENSIF //-->
function WCBdef() {
if (!bloc) window.open("http://www.rachat-credit-france.com/WCB/popdef.htm","popuplinkeo",'width=400,height=370,top=5,left=5,toolbar=no,location=no,directories=no,status=no,scrollbars=no,resizable=1');
}

// JavaScript Document
ligne_ajoutee=0;

function ajoutligne(){
	var tabcredits = document.getElementById("credit");
	var lignecredit = tabcredits.getElementsByTagName("tr").length - 1;
	if(lignecredit < 12) {
	
		cellule1 = '<div align="right" style="margin-top:6px;margin-bottom:6px;"><input type="text" name="organisme[]" style="width:150px;"></div>';
		cellule2 = '<div align="center" style="margin-top:6px;margin-bottom:6px;"><input type="text" name="mens[]" style="width:70px;"></div>';
		cellule3 = '<input type="text" name="crd[]" style="width:90px;margin-top:6px;margin-bottom:6px;"> ';
		var l = tabcredits.insertRow(tabcredits.rows.length); 
		var c = l.insertCell(l.cells.length);
		
		c.innerHTML = cellule1; 
		c = l.insertCell(l.cells.length); 
		c.innerHTML = cellule2;
		c = l.insertCell(l.cells.length);
		c.innerHTML = cellule3;
		ligne_ajoutee++;
		lignecredit++;
		}
	}

function replace_carac(valeur){
	valeur=valeur.replace(",", ".") ;
	valeur=valeur.replace(" ", "") ;
	valeur=valeur.replace("<#","");
	valeur=valeur.replace("::","");
	valeur=valeur.replace("#>","");
	return valeur;
}

function affiche_co(valeur){
	if(valeur == "oui")
	{
			document.getElementById('coemprunteur').style.display = 'block';
			document.getElementById('titre_co').style.display = 'block'; 
			
	}
	else {
			document.getElementById('coemprunteur').style.display = 'none'; 
			document.getElementById('titre_co').style.display = 'none'; 
	}
}


function affiche_prop(valeur){
		
		if(valeur == "Propriétaire")
		{
				document.getElementById('proprio').style.display = 'block'; 
		}
		else {
				document.getElementById('proprio').style.display = 'none'; 
		}
		
	}


function validation2() {
	

				var erreur='';
				//if(!document.etape1.logement.value){erreur="Veuillez préciser si vous êtes locataire ou propriétaire.";}
				
				if(!document.etape1.cp.value){erreur="Veuillez indiquer votre code postal.";}
				else{
					if(document.etape1.cp.value.length!=5 || isNaN(document.etape1.cp.value))
						{erreur="Votre code postal semble invalide.\nVeuillez l'entrer sur 5 chiffres sans espaces.";}
				}
				if(!document.etape1.email.value){erreur="Veuillez indiquer votre adresse email.";}
				else{
					var email=document.etape1.email.value;
					var arobase=email.indexOf('@');
					var point=email.indexOf('.',arobase);
					var domaine=email.substr(point);
					if(arobase == -1 || point == -1 || domaine.length<3)
						{erreur="Votre adresse email semble invalide.";}
				}
				if(!document.etape1.tel.value){erreur="Veuillez indiquer votre numéro de téléphone.";}
				else{
					if(document.etape1.tel.value.length!=10 || isNaN(document.etape1.tel.value))
						{erreur="Votre numéro de téléphone semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				if(!document.etape1.prenom.value){erreur="Veuillez indiquer votre prénom.";}
				else { 
						if(!isNaN(document.etape1.prenom.value)){erreur="N'entrez pas de chiffres";}
					}
				if(!document.etape1.nom.value){erreur="Veuillez indiquer votre nom.";}
				else { 
						if(!isNaN(document.etape1.nom.value)){erreur="N'entrez pas de chiffres";}
					}
					
				if(erreur==''){return true;}
				else{
					alert(erreur);
					return false;
					} 			
}


function valid_etape2() {
	
				var erreur='';
				
				if(document.etape2.co_tel.value){
					if(document.etape2.co_tel.value.length!=10 || isNaN(document.etape2.co_tel.value))
						{erreur="Votre numéro de téléphone (coemprunteur) semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				if(document.etape2.co_tel2.value){
					if(document.etape2.co_tel2.value.length!=10 || isNaN(document.etape2.co_tel2.value))
						{erreur="Votre numéro de portable (coemprunteur) semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				
				if(document.etape2.co_autre_revenu.value){
		document.etape2.co_autre_revenu.value=replace_carac(document.etape2.co_autre_revenu.value);
		document.etape2.co_autre_revenu.value=parseFloat(document.etape2.co_autre_revenu.value);
		if (isNaN(document.etape2.co_autre_revenu.value)){
		document.etape2.co_autre_revenu.value='';
		erreur="Veuillez rentrer un nombre pour les autres revenus (coemprunteur)";}}
				
				if(document.etape2.co_pension_inval.value){
		document.etape2.co_pension_inval.value=replace_carac(document.etape2.co_pension_inval.value);
		document.etape2.co_pension_inval.value=parseFloat(document.etape2.co_pension_inval.value);
		if (isNaN(document.etape2.co_pension_inval.value)){
			document.etape2.co_pension_inval.value='';
	erreur="Veuillez rentrer un nombre pour la pension d'invalidité (coemprunteur)";}}
		
				if(document.etape2.co_allocations.value){
		document.etape2.co_allocations.value=replace_carac(document.etape2.co_allocations.value);
		document.etape2.co_allocations.value=parseFloat(document.etape2.co_allocations.value);
		if (isNaN(document.etape2.co_allocations.value)){
		document.etape2.co_allocations.value='';
		erreur="Veuillez rentrer un nombre pour les allocations (coemprunteur)";}}
				
				if(document.etape2.co_revenu_mens.value){
		document.etape2.co_revenu_mens.value=replace_carac(document.etape2.co_revenu_mens.value);
		document.etape2.co_revenu_mens.value=parseFloat(document.etape2.co_revenu_mens.value);
		if (isNaN(document.etape2.co_revenu_mens.value)){
		document.etape2.co_revenu_mens.value='';
		erreur="Veuillez rentrer un nombre pour le revenu net mensuel (coemprunteur)";}}		
				
				if(document.etape2.autre_revenu.value){
		document.etape2.autre_revenu.value=replace_carac(document.etape2.autre_revenu.value);
		document.etape2.autre_revenu.value=parseFloat(document.etape2.autre_revenu.value);
		if (isNaN(document.etape2.autre_revenu.value)){
		document.etape2.autre_revenu.value='';
		erreur="Veuillez rentrer un nombre pour les autres revenus";}}		
				
				if(document.etape2.pension_inval.value){
		document.etape2.pension_inval.value=replace_carac(document.etape2.pension_inval.value);
		document.etape2.pension_inval.value=parseFloat(document.etape2.pension_inval.value);
		if (isNaN(document.etape2.pension_inval.value)){
			document.etape2.pension_inval.value='';
	erreur="Veuillez rentrer un nombre pour la pension d'invalidité";}}		
				
				if(document.etape2.allocations.value){
			document.etape2.allocations.value=replace_carac(document.etape2.allocations.value);
		document.etape2.allocations.value=parseFloat(document.etape2.allocations.value);
		if (isNaN(document.etape2.allocations.value)){
		document.etape2.allocations.value='';
		erreur="Veuillez rentrer un nombre pour les allocations";}}		
				
					
				if(!document.etape2.revenu_mens.value){erreur="Veuillez indiquez votre revenu mensuel";}
					else { 
		document.etape2.revenu_mens.value=replace_carac(document.etape2.revenu_mens.value);
		document.etape2.revenu_mens.value=parseFloat(document.etape2.revenu_mens.value);
					if (isNaN(document.etape2.revenu_mens.value)){ 
					document.etape2.revenu_mens.value='';
					erreur="Veuillez rentrer un nombre pour le revenu mensuel"; }
					}
					
						
				
				if(!document.etape2.type_contrat.value){erreur="Veuillez indiquez votre type de contrat";}
				if(!document.etape2.anciennete.value){erreur="Veuillez indiquez votre ancienneté";}

				if(!document.etape2.profession.value){erreur="Veuillez indiquez votre profession";}
				
					
				if(!document.etape2.situation_fam.value){erreur="Veuillez indiquez votre situation familiale";}
				
				if(document.etape2.tel2.value){
					if(document.etape2.tel2.value.length!=10 || isNaN(document.etape2.tel2.value))
						{erreur="Votre numéro de portable semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				if(!document.etape2.tel.value){erreur="Veuillez indiquer votre numéro de téléphone.";}
				else{
					if(document.etape2.tel.value.length!=10 || isNaN(document.etape2.tel.value))
						{erreur="Votre numéro de téléphone semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
						
				if(!document.etape2.email.value){erreur="Veuillez indiquer votre adresse email.";}
				else{
					var email=document.etape2.email.value;
					var arobase=email.indexOf('@');
					var point=email.indexOf('.',arobase);
					var domaine=email.substr(point);
					if(arobase == -1 || point == -1 || domaine.length<3)
						{erreur="Votre adresse email semble invalide.";}
				}
				

				if(!document.etape2.ville.value){erreur="Veuillez indiquer votre ville.";}
			
				if(!document.etape2.cp.value){erreur="Veuillez indiquer votre code postal.";}
				else{
					if(document.etape2.cp.value.length!=5 || isNaN(document.etape2.cp.value))
						{erreur="Votre code postal semble invalide.\nVeuillez l'entrer sur 5 chiffres sans espaces.";}
				}
				
				if(!document.etape2.adresse.value){erreur="Veuillez indiquer votre adresse.";}
				if(!document.etape2.date_naiss.value){erreur="Veuillez indiquer votre date de naissance.";}
				
				//if(!document.etape2.nom_jf.value){erreur="Veuillez indiquer votre nom de jeune fille.";}
				if(!document.etape2.prenom.value){erreur="Veuillez indiquer votre prénom.";}
				if(!document.etape2.nom.value){erreur="Veuillez indiquer votre nom.";}
				
				if(erreur==''){
					return true;
					}
					else{
						alert(erreur);
						return false;
						}
}


function isDateValid(valeur) {
var chaineDate=valeur;


// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
	
    return false;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){

	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}

// fonction spéciale pour l'étape 2 du formulaire de solutioncredit.

function isDateValid2(valeur) {
var chaineDate=valeur;


// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
	
    return false;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	document.etape2.date_naiss.value="";
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){
	document.etape2.date_naiss.value="";
	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}


// version de verif date pour la date logement de l'étape 3 du formulaire

function isDateValid3(valeur) {
var chaineDate=valeur;


// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
	
    return true;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	document.etape3.date_logement.value="";
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){
	document.etape3.date_logement.value="";
	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}


active = true ;

function slash(valeur){
	
	if(active){
            if (isNaN(valeur.charAt(0)) ) {
                        document.etape2.date_naiss.value="";
            }
			
			if (valeur.length==2) {
				if(isNaN(valeur.charAt(1))){
					document.etape2.date_naiss.value=valeur.substr(0,1);
				} else {
					document.etape2.date_naiss.value=valeur + "/";
				}
			}
			
		if (valeur.length==4) {
				if(isNaN(valeur.charAt(3))){
					document.etape2.date_naiss.value=valeur.substr(0,3);
				}
		}
        if (valeur.length==5) {
				if(isNaN(valeur.charAt(4))){
					document.etape2.date_naiss.value=valeur.substr(0,4);
				} else {
				document.etape2.date_naiss.value=valeur + "/";
				}
		}   
		 if (valeur.length==9) {
				if(isNaN(valeur.charAt(8))){
					document.etape2.date_naiss.value=valeur.substr(0,8);
				}
		}
		 if (valeur.length==10) {
				if(isNaN(valeur.charAt(9))){
					document.etape2.date_naiss.value=valeur.substr(0,9);
				}
		}
	}
	
	if(valeur.length==8){
		active = false ;
	}
}

function aff(){
mess = "";
	for (compteur=0;compteur<40;compteur++){
			mess += compteur +" "+ document.etape3.elements[compteur].name +"\n" ;
	}
	alert(mess) ;
}

// JavaScript Document
ligne_ajoutee=0;

function ajoutligne(){

	var tabcredits = document.getElementById("credit");
	var lignecredit = tabcredits.getElementsByTagName("tr").length - 1;
	if(lignecredit < 12) {

		cellule1 = '<div align="right" style="margin-top:6px;margin-bottom:6px;"><input type="text" name="organisme[]" maxlength="30" style="width:150px;"></div>';
		cellule2 = '<div align="center" style="margin-top:6px;margin-bottom:6px;"><input type="text" name="mens[]" style="width:70px;"></div>';
		cellule3 = '<input type="text" name="crd[]" style="width:90px;margin-top:6px;margin-bottom:6px;"> ';
		var l = tabcredits.insertRow(tabcredits.rows.length);
		var c = l.insertCell(l.cells.length);
		
		c.innerHTML = cellule1;
		c = l.insertCell(l.cells.length);
		c.innerHTML = cellule2;
		c = l.insertCell(l.cells.length);
		c.innerHTML = cellule3;
		ligne_ajoutee++;
		lignecredit++;
	}

}

function replace_carac(valeur){
	valeur=valeur.replace(",", ".");
	valeur=valeur.replace(" ", "");
	valeur=valeur.replace("<#","");
	valeur=valeur.replace("::","");
	valeur=valeur.replace("#>","");
	return valeur;
}

/*
function replace_carac2(valeur){
	valeur=valeur.replace(".", ",");
	valeur=valeur.replace(";", ",");
	valeur=valeur.replace("/", ",");
	valeur=valeur.replace("-", ",");
	valeur=valeur.replace(":", ",");
	return valeur;
}
*/

function affiche_co(valeur){
	if(valeur == "oui")
	{
			document.getElementById('coemprunteur').style.display = 'block';
			document.getElementById('titre_co').style.display = 'block'; 
			
	}
	else {
			document.getElementById('coemprunteur').style.display = 'none'; 
			document.getElementById('titre_co').style.display = 'none'; 
	}
}


function affiche_prop(valeur){
		
		if(valeur == "Propriétaire")
		{
				document.getElementById('proprio').style.display = 'block'; 
		}
		else {
				document.getElementById('proprio').style.display = 'none'; 
		}
		
}


function validation2() {
				var erreur='';
				//if(!document.etape1.logement.value){erreur="Veuillez préciser si vous êtes locataire ou propriétaire.";}
				
				if(!document.etape1.civilite.value){erreur="Veuillez indiquer votre civilité.";}
								
				if(!document.etape1.cp.value){erreur="Veuillez indiquer votre code postal.";}
				else{
					if(document.etape1.cp.value.length!=5 || isNaN(document.etape1.cp.value))
						{erreur="Votre code postal semble invalide.\nVeuillez l'entrer sur 5 chiffres sans espaces.";}
				}
				if(!document.etape1.email.value){erreur="Veuillez indiquer votre adresse email.";}
				else{
					var email=document.etape1.email.value;
					var arobase=email.indexOf('@');
					var point=email.indexOf('.',arobase);
					var domaine=email.substr(point);
					if(arobase == -1 || point == -1 || domaine.length<3)
						{erreur="Votre adresse email semble invalide.";}
				}
				if(!document.etape1.tel.value){erreur="Veuillez indiquer votre numéro de téléphone.";}
				else{
					if(document.etape1.tel.value.length!=10 || isNaN(document.etape1.tel.value))
						{erreur="Votre numéro de téléphone semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				
				if(!document.etape1.nom.value){erreur="Veuillez indiquer votre nom.";}
				else { 
						if(!isNaN(document.etape1.nom.value)){erreur="N'entrez pas de chiffres";}
					}
					
				if(erreur==''){return true;}
				else{
					alert(erreur);
					return false;
					} 			
}


function valid_etape2() {
	
	var erreur='';

	if (document.etape2.elements[0].checked){

					if(!document.etape2.co_revenu_mens.value){erreur="Veuillez indiquez le revenu mensuel du coemprunteur";}
					else { 
		document.etape2.co_revenu_mens.value=replace_carac(document.etape2.co_revenu_mens.value);
		document.etape2.co_revenu_mens.value=parseFloat(document.etape2.co_revenu_mens.value);
					if (isNaN(document.etape2.co_revenu_mens.value)){ 
					document.etape2.co_revenu_mens.value='';
					erreur="Veuillez rentrer un nombre pour le revenu mensuel du coemprunteur"; }
					}

				if(!document.etape2.co_type_contrat.value){erreur="Veuillez indiquez le type de contrat du coemprunteur";}
				if(!document.etape2.co_anciennete.value){erreur="Veuillez indiquez l'ancienneté du coemprunteur";}

				if(!document.etape2.co_profession.value){erreur="Veuillez indiquez la profession du coemprunteur";}

				if(document.etape2.co_tel2.value){
					if(document.etape2.co_tel2.value.length!=10 || isNaN(document.etape2.co_tel2.value))
					{erreur="Le numéro de tel 2 du coemprunteur semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}

				if(!document.etape2.co_tel.value){erreur="Veuillez indiquer le numéro de téléphone du coemprunteur.";}
				else{
					if(document.etape2.co_tel.value.length!=10 || isNaN(document.etape2.co_tel.value))
					{erreur="Le numéro de téléphone du coemprunteur semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}

				if(!document.etape2.co_date_naiss.value){erreur="Veuillez indiquer la date de naissance du coemprunteur.";}

				if(!document.etape2.co_nom.value){erreur="Veuillez indiquer le nom du coemprunteur.";}	
					
				}
				
				if(document.etape2.co_tel.value){
					if(document.etape2.co_tel.value.length!=10 || isNaN(document.etape2.co_tel.value))
						{erreur="Votre numéro de téléphone (coemprunteur) semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				if(document.etape2.co_tel2.value){
					if(document.etape2.co_tel2.value.length!=10 || isNaN(document.etape2.co_tel2.value))
						{erreur="Votre numéro de portable (coemprunteur) semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				
				if(document.etape2.co_autre_revenu.value){
		document.etape2.co_autre_revenu.value=replace_carac(document.etape2.co_autre_revenu.value);
		document.etape2.co_autre_revenu.value=parseFloat(document.etape2.co_autre_revenu.value);
		if (isNaN(document.etape2.co_autre_revenu.value)){
		document.etape2.co_autre_revenu.value='';
		erreur="Veuillez rentrer un nombre pour les autres revenus (coemprunteur)";}}
				
				if(document.etape2.co_pension_inval.value){
		document.etape2.co_pension_inval.value=replace_carac(document.etape2.co_pension_inval.value);
		document.etape2.co_pension_inval.value=parseFloat(document.etape2.co_pension_inval.value);
		if (isNaN(document.etape2.co_pension_inval.value)){
			document.etape2.co_pension_inval.value='';
		erreur="Veuillez rentrer un nombre pour la pension d'invalidité (coemprunteur)";}}
		
		if(document.etape2.co_allocations.value){
		document.etape2.co_allocations.value=replace_carac(document.etape2.co_allocations.value);
		document.etape2.co_allocations.value=parseFloat(document.etape2.co_allocations.value);
		if (isNaN(document.etape2.co_allocations.value)){
		document.etape2.co_allocations.value='';
		erreur="Veuillez rentrer un nombre pour les allocations (coemprunteur)";}}
				
		if(document.etape2.co_revenu_mens.value){
		document.etape2.co_revenu_mens.value=replace_carac(document.etape2.co_revenu_mens.value);
		document.etape2.co_revenu_mens.value=parseFloat(document.etape2.co_revenu_mens.value);
			if (isNaN(document.etape2.co_revenu_mens.value)){
			document.etape2.co_revenu_mens.value='';
			erreur="Veuillez rentrer un nombre pour le revenu net mensuel (coemprunteur)";
			}
		}		
				
				if(document.etape2.autre_revenu.value){
		document.etape2.autre_revenu.value=replace_carac(document.etape2.autre_revenu.value);
		document.etape2.autre_revenu.value=parseFloat(document.etape2.autre_revenu.value);
		if (isNaN(document.etape2.autre_revenu.value)){
		document.etape2.autre_revenu.value='';
		erreur="Veuillez rentrer un nombre pour les autres revenus";}}		
				
				if(document.etape2.pension_inval.value){
		document.etape2.pension_inval.value=replace_carac(document.etape2.pension_inval.value);
		document.etape2.pension_inval.value=parseFloat(document.etape2.pension_inval.value);
		if (isNaN(document.etape2.pension_inval.value)){
			document.etape2.pension_inval.value='';
		erreur="Veuillez rentrer un nombre pour la pension d'invalidité";}}		
				
				if(document.etape2.allocations.value){
			document.etape2.allocations.value=replace_carac(document.etape2.allocations.value);
		document.etape2.allocations.value=parseFloat(document.etape2.allocations.value);
		if (isNaN(document.etape2.allocations.value)){
		document.etape2.allocations.value='';
		erreur="Veuillez rentrer un nombre pour les allocations";}}		
				
					
				if(!document.etape2.revenu_mens.value){erreur="Veuillez indiquez votre revenu mensuel";}
					else { 
		document.etape2.revenu_mens.value=replace_carac(document.etape2.revenu_mens.value);
		document.etape2.revenu_mens.value=parseFloat(document.etape2.revenu_mens.value);
					if (isNaN(document.etape2.revenu_mens.value)){ 
					document.etape2.revenu_mens.value='';
					erreur="Veuillez rentrer un nombre pour le revenu mensuel"; }
					}
					
				if(!document.etape2.type_contrat.value){erreur="Veuillez indiquez votre type de contrat";}
				if(!document.etape2.anciennete.value){erreur="Veuillez indiquez votre ancienneté";}

				if(!document.etape2.profession.value){erreur="Veuillez indiquez votre profession";}
					
				if(!document.etape2.situation_fam.value){erreur="Veuillez indiquez votre situation familiale";}
				
				if(document.etape2.tel2.value){
					if(document.etape2.tel2.value.length!=10 || isNaN(document.etape2.tel2.value))
					{erreur="Le numéro de tel 2 semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
				
				if(!document.etape2.tel.value){erreur="Veuillez indiquer votre numéro de téléphone.";}
				else{
					if(document.etape2.tel.value.length!=10 || isNaN(document.etape2.tel.value))
						{erreur="Votre numéro de téléphone semble invalide.\nVeuillez l'entrer sur 10 chiffres sans espaces.";}
				}
						
				if(!document.etape2.email.value){erreur="Veuillez indiquer votre adresse email.";}
				else{
					var email=document.etape2.email.value;
					var arobase=email.indexOf('@');
					var point=email.indexOf('.',arobase);
					var domaine=email.substr(point);
					if(arobase == -1 || point == -1 || domaine.length<3)
						{erreur="Votre adresse email semble invalide.";}
				}
				

				if(!document.etape2.ville.value){erreur="Veuillez indiquer votre ville.";}
			
				if(!document.etape2.cp.value){erreur="Veuillez indiquer votre code postal.";}
				else{
					if(document.etape2.cp.value.length!=5 || isNaN(document.etape2.cp.value))
						{erreur="Votre code postal semble invalide.\nVeuillez l'entrer sur 5 chiffres sans espaces.";}
				}
				
				if(!document.etape2.adresse.value){erreur="Veuillez indiquer votre adresse.";}
				if(!document.etape2.date_naiss.value){erreur="Veuillez indiquer votre date de naissance.";}

				if(!document.etape2.nom.value){erreur="Veuillez indiquer votre nom.";}
				
				if(erreur==''){
					blocage();
					return true;
					}
					else{
						alert(erreur);
						return false;
						}
}


function isDateValid(valeur) {
var chaineDate=valeur;


// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
	
    return false;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){

	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}

// fonction spéciale pour l'étape 2 du formulaire de solutioncredit.

function isDateValid2(valeur) {
var chaineDate=valeur;

	if ((valeur!='') && (valeur.length!=10)){
	alert(" Date non valide ! ");
	return false;					 
	}
// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
    return false;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	document.etape2.date_naiss.value="";
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){
	document.etape2.date_naiss.value="";
	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}


// version de verif date pour la date logement de l'étape 3 du formulaire

function isDateValid3(valeur) {
var chaineDate=valeur;
	if ((valeur!='') && (valeur.length!=10)){
	alert(" Date non valide ! ");
	return false;					 
	}

// Je regarde tout d'abord si la chaîne n'est pas vide, sinon pas la peine d'aller plus loin
   if (chaineDate == "") {
	
    return true;
   }
// J'utilise split pour créer un tableau dans lequel je récupère les jour mois année
// J'attends bien sûr une date formatée en JJ/MM/AAAA
   var ladate = (chaineDate).split("/");
// Si je n'ai pas récupéré trois éléments ou bien s'il ne s'agit pas d'entiers, pas la peine non plus d'aller plus loin
   if ((ladate.length != 3) || isNaN(parseInt(ladate[0])) || isNaN(parseInt(ladate[1])) || isNaN(parseInt(ladate[2]))){
	document.etape3.date_logement.value="";
	alert(" Date non valide ! ");
	return false;
	}
// Sinon, c'est maintenant que je crée la date correspondante. Attention, les mois sont étalonnés de 0 à 11
   var unedate = new Date(eval(ladate[2]),eval(ladate[1])-1,eval(ladate[0]))

// Bug de l'an 2000 oblige, lorsque je récupère l'année, je n'ai pas toujours 4 chiffres selon les navigateurs, je rectifie donc ici le tir.
   var annee = unedate.getYear();
   if ((Math.abs(annee)+"").length < 4){ annee = annee + 1900;}
   												
     if ((Math.abs(ladate[2])+"").length < 4){if (ladate[2]>10){ ladate[2] =  19 + ladate[2];}}
	 											
 //alert(" annee ="+annee+"  et ladate[2]= " + ladate[2] );
// Il ne reste plus qu'à vérifier si le jour, le mois et l'année obtenus sont les mêmes que ceux saisis par l'utilisateur.


   if (!((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))){
	document.etape3.date_logement.value="";
	alert(" Date non valide ! ");

return false;}

   return ((unedate.getDate() == eval(ladate[0])) && (unedate.getMonth() == eval(ladate[1])-1) && (annee == eval(ladate[2])))
}


active = true ;

function slash(valeur){
	
	if(active){
            if (isNaN(valeur.charAt(0)) ) {
                        document.etape2.date_naiss.value="";
            }
			
			if (valeur.length==2) {
				if(isNaN(valeur.charAt(1))){
					document.etape2.date_naiss.value=valeur.substr(0,1);
				} else {
					document.etape2.date_naiss.value=valeur + "/";
				}
			}
			
		if (valeur.length==4) {
				if(isNaN(valeur.charAt(3))){
					document.etape2.date_naiss.value=valeur.substr(0,3);
				}
		}
        if (valeur.length==5) {
				if(isNaN(valeur.charAt(4))){
					document.etape2.date_naiss.value=valeur.substr(0,4);
				} else {
				document.etape2.date_naiss.value=valeur + "/";
				}
		}   
		 if (valeur.length==9) {
				if(isNaN(valeur.charAt(8))){
					document.etape2.date_naiss.value=valeur.substr(0,8);
				}
		}
		 if (valeur.length==10) {
				if(isNaN(valeur.charAt(9))){
					document.etape2.date_naiss.value=valeur.substr(0,9);
				}
		}
	}
	
	if(valeur.length==8){
		active = false ;
	}
}

function slash_etape3(valeur){
	
	if(active){
            if (isNaN(valeur.charAt(0)) ) {
                        document.etape3.date_logement.value="";
            }
			
			if (valeur.length==2) {
				if(isNaN(valeur.charAt(1))){
					document.etape3.date_logement.value=valeur.substr(0,1);
				} else {
					document.etape3.date_logement.value=valeur + "/";
				}
			}
			
		if (valeur.length==4) {
				if(isNaN(valeur.charAt(3))){
					document.etape3.date_logement.value=valeur.substr(0,3);
				}
		}
        if (valeur.length==5) {
				if(isNaN(valeur.charAt(4))){
					document.etape3.date_logement.value=valeur.substr(0,4);
				} else {
				document.etape3.date_logement.value=valeur + "/";
				}
		}   
		 if (valeur.length==9) {
				if(isNaN(valeur.charAt(8))){
					document.etape3.date_logement.value=valeur.substr(0,8);
				}
		}
		 if (valeur.length==10) {
				if(isNaN(valeur.charAt(9))){
					document.etape3.date_logement.value=valeur.substr(0,9);
				}
		}
		/*
		if (valeur.length==6 || valeur.length==7 || valeur.length==8) {
		document.etape3.date_logement.value=valeur.substr(0,6) + "19";
		}
		*/
	}
	
	if(valeur.length==8){
		active = false ;
	}
}

function aff(){
mess = "";
	for (compteur=0;compteur<40;compteur++){
			mess += compteur +" "+ document.etape3.elements[compteur].name +"\n" ;
	}
	alert(mess) ;
}

function valid_etape3() {
	var erreur='';
		
	if(document.etape3.mens_immo1.value){
		document.etape3.mens_immo1.value=replace_carac(document.etape3.mens_immo1.value);
		document.etape3.mens_immo1.value=parseFloat(document.etape3.mens_immo1.value);
		if (isNaN(document.etape3.mens_immo1.value)){
		document.etape3.mens_immo1.value='';	
		erreur="Veuillez indiquer la mensualité immo 1 en chiffres";}}
	
	if(document.etape3.crd_immo1.value){
		document.etape3.crd_immo1.value=replace_carac(document.etape3.crd_immo1.value);
		document.etape3.crd_immo1.value=parseFloat(document.etape3.crd_immo1.value);
		if (isNaN(document.etape3.crd_immo1.value)){
		document.etape3.crd_immo1.value='';	
		erreur="Veuillez indiquer le capital restant immo 1 en chiffres";}}	
		
	if(document.etape3.mens_immo2.value){
		document.etape3.mens_immo2.value=replace_carac(document.etape3.mens_immo2.value);
		document.etape3.mens_immo2.value=parseFloat(document.etape3.mens_immo2.value);
		if (isNaN(document.etape3.mens_immo2.value)){
		document.etape3.mens_immo2.value='';	
		erreur="Veuillez indiquer la mensualité immo 2 en chiffres";}}
		
	if(document.etape3.crd_immo2.value){
		document.etape3.crd_immo2.value=replace_carac(document.etape3.crd_immo2.value);
		document.etape3.crd_immo2.value=parseFloat(document.etape3.crd_immo2.value);
		if (isNaN(document.etape3.crd_immo2.value)){
		document.etape3.crd_immo2.value='';	
		erreur="Veuillez indiquer le capital restant immo 2 en chiffres";}}	
		
	if(document.etape3.mens_ptz.value){
		document.etape3.mens_ptz.value=replace_carac(document.etape3.mens_ptz.value);
		document.etape3.mens_ptz.value=parseFloat(document.etape3.mens_ptz.value);
		if (isNaN(document.etape3.mens_ptz.value)){
		document.etape3.mens_ptz.value='';	
		erreur="Veuillez indiquer la mensualité immo prêt taux zéro en chiffres";}}
		
	if(document.etape3.crd_ptz.value){
		document.etape3.crd_ptz.value=replace_carac(document.etape3.crd_ptz.value);
		document.etape3.crd_ptz.value=parseFloat(document.etape3.crd_ptz.value);
		if (isNaN(document.etape3.crd_ptz.value)){
		document.etape3.crd_ptz.value='';	
		erreur="Veuillez indiquer le capital restant immo prêt taux zéro en chiffres";}}		
		
	if(!document.etape3.elements[16].value){
		erreur="Veuillez indiquer le capital restant crédit conso 1";
	}
	if(!document.etape3.elements[15].value){
		erreur="Veuillez indiquer la mensualité crédit conso 1";
	}
	if(!document.etape3.elements[14].value){
		erreur="Veuillez indiquer l'organisme de crédit conso 1";
	}
	
	if(document.etape3.elements[15].value){
		document.etape3.elements[15].value=replace_carac(document.etape3.elements[15].value);
		document.etape3.elements[15].value=parseFloat(document.etape3.elements[15].value);
		if (isNaN(document.etape3.elements[15].value)){
		document.etape3.elements[15].value='';	
		erreur="Veuillez indiquer la mensualité 1 en chiffres";}}		
	
	if(document.etape3.elements[16].value){
		document.etape3.elements[16].value=replace_carac(document.etape3.elements[16].value);
		document.etape3.elements[16].value=parseFloat(document.etape3.elements[16].value);
		if (isNaN(document.etape3.elements[16].value)){
		document.etape3.elements[16].value='';	
		erreur="Veuillez indiquer le capital restant 1 en chiffres";}}		
		
	if(document.etape3.elements[18].value){
		document.etape3.elements[18].value=replace_carac(document.etape3.elements[18].value);
		document.etape3.elements[18].value=parseFloat(document.etape3.elements[18].value);
		if (isNaN(document.etape3.elements[18].value)){
		document.etape3.elements[18].value='';	
		erreur="Veuillez indiquer la mensualité 2 (des autres crédits) en chiffres";}}		
	
	if(document.etape3.elements[19].value){
		document.etape3.elements[19].value=replace_carac(document.etape3.elements[19].value);
		document.etape3.elements[19].value=parseFloat(document.etape3.elements[19].value);
		if (isNaN(document.etape3.elements[19].value)){
		document.etape3.elements[19].value='';	
		erreur="Veuillez indiquer le capital restant 2 (des autres crédits) en chiffres";}}			
		
	if(document.etape3.elements[21].value){
		document.etape3.elements[21].value=replace_carac(document.etape3.elements[21].value);
		document.etape3.elements[21].value=parseFloat(document.etape3.elements[21].value);
		if (isNaN(document.etape3.elements[21].value)){
		document.etape3.elements[21].value='';	
		erreur="Veuillez indiquer la mensualité 3 (des autres crédits) en chiffres";}}		
	
	if(document.etape3.elements[22].value){
		document.etape3.elements[22].value=replace_carac(document.etape3.elements[22].value);
		document.etape3.elements[22].value=parseFloat(document.etape3.elements[22].value);
		if (isNaN(document.etape3.elements[22].value)){
		document.etape3.elements[22].value='';	
		erreur="Veuillez indiquer le capital restant 3 (des autres crédits) en chiffres";}}	
		
	if(document.etape3.elements[24].value){
		document.etape3.elements[24].value=replace_carac(document.etape3.elements[24].value);
		document.etape3.elements[24].value=parseFloat(document.etape3.elements[24].value);
		if (isNaN(document.etape3.elements[24].value)){
		document.etape3.elements[24].value='';	
		erreur="Veuillez indiquer la mensualité 4 (des autres crédits) en chiffres";}}		
	
	if(document.etape3.elements[25].value){
		document.etape3.elements[25].value=replace_carac(document.etape3.elements[25].value);
		document.etape3.elements[25].value=parseFloat(document.etape3.elements[25].value);
		if (isNaN(document.etape3.elements[25].value)){
		document.etape3.elements[25].value='';	
		erreur="Veuillez indiquer le capital restant 4 (des autres crédits) en chiffres";}}		
		
	if(document.etape3.elements[27].value){
		document.etape3.elements[27].value=replace_carac(document.etape3.elements[27].value);
		document.etape3.elements[27].value=parseFloat(document.etape3.elements[27].value);
		if (isNaN(document.etape3.elements[27].value)){
		document.etape3.elements[27].value='';	
		erreur="Veuillez indiquer la mensualité 5 (des autres crédits) en chiffres";}}		
	
	if(document.etape3.elements[28].value){
		document.etape3.elements[28].value=replace_carac(document.etape3.elements[28].value);
		document.etape3.elements[28].value=parseFloat(document.etape3.elements[28].value);
		if (isNaN(document.etape3.elements[28].value)){
		document.etape3.elements[28].value='';	
		erreur="Veuillez indiquer le capital restant 5 (des autres crédits) en chiffres";}}	
		
		
	if (ligne_ajoutee>0){
	if(document.etape3.elements[30].value){
		document.etape3.elements[30].value=replace_carac(document.etape3.elements[30].value);
		document.etape3.elements[30].value=parseFloat(document.etape3.elements[30].value);
		if (isNaN(document.etape3.elements[30].value)){
		document.etape3.elements[30].value='';	
		erreur="Veuillez indiquer la mensualité 6 (des autres crédits) en chiffres";}}			
	if(document.etape3.elements[31].value){
		document.etape3.elements[31].value=replace_carac(document.etape3.elements[31].value);
		document.etape3.elements[31].value=parseFloat(document.etape3.elements[31].value);
		if (isNaN(document.etape3.elements[31].value)){
		document.etape3.elements[31].value='';	
		erreur="Veuillez indiquer le capital restant 6 (des autres crédits) en chiffres";}}	
	}
	if (ligne_ajoutee>1){
	if(document.etape3.elements[33].value){
		document.etape3.elements[33].value=replace_carac(document.etape3.elements[33].value);
		document.etape3.elements[33].value=parseFloat(document.etape3.elements[33].value);
		if (isNaN(document.etape3.elements[33].value)){
		document.etape3.elements[33].value='';	
		erreur="Veuillez indiquer la mensualité 7 (des autres crédits) en chiffres";}}			
	if(document.etape3.elements[34].value){
		document.etape3.elements[34].value=replace_carac(document.etape3.elements[34].value);
		document.etape3.elements[34].value=parseFloat(document.etape3.elements[34].value);
		if (isNaN(document.etape3.elements[34].value)){
		document.etape3.elements[34].value='';	
		erreur="Veuillez indiquer le capital restant 7 (des autres crédits) en chiffres";}}	
	}
	if (ligne_ajoutee>2){
	if(document.etape3.elements[36].value){
		document.etape3.elements[36].value=replace_carac(document.etape3.elements[36].value);
		document.etape3.elements[36].value=parseFloat(document.etape3.elements[36].value);
		if (isNaN(document.etape3.elements[36].value)){
		document.etape3.elements[36].value='';	
		erreur="Veuillez indiquer la mensualité 8 (des autres crédits) en chiffres";}}			
	if(document.etape3.elements[37].value){
		document.etape3.elements[37].value=replace_carac(document.etape3.elements[37].value);
		document.etape3.elements[37].value=parseFloat(document.etape3.elements[37].value);
		if (isNaN(document.etape3.elements[37].value)){
		document.etape3.elements[37].value='';	
		erreur="Veuillez indiquer le capital restant 8 (des autres crédits) en chiffres";}}	
	}
	
	if (ligne_ajoutee>3){
	if(document.etape3.elements[39].value){
		document.etape3.elements[39].value=replace_carac(document.etape3.elements[39].value);
		document.etape3.elements[39].value=parseFloat(document.etape3.elements[39].value);
		if (isNaN(document.etape3.elements[39].value)){
		document.etape3.elements[39].value='';	
		erreur="Veuillez indiquer la mensualité 9 (des autres crédits) en chiffres";}}			
	if(document.etape3.elements[40].value){
		document.etape3.elements[40].value=replace_carac(document.etape3.elements[40].value);
		document.etape3.elements[40].value=parseFloat(document.etape3.elements[40].value);
		if (isNaN(document.etape3.elements[40].value)){
		document.etape3.elements[40].value='';	
		erreur="Veuillez indiquer le capital restant 9 (des autres crédits) en chiffres";}}	
	}
	
	if (ligne_ajoutee>4){
	if(document.etape3.elements[42].value){
		document.etape3.elements[42].value=replace_carac(document.etape3.elements[42].value);
		document.etape3.elements[42].value=parseFloat(document.etape3.elements[42].value);
		if (isNaN(document.etape3.elements[42].value)){
		document.etape3.elements[42].value='';	
		erreur="Veuillez indiquer la mensualité 10 (des autres crédits) en chiffres";}}			
	if(document.etape3.elements[43].value){
		document.etape3.elements[43].value=replace_carac(document.etape3.elements[43].value);
		document.etape3.elements[43].value=parseFloat(document.etape3.elements[43].value);
		if (isNaN(document.etape3.elements[43].value)){
		document.etape3.elements[43].value='';	
		erreur="Veuillez indiquer le capital restant 10 (des autres crédits) en chiffres";}}	
	}
	
	if(document.etape3.autres_charges.value){
		document.etape3.autres_charges.value=replace_carac(document.etape3.autres_charges.value);
		document.etape3.autres_charges.value=parseFloat(document.etape3.autres_charges.value);
		if (isNaN(document.etape3.autres_charges.value)){
		document.etape3.autres_charges.value='';	
		erreur="Veuillez indiquer les autres charges en chiffres";}}
	
	if(document.etape3.tresorerie.value){
		document.etape3.tresorerie.value=replace_carac(document.etape3.tresorerie.value);
		document.etape3.tresorerie.value=parseFloat(document.etape3.tresorerie.value);
		if (isNaN(document.etape3.tresorerie.value)){
		document.etape3.tresorerie.value='';	
		erreur="Veuillez indiquer la tresorerie en chiffres";}}
	
	if(document.etape3.loyer_hc.value){
		document.etape3.loyer_hc.value=replace_carac(document.etape3.loyer_hc.value);
		document.etape3.loyer_hc.value=parseFloat(document.etape3.loyer_hc.value);
		if (isNaN(document.etape3.loyer_hc.value)){
		document.etape3.loyer_hc.value='';	
		erreur="Veuillez indiquer le loyer en chiffres";}}
	if(document.etape3.charges.value){
		document.etape3.charges.value=replace_carac(document.etape3.charges.value);
		document.etape3.charges.value=parseFloat(document.etape3.charges.value);
		if (isNaN(document.etape3.charges.value)){
		document.etape3.charges.value='';	
		erreur="Veuillez indiquer les charges locatives en chiffres";}}
	if(document.etape3.valeur_immo.value){
		document.etape3.valeur_immo.value=replace_carac(document.etape3.valeur_immo.value);
		document.etape3.valeur_immo.value=parseFloat(document.etape3.valeur_immo.value);
		if (isNaN(document.etape3.valeur_immo.value)){
		document.etape3.valeur_immo.value='';	
		erreur="Veuillez indiquer la valeur de votre bien immobilier en chiffres";}}
		
	if(document.etape3.logement.value == "Propriétaire"){
		if(!document.etape3.crd_immo1.value){
			erreur="Veuillez indiquer le capital restant immo 1";
		}
		if(!document.etape3.mens_immo1.value){
			erreur="Veuillez indiquer la mensualité immo 1";
		}
		if(!document.etape3.org_immo1.value){
			erreur="Veuillez indiquer l'organisme de crédit immo 1";
		}
		if(!document.etape3.valeur_immo.value){
			erreur="Veuillez indiquer la valeur de votre bien immobilier";
		}
	}
	
	if(document.etape3.logement.value==""){
		erreur="Veuillez indiquer votre logement";
	}
	
	if(erreur==''){
		blocage();
		return true;
	}else{
		alert(erreur);
		return false;
	}
}


// SCRIPT MARC POUR BLOQUER CERTAINS CARACTERES DANS LES CHAMPS

      function GetKey(e)
      {
        if (window.event)
          return window.event.keyCode;
        else if (e)
          return e.which;
        else
          return null;
      }

		  function getSelectionStart(input)
			{
			  if (input.createTextRange)
				{
				selectedRange = document.selection.createRange().duplicate();
				selectedRange.moveEnd("character",input.value.length);
				pos=input.value.lastIndexOf(selectedRange.text);
				if (selectedRange.text=="") pos=input.value.length;
				return pos;
				}
				else return input.selectionStart;
			}
				
			function getSelectionEnd(input)
			{
			  if (input.createTextRange)
			  {
			  selectedRange = document.selection.createRange().duplicate();
			  selectedRange.moveStart("character",-input.value.length);
			  pos=selectedRange.text.length;
        return pos;
			  }
			  else return input.selectionEnd;
			}
			
      function FormatChar(obj,evt,motif,format,taille)
      {
		nom=obj.name;  
		alert(document.etape1.nom.value.length +" et la taille " + taille);
		if (document.etape1.nom.length>taille){ return false;}
        var key, keychar;
        var acc, noacc;
				var deb, fin;
        acc = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ";
        noacc = "aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn";
        key = GetKey(evt);
        if (key == null) return true;
        keychar = String.fromCharCode(key);
        if (acc.indexOf(keychar) != -1) keychar=noacc.charAt(acc.indexOf(keychar));
        switch (format)
        {
          case 1: keychar = keychar.toUpperCase(); break;
          case 2: keychar = keychar.toLowerCase(); break;
          default: break;
        } 
        if (motif.indexOf(keychar) != -1)
  			{
					deb = getSelectionStart(obj);
					fin = getSelectionEnd(obj);
  			  obj.value= obj.value.substring(0,deb)+keychar;
				  if (obj.createTextRange)
					{
            var selectedRange = obj.createTextRange();
            selectedRange.moveStart('character', obj.value.length);
            selectedRange.select();
          }
  	      return false;
        }
        if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 ) return true;
        return false;
      }


//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2007 Adobe Systems Incorporated.  All rights reserved.
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function ControlVersion()
{
	var version;
	var axo;
	var e;

	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry

	try {
		// version will be set for 7.X or greater players
		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
		version = axo.GetVariable("$version");
	} catch (e) {
	}

	if (!version)
	{
		try {
			// version will be set for 6.X players only
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
			
			// installed player is some revision of 6.0
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
			// so we have to be careful. 
			
			// default to the first public version
			version = "WIN 6,0,21,0";

			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
			axo.AllowScriptAccess = "always";

			// safe to call for 6.0r47 or greater
			version = axo.GetVariable("$version");

		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 4.X or 5.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = axo.GetVariable("$version");
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 3.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
			version = "WIN 3,0,18,0";
		} catch (e) {
		}
	}

	if (!version)
	{
		try {
			// version will be set for 2.X player
			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			version = "WIN 2,0,0,11";
		} catch (e) {
			version = -1;
		}
	}
	
	return version;
}

// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");			
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '';
  if (isIE && isWin && !isOpera)
  {
    str += '<object ';
    for (var i in objAttrs)
    {
      str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var i in params)
    {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }
    str += '</object>';
  }
  else
  {
    str += '<embed ';
    for (var i in embedAttrs)
    {
      str += i + '="' + embedAttrs[i] + '" ';
    }
    str += '> </embed>';
  }

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}


	