var alerttxt = 'The following errors were found:\n';
var digits = "0123456789";
var phoneNumberDelimiters = "()- ";
var validWorldPhoneChars = phoneNumberDelimiters + "+";
var minDigitsInIPhoneNumber = 10;
var valid = true;

function isZip(strZip)
{
	if(strZip.length != "5")
	{
		return false;
	}
	else if(isNaN(strZip))
	{
		return false;
	}
	return true;
}




function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) { return false; }
    }
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) { returnString += c; }
    }
    return returnString;
}

function isPhone(strPhone){
	var s=stripCharsInBag(strPhone,validWorldPhoneChars);
	return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function isEmail(strEmail)
{
	return (strEmail.indexOf(".") > 2) && (strEmail.indexOf("@") > 0);
}




function validate_remove()
{
	if (!document.getElementById || !document.createElement)  { return; }
	
	valid = true;
	
	if(document.removeEmail.removeEmail.value === "")
	{
	
		valid = false;
	}
	else if(!isEmail(document.removeEmail.removeEmail.value))
	{
	
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Email_error").innerHTML = alerttxt;
	}
	return valid;
	
}

function validate_signup()
{
	if (!document.getElementById || !document.createElement)  { return; }
	
	valid = true;
	
	if(document.newslettersignup.Email.value === "")
	{
		alerttxt = "Please enter Email Address.";
		document.getElementById("Email_error").newslettersignup = alerttxt;
		valid = false;
	}
	else if(!isEmail(document.newslettersignup.Email.value))
	{
		alerttxt = "Please enter a correct Email Address.";
		document.getElementById("Email_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Email_error").innerHTML = alerttxt;
	}
	return valid;
}

function validatefeedback()
{
	if (!document.getElementById || !document.createElement)  { return; }
	
	valid = true;

	if(document.feedback.Email.value === "")
	{
		alerttxt = "Please enter Email Address.";
		document.getElementById("Email_error").innerHTML = alerttxt;
		valid = false;
	}
	else if(!isEmail(document.feedback.Email.value))
	{
		alerttxt = "Please enter a correct Email Address.";
		document.getElementById("Email_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Email_error").innerHTML = alerttxt;
	}
	if(document.feedback.question.value === "")
	{
		alerttxt = "You must enter feedback!";
		document.getElementById("Question_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Question_error").innerHTML = alerttxt;
	}
	return valid;
	
}

function validate_form()
{
	if (!document.getElementById || !document.createElement)  { return; }
	
	valid = true;
	
	if(document.volunteerform.Last_Name.value === "")
	{
		alerttxt = "Please enter your Last Name.";
		document.getElementById("Last_Name_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Last_Name_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.First_Name.value === "")
	{
		alerttxt = "Please enter your First Name.";
		document.getElementById("First_Name_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("First_Name_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.Address.value === "")
	{
		alerttxt = "Please enter your Address.";
		document.getElementById("address_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("address_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.City.value == '')
	{
		alerttxt = "Please enter your City.";
		document.getElementById('city_error').innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById('city_error').innerHTML = alerttxt;
	}
	
	
	if(document.volunteerform.State.value == '')
	{
		alerttxt = "Please enter your State.";
		document.getElementById("State_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("State_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.Zip.value === "")
	{
		alerttxt = "Please enter your Zip code.";
		document.getElementById("Zip_error").innerHTML = alerttxt;
		valid = false;
	}
	else if(!isZip(document.volunteerform.Zip.value))
	{
		alerttxt = "Please enter a correct Zip code (12345).";
		document.getElementById("Zip_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Zip_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.Day_Phone.value ==="")
	{
		alerttxt = "Please enter Day Phone Number.";
		document.getElementById("Day_Phone_error").innerHTML = alerttxt;
		valid = false;
	}
	else if(!isPhone(document.volunteerform.Day_Phone.value))
	{
		alerttxt = "Please enter correct Day Phone Number.";
		document.getElementById("Day_Phone_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Day_Phone_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.Night_Phone.value ==="")
    {
        alerttxt = "Please enter Night Phone Number.";
		document.getElementById("Night_Phone_error").innerHTML = alerttxt;
		valid = false;
    }
    else if(!isPhone(document.volunteerform.Night_Phone.value))
    {
        alerttxt = "Please enter a correct Night Phone Number.";
		document.getElementById("Night_Phone_error").innerHTML = alerttxt;
		valid = false;
    }
	else
	{
		alerttxt = "";
		document.getElementById("Night_Phone_error").innerHTML = alerttxt;
	}
	
	if(document.volunteerform.Email.value === "")
	{
		alerttxt = "Please enter Email Address.";
		document.getElementById("Email_error").innerHTML = alerttxt;
		valid = false;
	}
	else if(!isEmail(document.volunteerform.Email.value))
	{
		alerttxt = "Please enter a correct Email Address.";
		document.getElementById("Email_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("Email_error").innerHTML = alerttxt;
	}
	
	/* these functions work */
	if(document.volunteerform.vol_position1.value === "")
	{
		alerttxt = "Please select the first position.";
		document.getElementById("vol_position1_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("vol_position1_error").innerHTML = alerttxt;
	}
	if(document.volunteerform.vol_position2.value === "")
	{
		alerttxt = "Please select a second position.";
		document.getElementById("vol_position2_error").innerHTML = alerttxt;
		valid = false;
	}
	else
	{
		alerttxt = "";
		document.getElementById("vol_position2_error").innerHTML = alerttxt;
	}
			
	return valid;
}

