function validateForm(theForm)
{
  // Customize these calls for your form

  // Start ------->
  
	if (!validRequired(theForm.category,"Category"))
    return false;
	
	if (!validEmail(theForm.email,"Email Address",true))
    return false;

	if (!validRequired(theForm.username,"Username"))
    return false;
	
	var reUsername = new RegExp(/^[a-z0-9]+$/);

	if (!reUsername.test(theForm.username.value)) {
        alert("The username is not valid. Only lowercase letters and numbers are allowed.");
		theForm.username.focus();
        return false;
    }

	if (!validRequired(theForm.password1,"Password"))
    return false;

	var rePassword = new RegExp(/^[A-Za-z0-9]+$/);

	if (!rePassword.test(theForm.password1.value)) {
        alert("The password is not valid. Only letters and numbers are allowed.");
		theForm.password1.focus();
        return false;
    }

	if (theForm.email.value == theForm.password1.value)
	{
		alert ('You cannot use your email address as your password.');
		theForm.password1.focus();
		return false;
	}

	if (theForm.password1.value == theForm.password2.value)
	{
		//return true;
	} else {
		alert ('Both passwords must match.');
		return false;
	}
		
	if (!validRequired(theForm.firstname,"First Name"))
    return false;

	if (!validRequired(theForm.lastname,"Last Name"))
    return false;
	
	if (!validRequired(theForm.street1,"Address"))
    return false;
	
	if (!validRequired(theForm.city,"City"))
    return false;
	
	if (!validRequired(theForm.state,"State"))
    return false;
	
	if (!validRequired(theForm.zipcode,"Zip Code"))
    return false;

	var reZip = new RegExp(/(^\d{5}$)|(^\d{5}-\d{4}$)/);
	
	if (!reZip.test(theForm.zipcode.value)) {
        alert("Zip code is not valid");
		theForm.zipcode.focus();
        return false;
    }
	
	if (!validRequired(theForm.phone_ac,"Area Code"))
    return false;
	
	var tex2 = theForm.phone_ac.value;
    var len2 = tex2.length;

    if (isNaN(tex2) == true) {
        alert ('Please enter a valid 3 digit area code.');
        theForm.phone_ac.focus();
        return false;
    }
    
    if (len2 != 3){
        alert ('Please enter a valid 3 digit area code.');
        theForm.phone_ac.focus();
        return false;
    }
	
	if (!validRequired(theForm.phone_num,"Phone Number"))
    return false;
	
	var tex3 = theForm.phone_num.value;
    var len3 = tex3.length;
    
    if (isNaN(tex3) == true) {
        alert ('Please enter a valid 7 digit phone number (i.e. 5551212). Be sure to exclude dashes.');
        theForm.phone_ac.focus();
        return false;
    }
    if (len3 != 7){
        alert ('Please enter a valid 7 digit phone number (i.e. 5551212). Be sure to exclude dashes.');
        theForm.phone_ac.focus();
        return false;
    }
	
	var digits = "0123456789";
	// non-digit characters which are allowed in phone numbers
	var phoneNumberDelimiters = "()- ";
	// characters which are allowed in international phone numbers
	// (a leading + is OK)
	var validWorldPhoneChars = phoneNumberDelimiters + "+";
	// Minimum no of digits in an international phone no.
	var minDigitsInIPhoneNumber = 10;
	var maxDigitsInIPhoneNumber = 10;
	
	if (checkInternationalPhone(theForm.phone_ac.value+'-'+theForm.phone_num.value)==false){
		//alert(theForm.phone_ac.value+'-'+theForm.phone_num.value)
		alert("Please enter a valid phone number")
		//Phone.value=""
		theForm.phone_num.focus();
		return false
	}

//	if (!validRequired(theForm.tags,"Tags"))
//    return false;
	
//	if (!validRequired(theForm.biotext,"Biography"))
//    return false;

	var count = "3000";   //Example: var count = "175";
	var tex = theForm.biotext.value;
	var len = tex.length;
	if(len > count){
        alert ('Only 3000 characters are allowed for your biography.');
		theForm.biotext.focus();
        return false;
	}
	
	if (theForm.validinfo.checked == false)
	{
		alert ('You must declare that the information that you have provided is valid.');
		return false;
	} else {
		//return true;
	}
	
	if (theForm.acceptterms.checked == false)
	{
		alert ('You must agree to our terms before you can continue.');
		return false;
	} else {
		//return true;
	}



  // <--------- End
  
  return true;
}
