//<!--
//--------------------------------------------------
function MM_preloadImages() { //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//--------------------------------------------------
function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
//--------------------------------------------------
function MM_findObj(n, d) { //v4.0
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && document.getElementById) x=document.getElementById(n); return x;
}
//--------------------------------------------------
function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//--------------------------------------------------
function MM_displayStatusMsg(msgStr) { //v1.0
	status=msgStr;
	document.MM_returnValue = true;
}
//--------------------------------------------------


//javascript validation for menu order form
function validateMenuOrder() {
		var strMsgIntro = "The following fields are required:\n\n";
		var strMsg = "";
		with (document.menuOrder) {
			if (name.value == "") {
				strMsg = strMsg + "- Name\n";
			}
			strMsg += checkDropdown(item1.value,"Salad number one");
			
			if (phone.value != "") {
				strMsg += checkPhone(phone.value);
			}

		if (strMsg != "") {
			alert(strMsgIntro + strMsg);
			return false;
		}
		else {
			return true;
			//document.MenuOrder.submit();
		}
	}
}
//end menu order validation


//javascript validation for catering order form
function validateCateringOrder() {
		var strMsgIntro = "The following fields are required:\n\n";
		var strMsg = "";
		with (document.CateringOrder) {
			if (name.value == "") {
				strMsg = strMsg + "- Name\n";
			}
			strMsg += checkDropdown(item1.value,"Catering item number one");
			
			if (phone.value != "") {
				strMsg += checkPhone(phone.value);
			}

		if (strMsg != "") {
			alert(strMsgIntro + strMsg);
			return false;
		}
		else {
			return true;
			//document.CateringOrder.submit();
		}
	}
}
//end catering order validation


//javascript validation for confession form
function validateConfession() {
		var strMsgIntro = "The following fields are required:\n\n";
		var strMsg = "";
		with (document.SubmitConfession) {
			if (confession.value == "") {
				strMsg = strMsg + " - Confession\n";
			}
			if (name.value == "") {
				strMsg = strMsg + "- Name\n";
			}
			if (phone.value != "") {
				strMsg += checkPhone(phone.value);
			}

		if (strMsg != "") {
			alert(strMsgIntro + strMsg);
			return false;
		}
		else {
			return true;
			//document.SubmitConfession.submit();
		}
	}
}
//end confession validation

	
// ////////////////////////////////////////////////////////////////////	
// non-empty textbox
// ////////////////////////////////////////////////////////////////////
function isEmpty(strng,fieldname) {
var error = "";
  if (strng.length == 0) {
     error = fieldname + " has not been filled in.\n"
  }
return error;
}
// ////////////////////////////////////////////////////////////////////
// end non-empty text box
// ////////////////////////////////////////////////////////////////////



// ///////////////////////////////////////////////////////////////////	
// phone number - strip out delimiters and check for 10 digits
// ////////////////////////////////////////////////////////////////////
function checkPhone (strng) {
var error = "";
if (strng == "") {
   error = "You didn't enter a phone number.\n";
}

var stripped = strng.replace(/[\(\)\.\-\ ]/g, ''); //strip out acceptable non-numeric characters
    if (isNaN(parseInt(stripped))) {
       error = "The phone number contains illegal characters.\n";

    }
    if (!(stripped.length == 10)) {
	error = "The phone number is the wrong length. Make sure you included an area code.\n";
    }
return error;
}
// ////////////////////////////////////////////////////////////////////
// end phone number functions
// ////////////////////////////////////////////////////////////////////



// ////////////////////////////////////////////////////////////////////
// validate selector from dropdown list
// ////////////////////////////////////////////////////////////////////
function checkDropdown(choice,fieldname) {
var error = "";
    if (choice == 0) {
    error = "- " + fieldname + "\n";
    }
return error;
}
// ////////////////////////////////////////////////////////////////////
// end dropdown selector
// ////////////////////////////////////////////////////////////////////



// ////////////////////////////////////////////////////////////////////
// email validation functions
// ////////////////////////////////////////////////////////////////////
function checkEmail (strng) {
var error="";
if (strng == "") {
   error = "You didn't enter an email address.\n";
}

    var emailFilter=/^.+@.+\..{2,3}$/;
    if (!(emailFilter.test(strng))) {
       error = "Please enter a valid email address.\n";
    }
    else {
//test email for illegal characters
       var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/
         if (strng.match(illegalChars)) {
          error = "The email address contains illegal characters.\n";
       }
    }
return error;
}
// ////////////////////////////////////////////////////////////////////
// end check email functions
// ////////////////////////////////////////////////////////////////////