function ValidateNewEngagement(objForm)
   {
   //CHECK BRIDE NAME TEXTBOX
   if (objForm.txtBrideName.value == "")
      {
      alert("Please enter the Bride's Name.");
      objForm.txtBrideName.focus();
      return false;
      }
   
   //CHECK GROOM NAME TEXTBOX
   if (objForm.txtGroomName.value == "")
      {
      alert("Please enter the Groom's Name.");
      objForm.txtGroomName.focus();
      return false;
      }
   
   //CHECK WEDDING DATE TEXTBOX
   if (! IsDate(objForm.txtWeddingDate.value))
      {
      alert("Please enter a valid Wedding Date.");
      objForm.txtWeddingDate.focus();
      return false;
      }
      
   //CHECK WEDDING LOCATION TEXTBOX
   if (objForm.txtLocation.value == "")
      {
      alert("Please enter your Wedding Location.");
      objForm.txtLocation.focus();
      return false;
      }
   
   //CHECK FOR VALID EMAIL IF THE USER WANTS TO RECEIVE THE NEWSLETTER
   if (objForm.chkNewsletter.checked == true)
       {
	   if ((objForm.txtEmailAddr.value==null)||(objForm.txtEmailAddr.value==""))
	      {
		  alert("Please enter your Email Address in order to receive our Newsletter.");
		  objForm.txtEmailAddr.focus();
		  return false;
		  }
	   if (IsValidEmail(objForm.txtEmailAddr.value)==false)
	      {
		  objForm.txtEmailAddr.focus();
		  objForm.txtEmailAddr.select();
		  return false;
		  }
	   }
	   
   return true;
   }

function IsValidEmail(str) 
   {
		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		var strMessage = "Your email address appears to be invalid.\nPlease correct it.";
		
		if (str.indexOf(at)==-1){
		   alert(strMessage);return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert(strMessage);return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert(strMessage);return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert(strMessage);return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert(strMessage);return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert(strMessage);return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert(strMessage);return false;
		 }
 		 return true;			
	}