diff options
Diffstat (limited to 'wqflask/wqflask/static/new/packages/ValidationPlugin/src/additional/phonesUK.js')
-rw-r--r-- | wqflask/wqflask/static/new/packages/ValidationPlugin/src/additional/phonesUK.js | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/wqflask/wqflask/static/new/packages/ValidationPlugin/src/additional/phonesUK.js b/wqflask/wqflask/static/new/packages/ValidationPlugin/src/additional/phonesUK.js new file mode 100644 index 00000000..9752cc5c --- /dev/null +++ b/wqflask/wqflask/static/new/packages/ValidationPlugin/src/additional/phonesUK.js @@ -0,0 +1,14 @@ +/* For UK phone functions, do the following server side processing: + * Compare original input with this RegEx pattern: + * ^\(?(?:(?:00\)?[\s\-]?\(?|\+)(44)\)?[\s\-]?\(?(?:0\)?[\s\-]?\(?)?|0)([1-9]\d{1,4}\)?[\s\d\-]+)$ + * Extract $1 and set $prefix to '+44<space>' if $1 is '44', otherwise set $prefix to '0' + * Extract $2 and remove hyphens, spaces and parentheses. Phone number is combined $prefix and $2. + * A number of very detailed GB telephone number RegEx patterns can also be found at: + * http://www.aa-asterisk.org.uk/index.php/Regular_Expressions_for_Validating_and_Formatting_GB_Telephone_Numbers + */ +//Matches UK landline + mobile, accepting only 01-3 for landline or 07 for mobile to exclude many premium numbers +$.validator.addMethod("phonesUK", function(phone_number, element) { + phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); + return this.optional(element) || phone_number.length > 9 && + phone_number.match(/^(?:(?:(?:00\s?|\+)44\s?|0)(?:1\d{8,9}|[23]\d{9}|7(?:[1345789]\d{8}|624\d{6})))$/); +}, "Please specify a valid uk phone number"); |