function valid(){


  var str=document.ff.email.value; 
  if ((document.ff.email.value).indexOf(" ")>=0)
    {
      alert ("Blank space not allowed inside email!");
      document.ff.email.select();
      return false;
    }
	
  if (document.ff.email.value.indexOf("@",1) == -1)
    {
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      document.ff.email.select();
      return(false);
    }
	
  if (document.ff.email.value.indexOf("@") == 0)
    {
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      document.ff.email.select();
      return(false);
    }

  if (document.ff.email.value.indexOf(".",5) == -1)
    {
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      document.ff.email.select();
      return(false);
    }
  if (document.ff.email.value.indexOf(".") == 0)
    {
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      document.ff.email.select();
      return(false);
    }
		
  if ((document.ff.email.value.lastIndexOf(".")) -(document.ff.email.value.indexOf("@"))<3 )
    {
      alert("Invalid E-Mail address");			
      document.ff.email.focus();
      document.ff.email.select();
      return(false);
    }
		
  if ((document.ff.email.value.length)-(document.ff.email.value.indexOf("."))<2)
    {
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      myform.register.select();
      return(false);
    }

  var posat=str.indexOf("@");
  var posdot=str.indexOf(".");
  var rposdot=str.lastIndexOf(".");
  //alert(posat); 
  //alert(posdot);
  //alert(rposdot);
		
  if(rposdot==posdot)
    if((posdot < posat) || (posdot-posat < 3))
      {
	//alert("needs at last 3 cars between @ and . sign");
	alert("Invalid E-Mail address");
	document.ff.email.focus();
	return false;
      }
		
  if(str.charAt(str.length-1)==".")
    {
      //alert("cannot end with .");
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      return false;
    }
		
  if(str.charAt(str.length-1)=="@")
    {
      //alert("cannot end with @");
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      return false;
    }
  var j=0;
  for( var i=0;i<str.length;i++)
    {
      if(str.charAt(i) == "@")
	j++;
    }
  if(j > 1)
    {
      //alert("only one @ sign allowed");
      alert("Invalid E-Mail address");
      document.ff.email.focus();
      return false;
    }		

  if (document.ff.password.value == ""){
    alert ("Please enter your Password")
      document.ff.password.focus()
      return false;
  }

  if (document.ff.fname.value == ""){
    alert ("Please enter your First Name")
      document.ff.fname.focus()
      return false;
  }
	
  if (document.ff.lname.value == ""){	
    alert ("Please enter your Last Name");
    document.ff.lname.focus();
    return false;
  }

	
  if (document.ff.address.value == ""){
    alert ("Please enter your Address");
    document.ff.address.focus();
    return false;
  }

	
  if (document.ff.city.value == ""){
    alert ("Please enter your City");
    document.ff.city.focus();
    return false;
  }
  
  if (document.ff.state.value == ""){
    alert ("Please select your State");
    document.ff.state.focus();
    return false;
  }
	
  if (document.ff.country.value == ""){
    alert ("Please select your Country");
    document.ff.country.focus();
    return false;
  }
	
  if (document.ff.zip.value == ""){	
    alert ("Please enter your Zip Code");
    document.ff.zip.focus();
    return false;
  }

  if (document.ff.phone.value == ""){	
    alert ("Please enter your Phone");
    document.ff.phone.focus();
    return false;
  }

	
  if (document.ff.date_month.value == ""){
    alert ("Please select Month");
    document.ff.date_month.focus();
    return false;	
  }
	
  if (document.ff.date_day.value == ""){
    alert ("Please select Date");
    document.ff.date_day.focus();
    return false;	
  }
	
  if (document.ff.date_year.value == ""){
    alert ("Please select Year");
    document.ff.date_year.focus();
    return false;	
  }



  var prod_ln = "8";
  var npt="n"

  prod_ln = eval(prod_ln);
   
  for (var ik=0;ik<prod_ln;ik++){
    if(document.getElementById('ck'+ik).checked){ 
      var sel_v = document.getElementById('ck'+ik).value;
      if (sel_v == 7){
	if (document.ff.othe_gift.value == ""){
	  alert ("Please enter Other Option");
	  document.ff.othe_gift.focus();
	  return false;
	}
      } else {
	document.ff.othe_gift.value = "";
      }
		
      npt="y";
    }
  }
  if (npt=="n"){
    alert ("Please select a giftcard");
    return false;
  }  
  
}  
