function truncate(n) {
  return Math[n > 0 ? "floor" : "ceil"](n);
}


function calcAnnuel() {
    document.getElementById("annuel").value = 12*document.getElementById("mensuel").value.replace( ',' , '.' );
}


function calcRefFiscal() {
    document.getElementById("refFisal").value = (0.9*document.getElementById("annuel").value.replace( ',' , '.' ))/document.getElementById("QF").value.replace( ',' , '.' ) ;
}


function impotSansQF() {


var tranche1 = 0.055;
var limTranche1 = 5963;
var tranche2 = 0.14;
var limTranche2 = 11896;
var tranche3 = 0.3;
var limTranche3 = 26420;
var tranche4 = 0.41;
var limTranche4 = 70830;

var adulte = document.getElementById("adulte").value.replace( ',' , '.' );
var refFisal = 0.9*document.getElementById("annuel").value.replace( ',' , '.' )/adulte;

if( refFisal < limTranche1){

	document.getElementById("impSansQF").value = 0;

}else if(refFisal < limTranche2){

	document.getElementById("impSansQF").value = truncate(adulte*(refFisal-limTranche1)*tranche1);

}else if(refFisal < limTranche3){

	document.getElementById("impSansQF").value = truncate(adulte*((refFisal-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));

}else if(refFisal < limTranche4){

	document.getElementById("impSansQF").value =   truncate(adulte*((refFisal-limTranche3)*tranche3 + (limTranche3-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));

} else {

	document.getElementById("impSansQF").value =  truncate(adulte*((refFisal-limTranche4)*tranche4 + (limTranche4-limTranche3)*tranche3 + (limTranche3-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));
	
}
    
}


function impotAvecQF() {


var tranche1 = 0.055;
var limTranche1 = 5963;
var tranche2 = 0.14;
var limTranche2 = 11896;
var tranche3 = 0.3;
var limTranche3 = 26420;
var tranche4 = 0.41;
var limTranche4 = 70830;

var limTranche4 = 70830;


var qf = document.getElementById("QF").value.replace( ',' , '.' );
var adulte = document.getElementById("adulte").value.replace( ',' , '.' );
var refFisal = document.getElementById("refFisal").value.replace( ',' , '.' );

var plafond = 2336;

if( refFisal < limTranche1){

	document.getElementById("impAvecQF").value = 0;

}else if(refFisal < limTranche2){

	document.getElementById("impAvecQF").value = truncate(qf*(refFisal-limTranche1)*tranche1);

}else if(refFisal < limTranche3){

	document.getElementById("impAvecQF").value = truncate(qf*((refFisal-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));

}else if(refFisal < limTranche4){

	document.getElementById("impAvecQF").value =   truncate(qf*((refFisal-limTranche3)*tranche3 + (limTranche3-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));

} else {

	document.getElementById("impAvecQF").value =  truncate(qf*((refFisal-limTranche4)*tranche4 + (limTranche4-limTranche3)*tranche3 + (limTranche3-limTranche2)*tranche2 + (limTranche2-limTranche1)*tranche1));
	
}

var impAvecQF = document.getElementById("impAvecQF").value.replace( ',' , '.' );
var impSansQF = document.getElementById("impSansQF").value.replace( ',' , '.' );
var plafondTtal = plafond * (qf-adulte)*2;

if ((impSansQF-impAvecQF)> plafondTtal) {
	document.getElementById("impAvecQF").value =  impSansQF - plafondTtal;
}
    
}

function AvFiscalQF() {
var impSansQF = document.getElementById("impSansQF").value.replace( ',' , '.' );
var impAvecQF = document.getElementById("impAvecQF").value.replace( ',' , '.' );

if ((impSansQF-impAvecQF)> 0){
document.getElementById("AvFiscQF").value = impSansQF - impAvecQF;
}
}

function impotAvecReforme() {

var impSansQF = document.getElementById("impSansQF").value;
var enfants = document.getElementById("enfants").value;

if( enfants == 0){
	document.getElementById("impReforme").value = impSansQF;
}
if( enfants == 1){
	document.getElementById("impReforme").value = impSansQF-500;
}
if( enfants > 1) {
	document.getElementById("impReforme").value = impSansQF - ((enfants-1) * 1000);
}
    
}

function AvFiscalRef() {
var impSansQF = document.getElementById("impSansQF").value.replace( ',' , '.' );
var impReforme = document.getElementById("impReforme").value.replace( ',' , '.' );

if ((impSansQF-impReforme)> 0){
document.getElementById("AvFiscRef").value = impSansQF - impReforme;
}
}
