UI: Improve zip / postal code validation.
This commit is contained in:
		
							parent
							
								
									ec91b3b9f4
								
							
						
					
					
						commit
						2cf25e78ca
					
				@ -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);
 | 
			
		||||
 | 
			
		||||
@ -34,11 +34,11 @@
 | 
			
		||||
	</md-input-container>					
 | 
			
		||||
	<md-input-container class="md-block">
 | 
			
		||||
		<label translate>contact.postal-code</label>
 | 
			
		||||
		<input name="zip" ng-model="contact.zip" ng-pattern="/^([0-9]*)$/">	
 | 
			
		||||
		<input name="zip" ng-model="contact.zip" ng-pattern="postalCodePatterns[contact.country]">
 | 
			
		||||
	    <div ng-messages="theForm.zip.$error" role="alert" multiple>
 | 
			
		||||
	      <div translate ng-message="pattern">contact.postal-code-invalid</div>
 | 
			
		||||
	    </div>	
 | 
			
		||||
	</md-input-container>	
 | 
			
		||||
	</md-input-container>
 | 
			
		||||
</div>				
 | 
			
		||||
<md-input-container class="md-block">
 | 
			
		||||
	<label translate>contact.address</label>
 | 
			
		||||
 | 
			
		||||
@ -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",
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user