function isBlank(s){	//alert("isblank")
   for(var i=0; i<s.length; i++){	
      var c=s.charAt(i);
      if ((c !=' ') && (c != '\n') && (c !='\t') && (c != '')) return false;
   }
   return true;
}

function isNumeric(s){	
   for( var i = 0; i < s.length; i++ )	{		
     var c = s.charAt(i);
     if( c < '0' || c > '9' ) 
       return false;	
   }	
   return true;
}// isEmail v1.0 // to check the user's email address...

function isEmail(s){	
   // declare the working variables
   var emailLength, notFound, atSign, firstPeriod, lastPeriod, whereAtSign, space;	
   // pull in the values for the variables
   notFound 	= -1;							
   // set notFound to -1, equals the result of indexOf if the character is not found
   atSign		= s.indexOf("@"); 				
   // Get where the @ sign is
   emailLength = s.length; 
   // what is the length
   firstPeriod = s.indexOf(".");
   // get where the '.' is
   lastPeriod 	= s.lastIndexOf(".", emailLength-1)
   // get where the end '.' is.  If there is one at the end.
   space= s.indexOf(" "); 	
   // are there any spaces (should return -1 for none)
   whereAtSign = (emailLength-1) - atSign; 
   // figure out where in the address the @ sign is.		
   // use the next line for debugging.
   //alert(firstPeriod +" - "+lastPeriod +" - "+whereAtSign);	
   // If any of the following are true, this will return false, otherwise, it is a well formed email address.	
   // @ and '.' are not found
   // the last '.' in the address is before the '@'	
   // the @ sign is too close to the end of the string	
   // there are any spaces in the address.
   if(atSign == notFound || firstPeriod == notFound || lastPeriod < atSign || whereAtSign < 2 || space != notFound)
     return false;
   else
     return true;
}
