sfFocus = function() {
	var sfEls = document.getElementsByTagName("INPUT");
	for (var i=0; i < sfEls.length; i++) {
		sfEls[i].onfocus=function() {
			this.className+=" sffocus";
		}
		sfEls[i].onblur=function() {
			this.className=this.className.replace(new RegExp(" sffocus\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfFocus);

	function parse_calculator(object) {

		 var payment;

		 var amount = parse_int(object.amount.value);
		 var interest = parse_int(object.interest.value);
		 var term = parse_int(object.term.value) * 12;

		 var interval = 12;

		 if (interest <= 0.0) { payment = amount * 1.0/ term; }
		 else { payment = amount * (interest / 100.0 / interval) / (1.0 - Math.pow(1.0 + interest / 100.0 / interval, -term)); }

		 payment = Math.floor(payment * 100.0 + 0.5) / 100.0;

		 if (amount != '' && interest != '' && payment) { document.getElementById('payment').value = '$' + payment; }
		 else { document.getElementById('payment').value = '$0'; }

		 return payment;

	}

	function parse_int(subject) {

		 if (subject) { subject = subject.toString(); }

		 if (subject.match && subject.match(/[.0-9]+/)) { return new Number(subject.match(/[.0-9]+/)); }
		 else { return 0; }

	}