function impressionPage(){
	window.open(document.location.href + '&action=impression');
	return false;
}

function gereAffichage(id){
	var div = document.getElementById('description_'+id);
	if(div.style.display == "block"){
		div.style.display = "none";
	}
	else{
		div.style.display = "block";
	}
}

function roundDec(fVal, iDec){
	var iFactor = Math.pow(10, iDec);
	return Math.round(fVal *iFactor) /iFactor;
}//end function


var aChampsActif = Array();
	aChampsActif['capital'] = false;
	aChampsActif['taux'] = false;
	aChampsActif['mensualites'] = false;
	aChampsActif['montantParMois'] = false;
	
var sChampDisabled = "";

//Variable pour le tableau d'amortissement
var iCapitalTableau = 0;
var iTauxTableau = 0;
var iNbreMensualitesTableau = 0;
var iMensualiteTableau = 0;

function changeStatut(sId){
	if(elem(sId).value.length > 0){
		aChampsActif[sId] = true;
	}//end if
	else{
		aChampsActif[sId] = false;
	}//end else
	switchChamp();
	elem('printTableau').style.display = "none";
}//end function

function switchChamp(){
	var iRempli = 0;
	var bDisabled = false;
	sChampDisabledTemp = "";
	
	for( i in aChampsActif){
	
		//Compte le nombre de champs saisie
		if(aChampsActif[i]){
			iRempli += 1;
		}//end if
		else{
			sChampDisabledTemp = i;
		}//end else
		
		//Test si un des champs est désactiver
		if(elem(i).disabled){
			bDisabled = true;
		}//end if
		
	}//end for
	
	if(iRempli  == 3){
		elem(sChampDisabledTemp).disabled = true;

	}//end if
	else if(bDisabled && sChampDisabled != ""){
		elem(sChampDisabled).disabled = false;
		elem(sChampDisabled).style.backgroundColor = "";
		elem('annees').value = "";
		elem('coutTotal').value = "";
		
		if(elem(sChampDisabled).value.length > 0){
			aChampsActif[sChampDisabled] = true;
			switchChamp();
		}//end if
	}//end if
	
	sChampDisabled = sChampDisabledTemp;
}//end fucntion


function calculSimulationPret(sCapital, sTaux, sNbMensualites, sMensualite){
	 
	var iCapital = parseInt(sCapital.replace(',','.'), 10);
	var fTaux = parseFloat(sTaux.replace(',','.'), 10);
	var iNbMensualites = parseInt(sNbMensualites.replace(',','.'), 10);
	var iMensualite = parseInt(sMensualite.replace(',','.'), 10);

	if(isNaN(iCapital) && isNaN(fTaux) && isNaN(iNbMensualites) && isNaN(iMensualite)){
		alert("Les valeurs ne sont pas correcte");
		return;
	}//end if
	
	if(isNaN(iCapital) && sChampDisabled != 'capital'){
		alert("La valeur du capital n'est pas correcte");
		elem('capital').focus();
		elem('capital').select();
		return;
	}//end if

	if(isNaN(fTaux) && sChampDisabled != 'taux'){
		alert("La valeur du taux n'est pas correcte");
		elem('taux').focus();
		elem('taux').select();
		return;
	}//end if

	if(isNaN(iNbMensualites) && sChampDisabled != 'mensualites'){
		alert("Le nombre de mensualités  n'est pas correcte");
		elem('mensualites').focus();
		elem('mensualites').select();
		return;
	}//end if
	
	if(isNaN(iMensualite) && sChampDisabled != 'montantParMois'){
		alert("Le montant des mensualités n'est pas correcte");
		elem('montantParMois').focus();
		elem('montantParMois').select();
		return;
	}//end if

	switch (sChampDisabled) {
		case 'capital' :
			var fTauxInteretAnnuel  = fTaux /100;
			var fTauxInteretMensuel = fTauxInteretAnnuel /12;
			
			iCapital = roundDec(((iMensualite * 100 ) * ( 1 -Math.pow((1 +fTauxInteretMensuel),( -1 *iNbMensualites)))) / (fTauxInteretMensuel * 100), 0);
		break;
		case 'taux' :
			fTaux = roundDec(calculTaux(iCapital,12,iNbMensualites,iMensualite,0,0),2); 
			
			var fTauxInteretAnnuel  = fTaux /100;
			var fTauxInteretMensuel = fTauxInteretAnnuel /12;
		break;
		case 'mensualites' :
			var fTauxInteretAnnuel  = fTaux /100;
			var fTauxInteretMensuel = fTauxInteretAnnuel /12;
	
			iNbMensualites = calculNbMensualite(iCapital, iMensualite, fTaux);
			
		case 'montantParMois' :
			var fTauxInteretAnnuel  = fTaux /100;
			var fTauxInteretMensuel = fTauxInteretAnnuel /12;
			iMensualite   = roundDec(((iCapital *fTauxInteretMensuel)/( 1 -Math.pow((1 +fTauxInteretMensuel),( -1 *iNbMensualites))) *100) /100, 2);
		break;
	
	}//end switch
	
	elem('capital').value = iCapital;
	elem('taux').value = fTaux;
	elem('mensualites').value = iNbMensualites;
	elem('montantParMois').value = iMensualite;
	
	elem('annees').value = roundDec(iNbMensualites / 12, 1);
	elem('coutTotal').value    = roundDec((iMensualite *iNbMensualites) - iCapital, 2);

	elem(sChampDisabled).style.backgroundColor = "red";
	
	iCapitalTableau = iCapital;
	iTauxTableau = fTaux;
	iNbreMensualitesTableau = iNbMensualites;
	iMensualiteTableau = iMensualite;
	
	elem('printTableau').style.display = "block";
}// end function


