var digits = "0123456789";
var lLetters = "abcdefghijklmnopqrstuvwxyz"
var uLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
var alphanum = lLetters + uLetters + digits;
var whitespace = " \t\n\r ";

function isEmpty(s) {
	return ((s == null) || (s.length == 0))
}
function isWhitespace(s) {
	var i;
	if (isEmpty(s)) return true;
		for (i = 0; i < s.length; i++)
		{   
			var c = s.charAt(i);
			if (whitespace.indexOf(c) == -1) return false;
		}
	return true;
}
function StripIn (s, bag) {
	var i;
	var returnString = "";
	for (i = 0; i < s.length; i++) {   
		var c = s.charAt(i);
		if (bag.indexOf(c) == -1) returnString += c;
	}
	return returnString;
}
function StripNotIn (s, bag) {
	var i;
	var returnString = "";
	for (i = 0; i < s.length; i++) {
		 var c = s.charAt(i);
		 if (bag.indexOf(c) != -1) returnString += c;
	}
	return returnString;
}
function isLetter (c) {
	return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) )
}
function isDigit (c) {
	return ((c >= "0") && (c <= "9"))
}
function isLetterOrDigit (c) {
	return (isLetter(c) || isDigit(c))
}
function isInteger (s) {
	var i;
	if (isEmpty(s)) return false;
	for (i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if (!isDigit(c)) return false;
	}
	return true;
}
function AlphaNumeric(s) {
	var i;
	if (isEmpty(s)) return false;
	for (i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if (!isLetterorDigit(c)) return false;
	}
	return true;
}
function isLength(s, lMin, lMax) {
	if ((s.length >= lMin) && (s.length <= lMax)) return true;
	return false;
}
function isEmail (s) {
	if (isEmpty(s)) return false;
	if (isWhitespace(s)) return false;
	var i = 1;
	var sLength = s.length;
	while ((i < sLength) && (s.charAt(i) != "@")) {i++}
	if ((i >= sLength) || (s.charAt(i) != "@")) return false;
	else i += 2;
	while ((i < sLength) && (s.charAt(i) != ".")) { i++ }
	if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
	else return true;
}
function isURL(s) {
	if (isWhitespace(s)) return false;
	return true;
}
function warnInvalid (theField, s) {
	theField.focus();
	theField.select();
	alert(s);
	return false;
}