	function ea_syntax(ea) {
		var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		if (filter.test(ea)) {return true;} else {return false;}
	}

	
	function clean_entry(txt) {
		txt.value = ucwords( txt.value.replace(/'/g, '`') );
	}

	function clean_entry_ta(txt) {
		txt.value = txt.value.replace(/'/g, '`');
	}

	function uc(txt) {
		txt.value = txt.value.toUpperCase(txt);
	}

	function alphanumeric_only(char_check, punctation) {
	
		// allow ONLY alphanumeric keys, no symbols or punctuation
		// this can be altered for any "checkOK" string you desire
		var key;
		var keychar;
		
		if (window.event) {
		   key = window.event.keyCode;
		} else if (char_check){
		   key = char_check.which;
		} else {
		   return true;
		}

		keychar = String.fromCharCode(key);
		keychar = keychar.toLowerCase();

		// control keys
		if ((key==null) || (key==0) || (key==8) || (key==32) || (key==46) || 
			(key==9) || (key==13) || (key==27) ) {
		   return true;
		} else if (key > 95 && key < 106 ) {
		   return true;
		} else if (key > 34 && key < 41 ) {
		   return true;
		} else if ((key==109) || (key==188) || (key==190)) {
			return true;
		} else if (("abcdefghijklmnopqrstuvwxyz0123456789_").indexOf(keychar) > -1) {
			return true;
		} else if ((key == 111) || (key == 220) || (key == 191)) { // obliques
			return false;
		} else {
		   return false;
		}
	}
	

	function alpha_only(char_check) {
	
		// allow ONLY alphanumeric keys, no symbols or punctuation
		// this can be altered for any "checkOK" string you desire
		var key;
		var keychar;
		
		if (window.event) {
		   key = window.event.keyCode;
		} else if (char_check){
		   key = char_check.which;
		} else {
		   return true;
		}
		
		keychar = String.fromCharCode(key);
		keychar = keychar.toLowerCase();

		// control keys
		if ((key==null) || (key==0) || (key==8) || (key==32) || (key==46) || (key==9) || (key==13) || (key==27) ) {			
		   return true;
		} else if (key > 95 && key < 106 ) {
		   return true;
		} else if (key > 34 && key < 41 ) {
		   return true;
		} else if (("abcdefghijklmnopqrstuvwxyz").indexOf(keychar) > -1) {
			return true;
		} else {
		   return false;
		}
	}
	
	function letters_numbers_only(char_check) {
	
		// allow ONLY alphanumeric keys, no symbols or punctuation
		// this can be altered for any "checkOK" string you desire
	var key;
	var keychar;
	
	if (window.event)
	   key = window.event.keyCode;
	else if (char_check)
	   key = char_check.which;
	else
	   return true;
	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	
	// control keys
	if ((key==null) || (key==0) || (key==8) || 
		(key==9) || (key==13) || (key==27) )
	   return true;
	
	// alphas and numbers
	else if ((("abcdefghijklmnopqrstuvwxyz0123456789").indexOf(keychar) > -1))
	   return true;
	else
	   return false;

	}


	function numbers_only(char_check) {
	
		// allow ONLY numeric keys, symbols and punctuation
		// this can be altered for any "checkOK" string you desire
		var key;
		var keychar;
		
		if (window.event) {
		   key = window.event.keyCode;
		} else if (char_check){
		   key = char_check.which;
		} else {
		   return true;
		}
		
		keychar = String.fromCharCode(key);
		keychar = keychar.toLowerCase();

		// control keys
		if ((key==null) || (key==0) || (key==8) || (key==107) || (key==110) || (key==17) || (key==86) ||
			(key==9) || (key==13) || (key==27)  || (key==32)|| (key==46) || (key==44) || (key==190) ) {
		   return true;
		} else if (key > 95 && key < 106 ) {
		   return true;
		} else if (key > 34 && key < 41 ) {
		   return true;
		} else if (("0123456789+()").indexOf(keychar) > -1) {
			return true;
		} else if ((".").indexOf(keychar) > -1) {
			return true;
		} else {
		   return false;
		}
	}
	
		function digit_only(char_check) {
	
		// allow ONLY numeric keys, symbols and punctuation
		// this can be altered for any "checkOK" string you desire
		var key;
		var keychar;
		
		if (window.event) {
		   key = window.event.keyCode;
		} else if (char_check){
		   key = char_check.which;
		} else {
		   return true;
		}
		
		keychar = String.fromCharCode(key);
		keychar = keychar.toLowerCase();

		// control keys
		if ((key==null) || (key==0) || (key==8) || 
		(key==9) || (key==13) || (key==27) )
	   	return true;
	
		// alphas and numbers
		else if ((("0123456789").indexOf(keychar) > -1))
	   	return true;
		else
	   	return false;

	}
	
	
	function disable_key(char_check) {
		// allow ONLY the Tab key or Shift + Tab
		var key;
		
		if (window.event) {
		   key = window.event.keyCode;
		} else if (char_check){
		   key = char_check.which;
		} else {
		   return true;
		}
		
		
			 if (key==16 && key==9)  { return true; } //shift+tab
		else if (key==9) 			 { return true; } //tab
		else if (key==17 && key==67) { return true; } //ctrl+c
		else { return false; }
	}

	function ucwords( str ) {
		return (str+'').replace(/^(.)|\s(.)/g, function ( $1 ) { return $1.toUpperCase ( ); } );
	}


