//<!--

	var error_blanks = false;
	
	var wellformed = /^.+\@.+\..+$/;
	var nonwordchars = /\W/;  // equivalent to [^A-Za-z0-9_]
	var whitespace = /\s/; //Matches a single white space character, including space, tab, form feed, line feed
		
	function isEmpty(string)
	{   return ((string == null) || (string.length == 0))
	}
	
	function isEmail(string)
	{   
		if (isEmpty(string)) 
			return false;    
	    else {
	    	return (wellformed.test(string) && !whitespace.test(string))
	    }
	}
	
	// returns true if string contains any character other than A-Z, a-z, 0-9, or _ 
	function containsNonWordChars(string)
	{
		return nonwordchars.test(string);
	}

	// returns true if string contains any whitespace characters 
	function containsWhiteSpace(string)
	{
		return whitespace.test(string);
	}

	
	function ValidMin(item, min) {
		return (item.length >= min);
	}
	
	function ValidMax(item, max) {
	  return (item.length <= max);
	} 
	
	function error(elem, text) {
	    if (error_blanks) return;
	    window.alert(text);
	    if (navigator.appName.indexOf("Netscape") != -1) elem.select();
	    elem.focus();
	    error_blanks = true;
	}
		
	function checkRadioSelection(elem) {
		var retVal = false;
		var count = 0;
		
		for (var i = 0; i < elem.length; i++) {
			if (elem[i].checked == true) count++;
			}

		if (count > 0) retVal = true;
			
		return retVal;
		}
		
	function checkMenuSelection(elem) {
		var retVal = false;
		var count = 0;
		
		for (var i = 0; i < elem.options.length; i++) {
			if (elem.options[i].selected == true && i != 0) count++;
			}

		if (count > 0) retVal = true;
			
		return retVal;
		}

	//checkboxes with same name		
	function checkCheckboxSelection(elem) {
		return checkRadioSelection(elem);
		}

	function clearCheckBoxes(elem)
	{
	    for (var i = 0; i < elem.length; i++) elem[i].checked = false;
	}

//-->