浏览代码

Add zipCode, iban and phone number validators for Morocco

BRAHIM 11 年之前
父节点
当前提交
e745a526a2

+ 3 - 0
src/js/language/be_NL.js

@@ -116,6 +116,7 @@
                 LT: 'Litouwen',
                 LU: 'Luxemburg',
                 LV: 'Letland',
+                MA: 'Marokko',
                 MC: 'Monaco',
                 MD: 'Moldavië',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Spanje',
                 FR: 'Frankrijk',
                 GB: 'Verenigd Koninkrijk',
+                MA: 'Marokko',
                 US: 'VS'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Deense postcode',
                 GB: 'Engelse postcode',
                 IT: 'Italiaanse postcode',
+                MA: 'Marokko postcode',
                 NL: 'Nederlandse postcode',
                 SE: 'Zwitserse postcode',
                 SG: 'postcode van Signapore',

+ 3 - 0
src/js/language/bg_BG.js

@@ -116,6 +116,7 @@
                 LT: 'Литва',
                 LU: 'Люксембург',
                 LV: 'Латвия',
+                MA: 'Мароко',
                 MC: 'Монако',
                 MD: 'Молдова',
                 ME: 'Черна гора',
@@ -232,6 +233,7 @@
                 ES: 'Испания',
                 FR: 'Франция',
                 GB: 'Великобритания',
+                MA: 'Мароко',
                 US: 'САЩ'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Датски пощенски код',
                 GB: 'Пощенски код Великобритания',
                 IT: 'Италиански пощенски код',
+                MA: 'Mарокански пощенски код',
                 NL: 'Холандски пощенски код',
                 SE: 'Швейцарски пощенски код',
                 SG: 'Пощенски код Сингапур',

+ 3 - 0
src/js/language/cs_CZ.js

@@ -116,6 +116,7 @@
                 LT: 'Litvu',
                 LU: 'Lucembursko',
                 LV: 'Lotyšsko',
+                MA: 'Maroko',
                 MC: 'Monaco',
                 MD: 'Moldavsko',
                 ME: 'Černou Horu',
@@ -232,6 +233,7 @@
                 ES: 'Španělsko',
                 FR: 'Francii',
                 GB: 'Velkou Británii',
+                MA: 'Maroko',
                 US: 'Spojené Státy Americké'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Dánské PSČ',
                 GB: 'PSČ Velké Británie',
                 IT: 'Italské PSČ',
+                MA: 'Maroko PSČ',
                 NL: 'Holandské PSČ',
                 SE: 'Švýcarské PSČ',
                 SG: 'Singapurské PSČ',

+ 3 - 0
src/js/language/da_DK.js

@@ -116,6 +116,7 @@
                 LT: 'Litauen',
                 LU: 'Luxembourg',
                 LV: 'Letland',
+                MA: 'Marokko',
                 MC: 'Monaco',
                 MD: 'Moldova',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Spanien',
                 FR: 'Frankrig',
                 GB: 'England',
+                MA: 'Marokko',
                 US: 'USA'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'dansk postnummer',
                 GB: 'engelsk postnummer',
                 IT: 'italiensk postnummer',
+                MA: 'Marokko postnummer',
                 NL: 'hollandsk postnummer',
                 SE: 'svensk postnummer',
                 SG: 'singaporeansk postnummer',

+ 3 - 0
src/js/language/de_DE.js

@@ -116,6 +116,7 @@
                 LT: 'Lithauen',
                 LU: 'Luxemburg',
                 LV: 'Lettland',
+                MA: 'Marokko',
                 MC: 'Monaco',
                 MD: 'Moldavien',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Spanien',
                 FR: 'Frankreich',
                 GB: 'Vereinigtes Königreich',
+                MA: 'Marokko',
                 US: 'Vereinigte Staaten'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Dänische Postleitzahl',
                 GB: 'Englische Postleitzahl',
                 IT: 'Italienische Postleitzahl',
