﻿function validateEmailAddress(e) {
    /***********************************************
    * Email Validation script v.B - By Skylar Sutton
    * http://www.skylarsutton.com/
    *
    * Based on:
    *
    *    ***********************************************
    *    Email Validation script- © Dynamic Drive (www.dynamicdrive.com)
    *    This notice must stay intact for legal use.
    *    Visit http://www.dynamicdrive.com/ for full source code
    *    ***********************************************
    *
    ***********************************************/
    
    var passedValidation = false;
    if (e.value && e.value != null && e.value != "") {
        var emailfilter = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
        passedValidation = emailfilter.test(e.value);
        if ( !passedValidation ) {
            alert("Please enter a valid email address.");
            e.select();
        }
    }
    return passedValidation;
}

function validateRequiredFields(formobj, requiredFields, fieldDescriptions) {
    /***********************************************
    * Required field(s) validation v1.10.B - By Skylar Sutton
    * http://www.skylarsutton.com/
    *
    * Based on:
    *
    *    ***********************************************
    *    Required field(s) validation v1.10- By NavSurf
    *    Visit Nav Surf at http://navsurf.com
    *    Visit http://www.dynamicdrive.com/ for full source code
    *    ***********************************************
    *
    ***********************************************/
    
	var alertMsg = "Please complete the following fields:\n";
	var containsErrors = false;
	
	for (var i = 0; i < requiredFields.length; i++) {
		var obj = formobj.elements[requiredFields[i]];
		if (obj) {
			switch(obj.type) {
			    case "select-one":
				    if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == "") {
					    alertMsg += " - " + fieldDescriptions[i] + "\n";
					    containsErrors = true;
				    }
				    break;
			    case "select-multiple":
				    if (obj.selectedIndex == -1) {
					    alertMsg += " - " + fieldDescriptions[i] + "\n";
					    containsErrors = true;
				    }
				    break;
			    case "text":
			    case "textarea":
				    if (obj.value == "" || obj.value == null) {
					    alertMsg += " - " + fieldDescriptions[i] + "\n";
					    containsErrors = true;
				    }
				    break;
			    default:
			        break;
			}
			if (obj.type == undefined) {
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++) {
					if (obj[j].checked) {
						blnchecked = true;
					}
				}
				if (!blnchecked) {
					alertMsg += " - " + fieldDescriptions[i] + "\n";
                    containsErrors = true;
				}
			}
		}
	}

	if ( !containsErrors ) {
		return true;
	}
	else {
		alert(alertMsg);
		return false;
	}
}
