
var numb = '0123456789';
var lwr = 'abcdefghijklmnopqrstuvwxyz';
var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var heb = 'אבגדהוזחטיכךלמםנןסעפףצץקרשת';

function isValid(parm,val) 
{
    if (parm == "") return false;
    for (i=0; i<parm.length; i++) 
    {
        if (val.indexOf(parm.charAt(i),0) == -1) return false;
    }
    return true;
}

function isNum(parm) {return isValid(parm,numb);}
function isLower(parm) {return isValid(parm,lwr);}
function isUpper(parm) {return isValid(parm,upr);}
function isAlpha(parm) {return isValid(parm,lwr+upr+heb);}
function isAlphanum(parm) {return isValid(parm,lwr+upr+numb+heb);} 


function isEmail (s)
{   

	if (isEmpty(s)) 
		return false;
//       if (isEmail.arguments.length == 1) return defaultEmptyOK;
  //     else return (isEmail.arguments[1] == true);
   
    // is s whitespace?
    if (isWhitespace(s))
    {
 
     return false;
     }
    
    // there must be >= 1 character before @, so we
    // start looking at character position 1 
    // (i.e. second character)
    var i = 1;
 
    var sLength = s.length;
   

    // look for @
    while ((i < sLength) && (s.charAt(i) != "@"))
    { i++
    }

    if ((i >= sLength) || (s.charAt(i) != "@")) return false;
    else i += 2;

    // look for .
    while ((i < sLength) && (s.charAt(i) != "."))
    { i++
    }

    // there must be at least one character after the .
    if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
    else return true;
}
