
/**
 *  Validates the form and dislays the results.
 *
 *  @return always returns false.  When used in an html anchor tag the page should not be reloaded.
 */
function checkForm()
{	
	var error = "<ul>";
	var success = true;

	var mortgageAmount = document.getElementById('mortgageAmount').value;
	var yearsLeft = document.getElementById('yearsLeft').value;
	var interestRate = document.getElementById('interestRate').value;
	
	if(!validateCurrency(mortgageAmount)) 
	{
		error += "<li>" + currencyError;
		setHighlightError('errMortgageAmount');
		success = false;
	}
	else
	{
		resetHighlightError('errMortgageAmount');
	}

	if(!validateNumber(yearsLeft)) 
	{
		error += "<li>" + numberError ;
		setHighlightError('errTerm');
		success = false;
	}
	else
	{
		resetHighlightError('errTerm');
	}

	if(!validatePercent(interestRate)) 
	{
		error += "<li>" + percentError;
		setHighlightError('errApr');
		success = false;
	}
	else
	{
		resetHighlightError('errApr');
	}
			
	if(!success)
	{
		error += "</ul>";
		document.getElementById ("errorMsg").style.display='inline';
		document.getElementById('errorMsg').innerHTML = error;
		return false;
	}
	else
	{
		document.getElementById ("errorMsg").style.display='none';
	}

	var calculator = new MortgageCalculator();
	var monthlyInterestOnly = Math.round(calculator.monthlyPaymentInterestOnly(parseFloat(mortgageAmount), parseFloat(interestRate)));
	var monthlyRepayment = Math.round(calculator.monthlyPaymentRepayment(parseFloat(mortgageAmount), parseFloat(interestRate), parseFloat(yearsLeft)));
	
	document.getElementById("monthlyPaymentInterestOnly").innerHTML = monthlyInterestOnly;
	document.getElementById("monthlyPaymentRepayment").innerHTML = monthlyRepayment;

	showResults();

	return false;
}

/**
 *  Take elements of the query string to populate the input form for this tool.
 */
function populateForm()
{
	var qs = new Querystring();
	var amountToBorrow = qs.get("howMuchCanIBorrowAmount");
	
	if(amountToBorrow != null && amountToBorrow != "") 
	{
		document.getElementById('mortgageAmount').value = amountToBorrow;
	}
}

/**
 *  Make the results section of the page visible.
 */
function showResults() 
{
    document.getElementById ("results").style.display='inline';
}
