valid= true;
msg ="These fields need to be completed:\n"
fieldfocus="";

function formStoriesValidator(){
		msg ="These fields need to be completed:\n"
	valid= true;
	fieldfocus="";
	// Make quick references to our fields
    var firstname_required = document.getElementById('First-Name_required');
	var lastname_required = document.getElementById('Last-Name_required');
    var email_required_email = document.getElementById('email_required_email');
	
	 var subject_required = document.getElementById('subject_required');	 
    var story_required = document.getElementById('story_required');

			
	
	// Check each input in the order that it appears in the form!
    if(isEmpty(firstname_required, "First Name", "First Name")){}
	if(isEmpty(lastname_required, "Please enter your last name", "Last Name")){}
       
    if(emailValidator(email_required_email, "Please enter a valid email address", "Email")){}

		if(isEmpty(subject_required, "Please enter the subject", "Subject")){}
    if(isEmpty(story_required, "Please enter your story","Your Story")){}

	
	
  if(valid==false){
		alert(msg);
		fieldfocus.focus(); // set the focus to this input
		return false;
	}
	else
	{
		return true;
	}
}

	
function formShoutValidator(){
	msg ="These fields need to be completed:\n"
	valid= true;
	fieldfocus="";
	// Make quick references to our fields
    var name = document.getElementById('name_required');
    var email = document.getElementById('email_required_email');
	 var hear = document.getElementById('How-did-you-hear');
    var story = document.getElementById('Your-Shout_required');
	


	// Check each input in the order that it appears in the form!
    if(isEmpty(name, "Please enter your name","Name")){       }  
    if(emailValidator(email, "Please enter a valid email address","Email")){}
	    if(isEmpty(hear, "Please enter how did you hear about us","How did you hear about us")){  }
    if(isEmpty(story, "Please enter your shout","Your Shout")){}

                     
                  
                
	if(valid==false){
		alert(msg);
		fieldfocus.focus(); // set the focus to this input
		return false;
	}
	else
	{
		return true;
	}
         
 

    
}
function isEmpty(elem, helperMsg,message){
	if(elem.value.length == 0){
		msg = msg + message + "\n";		
		valid=  false;
		if (fieldfocus==""){
			fieldfocus=elem;
		}
		return false;		
	}
    else{
	return true;
    }
}

function isEqual(elemone, elemtwo, helperMsg){
	if(elemone.value == elemtwo.value){
         return true;
	}
    else{
        alert(helperMsg);
		elemone.focus(); // set the focus to this input
        return false;
    }

}



function isNumeric(elem, helperMsg){
	var numericExpression = /^[0-9]+$/;
	if(elem.value.match(numericExpression)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphabet(elem, helperMsg){
	var alphaExp = /^[a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function isAlphanumeric(elem, helperMsg){
	var alphaExp = /^[0-9a-zA-Z]+$/;
	if(elem.value.match(alphaExp)){
		return true;
	}else{
		alert(helperMsg);
		elem.focus();
		return false;
	}
}

function lengthRestriction(elem, min, max){
	var uInput = elem.value;
	if(uInput.length >= min && uInput.length <= max){
		return true;
	}else{
		alert("Please enter between " +min+ " and " +max+ " characters");
		elem.focus();
		return false;
	}
}

function madeSelection(elem, helperMsg){
	if(elem.value == "Please Choose"){
		alert(helperMsg);
		elem.focus();
		return false;
	}else{
		return true;
	}
}



function emailValidator(elem, helperMsg,message){
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	if(elem.value.match(emailExp)){

		return true;
	}else{
		msg = msg + message + "\n";		
		valid=  false;
		if (fieldfocus==""){
			fieldfocus=elem;
		}
		return false;
		
	}
}
