<!--------- monthly term -------

	var WGdc=".";  
	var WGgc=",";
	var WGnc="-";
	var WGcs="";
function WGformatMoney(A,W) 
{  
// Author   : Jonathan Weesner (http://cyberstation.net/~jweesner/)
// Copyright: Use freely. Keep Author and Copyright lines intact.
	var N=Math.abs(Math.round(A*100));
   var S=((N<10)?"00":((N<100)?"0":""))+N;

   S=WGcs+((A<0)?WGnc:"")+WGgroup(S.substring(0,(S.length-2)))+WGdc+
      S.substring((S.length-2),S.length)+((A<0&&WGnc=="(")?")":"");
   return (S.length>W)?"Over":S;
}

// WGgroup inspired by Bill Dortch's usenet post (www.hidaho.com)
function WGgroup(S) 
{
   return (S.length<4)?S:(WGgroup(S.substring(0,S.length-3))+
      WGgc+S.substring(S.length-3,S.length));
}

function roundOff(value, precision) {	// Precision = 2 decimal places
		if(parseInt(value) <= 0) {
			// Incorrect Value
			return 0;
			}
		
        value = "" + value //convert value to string
        precision = parseInt(precision);
        var whole = "" + Math.round(value * Math.pow(10, precision));
        var decPoint = whole.length - precision;        if(decPoint != 0)
        {                result = whole.substring(0, decPoint);
                result += ".";
                result += whole.substring(decPoint, whole.length);        }
        else        {                result = whole;        }
        return result;
}



function amtround(num)
{
	numrnd = 0;
	numrnd = num * 100;
	numrnd = Math.round(numrnd);
	temp1 = numrnd.toString(10);
	temp1n = temp1.length;
	numrnd = temp1.substring(0,temp1n-2) + "." + temp1.substring(temp1n-2,temp1n);	
	numrnd = parseFloat(numrnd);
}

function amtround2(num)
{
	numrnd2 = 0;
	numrnd2 = num * 100;
	numrnd2 = Math.round(numrnd2);
	temp1 = numrnd2.toString(10);
	temp1n = temp1.length;
	numrnd2 = temp1.substring(0,temp1n-2) + "." + temp1.substring(temp1n-2,temp1n);	
	numrnd2 = parseFloat(numrnd2);
}

function amtround3(num)
{
	numrnd3 = 0;
	numrnd3 = num * 100;
	numrnd3 = Math.round(numrnd3);
	temp1 = numrnd3.toString(10);
	temp1n = temp1.length;
	numrnd3 = temp1.substring(0,temp1n-2) + "." + temp1.substring(temp1n-2,temp1n);	
	numrnd3 = parseFloat(numrnd3);
}


	
	function calc2(form) {
	zz = form.zz.value*1;
	zz = zz+form.yy.value*1;
	zz = zz+form.xx.value*1;
	zz = zz+form.ww.value*1;
	zz = zz+form.ww2.value*1;
	zz = zz+form.vv.value*1;
	zz = zz+form.uu.value*1;
	zz = zz+form.tt.value*1;
	jj = zz;
	amtround(zz);
	zz = numrnd;
	
		
	form.debtrr.value = WGformatMoney(numrnd);
	
	ss = form.ss.value*1;
	ss = ss+(form.rr.value/12)*1;
	ss = ss+form.qq.value*1;
	ss = ss+form.pp.value*1;
	kk = ss;
	amtround(ss);
	ss = numrnd;
	
		
	form.incomerr.value = WGformatMoney(numrnd);
	
	kk = zz/ss*100;
	amtround2(kk);
	kk = numrnd2;
	
	form.ratiorr.value = WGformatMoney(numrnd2);
	
	}
	
	
	function calc(form) {
	T1 = form.T1.value*1;
	T1 = T1+form.T2.value*1;
	T1 = T1+form.T3.value*1;
	T1 = T1+form.T4.value*1;
	T1 = T1+form.T5.value*1;
	T1 = T1+form.T6.value*1;
	T1 = T1+form.T7.value*1;
	T1 = T1+form.T8.value*1;
	T1 = T1+form.T9.value*1;
	amtround(T1);
	T1 = roundOff(numrnd, 2);
	
	form.totbal.value = WGformatMoney(numrnd);
	
	
	TR1 = form.T1.value*(form.R1.value/100/12)*1;
	TR1 = TR1+form.T2.value*(form.R2.value/100/12)*1;
	TR1 = TR1+form.T3.value*(form.R3.value/100/12)*1;
	TR1 = TR1+form.T4.value*(form.R4.value/100/12)*1;
	TR1 = TR1+form.T5.value*(form.R5.value/100/12)*1;
	TR1 = TR1+form.T6.value*(form.R6.value/100/12)*1;
	TR1 = TR1+form.T7.value*(form.R7.value/100/12)*1;
	TR1 = TR1+form.T8.value*(form.R8.value/100/12)*1;
	TR1 = TR1+form.T9.value*(form.R9.value/100/12)*1;
	amtround2(TR1);
	TR1 = roundOff(numrnd2, 2);
	
	form.totrate.value = WGformatMoney(numrnd2);
	
	}
	
		