+                MA: 'Marokkanisch Postleitzahl',
                 NL: 'Niederländische Postleitzahl',
                 SE: 'Schweizerische Postleitzahl',
                 SG: 'Singapurische Postleitzahl',

+ 3 - 0
src/js/language/en_US.js

@@ -116,6 +116,7 @@
                 LT: 'Lithuania',
                 LU: 'Luxembourg',
                 LV: 'Latvia',
+                MA: 'Morocco',
                 MC: 'Monaco',
                 MD: 'Moldova',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Spain',
                 FR: 'France',
                 GB: 'United Kingdom',
+                MA: 'Morocco',
                 US: 'USA'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Danish postal code',
                 GB: 'United Kingdom postal code',
                 IT: 'Italian postal code',
+                MA: 'Moroccan postal code',
                 NL: 'Dutch postal code',
                 SE: 'Swiss postal code',
                 SG: 'Singapore postal code',

+ 3 - 0
src/js/language/es_CL.js

@@ -116,6 +116,7 @@
                 LT: 'Lituania',
                 LU: 'Luxemburgo',
                 LV: 'Letonia',
+                MA: 'Marruecos',
                 MC: 'Mónaco',
                 MD: 'Moldavia',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'España',
                 FR: 'Francia',
                 GB: 'Reino Unido',
+                MA: 'Marruecos',
                 US: 'EE.UU.'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'código postal Danés',
                 GB: 'código postal Británico',
                 IT: 'código postal Italiano',
+                MA: 'código postal Marruecos',
                 NL: 'código postal Holandés',
                 SE: 'código postal Suizo',
                 SG: 'código postal Singapurense',

+ 3 - 0
src/js/language/es_ES.js

@@ -116,6 +116,7 @@
                 LT: 'Lituania',
                 LU: 'Luxemburgo',
                 LV: 'Letonia',
+                MA: 'Marruecos',
                 MC: 'Mónaco',
                 MD: 'Moldavia',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'España',
                 FR: 'Francia',
                 GB: 'Reino Unido',
+                MA: 'Marruecos',
                 US: 'EE.UU.'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'código postal Danés',
                 GB: 'código postal Británico',
                 IT: 'código postal Italiano',
+                MA: 'código postal Marruecos',
                 NL: 'código postal Holandés',
                 SE: 'código postal Suizo',
                 SG: 'código postal Singapurense',

+ 3 - 0
src/js/language/fr_FR.js

@@ -116,6 +116,7 @@
                 LT: 'Lithuanie',
                 LU: 'Luxembourg',
                 LV: 'Lettonie',
+                MA: 'Maroc',
                 MC: 'Monaco',
                 MD: 'Moldavie',
                 ME: 'Monténégro',
@@ -232,6 +233,7 @@
                 ES: 'las Espagne',
                 FR: 'la France',
                 GB: 'le Royaume Uni',
+                MA: 'Maroc',
                 US: 'les USA'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'code postal dannois',
                 GB: 'code postal anglais',
                 IT: 'code postal italien',
+                MA: 'code postal marocain',
                 NL: 'code postal hollandais',
                 SE: 'code postal suisse',
                 SG: 'code postal de Singapour',

+ 3 - 0
src/js/language/gr_EL.js

@@ -116,6 +116,7 @@
                 LT: 'Λιθουανία',
                 LU: 'Λουξεμβούργο',
                 LV: 'Λετονία',
+                MA: 'Μαρόκο',
                 MC: 'Μονακό',
                 MD: 'Μολδαβία',
                 ME: 'Μαυροβούνιο',
@@ -232,6 +233,7 @@
                 ES: 'Ισπανία',
                 FR: 'Γαλλία',
                 GB: 'Ηνωμένο Βασίλειο',
+                MA: 'Μαρόκο',
                 US: 'ΗΠΑ'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'ταχυδρομικό κώδικα Δανίας',
                 GB: 'ταχυδρομικό κώδικα Ηνωμένου Βασιλείου',
                 IT: 'ταχυδρομικό κώδικα Ιταλίας',
