function checkNumberEntry(input, min, max, msg) 
{        
	var str = input.value;
	if (str == null || input.length == 0) 
	{
		msg = msg + " is blank.  You must fill in this field to calculate.";
		alert(msg);                
		return false;        
	}

	for (var i = 0; i <str.length; i++) 
	{            
		var curr_ch = str.substring(i, i + 1)
		if ((curr_ch < '0' || curr_ch > '9') && curr_ch != '.')
		{
			msg = msg + " should only contain digits.  You entered: " + input.value;
			alert(msg);                
			return false;            
		}        
	}        
	var num = input.value;        
	if ((min != -9999) && num < min) 
	{           
		msg = msg + " that's too low: " + input.value + ".  You should only enter values greater than " + min + ".";            
		alert("You have entered a " + msg); 
		return false;        
	}        
		
	if  ((max != -9999) && num > max) 
	{
		msg = msg + " that's high: " + input.value + ".  You should only enter values less than " + max + ".";           
		alert("You have entered a " + msg);           
		return false;        
	}        
	
	input.value = str; return true;
}
		
function myRound(val) 
	{        
		val = val * 100;       
		val = Math.round(val);        
		return val / 100;
	}
		
function computeField(input)
{
	if (input.value != null && input.value.length != 0)           
	input.value = "" + eval(input.value);        
	compute(input.form);
}
function compute(form)
{
	var Price = form.price.value;       
	var interest = form.Interest.value;
	var months = form.Months.value;       
	if (!checkNumberEntry(form.price, 0,-9999, "Price")) 
	{            
		form.payment.value = "Invalid";
		return;        
	}        
	if (!checkNumberEntry(form.down, 0, parseFloat(Price), "Down Payment")) 
	{           
		form.payment.value = "Invalid";            
		return;        
	}        
	if (!checkNumberEntry(form.Months, 1, -9999, "# of Months")) 
	{
		form.payment.value = "Invalid";            
		return;        
	}        
	if (!checkNumberEntry(form.Interest, 1, 99, "% Interest Rate")) 
	{
		form.payment.value = "Invalid";            
		return;       
	} 
	var down = form.down.value;
	computepayment(Price,interest,months,down,form.payment);
	computepayment(Price,interest,48,down,form.l48payment);
	computepayment(Price,interest,54,down,form.l54payment);	
	computepayment(Price,interest,60,down,form.l60payment);
}

function computepayment(Price,interest,months,down,paymentvariable)
{
	
	Price = Price - down;       
	interest = (interest / 100.0) / 12;
	var pow = 1;        
	for (var j = 0; j < months; j++) pow = pow * (1 + interest);        
	var pmt = (Price * pow * interest) / (pow - 1);
	paymentvariable.value = myRound(pmt);
	//	form.payment.value = myRound(pmt);
	
}
function clearform(form)
{
	/*var numelements = form.elements.length;
	for (var i = 0; i < numelements; i++)
	{
		form.elements[i].value = "";
	}*/
	
	form.reset();
	
}  