function calc4(form) {
	T12 = form.T12.value*1;
	T12 = T12+form.T22.value*1;
	T12 = T12+form.T32.value*1;
	T12 = T12+form.T42.value*1;
	T12 = T12+form.T52.value*1;
	T12 = T12+form.T62.value*1;
	T12 = T12+form.T72.value*1;
	T12 = T12+form.T82.value*1;
	T12 = T12+form.T92.value*1;
	amtround(T12);
	T12 = roundOff(numrnd, 2);
	
	form.totbal2.value = WGformatMoney(numrnd);
	form.debt1.value = numrnd;
	form.debt2.value = numrnd;
	form.debt3.value = numrnd;
	
	}

function calc5(form){
amt = eval (document.inputform.debt1.value);
yrs = eval (document.inputform.term1.value)*12;
rte = eval (document.inputform.rate1.value)/1200;
pmt=(rte+(rte/(Math.pow((1+rte),(yrs))-1)))*amt;
pmt = pmt*100;pmt=Math.round(pmt);pmt=pmt/100;
document.inputform.pay1.value=roundOff(pmt, 2);
}

function calc6(form){
rte = eval (document.inputform.rate2.value)/1200;
pmt = eval (document.inputform.pay2.value);
amt = eval (document.inputform.debt2.value);
yrs=(Math.log(1+(rte/(pmt/(amt)-rte)))/Math.log(1+rte))/12;
yrs=yrs*1000;
yrs=Math.round(yrs);
yrs=roundOff(yrs/1000, 2);
document.inputform.term2.value=yrs;
document.inputform.term2b.value=yrs*12;
}

function calc7(form){
recurcount=0
pmt = eval (document.inputform.pay3.value)
amt = eval (document.inputform.debt3.value)
yrs = eval (document.inputform.term3.value)*12
k=pmt/amt;
ans=0;
ct=0;
ct2=0;
stpL=.08333333333333;<!--stpL=STEP LIMIT-->
stp=.008333333333333;<!--stp=STEP INCREMENT-->
while(ct2<6)
{while (ct<stpL)
{n=(k-((ans+ct)+(ans+ct)/(Math.pow((1+ans+ct),yrs)-1)));
if(n<0) {ans = ans + (ct-stp); ct=stpL;ct2=ct2+1;stpL=(stpL/10);stp=(stp/10)}
ct=ct+stp
}

ct=0;
recurcount=recurcount+1;
if (recurcount>6) ct2=7;
}
ans=ans*1200;
ans=ans*1000;ans=Math.floor(ans);ans=ans/1000; 
document.inputform.rate3.value=ans;
}

