function validate(form){
	var filled = true;
	document.getElementById("formerror").innerHTML = "";
	with (form){
		if(!isFilled(firstname, document.getElementById("firstnamerequired"))){filled = false;}
		if(!isFilled(lastname, document.getElementById("lastnamerequired"))){filled = false;}
		if(!isFilled(email, document.getElementById("emailrequired"))){filled = false;}
		if(audience.selectedIndex == 0){ 
			filled = false; 
			document.getElementById("audiencerequired").style.display = "";
		}else{ 
			document.getElementById("audiencerequired").style.display = "none";
		}
		if(!isFilled(file, document.getElementById("filerequired"))){filled = false;}		
		if(!isFilled(caption, document.getElementById("captionrequired"))){filled = false;}
		
		if(filled){
			if(!agreement.checked){
				document.getElementById("formerror").innerHTML = "-You must verify that you have the rights to the photo before you can submit.";
				return false;
			}else{
				if(!validateName(firstname.value)){
					document.getElementById("formerror").innerHTML = "-First Name is invalid.";
					return false;
				}
				if(!validateName(lastname.value)){
					document.getElementById("formerror").innerHTML = "-Last Name is invalid.";
					return false;
				}
				if(!validateEmail(email.value)){
					document.getElementById("formerror").innerHTML = "-Email is invalid.";
					return false;
				}
				return true;
			}
		}
		else{
			document.getElementById("formerror").innerHTML = "-All fields are required.";
			return false;
		}
	}
}
	
function isFilled(field, requiredField){
	if(field.value == ""){
		requiredField.style.display = "";
		return false;
	}else{
		requiredField.style.display = "none";
		return true;
	}
}
	
function validateName(name){
	var reg = /^[A-Za-z\s\.\-]*$/;
	return reg.test(name);
}

function validateEmail(email){
	var reg = /^(\w+[\-\.])*\w+@(\w+\.)+[A-Za-z]+$/;
	return reg.test(email);
}