+                MA: 'ταχυδρομικό κώδικα Μαρόκο',
                 NL: 'ταχυδρομικό κώδικα Ολλανδίας',
                 SE: 'ταχυδρομικό κώδικα Ελβετίας',
                 SG: 'ταχυδρομικό κώδικα Σιγκαπούρης',

+ 3 - 0
src/js/language/hu_HU.js

@@ -116,6 +116,7 @@
                 LT: 'litván',
                 LU: 'luxembourgi',
                 LV: 'latviai',
+                MA: 'Marokkó',
                 MC: 'monacoi',
                 MD: 'moldáv',
                 ME: 'montenegroi',
@@ -232,6 +233,7 @@
                 ES: 'spanyol',
                 FR: 'francia',
                 GB: 'Egyesült Királyság beli',
+                MA: 'Marokkó',
                 US: 'Egyesült Államok beli'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'dán',
                 GB: 'Egyesült Királyság beli',
                 IT: 'olasz',
+                MA: 'Marokkó',
                 NL: 'holland',
                 SE: 'svájci',
                 SG: 'singaporei',

+ 11 - 8
src/js/language/it_IT.js

@@ -116,6 +116,7 @@
                 LT: 'Lituania',
                 LU: 'Lussemburgo',
                 LV: 'Lettonia',
+                MA: 'Marocco',
                 MC: 'Monaco',
                 MD: 'Moldavia',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Spagna',
                 FR: 'Francia',
                 GB: 'Regno Unito',
+                MA: 'Marocco',
                 US: 'Stati Uniti d\'America'
             }
         },
@@ -323,14 +325,15 @@
             countryNotSupported: 'Il codice nazione %s non e supportato',
             country: 'Si prega di inserire un valido  %s',
             countries: {
-                'CA': 'Codice postale Canadese',
-                'DK': 'Codice postale Danese',
-                'GB': 'Codice postale del Regno Unito',
-                'IT': 'Codice postale Italiano',
-                'NL': 'Codice postale Olandese',
-                'SE': 'Codice postale Svizzero',
-                'SG': 'Codice postale di Singapore',
-                'US': 'Codice postale US'
+                CA: 'Codice postale Canadese',
+                DK: 'Codice postale Danese',
+                GB: 'Codice postale del Regno Unito',
+                IT: 'Codice postale Italiano',
+                MA: 'Codice postale Marocco',
+                NL: 'Codice postale Olandese',
+                SE: 'Codice postale Svizzero',
+                SG: 'Codice postale di Singapore',
+                US: 'Codice postale US'
             }
         }
     });

+ 3 - 0
src/js/language/pl_PL.js

@@ -116,6 +116,7 @@
                 LT: 'Litwa',
                 LU: 'Luksemburg',
                 LV: 'Łotwa',
+                MA: 'Maroko',
                 MC: 'Monako',
                 MD: 'Mołdawia',
                 ME: 'Czarnogóra',
@@ -232,6 +233,7 @@
                 ES: 'Hiszpania',
                 FR: 'Francja',
                 GB: 'Wielka Brytania',
+                MA: 'Maroko',
                 US: 'USA'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'duński',
                 GB: 'brytyjski',
                 IT: 'włoski',
+                MA: 'Maroko',
                 NL: 'holenderski',
                 SE: 'szwecki',
                 SG: 'singapurski',

+ 3 - 0
src/js/language/pt_BR.js

@@ -116,6 +116,7 @@
                 LT: 'Lituânia',
                 LU: 'Luxemburgo',
                 LV: 'Letónia',
+                MA: 'Marrocos',
                 MC: 'Mônaco',
                 MD: 'Moldávia',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Espanha',
                 FR: 'França',
                 GB: 'Reino Unido',
+                MA: 'Marrocos',
                 US: 'Estados Unidos'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Código postal Dinamarquês',
                 GB: 'Código postal do Reino Unido',
                 IT: 'Código postal Italiano',
