
function formatNumber(num)
{if(num<1000&&num>-1000)
{return num.toString();}
var numberString=Math.abs(num).toString();var insertPos=numberString.length%3;if(insertPos==0)insertPos=3;while(insertPos<numberString.length)
{numberString=numberString.substring(0,insertPos)+","+numberString.substring(insertPos);insertPos+=4;}
return(num<0?"-":"")+numberString;}
function ClearInput(form)
{form.price.value="";form.year.value="";form.rate.value="";form.deposit.value="";form.loan.value="";this.document.result.month1.value="";return true;}
function CheckForm(form)
{if(form.price.value==null||form.price.value.length==0)
{alert("Please enter the purchase price of your house");form.price.focus();return false;}
else if(form.year.value==null||form.year.value.length==0)
{alert("Please enter the length of your mortgage.");form.year.focus();return false;}
else if(form.rate.value<2||form.rate.value>20)
{alert("The interest rate should be between 2% and 20%.");form.rate.focus();return false;}
else if(form.loan.value<1)
{alert("The Loan Amount cannot be less than $1.00.");form.loan.focus();return false;}
else
{document.result.price.value=ChkValue(document.result.price.value)
document.result.deposit.value=ChkValue(document.result.deposit.value)
document.result.loan.value=ChkValue(document.result.loan.value)
document.result.year.value=ChkValue(document.result.year.value)
return true;}}
function MakeMoney(numb)
{return'$'+formatNumber(numb.value);}
function PVIFA(annual_rate,years,period)
{var monthly_rate=annual_rate/period;var factor=0;var base_rate=1+monthly_rate;var denominator=base_rate;for(var i=0;i<(years*period);i++)
{factor+=(1/denominator);denominator*=base_rate;}
return factor;}
function CalcLoan()
{document.result.loan.value=(ChkValue(document.result.price.value)-ChkValue(document.result.deposit.value));}
function ChkValue(CheckValue)
{var TheLength=CheckValue.length;var Nmbrs="0123456789";for(i2=0;i2<TheLength;i2++)
{if(CheckValue.charAt(i2)==".")
{NewValue=CheckValue.substring(0,i2);CheckValue=NewValue;i2=TheLength;}
else if(Nmbrs.indexOf(CheckValue.charAt(i2))==-1)
{var start=i2+1;NewValue=(CheckValue.substring(0,i2)+CheckValue.substring(start,TheLength));CheckValue=NewValue;i2=i2-1;}}
if(CheckValue=="")
{CheckValue=0;}
return parseFloat(CheckValue);}
function Calculate(form)
{if(CheckForm(form))
{form.loan.value=form.price.value-form.deposit.value;interest_rate=(form.rate.value/100);monthly_factor=PVIFA(interest_rate,form.year.value,12);var base_amount=form.loan.value;this.document.result.month1.value=Math.round(base_amount/monthly_factor);form.price.value=MakeMoney(form.price);form.deposit.value=MakeMoney(form.deposit);form.loan.value=MakeMoney(form.loan);this.document.result.month1.value=MakeMoney(this.document.result.month1);return true;}}
