var run = false;

function tauxChange(i)
{
	calcCol(i);
}
function dureeChange(i) {
	var d=eval("getIndexValue('ducr"+i+"')");
	var t=eval("taux_interet_defaut["+d+"]");
	eval("setValue('tain"+i+"',floattostr(t))");
	calcCol(i);
}

function calcCoefPret(i,duree) {
	return Math.pow(1+i,duree);
}

function calcMens(mnt,dur,txi,txa) {
	mis=dur*12;
	txm=txi/1200;
	prw=calcCoefPret(txm,mis);
	result=mnt*(prw*txm/(prw-1)+txa/1200);
	return result;
}

function calculer() {
	calcCol(1);
	calcCol(2);
	calcCol(3);
	calcCol(4);
}

function calcCol(c) {
	var montant=strtoint(getValue('pret'));
	var tauxInteret=eval("strtofloat(getValue('tain"+c+"'))");
	var tauxAssurance=strtofloat(getValue('taas'));
	var debutMois, debutAnnee, couple, personne, duree;
	debutMois=getIndex('debutmois')+1;
	debutAnnee=parseInt(getIndexValue('debutannee'));
	couple=getIndex('couple');
	personne=getIndex('personne');
	handicape=getIndex('handicape');
	duree=parseInt(eval("getIndexValue('ducr"+c+"')"));
	var mensualite=calcMens(montant,duree,tauxInteret,tauxAssurance);
	var deductionMaxi;
	var assietteMaxi;
	if(run)
	{
		if ((debutAnnee==2007)&&(debutMois<05)) {
			deductionMaxi=0;
			setValue('plad1',0);
			setValue('plads',0);
			assietteMaxi=0;
		} else {
			deductionMaxi=(couple==0)?750:1500;
			if (handicape==1) deductionMaxi*=2;
			deductionMaxi+=personne*100;
			setValue('plad1',inttostr(deductionMaxi*2,0));
			setValue('plads',inttostr(deductionMaxi,0));
			assietteMaxi=(couple==0)?3750:7500;
			if (handicape==1) assietteMaxi*=2;
			assietteMaxi+=personne*500;
		}
		for(ii=0;ii<4;ii++)
		{
			var reste=montant;
			var t5=0;
			var t10=0;
			var v,sv;
			var interetAn=0;
			var assuranceAn=0;
			var deductionAn=0;
			var remboursAn=0;
			var capitalAn=0;
			var assiette1=0;
			var assiette2=0;
			
			var anneeCal=debutAnnee;
			var moisCal=debutMois;
			var moisNum=0;
			var ligne=1;
			var derniereLigne;
			if(ii==0) derniereLigne = 6;
			else derniereLigne = 10;
			
			while (ligne<=derniereLigne) 
			{
				var interet=reste*tauxInteret/1200;
				var assurance=montant*tauxAssurance/1200;
				principal=mensualite-interet-assurance;
				reste-=principal;
				interetAn+=interet;
				assuranceAn+=assurance;
				remboursAn+=mensualite;
				capitalAn+=principal;
			
				if ((moisNum<deduction_duree*12)&&(((anneeCal==2007)&&(moisCal>=5))||(anneeCal>=2008)))
				{
					if (moisNum<12) {
						assiette1+=interet;
						assiette1=Math.min(assiette1,assietteMaxi);
					} else {
						assiette2+=interet;
						assiette2=Math.min(assiette1+assiette2,assietteMaxi)-assiette1;
					}
				}
				
				if (moisCal%12==0) 
				{
					deductionAn=(assiette1*deduction_plafond1+assiette2*deduction_plafond2)/100;
					interetAn-=deductionAn;
					remboursAn-=deductionAn;
		
					v=(ii==0)?deductionAn:((ii==1)?interetAn:((ii==2)?capitalAn:reste));
					sv=(v==0)?"-":(inttostr(v,0));
					eval("setValue('res-"+ii+"-"+ligne+"-"+c+"','"+sv+"')");
					if(ligne<=5) t5+=v;
					t10+=v;
					
					interetAn=0;
					assuranceAn=0;
					deductionAn=0;
					remboursAn=0;
					capitalAn=0;
					assiette1=0;
					assiette2=0;
					
					ligne++;
					anneeCal++;
				}
				
				moisCal++;
				moisNum++;
			}
			if(ii!=3)
			{
				if (ii!=0)
				{
					sv=(t5==0)?"-":(inttostr(t5,0));
					eval("setValue('total5-"+ii+"-"+c+"','"+sv+"')");
				}
				sv=(t10==0)?"-":(inttostr(t10,0));
				eval("setValue('total-"+ii+"-"+c+"','"+sv+"')");
			}
		}
	}
}


