function verifyNewPassword(frm){
  if(
        isNotEmpty(frm.newUserName, "T") &&
        isNotEmpty(frm.currentPassword, "T") &&
        isNotEmpty(frm.newPassword1, "T") &&
        isNotEmpty(frm.newPassword2, "T") &&
        areTheSame(frm.newPassword1, frm.newPassword2)
  ){
    return true;
  }else return false;
}


function verifyOrder(frm){

    stripLeadingDigit(frm.phone);
    stripPhoneDelimiters(frm.phone);
    stripLeadingDigit(frm.phoneWork);
    stripPhoneDelimiters(frm.phoneWork);
    
  if(
        isNotEmpty(frm.firstName, "T") &&
        isNotEmpty(frm.lastName, "T") &&
        isNotEmpty(frm.phone, "T") &&
        isCorrectLength(frm.phone, 10) &&
        isNum(frm.phone) &&
        isNotEmpty(frm.address1, "T") &&
        isNotEmpty(frm.city, "T") &&
        isNotEmpty(frm.state, "S") &&
        isNotEmpty(frm.zipCode, "T") &&
        isCorrectLength(frm.zipCode, 5) &&
        isNum(frm.zipCode) &&
        isNotEmpty(frm.email, "T") &&
        isEmail(frm.email)
  ){
    return true;
  }else return false;
}

function verifyNewUser(frm){
  if(
        isNotEmpty(frm.email, "T") &&
        isEmail(frm.email) &&
        isNotEmpty(frm.password1, "T") &&
        isNotEmpty(frm.password2, "T") &&
        areTheSame(frm.password1, frm.password2)
  ){
    return true;
  }else return false;
}
function verifyLogin(frm){
  if(
        isNotEmpty(frm.userName, "T") &&
        isNotEmpty(frm.password, "T")
  ){
    return true;
  }else return false;

}

function verifyNewMenuItem(frm){
  if(
        isNotEmpty(frm.newItemName, "T") &&
        isNotEmpty(frm.newShortDescription, "T")
  ){
    return true;
  }else return false;

}

function verifyProfile(frm){
  if(
        isNotEmpty(frm.shortDescription, "T") &&
        isNotEmpty(frm.longDescription, "T")
  ){
    return true;
  }else return false;

}

function verifyMenuItem(id){

	itemName = eval("document.mcd.itemName"+id);
	shortDescription = eval("document.mcd.shortDescription"+id);
  if(
        isNotEmpty(itemName, "T") &&
        isNotEmpty(shortDescription, "T")
  ){
    return true;
  }else return false;

}

function verifyContactInfo(frm){
    stripLeadingDigit(frm.phone);
    stripPhoneDelimiters(frm.phone);
    
    stripLeadingDigit(frm.cell);
    stripPhoneDelimiters(frm.cell);

    stripLeadingDigit(frm.fax);
    stripPhoneDelimiters(frm.fax);

    stripLeadingDigit(frm.pager);
    stripPhoneDelimiters(frm.pager);
    
  if(
        isNotEmpty(frm.email, "T") &&
        isEmail(frm.email) &&
        isNotEmpty(frm.lastName, "T") &&
        isNotEmpty(frm.firstName, "T") &&
        isNotEmpty(frm.address1, "T") &&
        isNotEmpty(frm.city, "T") &&
        isNotEmpty(frm.state, "S") &&
        isNotEmpty(frm.zipCode, "T") &&
        isCorrectLength(frm.zipCode, 5) &&
        isNum(frm.zipCode) &&
        isNotEmpty(frm.phone, "T") &&
        isCorrectLength(frm.phone, 10) &&
        isNum(frm.phone)
  ){
    return true;
  }else return false;

}

function stripLeadingDigit(inputNum){
  if( inputNum.value.charAt(0) =="1" )
  inputNum.value = inputNum.value.substring(1);
}

function stripPhoneDelimiters(inputNum){
    unformattednum="";
    for(i=0; i<inputNum.value.length;i++)
    {
        if(inputNum.value.charAt(i) >= "0" && inputNum.value.charAt(i) <= "9" )
        unformattednum+=inputNum.value.charAt(i);
    }
    inputNum.value=unformattednum;
}
function isCorrectLength(inputVal, correctlength){
	if(inputVal.value.length != correctlength){
		alert("Value is invalid length. It should be "+correctlength);
		inputVal.focus();
		inputVal.select();
		return false;
	}
	return true;
}
function isNum(inputNum){
	val = inputNum.value;
	for(i=0; i < val.length; i++){
		if( (val.charAt(i) < "0" || val.charAt(i) > "9") && val.charAt(i) != "." ){
			alert("Input must be numeric");
			inputNum.focus();
			inputNum.select();
			return false;
		}
	}
	return true;
}
function isNotEmpty(inputVal, type){
	if(inputVal.value == ""){
		alert("Required field; cannot be blank");
		inputVal.focus();
		if(type == "T"){
			inputVal.select();
		}
		return false;
	}
	return true;
}

function areTheSame(pass1, pass2){
	if(pass1.value != pass2.value){
		alert("New password entries must match");
		pass1.value = '';
		pass2.value = '';
		pass1.focus();
		return false;
	}
    return true;
}

function isEmail(email){
	val = email.value;
	invalidChars = " /:,;";
	msg = "Invalid email address! Must be in format user@domain.ext";
	for(i=0; i < invalidChars.length; i++){
		badChar = invalidChars.charAt(i);
		if( val.indexOf(badChar, 0) > -1){
			alert(msg);
			email.focus();
			email.select();
			return false;
		}
	}

	atPos = val.indexOf("@", 1);
	if( atPos == -1){
		alert(msg);
		email.focus();
		email.select();
		return false;
	}

	if(val.indexOf("@", atPos+1)>-1){
		alert(msg);
		email.focus();
		email.select();
		return false;
	}

	periodPos = val.indexOf(".", atPos);
	if(periodPos == -1){
		alert(msg);
		email.focus();
		email.select();
		return false;
	}

	if(periodPos+3 > val.length){
		alert(msg);
		email.focus();
		email.select();
		return false;
	}
	return true;
}

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_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_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.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];}
}
