From 8e77d60db8b64de2fc7bd9f8ecb0f0019f1f4465 Mon Sep 17 00:00:00 2001 From: sanj Date: Sat, 13 Nov 2010 02:45:31 +0530 Subject: [PATCH] adding utils.js --- itf/static/js/utils.js | 70 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 itf/static/js/utils.js diff --git a/itf/static/js/utils.js b/itf/static/js/utils.js new file mode 100644 index 0000000..a83d4e3 --- /dev/null +++ b/itf/static/js/utils.js @@ -0,0 +1,70 @@ +//from: http://rosskendall.com/blog/web/javascript-function-to-check-an-email-address-conforms-to-rfc822 + +function isRFC822ValidEmail(sEmail) { + + var sQtext = '[^\\x0d\\x22\\x5c\\x80-\\xff]'; + var sDtext = '[^\\x0d\\x5b-\\x5d\\x80-\\xff]'; + var sAtom = '[^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+'; + var sQuotedPair = '\\x5c[\\x00-\\x7f]'; + var sDomainLiteral = '\\x5b(' + sDtext + '|' + sQuotedPair + ')*\\x5d'; + var sQuotedString = '\\x22(' + sQtext + '|' + sQuotedPair + ')*\\x22'; + var sDomain_ref = sAtom; + var sSubDomain = '(' + sDomain_ref + '|' + sDomainLiteral + ')'; + var sWord = '(' + sAtom + '|' + sQuotedString + ')'; + var sDomain = sSubDomain + '(\\x2e' + sSubDomain + ')*'; + var sLocalPart = sWord + '(\\x2e' + sWord + ')*'; + var sAddrSpec = sLocalPart + '\\x40' + sDomain; // complete RFC822 email address spec + var sValidEmail = '^' + sAddrSpec + '$'; // as whole string + + var reValidEmail = new RegExp(sValidEmail); + + if (reValidEmail.test(sEmail)) { + return true; + } + + return false; +} + +/* +John Resig's templating utility - http://ejohn.org/blog/javascript-micro-templating/ +Not updated code to resolve issue with single quotes from: http://www.west-wind.com/Weblog/posts/509108.aspx +define templates inside