diff --git a/ui/src/app/components/contact.directive.js b/ui/src/app/components/contact.directive.js index f207d7d30d..c32d50a8fe 100644 --- a/ui/src/app/components/contact.directive.js +++ b/ui/src/app/components/contact.directive.js @@ -277,10 +277,33 @@ function Contact($compile, $templateCache) { "Zimbabwe" ]; + var postalCodePatterns = { + "United States": "(\\d{5}([\\-]\\d{4})?)", + "Australia": "[0-9]{4}", + "Austria": "[0-9]{4}", + "Belgium": "[0-9]{4}", + "Brazil": "[0-9]{5}[\\-]?[0-9]{3}", + "Canada": "[A-Za-z][0-9][A-Za-z] [0-9][A-Za-z][0-9]", + "Denmark": "[0-9]{3,4}", + "Faroe Islands": "[0-9]{3,4}", + "Netherlands": "[1-9][0-9]{3}\\s?[a-zA-Z]{2}", + "Germany": "[0-9]{5}", + "Hungary": "[0-9]{4}", + "Italy": "[0-9]{5}", + "Japan": "\\d{3}-\\d{4}", + "Luxembourg": "(L\\s*(-|—|–))\\s*?[\\d]{4}", + "Poland": "[0-9]{2}\\-[0-9]{3}", + "Spain": "((0[1-9]|5[0-2])|[1-4][0-9])[0-9]{3}", + "Sweden": "\\d{3}\\s?\\d{2}", + "United Kingdom": "[A-Za-z]{1,2}[0-9Rr][0-9A-Za-z]? [0-9][ABD-HJLNP-UW-Zabd-hjlnp-uw-z]{2}" + }; + var linker = function (scope, element) { scope.countries = countries; + scope.postalCodePatterns = postalCodePatterns; + var template = $templateCache.get(contactTemplate); element.html(template); diff --git a/ui/src/app/components/contact.tpl.html b/ui/src/app/components/contact.tpl.html index d107265cfb..2c52fd31d9 100644 --- a/ui/src/app/components/contact.tpl.html +++ b/ui/src/app/components/contact.tpl.html @@ -34,11 +34,11 @@ contact.postal-code - + contact.postal-code-invalid - + contact.address diff --git a/ui/src/app/locale/locale.constant.js b/ui/src/app/locale/locale.constant.js index 7345894bca..bd1b9e99b0 100644 --- a/ui/src/app/locale/locale.constant.js +++ b/ui/src/app/locale/locale.constant.js @@ -294,9 +294,9 @@ export default angular.module('thingsboard.locale', []) "contact": { "country": "Country", "city": "City", - "state": "State", - "postal-code": "Postal code", - "postal-code-invalid": "Only digits are allowed.", + "state": "State / Province", + "postal-code": "Zip / Postal Code", + "postal-code-invalid": "Invalid Zip / Postal Code format.", "address": "Address", "address2": "Address 2", "phone": "Phone",