//Function trouver sur internet
function calculTaux(iCapital,iAnnee,iNbMensualites,iMensualite,Fv,Te) {
        iMensualite = roundDec(iMensualite,2);
		
        if(iCapital==0 || iAnnee==00 || iNbMensualites==0 || iMensualite==0){ 
			return 0;
		}//end if
		
        if((iMensualite*iNbMensualites) < iCapital) {
			alert("\nLes mensualites * nombre de mensualites\n ne sont pas egales ou supérieurzes \nau montant du credit !\n\nVerifiez vos données");
			return 0;
        }//end if
		
        var fTaux = 100 ; 
		var i = fTaux / 2 ; 
		var Echeance = 0 ; 
		var boucle = 0;
		
        while ( Echeance != iMensualite && boucle != 1000) { boucle += 1;
                Echeance = roundDec(-calculV(iCapital,fTaux/(100*iAnnee),iAnnee,iNbMensualites,-Fv,Te),2);
                fTaux = ( Echeance < iMensualite ) ? fTaux + i : fTaux - i ; i /= 2;
        } ;//end while
		
        if (boucle >= 1000) {
			alert("\nLa calcul prend trop de temps. Vérifier vos chiffres");
		}//end if
		
        return fTaux;
}//end fucntion 

function calculV(iCapital,fTaux,iAnnee,iNbMensualites,Fv,Mode) {
        var Temp,iValeur;
        Temp = Math.pow(1 + fTaux, iNbMensualites);
        iValeur = -fTaux * (iCapital * Temp + Fv) / ((Temp - 1) * (1 + fTaux * Mode));
        return iValeur;
}//end function

function resetTableau(){
	for( i in aChampsActif){
		elem(i).value = "";
		aChampsActif[i] = false;
		elem(i).disabled = false;
		elem(i).style.backgroundColor = "";
	}//end for
	
	elem('annees').value = "";
	elem('coutTotal').value = "";
	
	elem('printTableau').style.display = "none";
	
	iCapitalTableau = 0;
	iTauxTableau = 0;
	iNbreMensualitesTableau = 0;
	iMensualiteTableau = 0;
}//end function

function printTableauAmortissement(){
	document.location.href = "index.php?target=Public.printAmortissement&capital=" + iCapitalTableau + "&taux=" + iTauxTableau + "&nbMensua=" + iNbreMensualitesTableau +"&mensua=" + iMensualiteTableau;
}//end function

function calculNbMensualite(iCapital, iMensualite, fTaux){
	var iTotalMensualite = 0;
	var fTauxInteretAnnuel  = fTaux /100;
	var fTauxInteretMensuel = fTauxInteretAnnuel /12;
	//Minimum de mensualité
	iTotalMensualite = roundDec(iCapital / iMensualite, 0);
	
	var iMensualiteTemp = 10 + iMensualite; 
	var boucle = 0;

	while (iMensualiteTemp > iMensualite && boucle != 1900){
		boucle += 1;
		iTotalMensualite += 1;
		iMensualiteTemp = roundDec(((iCapital *fTauxInteretMensuel)/( 1 -Math.pow((1 +fTauxInteretMensuel),( -1 *iTotalMensualite))) *100) /100, 0);
	};
	
	return iTotalMensualite;
}//end function

function voirConnexion(){
	elem("connexion").style.display = "block";
}//end function

function cacherConnexion(){

/***
	if(elem('username')){
		var iLengthUser = elem('username').value.length;
		var iLengthPassword = elem('passwd').value.length;
		
		if(iLengthUser == 0 && iLengthPassword == 0){
			elem("connexion").style.display = "none";
			//elem("whiteConnexion").onmouseover = new Function("voirConnexion();");
		}//end if
		
	}//end if
***/
	
}//end function

function noneAction(){

}//end function