function validateForm(){
	
	var theFrm = document.forms[1];
	var theElements = theFrm.elements
	var theStr = ""
	var validForm = true
	var validEmail = true
	var newLine = "<br>"; //"\r"; // "\n" 
	var HTML = true;
	var x = "";
	var xNum = -1;

	//-------------------  Validate form (START) -----------------------------//
	
	var notValid = ""
	for (i=0; i<theElements.length; i++ ){
		theName = theElements[i].name;
		theSub = theName.substr(0, theName.length -1)
		if (theName.charAt(theName.length-1) == "*"){
			switch (theElements[i].type)
			{
				case "radio" : 
					radName = theElements[i].name;
					radChecked = false;
					for (j=0; j<theElements.length; j++ ){
						if (theElements[j].name == radName && theElements[j].checked){
							radChecked = true;
						}
					}
					if (!radChecked) {
						if (notValid.indexOf(theSub) == -1){
							notValid += "\n"+ theSub;
						}
						validForm = false;
					}
					break; 
				case "checkbox" : 
					if (!theElements[i].checked){
						notValid += "\n"+ theSub;
						validForm = false;
					}
					break; 
				case "text" :
					email = /^[email][e\-mail]/i
					if (theElements[i].value == "") {
						notValid += "\n"+ theSub;
						validForm = false;
					} else if (email.test(theElements[i].name)){
						x = theElements[i].value;
						xNum = i
						var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9])+$/;
						if (!filter.test(x)){
							validEmail = false;
							validForm = false;
						} 
					}
					break; 
				case "select-one" : 
					if (theElements[i].value == "") {
						notValid += "\n"+ theSub;
						validForm = false; 
					}
					break; 
				case "select-multiple" : 
					multiChecked = false;
					for(j=0; j<theElements[i].length; j++ ) {
						if (theElements[i][j].selected){
							multiChecked = true;
						}
					}
					if (!multiChecked) {
						notValid += "\n"+ theSub;
						validForm = false;
					}
					break; 
			}
		}
	}
	//-------------------  Validate form (END) -----------------------------//


	//-------------------  Construct Email Body (START) -----------------------------//
	if (!HTML){
		if (validForm) {
			for (i=0; i<theElements.length; i++ ){
				if (theElements[i].type == "radio"){
					if (theElements[i].checked) {
						theStr += theElements[i].name + " - " + theElements[i].value + newLine
					}
				} else if (theElements[i].type == "checkbox") {
					if (theElements[i].checked) {
						theStr += theElements[i].name + " - " + theElements[i].value + newLine
					}
				} else if (theElements[i].type == "text") {
					theStr += theElements[i].name + " - " + theElements[i].value + newLine
				} else if (theElements[i].type == "select-one") {
					theStr += theElements[i].name + " - " + theElements[i].value + newLine
				} else if (theElements[i].type == "select-multiple") {
					theStr += "\n" + theElements[i].name + newLine
					for(j=0; j<theElements[i].length; j++ ) {
						if (theElements[i][j].selected){
							theStr += "   " + theElements[i][j].value + newLine
						}
					}
					theStr += "\n"
				}/* else if (theElements[i].type != "submit"){
					theStr += theElements[i].name + " - " + theElements[i].type + newLine
				}*/
			}
		}
	} else {
		HTMLstart = "<table border='1' cellspacing='0' cellpadding='3' bordercolor='#CCCCCC' style='font-family:arial; font-size:12px;'>"
		ls = "<tr><td style='text-transform:capitalize;'><div align='right'><strong>"
		lm = "</strong></div></td><td>&nbsp;</td><td>"
		le = "</td></tr>"
		if (validForm) {
			theStr += HTMLstart;
			for (i=0; i<theElements.length; i++ ){
			 	if(i == xNum) {
					theElements[i].value = "<a href='mailto:"+x+"'>"+x+"</a>"
				}
				if (theElements[i].type == "radio"){
					if (theElements[i].checked) {
						theStr += ls+ theElements[i].name + lm + theElements[i].value + le
					}
				} else if (theElements[i].type == "checkbox") {
					if (theElements[i].checked) {
						theStr += ls+ theElements[i].name + lm + theElements[i].value + le
					}
				} else if (theElements[i].type == "text") {
					if (theElements[i].value != "") {
						theStr += ls+ theElements[i].name + lm + theElements[i].value + le
					}
				} else if (theElements[i].type == "textarea") {
					if (theElements[i].value != "") {
						theStr += ls+ theElements[i].name + lm + theElements[i].value + le
					}
				} else if (theElements[i].type == "select-one") {
					if (theElements[i].value != "") {
						theStr += ls+ theElements[i].name + lm + theElements[i].value + le
					}
				} else if (theElements[i].type == "select-multiple") {
					theTmpStr = "";
					theFirst = true;
					theCount = 0;
					for(j=0; j<theElements[i].length; j++ ) {
						if (theElements[i][j].selected){
							theCount ++;
							if (theFirst){
								theTmpStr +=  theElements[i][j].value + le
								theFirst = false;
							} else {
								theTmpStr +=  "<tr><td>&nbsp;</td><td>" + theElements[i][j].value + le
							}
						}
					}
					if (!theFirst) {
						theTmpStr = "<tr><td rowspan="+theCount+"><div align='right'><strong>" + theElements[i].name + lm + theTmpStr
						theStr += theTmpStr;//ls + "&nbsp;" + lm + "&nbsp;" + le 
					}
				}/* else if (theElements[i].type != "submit"){
					theStr += theElements[i].name + " - " + theElements[i].type + newLine
				}*/
			 	if(i == xNum) {
					theElements[i].value = x
				}
			}
		}
	}
	//-------------------  Construct Email Body (END) -----------------------------//


	//-------------------  Respond or send mail (START) -----------------------------//
	if (!validForm) {
		if (!validEmail) {
			alert("The email address entered is not a valid address.\nPlease complete all required fields labeled *\n"+notValid);
		} else {
			alert("Please complete all required fields labeled *\n"+notValid);
		}
	} else {
		theFrm.action = "/cms/asp/sendMail.asp";
		theFrm.emailBody.value = escape(theStr+"</table>");
			alert("Your whistle blowing form has been successfully sent to the NASC");
			theFrm.submit();
	}

}