/** * This function takes a string and builds it. * to the user. Because some of the messages can be built at runtime with variable text, the * function checks for all instances of {0}, {1} in the string and replaces them with DYNAMICF function * parameters got by the javascript function 'arguments' */ function buildMessage(message){ // if number of params > 1, then replace the tokens var paramCount = buildMessage.arguments.length; if (paramCount > 1){ // Loop through all the parameters ans replace the {0,1} tokens with parameter values for (var i = 1 ; i < paramCount ; i++){ var replaceToken = "{" + (i - 1) + "}"; message = message.replace(replaceToken,buildMessage.arguments[i]); } } // show error message return message; } function isStringContainingInvalidCharacters(str, invalidCharacters){ // make sure both strings are not null and non empty if ( ((str == null) || (str == "")) || ((invalidCharacters == null) || (invalidCharacters == ""))){ return false; } // loop through the invalid characters and test them one by one! for (var i = 0 ; i < invalidCharacters.length ; i++){ var aInvalidChar = invalidCharacters.charAt(i); var foundInvalidPos = str.indexOf(aInvalidChar); if ( foundInvalidPos != -1){ // here, we have found an invalid char, leave the proc return true; } } return false; // no invalid char found! } function emailCheck(emailStr) { var emailPat = /^(.+)@(.+)$/ var specialChars = "\\(\\)<>@,;:\\\\\\\"\\.\\[\\]" var validChars = "\[^\\s" + specialChars + "\]" var quotedUser = "(\"[^\"]*\")" var ipDomainPat = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/ var atom=validChars + '+' var word="(" + atom + "|" + quotedUser + ")" var userPat=new RegExp("^" + word + "(\\." + word + ")*$") var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$") var matchArray=emailStr.match(emailPat) if (matchArray==null) { return false } var user=matchArray[1] var domain=matchArray[2] if (user.match(userPat)==null) { return false } var IPArray=domain.match(ipDomainPat); //alert("Tried to recognize domain '"+domain+"' as IP address: "+IPArray+" using pattern '"+ipDomainPat+"'"); if (IPArray != null) { for (var i = 1; i <= 4; i++) { if (parseInt(IPArray[i]) > 255) { return false; } } return IPArray.length == 5; } var domainArray=domain.match(domainPat) if (domainArray==null) { return false } var atomPat = new RegExp(atom,"g") var domArr=domain.match(atomPat) var len=domArr.length if (domArr[domArr.length-1].length < 2 || domArr[domArr.length-1].length > 4) { return false } if (len < 2) { return false } return true; }