﻿// validates that the field value string has one or more characters in it
function isNotEmpty(elem) {
	var str = elem.value;
    var re = /.+/;
    if(!str.match(re)) {
        alert("Please fill in the " + elem.name + " field.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
//validates that the entry is a positive or negative number
function isNumber(elem) {
	var str = elem.value;
    var re = /^[-]?\d*\.?\d*$/;
    str = str.toString();
    if (!str.match(re)) {
        alert("Enter only numbers into the " + elem.name + " field.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    }
    return true;
}
// validates that the entry is 16 characters long
function isLen16(elem) {
	var str = elem.value;
    var re = /\b.{16}\b/;
    if (!str.match(re)) {
        alert("Entry does not contain the required 16 characters.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
// validates that the entry is formatted as an e-mail address
function isEMailAddr(elem) {
	var str = elem.value;
    var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    if (!str.match(re)) {
        return false;
    } else {
        return true;
    }
}
// validate that the user made a selection other than default
function isChosen(select) {
    if (select.selectedIndex == 0) {
        alert("Please make a choice from the list.");
        return false;
    } else {
        return true;
    }
}

// validate that the user has checked one of the radio buttons
function isValidRadio(radio) {
    var valid = false;
    for (var i = 0; i < radio.length; i++) {
        if (radio[i].checked) {
            return true;
        }
    }
    alert("Make a choice from the radio buttons.");
    return false;
}

function focusElement(formName, elemName) {
    var elem = document.forms[formName].elements[elemName];
    elem.focus();
    elem.select();
}

function validateHelp(form) {

	if (form.FullName.value=='') {
    	alert("Please enter your name before continuing.");
    	form.FullName.focus();
		return false;
	} else if (form.ContactNumber.value=='') {
    	alert("Please enter a contact number before continuing.");
    	form.ContactNumber.focus();
		return false;
	} else if (form.EmailAddress.value=='') {
    	alert("Please enter an email address before continuing.");
    	form.EmailAddress.focus();
		return false;
	} else if (form.Problem.value=='') {
    	alert("Please enter your problem/question before continuing.");
    	form.Problem.focus();
		return false;
	} else {
		return true;
	}
}

function validateMinistry(form) {

	if (form.Ministry.value=='') {
    	alert("Please enter a Ministry Name before continuing.");
    	form.Ministry.focus();
		return false;
	} else if (form.MinLeader.value=='') {
    	alert("Please select a Leader(s) before continuing.");
    	form.MinLeader.focus();
		return false;
	} else if (form.Tasks.value=='') {
    	alert("Please enter a Position/Task before continuing.");
    	form.Tasks.focus();
		return false;
	} else if (form.Commitment.value=='') {
    	alert("Please select a Commitment before continuing.");
    	form.Commitment.focus();
		return false;
	} else if (form.Category.value=='') {
    	alert("Please select a Category(s) before continuing.");
    	form.Category.focus();
		return false;
	} else if (form.Description.value=='') {
    	alert("Please enter a Description before continuing.");
    	form.Description.focus();
		return false;
	} else {
		return true;
	}
}

function validateMakeManager(form) {
	if (form.AccessLevel.selectedIndex==0) {
    	alert("Please select an Access Level before continuing.");
    	form.AccessLevel.focus();
		return false;
	} else {
		return true;
	}
}

function validateCheckLeader(form) {
	if (form.MinLdr.selectedIndex==0) {
    	alert("Please Assign a Leader(s) before continuing.");
    	form.MinLdr.focus();
		return false;
	} else {
		return true;
	}
}

function validateCheckMin(form) {
	if (form.MinistryA.selectedIndex==0) {
    	alert("Please select a ministry before continuing.");
    	form.MinistryA.focus();
		return false;
	} else {
		return true;
	}
}

function validateCheckTask(form) {
	if (form.MinCatB.selectedIndex==0) {
    	alert("Please select a task before continuing.");
    	form.MinCatB.focus();
		return false;
	} else {
		return true;
	}
}

function validateEventSignup(form) {
	if (form.FirstName.value=='') {
    	alert("Please enter your first name before continuing.");
    	form.FirstName.focus();
		return false;
	} else if (form.LastName.value=='') {
    	alert("Please enter your last name before continuing.");
    	form.LastName.focus();
		return false;
	} else if (form.Email.value=='') {
    	alert("Please enter your email address before continuing.");
    	form.Email.focus();
		return false;
	} else if (form.EmailValidate.value=='') {
    	alert("Please validate your email address before continuing.");
    	form.EmailValidate.focus();
		return false;
	} else if (form.EmailValidate.value!=form.Email.value) {
    	alert("Your validation email does not match your email. Please correct before continuing.");
    	form.EmailValidate.focus();
		return false;
	} else if (form.ContactNum.value=='') {
    	alert("Please enter your primary contact phone number before continuing.");
    	form.ContactNum.focus();
		return false;
	} else {
		return true;
	}
}
