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;
        }

        price = price - form.Down.value;
        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);	
        form.payment.value = myRound(pmt);
}
//function clearForm(form) {
//        form.payment.value = "";
//}