+                MA: 'Código postal Marroquino',
                 NL: 'Código postal Holandês',
                 SE: 'Código postal Suíço',
                 SG: 'Código postal Cingapura',

+ 3 - 0
src/js/language/tr_TR.js

@@ -116,6 +116,7 @@
                 LT: 'Litvanya',
                 LU: 'Lüksemburg',
                 LV: 'Letonya',
+                MA: 'Fas',
                 MC: 'Monako',
                 MD: 'Moldova',
                 ME: 'Karadağ',
@@ -232,6 +233,7 @@
                 ES: 'İspanya',
                 FR: 'Fransa',
                 GB: 'İngiltere',
+                MA: 'Fas',
                 US: 'Amerika'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'Danimarka posta kodu',
                 GB: 'İngiltere posta kodu',
                 IT: 'İtalya posta kodu',
+                MA: 'Fas posta kodu',
                 NL: 'Almanya posta kodu',
                 SE: 'İsveç posta kodu',
                 SG: 'Singapur posta kodu',

+ 3 - 0
src/js/language/vi_VN.js

@@ -116,6 +116,7 @@
                 LT: 'Lithuania',
                 LU: 'Luxembourg',
                 LV: 'Latvia',
+                MA: 'Maroc',
                 MC: 'Monaco',
                 MD: 'Moldova',
                 ME: 'Montenegro',
@@ -232,6 +233,7 @@
                 ES: 'Tây Ban Nha',
                 FR: 'Pháp',
                 GB: 'Vương quốc Anh',
+                MA: 'Maroc',
                 US: 'Mỹ'
             }
         },
@@ -327,6 +329,7 @@
                 DK: 'mã bưu điện của Đan Mạch',
                 GB: 'mã bưu điện của Vương quốc Anh',
                 IT: 'mã bưu điện của Ý',
+                Ma: 'mã bưu điện của Maroc',
                 NL: 'mã bưu điện của Hà Lan',
                 SE: 'mã bưu điện của Thuỵ Sĩ',
                 SG: 'mã bưu điện của Singapore',

+ 4 - 1
src/js/language/zh_CN.js

@@ -116,6 +116,7 @@
                 LT: '立陶宛',
                 LU: '卢森堡',
                 LV: '拉脱维亚',
+                MA: '摩洛哥',
                 MC: '摩纳哥',
                 MD: '摩尔多瓦',
                 ME: '黑山共和国',
@@ -230,8 +231,9 @@
             countries: {
                 BR: '巴西',
                 ES: '西班牙',
-                GB: '英国',
                 FR: '法国',
+                GB: '英国',
+                MA: '摩洛哥',
                 US: '美国'
             }
         },
@@ -327,6 +329,7 @@
                 DK: '丹麦 邮政编码',
                 GB: '英国 邮政编码',
                 IT: '意大利 邮政编码',
+                MA: '摩洛哥 邮政编码',
                 NL: '荷兰 邮政编码',
                 SE: '瑞士 邮政编码',
                 SG: '新加坡 邮政编码',

+ 3 - 0
src/js/language/zh_TW.js

@@ -116,6 +116,7 @@
                 LT: '立陶宛',
                 LU: '盧森堡',
                 LV: '拉脫維亞',
+                MA: '摩洛哥',
                 MC: '摩納哥',
                 MD: '摩爾多瓦',
                 ME: '黑山共和國',
@@ -232,6 +233,7 @@
                 ES: '西班牙',
                 FR: '法國',
                 GB: '英國',
+                MA: '摩洛哥',
                 US: '美國'
             }
         },
@@ -327,6 +329,7 @@
                 DK: '丹麥 郵政編碼',
                 GB: '英國 郵政編碼',
                 IT: '意大利 郵政編碼',
+                MA: '摩洛哥 郵政編碼',
                 NL: '荷蘭 郵政編碼',
                 SE: '瑞士 郵政編碼',
                 SG: '新加坡 郵政編碼',

