/**************************************************************************/
/**************************************************************************/
function check_num(input)
{
// only allow 0-9 be entered, plus any values passed

var checkOK = "0123456789";
var checkStr = input.value;
var allValid = true;
var decPoints = 0;
var allNum = "";

	for (count = 0;  count < checkStr.length;  count++)
	{
		ch = checkStr.charAt(count);
		for (i = 0;  i < checkOK.length;  i++)
		{
			if (ch == checkOK.charAt(i))
				break;
			if (i == checkOK.length)
			{
				allValid = false;
				break;
			}
		}
		if (!allValid)
		{	
			alert("Please enter only numberic values.");
			return (false);
		}
		else
		return (true);
	}
}
/**************************************************************************/
/**************************************************************************/
function loan_term(years)
// get the number of monthly payments from the number of years
{
var num_payments;

	num_payments = years * 12;

 return num_payments;
}
/**************************************************************************/
/**************************************************************************/
function down_payment(input, type)
{
	var field = input.form; //get value from down payment field
	var price = field.purchase_price.value //get purchase price from form
	
	
	
	if(type = 1)
	// calculate % from $
		{
		if (check_num(field.dpayment_dol))
			{field.dpayment_per.value = field.dpayment_dol.value * 100 / price;
			field.loan_amount.value = price - field.dpayment_dol.value;} // calculate the loan amount based on the purchase price and down payment amount
		if (field.dpayment_per.value == "NaN") // check to make sure value is a number
			{alert("Please enter only numbers.");
			field.dpayment_per.value = "0";
			field.dpayment_dol.value = "0";
			field.loan_amount.value = "0";}
		}
	if(type = 2)
	// calculate $ from %
		{
		if(check_num(field.dpayment_per))		
			{field.dpayment_dol.value = (field.dpayment_per.value / 100) * price; 
			field.loan_amount.value = price - field.dpayment_dol.value;} // calculate the loan amount based on the purchase price and down payment amount
		if (field.dpayment_dol.value == "NaN")// check to make sure value is a number
			{alert("Please enter only numbers.");
			field.dpayment_per.value = "0";
			field.dpayment_dol.value = "0";
			field.loan_amount.value = "0";}
		}
		
		
}
/**************************************************************************/
/**************************************************************************/
function PMT(i, n, p) {
//return the calculate of the mortgage payment
 return i * p * Math.pow((1 + i), n) / (1 - Math.pow((1 + i), n));
}
/**************************************************************************/
/**************************************************************************/
function CalculatePMTFromForm(idLoanAmount, idAnnualInterestRate, idMonths, idResult) {
 var i = parseFloat($('#' + idAnnualInterestRate).val()) / 1200;
 var n = parseFloat($('#' + idMonths).val());
 var p = parseFloat($('#' + idLoanAmount).val());
 var pmt = PMT(i, n, -p);
 $('#' + idResult).val(pmt.toFixed(2));
}
/**************************************************************************/
/**************************************************************************/
function calc(input)
{

	var field = input.form;
	

 var principal = parseFloat(field.loan_amount.value);

 var num_payments = loan_term(field.loan_term.value);
  
 //Calculate INTEREST RATE
 var int_rate = parseFloat(field.interest_rate.value);
 var mo_interest_rate = (int_rate/1200);
 

 var pmt = PMT(mo_interest_rate, num_payments, -principal);

 //********************************************************************//
 //Calculate TAX
 var tax = parseFloat(field.property_tax.value);
 var mo_tax = tax / 12;
 //Calculate INSURANCE
 var insurance = parseFloat(field.hazard_insurance.value);
 var mo_insurance = insurance / 12;
 //Calculate FEES
 var fees = parseFloat(field.annual_fees.value);
 var mo_fees = fees / 12;
 //********************************************************************//
 
 loan_payments = pmt + mo_fees + mo_insurance + mo_tax;
 
 //output the total to the screen in currency format
 field.total.value = loan_payments.toFixed(2);
}
/**************************************************************************/
