function seo_string(field_name,str,dirlist,dirchk) { dir_pat=RegExp("^("+dirlist.replace(/,/g,"|")+")$","i"); dir_str=dirlist.replace(/,/g,", "); if(str.match(/[\.\/\?& ]/)) return (field_name+" must not contain \.\/\?& characters"); else if(dirchk==true && str.match(dir_pat) ) return (field_name+" does not allow this value. Try appending /removing some characters to the value"); else return false; } function sbconvert_toseo(title,seo) { a=title.value.replace(/[\.\/\?& ]+/g,"_"); seo.value=a; } function sbiz_emailCheck (sbiz_emailStr) { var sbiz_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=sbiz_emailStr.match(sbiz_emailPat) if (matchArray==null) { alert("Email Address seems incorrect (check @ and .'s)") return false } var user=matchArray[1] var domain=matchArray[2] if (user.match(userPat)==null) { alert("The username doesn't seem to be valid") return false } var IPArray=domain.match(ipDomainPat) if (IPArray!=null) { // this is an IP address for (var i=1;i<=4;i++) { if (IPArray[i]>255) { alert("Destination IP address is invalid") return false } } return true } var domainArray=domain.match(domainPat) if (domainArray==null) { alert("The domain name doesn't seem to be valid") 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>3) { alert("The address must end in a three-letter domain, or two letter country") return false } if (len<2) { var errStr="This address is missing a hostname" alert(errStr) return false } return true; }