// JavaScript Document
function trimString (str) {
	str = this != window? this : str;
	return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

function verifyFieldSet(object) {
	var h = 0;
	var d = 0;
	var e = true;
	var dm = false;
	var dd = false;
	var dy = false;
	var e_msg = "The following fields have not been filled out appropriately:\n";
	var element = object.elements;

	for (var i = 0; i < element.length; i++) {
		if (element[i].name == "data_fName") {
			if (trimString(element[i].value).length < 1) {
				e = false;
				e_msg += "- First Name\n";
				element[i].style.backgroundColor = "#FFCCCC";
			} else element[i].style.backgroundColor = "";
		} else if (element[i].name == "data_lName") {
			if (trimString(element[i].value).length < 1) {
				e = false;
				e_msg += "- Last Name\n";
				element[i].style.backgroundColor = "#FFCCCC";
			} else element[i].style.backgroundColor = "";
		} else if (element[i].name == "data_ssn") {
			if (trimString(element[i].value).length < 1) {
				if (++h > 2) {
					if (dm && dd && dy) {
						document.getElementsByName("data_nNum")[0].style.backgroundColor = "#FFCCCC";
						document.getElementsByName("data_ssn")[0].style.backgroundColor = "#FFCCCC";
						document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
						document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
						document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
						alert("Please provide either a valid N Number, Date-of-Birth, OR Last 4 digits of your SSN");
						return false;
					} else {
						if (dm) {
							e = false;
							e_msg += "- Date-Of-Birth Month Field\n";
							document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
						}
						if (dd) {
							e = false;
							e_msg += "- Date-Of-Birth Day Field\n";
							document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
						}
						if (dy) {
							e = false;
							e_msg += "- Date-Of-Birth Year Field\n";
							document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
						}
					}
				}
			} element[i].style.backgroundColor = "";
		} else if (element[i].name == "data_email") {
			if (trimString(element[i].value).length < 1) {
				e = false;
				e_msg += "- Email Address\n";
				element[i].style.backgroundColor = "#FFCCCC";
			} else {
				element[i].style.backgroundColor = "";
				document.getElementsByName("data_eaddress")[0].value = element[i].value;
			}
		} else if (element[i].name == "data_nNum") {
			if (trimString(element[i].value).length > 0) {
				if (!(/^\s*(N|n)[0-9]{8}\s*$/).test(element[i].value) && ((element[i].value != "N") && (element[i].value != "n"))) {
					e = false;
					e_msg += "- N# / Student ID field\n";
					element[i].style.backgroundColor = "#FFCCCC";
				} else {
					if ((element[i].value == "N") || (element[i].value == "n")) {
						h++;
					}
					element[i].style.backgroundColor = "";
				}
			} else {
				h++;
				element[i].style.backgroundColor = "";
			}
			if (h > 2) {
				if (dm && dd && dy) {
					document.getElementsByName("data_nNum")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_ssn")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					alert("Please provide either a valid N Number, Date-of-Birth, OR Last 4 digits of your SSN");
					return false;
				} else {
					if (dm) {
						e = false;
						e_msg += "- Date-Of-Birth Month Field\n";
						document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dd) {
						e = false;
						e_msg += "- Date-Of-Birth Day Field\n";
						document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dy) {
						e = false;
						e_msg += "- Date-Of-Birth Year Field\n";
						document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					}
				}
			}
		} else if (element[i].name == "data_dobM") {
			d++;
			if ((trimString(element[i].value).length < 1) || (parseInt(element[i].value) < 1) || (parseInt(element[i].value) > 12)) {
				dm = true;
			} element[i].style.backgroundColor = "";
			if (d > 2) {
				if (dm || dd || dy) h++;
			}
			if (h > 2) {
				if (dm && dd && dy) {
					document.getElementsByName("data_nNum")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_ssn")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					alert("Please provide either a valid N Number, Date-of-Birth, OR Last 4 digits of your SSN");
					return false;
				} else {
					if (dm) {
						e = false;
						e_msg += "- Date-Of-Birth Month Field\n";
						document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dd) {
						e = false;
						e_msg += "- Date-Of-Birth Day Field\n";
						document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dy) {
						e = false;
						e_msg += "- Date-Of-Birth Year Field\n";
						document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					}
				}
			}
		} else if (element[i].name == "data_dobD") {
			++d;
			if ((trimString(element[i].value).length < 1) || (parseInt(element[i].value) < 1) || (parseInt(element[i].value) > 31)) {
				dd = true;
			} element[i].style.backgroundColor = "";
			if (d > 2) {
				if (dm || dd || dy) h++;
			}
			if (h > 2) {
				if (dm && dd && dy) {
					document.getElementsByName("data_nNum")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_ssn")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					alert("Please provide either a valid N Number, Date-of-Birth, OR Last 4 digits of your SSN");
					return false;
				} else {
					if (dm) {
						e = false;
						e_msg += "- Date-Of-Birth Month Field\n";
						document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dd) {
						e = false;
						e_msg += "- Date-Of-Birth Day Field\n";
						document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dy) {
						e = false;
						e_msg += "- Date-Of-Birth Year Field\n";
						document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					}
				}
			}
		} else if (element[i].name == "data_dobY") {
			++d;
			if (trimString(element[i].value).length < 2) {
				dy = true;
			} element[i].style.backgroundColor = "";
			if (d > 2) {
				if (dm || dd || dy) h++;
			}
			if (h > 2) {
				if (dm && dd && dy) {
					document.getElementsByName("data_nNum")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_ssn")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					alert("Please provide either a valid N Number, Date-of-Birth, OR Last 4 digits of your SSN");
					return false;
				} else {
					if (dm) {
						e = false;
						e_msg += "- Date-Of-Birth Month Field\n";
						document.getElementsByName("data_dobM")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dd) {
						e = false;
						e_msg += "- Date-Of-Birth Day Field\n";
						document.getElementsByName("data_dobD")[0].style.backgroundColor = "#FFCCCC";
					}
					if (dy) {
						e = false;
						e_msg += "- Date-Of-Birth Year Field\n";
						document.getElementsByName("data_dobY")[0].style.backgroundColor = "#FFCCCC";
					}
				}
			}
		} else if (element[i].name == "data_topic") {
			if (element[i].options.selectedIndex < 1) {
				e = false;
				e_msg += "- Select a reason for inquiry from the drop down menu\n";
				element[i].style.backgroundColor = "#FFCCCC";
			} else element[i].style.backgroundColor = "";
		} else if (element[i].name == "data_description") {
			if (trimString(element[i].value).length < 1) {
				e = false;
				e_msg += "- Inquiry field\n";
				element[i].style.backgroundColor = "#FFCCCC";
			} else element[i].style.backgroundColor = "";
		}
	}
	if (!e) {
		alert(e_msg);
	}
	return e;
}