function validateForm(suburb, poBox, tradingName,numberEmployees,jobTitle,phoneBusiness,streetAddress,cityAddress,irdNumber,companyName,title,firstName,surname,emailAddress,acknowledgement)
{
	var irdNumberError = false;
	var companyNameError = false;
	var titleError = false;
	var firstNameError = false;
	var surnameError = false;
	var emailAddressError = false;
	var acknowledgementError = false;
	
	var tradingNameError = false;
	var numberEmployeesError = false;
	var jobTitleError = false;
	var phoneBusinessError = false;
	var streetAddressError = false
	var cityError = false;
	
	var poBoxError = false;
	var suburbError = false;
	
	if (minTextLength(phoneBusiness, 4))
	{
		phoneBusinessError = true;
		document.getElementById("phoneBusinessError").style.display = "";
	}
	else
	{
		document.getElementById("phoneBusinessError").style.display = "none";
	}
	
	if (minTextLength(suburb, 2))
	{
		suburbError = true;
		document.getElementById("suburbError").style.display = "";
	}
	else
	{
		document.getElementById("suburbError").style.display = "none";
	}
	
	if (minTextLength(poBox, 2))
	{
		poBoxError = true;
		document.getElementById("poBoxError").style.display = "";
	}
	else
	{
		document.getElementById("poBoxError").style.display = "none";
	}
	
	if (minTextLength(cityAddress, 4))
	{
		cityError = true;
		document.getElementById("cityAddressError").style.display = "";
	}
	else
	{
		document.getElementById("cityAddressError").style.display = "none";
	}
	
	if (minTextLength(streetAddress, 4))
	{
		streetAddressError = true;
		document.getElementById("streetAddressError").style.display = "";
	}
	else
	{
		document.getElementById("streetAddressError").style.display = "none";
	}
	
	if (minTextLength(jobTitle, 2))
	{
		jobTitleError = true;
		document.getElementById("jobTitleError").style.display = "";
	}
	else
	{
		document.getElementById("jobTitleError").style.display = "none";
	}
	
	if (greaterThan(numberEmployees,0))
	{
		numberEmployeesError = true;
		document.getElementById("numberEmployeesError").style.display = "";
	}
	else
	{
		document.getElementById("numberEmployeesError").style.display = "none";
	}
	
	if (minTextLength(tradingName, 2))
	{
		tradingNameError = true;
		document.getElementById("tradeNameError").style.display = "";
	}
	else
	{
		document.getElementById("tradeNameError").style.display = "none";
	}
	
	if (minTextLength(irdNumber, 3))
	{
		irdNumberError = true;
		document.getElementById("irdError").style.display = "";
	}
	else
	{
		document.getElementById("irdError").style.display = "none";
	}
	
	if (minTextLength(companyName, 3))
	{
		companyNameError = true;
		document.getElementById("companyNameError").style.display = "";
	}
	else
	{
		document.getElementById("companyNameError").style.display = "none";
	}
	
	if (document.getElementById(title).value == "0")
	{
		titleError = true;
		document.getElementById("titleError").style.display = "";
	}
	else
	{
		document.getElementById("titleError").style.display = "none";
	}
	
	if (minTextLength(firstName, 2))
	{
		companyNameError = true;
		document.getElementById("firstNameError").style.display = "";
	}
	else
	{
		document.getElementById("firstNameError").style.display = "none";
	}
	
	if (minTextLength(surname, 3))
	{
		surnameError = true;
		document.getElementById("surnameError").style.display = "";
	}
	else
	{
		document.getElementById("surnameError").style.display = "none";
	}
	
	if (minTextLength(emailAddress, 5))
	{
		emailAddressError = true;
		document.getElementById("emailError").style.display = "";
	}
	else
	{
		var emailStatus;
		emailStatus = validateEmailAddress(document.getElementById(emailAddress).value, emailStatus);
		
		if (emailStatus == "true")
		{
			emailAddressError = false;
			document.getElementById("emailError").style.display = "none";
		}
		else
		{
			emailAddressError = true;
			document.getElementById("emailError").style.display = "";
		}
	}
	
	if(!document.getElementById(acknowledgement).checked)
	{
		acknowledgementError = true;
		document.getElementById("ackError").style.display = "";
	}
	else
	{
		document.getElementById("ackError").style.display = "none";
	}
	
	
//Evaluates all	
	if (phoneBusinessError == false && suburbError == false && poBoxError == false && cityError == false && streetAddressError == false && jobTitleError == false && numberEmployeesError == false && tradingNameError == false && irdNumberError == false && companyNameError == false && titleError == false && firstNameError == false && acknowledgementError == false && surnameError == false && emailAddressError == false && acknowledgementError == false) 
	{
		return true;
	}
	else
	{
		return false;
	}
}

function greaterThan(inputObject, maxValue)
{
	var temp = parseFloat(document.getElementById(inputObject).value);
	
	if (temp > parseFloat(maxValue))
	{
		return false;
	}
	else
	{
		return true;
	}
}

// 1. Checks if the input field has the minimum required length of text entered.
function minTextLength(inputObject, lengthRequired)
{
	if (document.getElementById(inputObject).value.length <= lengthRequired)
	{
		return true;
	}
	else
	{
		return false;
	}
}

// 1. Validates the email address entered.
function validateEmailAddress(emailAddress, emailStatus)
{
    var filter=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    
    if (filter.test(emailAddress))
    {
        emailStatus="true";
    }
    else
    {
        emailStatus="false";
    }
    
    return emailStatus;
}
