addLoadListener(validateForm);

function validateForm() {

var submitClicked = document.getElementById("submit-listing");
var yourName = document.getElementById("your-name");
var yourEmail = document.getElementById("your-email");
var category = document.getElementById("category");
var businessName = document.getElementById("business-name");
var businessAddress = document.getElementById("business-address");
var businessPhone = document.getElementById("business-phone");
var phonePattern = /^(\(\d+\) ?)?(\d+[\- ])*\d+$/;
var textDescription = document.getElementById("business-description");
var wordCount = document.getElementById("count");

submitClicked.onclick = function()
{
if (yourName.value == "" || /^\s+$/.test(yourName.value))
	{
	alert('Please enter your name');
	return false;
	}

if (yourEmail.value == "" || /^\s+$/.test(yourEmail.value))
	{
	alert('Please enter your email address');
	return false;
	}

if (!/^[\w\.\-]+@([\w\-]+\.)+[a-zA-Z]+$/.test(yourEmail.value))
	{
	alert("Please enter a valid email address");
	return false;
	}

if (category.value == "")
	{
	alert('Please select a category for your listing');
	return false;
	}

if (businessName.value == "" || /^\s+$/.test(businessName.value))
	{
	alert('Please enter your business name');
	return false;
	}

if (businessAddress.value == "" || /^\s+$/.test(businessAddress.value))
	{
	alert('Please enter a business address');
	return false;
	}

if (businessPhone.value == "" || /^\s+$/.test(businessPhone.value))
	{
	alert('Please enter a phone number');
	return false;
	}

if (phonePattern.test(businessPhone.value) == false)
	{
	alert('Please enter a valid phone number')
	return false;
	}

if (textDescription.value == "" || /^\s+$/.test(textDescription.value))
	{
	alert('Please enter a description for your business');
	return false;
	}
if (wordCount.value > 51)
	{
	alert('Your description is too long. Please enter 50 words or fewer');
	return false;
	}
}

}

addLoadListener(countWords);

function countWords() {
	var textDescription = document.getElementById("business-description");
	var countBox = document.getElementById("count");
	textDescription.onkeyup = function() {
		var currentWords = textDescription.value.split(/\s/);
		var currentCount = currentWords.length;
		countBox.value = currentCount;
	}
}

/*function CountWordsLeft(form, field, count, no_words) {
	if(no_words > 50) {
	alert('You have reached the limit of 50 words. Descriptions with more than 50 words will be edited or rejected. Please use a maximum of 50 words.');
	}
    var text=field.value + " ";
    if(no_words>0)
    {
        var iwhitespace = /^[^A-Za-z0-9]+/gi; // remove initial whitespace
        var left_trimmedStr = text.replace(iwhitespace, "");
        var na = rExp = /[^A-Za-z0-9]+/gi; // non alphanumeric characters
        var cleanedStr = left_trimmedStr.replace(na, " ");
        var splitString = cleanedStr.split(" "); 
        var word_count = splitString.length -1;
        count.value=no_words-word_count;
    }
}*/
