// Monthly Mortgage Calculator. 
//	 Paul Seltmann
//	 Last modified 10.16.2006 

function AddText(AddText, ElementId)
{
	var NewText=document.getElementById(ElementId).value;
	NewTextLC=NewText.toLowerCase();
	AddTextLC=AddText.toLowerCase();
//	var Out = document.getElementById("DebugOutput");
	re = new RegExp(AddText, "gi");
	re2 = new RegExp(", "+AddText, "gi");
	re3= new RegExp(",");
	re4= new RegExp(" ");
	
//	Out.innerHTML="Last: "+NewText.lastIndexOf(',')+", Length: "+NewText.length;

	if(NewText=="")
		document.getElementById(ElementId).value+=AddText;
	else if(NewText.lastIndexOf(",")==NewText.length-1)
	{
		document.getElementById(ElementId).value+=(" "+AddText);
	}
	else if(NewText.match(re2))
	{
		NewText=NewText.replace(re2,"");
		while(NewText.charAt(0)=="," || NewText.charAt(0)==" ")
		{
			if(NewText.charAt(0)==",") NewText=NewText.replace(re3,"");
			if(NewText.charAt(0)==" ") NewText=NewText.replace(re4,"");
		}
		document.getElementById(ElementId).value=NewText;
		
	}
	else if(NewText.match(re))
	{
		NewText=NewText.replace(re,"");
		while(NewText.charAt(0)=="," || NewText.charAt(0)==" ")
		{
			if(NewText.charAt(0)==",") NewText=NewText.replace(re3,"");
			if(NewText.charAt(0)==" ") NewText=NewText.replace(re4,"");
		}
		document.getElementById(ElementId).value=NewText;						
	}
	else
	{
		document.getElementById(ElementId).value+=(", "+AddText);
		
	}

}

function DropDownToggle(div_id)
{
	if(document.getElementById(div_id).style.display=='block')
	{
		document.getElementById(div_id).style.display='none';
	}
	else
	{
		document.getElementById(div_id).style.display='block';
	}
}
function autocalc()
{
calculate_standard(document.getElementById('loan_amount').value,document.getElementById('interest_rate').value,document.getElementById('loan_length').value,document.getElementById('tax').value,document.getElementById('insurance').value,document.getElementById('assessment').value,document.getElementById('misc').value);	
}

function calculate_standard(loan_amount, interest_rate, loan_length, tax, insurance, monthly_assessment, monthly_misc)
{
	var mpayment=0;
	tax = parseInt(tax);
	insureant = parseInt(insurance);
	monthly_assessment= parseInt(monthly_assessment);
	monthly_misc=parseInt(monthly_misc);
	
	
	if(!loan_amount)loan_amount=0;
	if(!interest_rate)interest_rate=1;
	if(!loan_length)loan_length=1;
	


	
	if(isNaN(tax))tax=0;
	if(isNaN(insurance))insureance=0;
	if(isNaN(monthly_assessment))monthly_assessment=0;
	if(isNaN(monthly_misc))monthly_misc=0;
	
	
	
	interest_rate=interest_rate/1200;
	mpayment=(loan_amount*( interest_rate*(Math.pow(1 + interest_rate,loan_length*12)) )/(Math.pow(1 + interest_rate,loan_length*12)-1))+ tax/12+insurance/12+monthly_assessment+monthly_misc;

	
	
	
	document.getElementById('result').innerHTML="$"+ Math.round(mpayment);
	
}