+ 2 - 0
src/js/validator/iban.js

@@ -55,6 +55,7 @@
             LT: 'Lithuania',
             LU: 'Luxembourg',
             LV: 'Latvia',
+            MA: 'Morocco',
             MC: 'Monaco',
             MD: 'Moldova',
             ME: 'Montenegro',
@@ -146,6 +147,7 @@
             LT: 'LT[0-9]{2}[0-9]{5}[0-9]{11}',                                  // Lithuania
             LU: 'LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}',                               // Luxembourg
             LV: 'LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}',                               // Latvia
+            MA: 'MA[0-9]{3}[0-9]{3}[0-9]{5}[0-9]{11}[0-9]{2}',                  // Morocco (example MA 157 570 21111 22334455006 85)
             MC: 'MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}',               // Monaco
             MD: 'MD[0-9]{2}[A-Z0-9]{20}',                                       // Moldova
             ME: 'ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}',                          // Montenegro

+ 9 - 1
src/js/validator/phone.js

@@ -8,6 +8,7 @@
             ES: 'Spain',
             FR: 'France',
             GB: 'United Kingdom',
+            MA: 'Morocco',
             US: 'USA'
         }
     });
@@ -19,7 +20,7 @@
         },
 
         // The supported countries
-        COUNTRY_CODES: ['BR', 'ES', 'FR', 'GB', 'US'],
+        COUNTRY_CODES: ['BR', 'ES', 'FR', 'GB', 'MA', 'US'],
 
         /**
          * Return true if the input value contains a valid phone number for the country
@@ -82,6 +83,13 @@
             		value   = $.trim(value);
             		isValid = (/^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|\#)\d+)?)$/).test(value);
                     break;
+
+                case 'MA':
+                    // http://en.wikipedia.org/wiki/Telephone_numbers_in_Morocco
+                    // Test: http://regexr.com/399n8
+                    value   = $.trim(value);
+                    isValid = (/^(?:(?:(?:\+|00)212[\s]?(?:[\s]?\(0\)[\s]?)?)|0){1}(?:5[\s.-]?[2-3]|6[\s.-]?[13-9]){1}[0-9]{1}(?:[\s.-]?\d{2}){3}$/).test(value);
+                    break;
                 
                 case 'US':
                 /* falls through */

+ 8 - 1
src/js/validator/zipCode.js

@@ -8,6 +8,7 @@
             DK: 'Danish postal code',
             GB: 'United Kingdom postal code',
             IT: 'Italian postal code',
+            MA: 'Moroccan postal code',
             NL: 'Dutch postal code',
             SE: 'Swiss postal code',
             SG: 'Singapore postal code',
@@ -22,7 +23,7 @@
             country: 'country'
         },
 
-        COUNTRY_CODES: ['CA', 'DK', 'GB', 'IT', 'NL', 'SE', 'SG', 'US', 'BR'],
+        COUNTRY_CODES: ['CA', 'DK', 'GB', 'IT', 'MA', 'NL', 'SE', 'SG', 'US', 'BR'],
 
         /**
          * Return true if and only if the input value is a valid country zip code
@@ -41,6 +42,7 @@
          *      - DK (Denmark)
          *      - GB (United Kingdom)
          *      - IT (Italy)
+         *      - MA (Morocco)
          *      - NL (Netherlands)
          *      - SE (Sweden)
          *      - SG (Singapore)
@@ -93,6 +95,11 @@
                     isValid = /^(I-|IT-)?\d{5}$/i.test(value);
                     break;
 
+                // http://en.wikipedia.org/wiki/List_of_postal_codes_in_Morocco
+                case 'MA':
+                    isValid = /^[1-9][0-9]{4}$/i.test(value);
+                    break;
+
                 // http://en.wikipedia.org/wiki/Postal_codes_in_the_Netherlands
                 case 'NL':
                     isValid = /^[1-9][0-9]{3} ?(?!sa|sd|ss)[a-z]{2}$/i.test(value);