Browse Source

#816: Fix Russian VAT validator, add Russian postal code, thanks to @stepin

Phuoc Nguyen 11 years ago
parent
commit
90ccaa06f4
61 changed files with 164 additions and 80 deletions
  1. 4 2
      CHANGELOG.md
  2. 1 0
      CONTRIBUTORS.md
  3. 1 1
      dist/css/bootstrapValidator.min.css
  4. 11 6
      dist/js/bootstrapValidator.js
  5. 3 3
      dist/js/bootstrapValidator.min.js
  6. 1 0
      dist/js/language/ar_MA.js
  7. 1 0
      dist/js/language/be_FR.js
  8. 1 0
      dist/js/language/be_NL.js
  9. 1 0
      dist/js/language/bg_BG.js
  10. 1 0
      dist/js/language/cs_CZ.js
  11. 1 0
      dist/js/language/da_DK.js
  12. 1 0
      dist/js/language/de_DE.js
  13. 1 0
      dist/js/language/en_US.js
  14. 1 0
      dist/js/language/es_CL.js
  15. 1 0
      dist/js/language/es_ES.js
  16. 1 0
      dist/js/language/fa_IR.js
  17. 1 0
      dist/js/language/fr_FR.js
  18. 1 0
      dist/js/language/gr_EL.js
  19. 1 0
      dist/js/language/hu_HU.js
  20. 1 0
      dist/js/language/it_IT.js
  21. 1 0
      dist/js/language/ja_JP.js
  22. 1 0
      dist/js/language/nl_NL.js
  23. 1 0
      dist/js/language/pl_PL.js
  24. 1 0
      dist/js/language/pt_BR.js
  25. 1 0
      dist/js/language/ro_RO.js
  26. 68 67
      dist/js/language/ru_RU.js
  27. 1 0
      dist/js/language/sv_SE.js
  28. 1 0
      dist/js/language/th_TH.js
  29. 1 0
      dist/js/language/tr_TR.js
  30. 1 0
      dist/js/language/ua_UA.js
  31. 1 0
      dist/js/language/vi_VN.js
  32. 1 0
      dist/js/language/zh_CN.js
  33. 1 0
      dist/js/language/zh_TW.js
  34. 1 0
      src/js/language/ar_MA.js
  35. 1 0
      src/js/language/be_FR.js
  36. 1 0
      src/js/language/be_NL.js
  37. 1 0
      src/js/language/bg_BG.js
  38. 1 0
      src/js/language/cs_CZ.js
  39. 1 0
      src/js/language/da_DK.js
  40. 1 0
      src/js/language/de_DE.js
  41. 1 0
      src/js/language/es_CL.js
  42. 1 0
      src/js/language/es_ES.js
  43. 1 0
      src/js/language/fa_IR.js
  44. 1 0
      src/js/language/fr_FR.js
  45. 1 0
      src/js/language/gr_EL.js
  46. 1 0
      src/js/language/hu_HU.js
  47. 1 0
      src/js/language/it_IT.js
  48. 1 0
      src/js/language/ja_JP.js
  49. 1 0
      src/js/language/nl_NL.js
  50. 1 0
      src/js/language/pl_PL.js
  51. 1 0
      src/js/language/pt_BR.js
  52. 1 0
      src/js/language/ro_RO.js
  53. 1 1
      src/js/language/ru_RU.js
  54. 1 0
      src/js/language/sv_SE.js
  55. 1 0
      src/js/language/th_TH.js
  56. 1 0
      src/js/language/tr_TR.js
  57. 1 0
      src/js/language/ua_UA.js
  58. 1 0
      src/js/language/vi_VN.js
  59. 1 0
      src/js/language/zh_CN.js
  60. 1 0
      src/js/language/zh_TW.js
  61. 22 0
      test/spec.js

+ 4 - 2
CHANGELOG.md

@@ -14,7 +14,8 @@ __New Features__
 * [#785](https://github.com/nghuuphuoc/bootstrapvalidator/pull/785): Add Denmark phone number validator, thanks to [@emilchristensen](https://github.com/emilchristensen)
 * [#785](https://github.com/nghuuphuoc/bootstrapvalidator/pull/785): Add Denmark phone number validator, thanks to [@emilchristensen](https://github.com/emilchristensen)
 * [#787](https://github.com/nghuuphuoc/bootstrapvalidator/pull/787): Add Thailand phone number and ID validator, thanks to [@figgaro](https://github.com/figgaro)
 * [#787](https://github.com/nghuuphuoc/bootstrapvalidator/pull/787): Add Thailand phone number and ID validator, thanks to [@figgaro](https://github.com/figgaro)
 * [#793](https://github.com/nghuuphuoc/bootstrapvalidator/pull/793), [#798](https://github.com/nghuuphuoc/bootstrapvalidator/pull/798): Add Chinese citizen ID validator, thanks to [@shamiao](https://github.com/shamiao)
 * [#793](https://github.com/nghuuphuoc/bootstrapvalidator/pull/793), [#798](https://github.com/nghuuphuoc/bootstrapvalidator/pull/798): Add Chinese citizen ID validator, thanks to [@shamiao](https://github.com/shamiao)
-* [#802](https://github.com/nghuuphuoc/bootstrapvalidator/pull/802): Add Russia phone number validator, thanks to [@cylon-v](https://github.com/cylon-v)
+* [#802](https://github.com/nghuuphuoc/bootstrapvalidator/pull/802): Add Russia phone number validator, thanks to [@cylon-v](https://github.com/cylon-v). [#816](https://github.com/nghuuphuoc/bootstrapvalidator/pull/816): Improved by [@stepin](https://github.com/stepin)
+* [#816](https://github.com/nghuuphuoc/bootstrapvalidator/pull/816): Add Russian postal code validator, thanks to [@stepin](https://github.com/stepin)
 
 
 __Changes__
 __Changes__
 * [#753](https://github.com/nghuuphuoc/bootstrapvalidator/issues/753): Change the default type of [remote](http://bootstrapvalidator.com/validators/remote/) validator to GET
 * [#753](https://github.com/nghuuphuoc/bootstrapvalidator/issues/753): Change the default type of [remote](http://bootstrapvalidator.com/validators/remote/) validator to GET
@@ -45,6 +46,7 @@ __Bug Fixes__
 * [#759](https://github.com/nghuuphuoc/bootstrapvalidator/issues/759), [#764](https://github.com/nghuuphuoc/bootstrapvalidator/pull/764): The tooltip/popover isn't shown if there is disabled validator.
 * [#759](https://github.com/nghuuphuoc/bootstrapvalidator/issues/759), [#764](https://github.com/nghuuphuoc/bootstrapvalidator/pull/764): The tooltip/popover isn't shown if there is disabled validator.
 The tooltip/popover is shown automatically when the field gets the focus, thanks to [@leedorian](https://github.com/leedorian)
 The tooltip/popover is shown automatically when the field gets the focus, thanks to [@leedorian](https://github.com/leedorian)
 * [#797](https://github.com/nghuuphuoc/bootstrapvalidator/issues/797), [#799](https://github.com/nghuuphuoc/bootstrapvalidator/pull/799): Can't validate ipv4 and ipv6 at the same time. Add ip validator test suite, thanks to [@Arkni](https://github.com/Arkni)
 * [#797](https://github.com/nghuuphuoc/bootstrapvalidator/issues/797), [#799](https://github.com/nghuuphuoc/bootstrapvalidator/pull/799): Can't validate ipv4 and ipv6 at the same time. Add ip validator test suite, thanks to [@Arkni](https://github.com/Arkni)
+* [#816](https://github.com/nghuuphuoc/bootstrapvalidator/pull/816): Fix Russian [VAT](http://bootstrapvalidator.com/validators/vat/) number validator, thanks to [@stepin](https://github.com/stepin)
 
 
 __Document__
 __Document__
 * [#709](https://github.com/nghuuphuoc/bootstrapvalidator/issues/709), [#715](https://github.com/nghuuphuoc/bootstrapvalidator/pull/715): Add [Bootstrap Select](http://bootstrapvalidator.com/examples/bootstrap-select/) and [Select2](http://bootstrapvalidator.com/examples/select2/) examples, thanks to [@Arkni](https://github.com/Arkni)
 * [#709](https://github.com/nghuuphuoc/bootstrapvalidator/issues/709), [#715](https://github.com/nghuuphuoc/bootstrapvalidator/pull/715): Add [Bootstrap Select](http://bootstrapvalidator.com/examples/bootstrap-select/) and [Select2](http://bootstrapvalidator.com/examples/select2/) examples, thanks to [@Arkni](https://github.com/Arkni)
@@ -58,7 +60,7 @@ __Language Packages__
 * [#787](https://github.com/nghuuphuoc/bootstrapvalidator/pull/787): Thai language package, thanks to [@figgaro](https://github.com/figgaro)
 * [#787](https://github.com/nghuuphuoc/bootstrapvalidator/pull/787): Thai language package, thanks to [@figgaro](https://github.com/figgaro)
 * [#788](https://github.com/nghuuphuoc/bootstrapvalidator/pull/788): Fully re-translated Simplified Chinese language package, thanks to [@shamiao](https://github.com/shamiao)
 * [#788](https://github.com/nghuuphuoc/bootstrapvalidator/pull/788): Fully re-translated Simplified Chinese language package, thanks to [@shamiao](https://github.com/shamiao)
 * [#795](https://github.com/nghuuphuoc/bootstrapvalidator/pull/795): Re-translated traditional Chinese language package, thanks to [@tureki](https://github.com/tureki)
 * [#795](https://github.com/nghuuphuoc/bootstrapvalidator/pull/795): Re-translated traditional Chinese language package, thanks to [@tureki](https://github.com/tureki)
-* [#802](https://github.com/nghuuphuoc/bootstrapvalidator/pull/802): Russian language package, thanks to [@cylon-v](https://github.com/cylon-v)
+* [#802](https://github.com/nghuuphuoc/bootstrapvalidator/pull/802): Russian language package, thanks to [@cylon-v](https://github.com/cylon-v). [#816](https://github.com/nghuuphuoc/bootstrapvalidator/pull/816): Improved by [@stepin](https://github.com/stepin)
 * [#806](https://github.com/nghuuphuoc/bootstrapvalidator/pull/806): Ukrainian language package, thanks to [@oleg-voloshyn](https://github.com/oleg-voloshyn)
 * [#806](https://github.com/nghuuphuoc/bootstrapvalidator/pull/806): Ukrainian language package, thanks to [@oleg-voloshyn](https://github.com/oleg-voloshyn)
 
 
 ## v0.5.1 (2014-08-22)
 ## v0.5.1 (2014-08-22)

+ 1 - 0
CONTRIBUTORS.md

@@ -77,6 +77,7 @@ I would like to give big thanks to the following contributors:
 * [@shamiao](https://github.com/shamiao)
 * [@shamiao](https://github.com/shamiao)
 * [@smeagol74](https://github.com/smeagol74)
 * [@smeagol74](https://github.com/smeagol74)
 * [@stephengreentree](https://github.com/stephengreentree)
 * [@stephengreentree](https://github.com/stephengreentree)
+* [@stepin](https://github.com/stepin)
 * [@talberti](https://github.com/talberti)
 * [@talberti](https://github.com/talberti)
 * [@thisisclement](https://github.com/thisisclement)
 * [@thisisclement](https://github.com/thisisclement)
 * [@tiagofontella](https://github.com/tiagofontella)
 * [@tiagofontella](https://github.com/tiagofontella)

+ 1 - 1
dist/css/bootstrapValidator.min.css

@@ -2,7 +2,7 @@
  * BootstrapValidator (http://bootstrapvalidator.com)
  * BootstrapValidator (http://bootstrapvalidator.com)
  * The best jQuery plugin to validate form fields. Designed to use with Bootstrap 3
  * The best jQuery plugin to validate form fields. Designed to use with Bootstrap 3
  *
  *
- * @version     v0.5.2-dev, built on 2014-09-10 7:47:26 PM
+ * @version     v0.5.2-dev, built on 2014-09-11 8:04:50 AM
  * @author      https://twitter.com/nghuuphuoc
  * @author      https://twitter.com/nghuuphuoc
  * @copyright   (c) 2013 - 2014 Nguyen Huu Phuoc
  * @copyright   (c) 2013 - 2014 Nguyen Huu Phuoc
  * @license     MIT
  * @license     MIT

+ 11 - 6
dist/js/bootstrapValidator.js

@@ -2,7 +2,7 @@
  * BootstrapValidator (http://bootstrapvalidator.com)
  * BootstrapValidator (http://bootstrapvalidator.com)
  * The best jQuery plugin to validate form fields. Designed to use with Bootstrap 3
  * The best jQuery plugin to validate form fields. Designed to use with Bootstrap 3
  *
  *
- * @version     v0.5.2-dev, built on 2014-09-10 7:47:26 PM
+ * @version     v0.5.2-dev, built on 2014-09-11 8:04:50 AM
  * @author      https://twitter.com/nghuuphuoc
  * @author      https://twitter.com/nghuuphuoc
  * @copyright   (c) 2013 - 2014 Nguyen Huu Phuoc
  * @copyright   (c) 2013 - 2014 Nguyen Huu Phuoc
  * @license     MIT
  * @license     MIT
@@ -5487,7 +5487,7 @@ if (typeof jQuery === 'undefined') {
 
 
                 case 'RU':
                 case 'RU':
                     // http://regex101.com/r/gW7yT5/5
                     // http://regex101.com/r/gW7yT5/5
-                    isValid = (/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/g).test(value);
+                    isValid = (/^((8|\+7|007)[\-\.\/ ]?)?([\(\/\.]?\d{3}[\)\/\.]?[\-\.\/ ]?)?[\d\-\.\/ ]{7,10}$/g).test(value);
                     break;
                     break;
 
 
                 case 'TH':
                 case 'TH':
@@ -5933,7 +5933,7 @@ if (typeof jQuery === 'undefined') {
             if (minLength) {
             if (minLength) {
                 options.min = parseInt(minLength, 10);
                 options.min = parseInt(minLength, 10);
             }
             }
-            
+
             return $.isEmptyObject(options) ? false : options;
             return $.isEmptyObject(options) ? false : options;
         },
         },
 
 
@@ -7365,10 +7365,10 @@ if (typeof jQuery === 'undefined') {
          * @returns {Boolean}
          * @returns {Boolean}
          */
          */
         _ru: function(value) {
         _ru: function(value) {
-            if (/^RU([0-9]{9}|[0-9]{12})$/.test(value)) {
+            if (/^RU([0-9]{10}|[0-9]{12})$/.test(value)) {
                 value = value.substr(2);
                 value = value.substr(2);
             }
             }
-            if (!/^([0-9]{9}|[0-9]{12})$/.test(value)) {
+            if (!/^([0-9]{10}|[0-9]{12})$/.test(value)) {
                 return false;
                 return false;
             }
             }
 
 
@@ -7627,6 +7627,7 @@ if (typeof jQuery === 'undefined') {
             MA: 'Morocco',
             MA: 'Morocco',
             NL: 'Netherlands',
             NL: 'Netherlands',
             RO: 'Romania',
             RO: 'Romania',
+            RU: 'Russia',
             SE: 'Sweden',
             SE: 'Sweden',
             SG: 'Singapore',
             SG: 'Singapore',
             US: 'USA'
             US: 'USA'
@@ -7639,7 +7640,7 @@ if (typeof jQuery === 'undefined') {
             country: 'country'
             country: 'country'
         },
         },
 
 
-        COUNTRY_CODES: ['BR', 'CA', 'DK', 'GB', 'IT', 'MA', 'NL', 'RO', 'SE', 'SG', 'US'],
+        COUNTRY_CODES: ['BR', 'CA', 'DK', 'GB', 'IT', 'MA', 'NL', 'RO', 'RU', 'SE', 'SG', 'US'],
 
 
         /**
         /**
          * Return true if and only if the input value is a valid country zip code
          * Return true if and only if the input value is a valid country zip code
@@ -7718,6 +7719,10 @@ if (typeof jQuery === 'undefined') {
                     isValid = /^(0[1-8]{1}|[1-9]{1}[0-5]{1})?[0-9]{4}$/i.test(value);
                     isValid = /^(0[1-8]{1}|[1-9]{1}[0-5]{1})?[0-9]{4}$/i.test(value);
                     break;
                     break;
 
 
+                case 'RU':
+                    isValid = /^[0-9]{6}$/i.test(value);
+                    break;
+
                 case 'SE':
                 case 'SE':
                     isValid = /^(S-)?\d{3}\s?\d{2}$/i.test(value);
                     isValid = /^(S-)?\d{3}\s?\d{2}$/i.test(value);
                     break;
                     break;

File diff suppressed because it is too large
+ 3 - 3
dist/js/bootstrapValidator.min.js


+ 1 - 0
dist/js/language/ar_MA.js

@@ -343,6 +343,7 @@
                 MA: 'المغرب',
                 MA: 'المغرب',
                 NL: 'هولندا',
                 NL: 'هولندا',
                 RO: 'رومانيا',
                 RO: 'رومانيا',
+                RU: 'روسيا',
                 SE: 'السويد',
                 SE: 'السويد',
                 SG: 'سنغافورة',
                 SG: 'سنغافورة',
                 US: 'الولايات المتحدة'
                 US: 'الولايات المتحدة'

+ 1 - 0
dist/js/language/be_FR.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Pays-Bas',
                 NL: 'Pays-Bas',
                 RO: 'Roumanie',
                 RO: 'Roumanie',
+                RU: 'Russie',
                 SE: 'Suède',
                 SE: 'Suède',
                 SG: 'Singapour',
                 SG: 'Singapour',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/be_NL.js

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Nederland',
                 NL: 'Nederland',
                 RO: 'Roemenië',
                 RO: 'Roemenië',
+                RU: 'Rusland',
                 SE: 'Zweden',
                 SE: 'Zweden',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'VS'
                 US: 'VS'

+ 1 - 0
dist/js/language/bg_BG.js

@@ -343,6 +343,7 @@
                 MA: 'Мароко',
                 MA: 'Мароко',
                 NL: 'Холандия',
                 NL: 'Холандия',
                 RO: 'Румъния',
                 RO: 'Румъния',
+                RU: 'Русия',
                 SE: 'Швеция',
                 SE: 'Швеция',
                 SG: 'Сингапур',
                 SG: 'Сингапур',
                 US: 'САЩ'
                 US: 'САЩ'

+ 1 - 0
dist/js/language/cs_CZ.js

@@ -343,6 +343,7 @@
                 MA: 'Maroko',
                 MA: 'Maroko',
                 NL: 'Nizozemí',
                 NL: 'Nizozemí',
                 RO: 'Rumunsko',
                 RO: 'Rumunsko',
+                RU: 'Rusko',
                 SE: 'Švédsko',
                 SE: 'Švédsko',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Spojené Státy Americké'
                 US: 'Spojené Státy Americké'

+ 1 - 0
dist/js/language/da_DK.js

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Holland',
                 NL: 'Holland',
                 RO: 'Rumænien',
                 RO: 'Rumænien',
+                RU: 'Rusland',
                 SE: 'Sverige',
                 SE: 'Sverige',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/de_DE.js

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Niederlande',
                 NL: 'Niederlande',
                 RO: 'Rumänien',
                 RO: 'Rumänien',
+                RU: 'Russland',
                 SE: 'Schweden',
                 SE: 'Schweden',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Vereinigte Staaten von Amerika'
                 US: 'Vereinigte Staaten von Amerika'

+ 1 - 0
dist/js/language/en_US.js

@@ -343,6 +343,7 @@
                 MA: 'Morocco',
                 MA: 'Morocco',
                 NL: 'Netherlands',
                 NL: 'Netherlands',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Russia',
                 SE: 'Sweden',
                 SE: 'Sweden',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/es_CL.js

@@ -343,6 +343,7 @@
                 MA: 'Marruecos',
                 MA: 'Marruecos',
                 NL: 'Países Bajos',
                 NL: 'Países Bajos',
                 RO: 'Rumanía',
                 RO: 'Rumanía',
+                RU: 'Rusa',
                 SE: 'Suecia',
                 SE: 'Suecia',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Estados Unidos'
                 US: 'Estados Unidos'

+ 1 - 0
dist/js/language/es_ES.js

@@ -343,6 +343,7 @@
                 MA: 'Marruecos',
                 MA: 'Marruecos',
                 NL: 'Países Bajos',
                 NL: 'Países Bajos',
                 RO: 'Rumanía',
                 RO: 'Rumanía',
+                RU: 'Rusa',
                 SE: 'Suecia',
                 SE: 'Suecia',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Estados Unidos'
                 US: 'Estados Unidos'

+ 1 - 0
dist/js/language/fa_IR.js

@@ -343,6 +343,7 @@
                 MA: 'مراکش',
                 MA: 'مراکش',
                 NL: 'هلند',
                 NL: 'هلند',
                 RO: 'رومانی',
                 RO: 'رومانی',
+                RU: 'روسیه',
                 SE: 'سوئد',
                 SE: 'سوئد',
                 SG: 'سنگاپور',
                 SG: 'سنگاپور',
                 US: 'ایالات متحده'
                 US: 'ایالات متحده'

+ 1 - 0
dist/js/language/fr_FR.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Pays-Bas',
                 NL: 'Pays-Bas',
                 RO: 'Roumanie',
                 RO: 'Roumanie',
+                RU: 'Russie',
                 SE: 'Suède',
                 SE: 'Suède',
                 SG: 'Singapour',
                 SG: 'Singapour',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/gr_EL.js

@@ -343,6 +343,7 @@
                 MA: 'Μαρόκο',
                 MA: 'Μαρόκο',
                 NL: 'Ολλανδία',
                 NL: 'Ολλανδία',
                 RO: 'Ρουμανία',
                 RO: 'Ρουμανία',
+                RU: 'Ρωσία',
                 SE: 'Σουηδία',
                 SE: 'Σουηδία',
                 SG: 'Σιγκαπούρη',
                 SG: 'Σιγκαπούρη',
                 US: 'ΗΠΑ'
                 US: 'ΗΠΑ'

+ 1 - 0
dist/js/language/hu_HU.js

@@ -343,6 +343,7 @@
                 MA: 'marokkó',
                 MA: 'marokkó',
                 NL: 'holland',
                 NL: 'holland',
                 RO: 'románia',
                 RO: 'románia',
+                RU: 'orosz',
                 SE: 'svájci',
                 SE: 'svájci',
                 SG: 'singaporei',
                 SG: 'singaporei',
                 US: 'Egyesült Államok beli'
                 US: 'Egyesült Államok beli'

+ 1 - 0
dist/js/language/it_IT.js

@@ -343,6 +343,7 @@
                 MA: 'Marocco',
                 MA: 'Marocco',
                 NL: 'Paesi Bassi',
                 NL: 'Paesi Bassi',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Russia',
                 SE: 'Svezia',
                 SE: 'Svezia',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'Stati Uniti d\'America'
                 US: 'Stati Uniti d\'America'

+ 1 - 0
dist/js/language/ja_JP.js

@@ -343,6 +343,7 @@
                 MA: 'モロッコ',
                 MA: 'モロッコ',
                 NL: 'オランダ',
                 NL: 'オランダ',
                 RO: 'ルーマニア',
                 RO: 'ルーマニア',
+                RU: 'ロシア',
                 SE: 'スウェーデン',
                 SE: 'スウェーデン',
                 SG: 'シンガポール',
                 SG: 'シンガポール',
                 US: 'アメリカ'
                 US: 'アメリカ'

+ 1 - 0
dist/js/language/nl_NL.js

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Nederland',
                 NL: 'Nederland',
                 RO: 'Roemenië',
                 RO: 'Roemenië',
+                RU: 'Rusland',
                 SE: 'Zweden',
                 SE: 'Zweden',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'VS'
                 US: 'VS'

+ 1 - 0
dist/js/language/pl_PL.js

@@ -343,6 +343,7 @@
                 MA: 'Maroko',
                 MA: 'Maroko',
                 NL: 'Holandia',
                 NL: 'Holandia',
                 RO: 'Rumunia',
                 RO: 'Rumunia',
+                RU: 'Rosja',
                 SE: 'Szwecja',
                 SE: 'Szwecja',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/pt_BR.js

@@ -343,6 +343,7 @@
                 MA: 'Marrocos',
                 MA: 'Marrocos',
                 NL: 'Holanda',
                 NL: 'Holanda',
                 RO: 'Roménia',
                 RO: 'Roménia',
+                RU: 'Rússia',
                 SE: 'Suécia',
                 SE: 'Suécia',
                 SG: 'Cingapura',
                 SG: 'Cingapura',
                 US: 'EUA'
                 US: 'EUA'

+ 1 - 0
dist/js/language/ro_RO.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Olanda',
                 NL: 'Olanda',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Rusia',
                 SE: 'Suedia',
                 SE: 'Suedia',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'SUA'
                 US: 'SUA'

+ 68 - 67
dist/js/language/ru_RU.js

@@ -1,69 +1,69 @@
 (function($) {
 (function($) {
     /**
     /**
      * Russian language package
      * Russian language package
-     * Translated by @cylon-v
+     * Translated by @cylon-v. Improved by @stepin
      */
      */
     $.fn.bootstrapValidator.i18n = $.extend(true, $.fn.bootstrapValidator.i18n, {
     $.fn.bootstrapValidator.i18n = $.extend(true, $.fn.bootstrapValidator.i18n, {
         base64: {
         base64: {
-            'default': 'Пожалуйста введите корректную строку base64'
+            'default': 'Пожалуйста, введите корректную строку base64'
         },
         },
         between: {
         between: {
-            'default': 'Пожалуйста введите значение от %s до %s',
-            notInclusive: 'Пожалуйста введите значение между %s и %s'
+            'default': 'Пожалуйста, введите значение от %s до %s',
+            notInclusive: 'Пожалуйста, введите значение между %s и %s'
         },
         },
         callback: {
         callback: {
-            'default': 'Пожалуйста введите корректное значение'
+            'default': 'Пожалуйста, введите корректное значение'
         },
         },
         choice: {
         choice: {
-            'default': 'Пожалуйста введите корректное значение',
-            less: 'Пожалуйста выберите хотя бы %s опций',
-            more: 'Пожалуйста выберите не больше %s опций',
-            between: 'Пожалуйста выберите %s - %s опций'
+            'default': 'Пожалуйста, введите корректное значение',
+            less: 'Пожалуйста, выберите хотя бы %s опций',
+            more: 'Пожалуйста, выберите не больше %s опций',
+            between: 'Пожалуйста, выберите %s-%s опций'
         },
         },
         creditCard: {
         creditCard: {
-            'default': 'Пожалуйста введите правильный номер кредитной карты'
+            'default': 'Пожалуйста, введите правильный номер кредитной карты'
         },
         },
         cusip: {
         cusip: {
-            'default': 'Пожалуйста введите правильный номер CUSIP'
+            'default': 'Пожалуйста, введите правильный номер CUSIP'
         },
         },
         cvv: {
         cvv: {
-            'default': 'Пожалуйста введите правильный номер CVV'
+            'default': 'Пожалуйста, введите правильный номер CVV'
         },
         },
         date: {
         date: {
-            'default': 'Пожалуйста введите правильную дату'
+            'default': 'Пожалуйста, введите правильную дату'
         },
         },
         different: {
         different: {
-            'default': 'Пожалуйста введите другое значение'
+            'default': 'Пожалуйста, введите другое значение'
         },
         },
         digits: {
         digits: {
-             'default': 'Пожалуйста введите только цифры'
+             'default': 'Пожалуйста, введите только цифры'
         },
         },
         ean: {
         ean: {
-            'default': 'Пожалуйста введите правильный номер EAN'
+            'default': 'Пожалуйста, введите правильный номер EAN'
         },
         },
         emailAddress: {
         emailAddress: {
-            'default': 'Пожалуйста введите правильный адрес e-mail'
+            'default': 'Пожалуйста, введите правильный адрес эл. почты'
         },
         },
         file: {
         file: {
-            'default': 'Пожалуйста выберите файл'
+            'default': 'Пожалуйста, выберите файл'
         },
         },
         greaterThan: {
         greaterThan: {
-            'default': 'Пожалуйста введите значение большее или равное %s',
-            notInclusive: 'Пожалуйста введите значение больше %s'
+            'default': 'Пожалуйста, введите значение большее или равное %s',
+            notInclusive: 'Пожалуйста, введите значение больше %s'
         },
         },
         grid: {
         grid: {
-            'default': 'Пожалуйста введите правильный номер GRId'
+            'default': 'Пожалуйста, введите правильный номер GRId'
         },
         },
         hex: {
         hex: {
-            'default': 'Пожалуйста введите правильный шестнадцатиричный номер'
+            'default': 'Пожалуйста, введите правильное шестнадцатиричное число'
         },
         },
         hexColor: {
         hexColor: {
-            'default': 'Пожалуйста введите правильный шестнадцатиричный номер цвета'
+            'default': 'Пожалуйста, введите правильный шестнадцатиричный номер цвета'
         },
         },
         iban: {
         iban: {
-            'default': 'Пожалуйста введите правильный номер IBAN',
+            'default': 'Пожалуйста, введите правильный номер IBAN',
             countryNotSupported: 'Код страны %s не поддерживается',
             countryNotSupported: 'Код страны %s не поддерживается',
-            country: 'Пожалуйста введите правильный номер IBAN в %s',
+            country: 'Пожалуйста, введите правильный номер IBAN в %s',
             countries: {
             countries: {
                 AD: 'Андорре',
                 AD: 'Андорре',
                 AE: 'Объединённых Арабских Эмиратах',
                 AE: 'Объединённых Арабских Эмиратах',
@@ -147,9 +147,9 @@
             }
             }
         },
         },
         id: {
         id: {
-            'default': 'Пожалуйста введите правильный идентификационный номер',
+            'default': 'Пожалуйста, введите правильный идентификационный номер',
             countryNotSupported: 'Код страны %s не поддерживается',
             countryNotSupported: 'Код страны %s не поддерживается',
-            country: 'Пожалуйста введите правильный идентификационный номер в %s',
+            country: 'Пожалуйста, введите правильный идентификационный номер в %s',
             countries: {
             countries: {
                 BA: 'Боснии и Герцеговине',
                 BA: 'Боснии и Герцеговине',
                 BG: 'Болгарии',
                 BG: 'Болгарии',
@@ -181,54 +181,54 @@
             }
             }
         },
         },
         identical: {
         identical: {
-            'default': 'Пожалуйста введите такое же значение'
+            'default': 'Пожалуйста, введите такое же значение'
         },
         },
         imei: {
         imei: {
-            'default': 'Пожалуйста введите правильный номер IMEI'
+            'default': 'Пожалуйста, введите правильный номер IMEI'
         },
         },
         imo: {
         imo: {
-            'default': 'Пожалуйста введите правильный номер IMO'
+            'default': 'Пожалуйста, введите правильный номер IMO'
         },
         },
         integer: {
         integer: {
-            'default': 'Пожалуйста введите правильный целое значение'
+            'default': 'Пожалуйста, введите правильное целое число'
         },
         },
         ip: {
         ip: {
-            'default': 'Пожалуйста введите правильный IP-адрес',
-            ipv4: 'Пожалуйста введите правильный IPv4-адрес',
-            ipv6: 'Пожалуйста введите правильный IPv6-адрес'
+            'default': 'Пожалуйста, введите правильный IP-адрес',
+            ipv4: 'Пожалуйста, введите правильный IPv4-адрес',
+            ipv6: 'Пожалуйста, введите правильный IPv6-адрес'
         },
         },
         isbn: {
         isbn: {
-            'default': 'Пожалуйста введите правильный номер ISBN'
+            'default': 'Пожалуйста, введите правильный номер ISBN'
         },
         },
         isin: {
         isin: {
-            'default': 'Пожалуйста введите правильный номер ISIN'
+            'default': 'Пожалуйста, введите правильный номер ISIN'
         },
         },
         ismn: {
         ismn: {
-            'default': 'Пожалуйста введите правильный номер ISMN'
+            'default': 'Пожалуйста, введите правильный номер ISMN'
         },
         },
         issn: {
         issn: {
-            'default': 'Пожалуйста введите правильный номер ISSN'
+            'default': 'Пожалуйста, введите правильный номер ISSN'
         },
         },
         lessThan: {
         lessThan: {
-            'default': 'Пожалуйста введите значение меньшее или равное %s',
-            notInclusive: 'Пожалуйста введите значение меньше %s'
+            'default': 'Пожалуйста, введите значение меньшее или равное %s',
+            notInclusive: 'Пожалуйста, введите значение меньше %s'
         },
         },
         mac: {
         mac: {
-            'default': 'Пожалуйста введите правильный MAC-адрес'
+            'default': 'Пожалуйста, введите правильный MAC-адрес'
         },
         },
         meid: {
         meid: {
-            'default': 'Пожалуйста введите правильный номер MEID'
+            'default': 'Пожалуйста, введите правильный номер MEID'
         },
         },
         notEmpty: {
         notEmpty: {
-            'default': 'Пожалуйста введите значение'
+            'default': 'Пожалуйста, введите значение'
         },
         },
         numeric: {
         numeric: {
-            'default': 'Пожалуйста введите корректное действительное число'
+            'default': 'Пожалуйста, введите корректное действительное число'
         },
         },
         phone: {
         phone: {
-            'default': 'Пожалуйста введите правильный номер телефона',
+            'default': 'Пожалуйста, введите правильный номер телефона',
             countryNotSupported: 'Код страны %s не поддерживается',
             countryNotSupported: 'Код страны %s не поддерживается',
-            country: 'Пожалуйста введите правильный номер телефона в %s',
+            country: 'Пожалуйста, введите правильный номер телефона в %s',
             countries: {
             countries: {
                 BR: 'Бразилии',
                 BR: 'Бразилии',
                 CN: 'Китае',
                 CN: 'Китае',
@@ -246,47 +246,47 @@
             }
             }
         },
         },
         regexp: {
         regexp: {
-            'default': 'Пожалуйста введите значение соответствующее шаблону'
+            'default': 'Пожалуйста, введите значение соответствующее шаблону'
         },
         },
         remote: {
         remote: {
-            'default': 'Пожалуйста введите правильное значение'
+            'default': 'Пожалуйста, введите правильное значение'
         },
         },
         rtn: {
         rtn: {
-            'default': 'Пожалуйста введите правильный номер RTN'
+            'default': 'Пожалуйста, введите правильный номер RTN'
         },
         },
         sedol: {
         sedol: {
-            'default': 'Пожалуйста введите правильный номер SEDOL'
+            'default': 'Пожалуйста, введите правильный номер SEDOL'
         },
         },
         siren: {
         siren: {
-            'default': 'Пожалуйста введите правильный номер SIREN'
+            'default': 'Пожалуйста, введите правильный номер SIREN'
         },
         },
         siret: {
         siret: {
-            'default': 'Пожалуйста введите правильный номер SIRET'
+            'default': 'Пожалуйста, введите правильный номер SIRET'
         },
         },
         step: {
         step: {
-            'default': 'Пожалуйста введите правильный шаг %s'
+            'default': 'Пожалуйста, введите правильный шаг %s'
         },
         },
         stringCase: {
         stringCase: {
-            'default': 'Пожалуйста вводите только строчные буквы',
-            upper: 'Пожалуйста вводите только заглавные буквы'
+            'default': 'Пожалуйста, вводите только строчные буквы',
+            upper: 'Пожалуйста, вводите только заглавные буквы'
         },
         },
         stringLength: {
         stringLength: {
-            'default': 'Пожалуйста введите значение корректной длины',
-            less: 'Пожалуйста введите не больше %s символов',
-            more: 'Пожалуйста введите не меньше %s символов',
-            between: 'Пожалуйста введите строку длиной от %s до %s символов'
+            'default': 'Пожалуйста, введите значение корректной длины',
+            less: 'Пожалуйста, введите не больше %s символов',
+            more: 'Пожалуйста, введите не меньше %s символов',
+            between: 'Пожалуйста, введите строку длиной от %s до %s символов'
         },
         },
         uri: {
         uri: {
-            'default': 'Пожалуйста введите правильный URI'
+            'default': 'Пожалуйста, введите правильный URI'
         },
         },
         uuid: {
         uuid: {
-            'default': 'Пожалуйста введите правильный номер UUID',
-            version: 'Пожалуйста введите правильный номер UUID версии %s'
+            'default': 'Пожалуйста, введите правильный номер UUID',
+            version: 'Пожалуйста, введите правильный номер UUID версии %s'
         },
         },
         vat: {
         vat: {
-            'default': 'Пожалуйста введите правильный номер VAT',
+            'default': 'Пожалуйста, введите правильный номер ИНН',
             countryNotSupported: 'Код страны %s не поддерживается',
             countryNotSupported: 'Код страны %s не поддерживается',
-            country: 'Пожалуйста введите правильный номер VAT в %s',
+            country: 'Пожалуйста, введите правильный номер ИНН (VAT) в %s',
             countries: {
             countries: {
                 AT: 'Австрии',
                 AT: 'Австрии',
                 BE: 'Бельгии',
                 BE: 'Бельгии',
@@ -328,12 +328,12 @@
             }
             }
         },
         },
         vin: {
         vin: {
-            'default': 'Пожалуйста введите правильный номер VIN'
+            'default': 'Пожалуйста, введите правильный номер VIN'
         },
         },
         zipCode: {
         zipCode: {
-            'default': 'Пожалуйста введите правильный почтовый индекс',
+            'default': 'Пожалуйста, введите правильный почтовый индекс',
             countryNotSupported: 'Код страны %s не поддерживается',
             countryNotSupported: 'Код страны %s не поддерживается',
-            country: 'Пожалуйста введите правильный почтовый индекс в %s',
+            country: 'Пожалуйста, введите правильный почтовый индекс в %s',
             countries: {
             countries: {
                 BR: 'Бразилии',
                 BR: 'Бразилии',
                 CA: 'Канаде',
                 CA: 'Канаде',
@@ -343,6 +343,7 @@
                 MA: 'Марокко',
                 MA: 'Марокко',
                 NL: 'Нидерландах',
                 NL: 'Нидерландах',
                 RO: 'Румынии',
                 RO: 'Румынии',
+                RU: 'России',
                 SE: 'Швеции',
                 SE: 'Швеции',
                 SG: 'Сингапуре',
                 SG: 'Сингапуре',
                 US: 'США'
                 US: 'США'

+ 1 - 0
dist/js/language/sv_SE.js

@@ -343,6 +343,7 @@
                 MA: 'Marocko',
                 MA: 'Marocko',
                 NL: 'Nederländerna',
                 NL: 'Nederländerna',
                 RO: 'Rumänien',
                 RO: 'Rumänien',
+                RU: 'Ryssland',
                 SE: 'Sverige',
                 SE: 'Sverige',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
dist/js/language/th_TH.js

@@ -343,6 +343,7 @@
                 MA: 'โมร็อกโก',
                 MA: 'โมร็อกโก',
                 NL: 'เนเธอร์แลนด์',
                 NL: 'เนเธอร์แลนด์',
                 RO: 'โรมาเนีย',
                 RO: 'โรมาเนีย',
+                RU: 'รัสเซีย',
                 SE: 'สวีเดน',
                 SE: 'สวีเดน',
                 SG: 'สิงคโปร์',
                 SG: 'สิงคโปร์',
                 US: 'สหรัฐอเมริกา'
                 US: 'สหรัฐอเมริกา'

+ 1 - 0
dist/js/language/tr_TR.js

@@ -343,6 +343,7 @@
                 MA: 'Fas',
                 MA: 'Fas',
                 NL: 'Hollanda',
                 NL: 'Hollanda',
                 RO: 'Romanya',
                 RO: 'Romanya',
+                RU: 'Rusya',
                 SE: 'İsveç',
                 SE: 'İsveç',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Amerika Birleşik Devletleri'
                 US: 'Amerika Birleşik Devletleri'

+ 1 - 0
dist/js/language/ua_UA.js

@@ -343,6 +343,7 @@
                 MA: 'Марокко',
                 MA: 'Марокко',
                 NL: 'Нідерландах',
                 NL: 'Нідерландах',
                 RO: 'Румунії',
                 RO: 'Румунії',
+                RU: 'Росії',
                 SE: 'Швеції',
                 SE: 'Швеції',
                 SG: 'Сингапурі',
                 SG: 'Сингапурі',
                 US: 'США'
                 US: 'США'

+ 1 - 0
dist/js/language/vi_VN.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Hà Lan',
                 NL: 'Hà Lan',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Nga',
                 SE: 'Thuỵ Sĩ',
                 SE: 'Thuỵ Sĩ',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'Mỹ'
                 US: 'Mỹ'

+ 1 - 0
dist/js/language/zh_CN.js

@@ -343,6 +343,7 @@
                 MA: '摩洛哥',
                 MA: '摩洛哥',
                 NL: '荷兰',
                 NL: '荷兰',
                 RO: '罗马尼亚',
                 RO: '罗马尼亚',
+                RU: '俄罗斯',
                 SE: '瑞典',
                 SE: '瑞典',
                 SG: '新加坡',
                 SG: '新加坡',
                 US: '美国'
                 US: '美国'

+ 1 - 0
dist/js/language/zh_TW.js

@@ -343,6 +343,7 @@
                 MA: '摩洛哥',
                 MA: '摩洛哥',
                 NL: '荷蘭',
                 NL: '荷蘭',
                 RO: '羅馬尼亞',
                 RO: '羅馬尼亞',
+                RU: '俄羅斯',
                 SE: '瑞典',
                 SE: '瑞典',
                 SG: '新加坡',
                 SG: '新加坡',
                 US: '美國'
                 US: '美國'

+ 1 - 0
src/js/language/ar_MA.js

@@ -343,6 +343,7 @@
                 MA: 'المغرب',
                 MA: 'المغرب',
                 NL: 'هولندا',
                 NL: 'هولندا',
                 RO: 'رومانيا',
                 RO: 'رومانيا',
+                RU: 'روسيا',
                 SE: 'السويد',
                 SE: 'السويد',
                 SG: 'سنغافورة',
                 SG: 'سنغافورة',
                 US: 'الولايات المتحدة'
                 US: 'الولايات المتحدة'

+ 1 - 0
src/js/language/be_FR.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Pays-Bas',
                 NL: 'Pays-Bas',
                 RO: 'Roumanie',
                 RO: 'Roumanie',
+                RU: 'Russie',
                 SE: 'Suède',
                 SE: 'Suède',
                 SG: 'Singapour',
                 SG: 'Singapour',
                 US: 'USA'
                 US: 'USA'

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

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Nederland',
                 NL: 'Nederland',
                 RO: 'Roemenië',
                 RO: 'Roemenië',
+                RU: 'Rusland',
                 SE: 'Zweden',
                 SE: 'Zweden',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'VS'
                 US: 'VS'

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

@@ -343,6 +343,7 @@
                 MA: 'Мароко',
                 MA: 'Мароко',
                 NL: 'Холандия',
                 NL: 'Холандия',
                 RO: 'Румъния',
                 RO: 'Румъния',
+                RU: 'Русия',
                 SE: 'Швеция',
                 SE: 'Швеция',
                 SG: 'Сингапур',
                 SG: 'Сингапур',
                 US: 'САЩ'
                 US: 'САЩ'

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

@@ -343,6 +343,7 @@
                 MA: 'Maroko',
                 MA: 'Maroko',
                 NL: 'Nizozemí',
                 NL: 'Nizozemí',
                 RO: 'Rumunsko',
                 RO: 'Rumunsko',
+                RU: 'Rusko',
                 SE: 'Švédsko',
                 SE: 'Švédsko',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Spojené Státy Americké'
                 US: 'Spojené Státy Americké'

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

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Holland',
                 NL: 'Holland',
                 RO: 'Rumænien',
                 RO: 'Rumænien',
+                RU: 'Rusland',
                 SE: 'Sverige',
                 SE: 'Sverige',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'USA'
                 US: 'USA'

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

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Niederlande',
                 NL: 'Niederlande',
                 RO: 'Rumänien',
                 RO: 'Rumänien',
+                RU: 'Russland',
                 SE: 'Schweden',
                 SE: 'Schweden',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Vereinigte Staaten von Amerika'
                 US: 'Vereinigte Staaten von Amerika'

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

@@ -343,6 +343,7 @@
                 MA: 'Marruecos',
                 MA: 'Marruecos',
                 NL: 'Países Bajos',
                 NL: 'Países Bajos',
                 RO: 'Rumanía',
                 RO: 'Rumanía',
+                RU: 'Rusa',
                 SE: 'Suecia',
                 SE: 'Suecia',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Estados Unidos'
                 US: 'Estados Unidos'

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

@@ -343,6 +343,7 @@
                 MA: 'Marruecos',
                 MA: 'Marruecos',
                 NL: 'Países Bajos',
                 NL: 'Países Bajos',
                 RO: 'Rumanía',
                 RO: 'Rumanía',
+                RU: 'Rusa',
                 SE: 'Suecia',
                 SE: 'Suecia',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Estados Unidos'
                 US: 'Estados Unidos'

+ 1 - 0
src/js/language/fa_IR.js

@@ -343,6 +343,7 @@
                 MA: 'مراکش',
                 MA: 'مراکش',
                 NL: 'هلند',
                 NL: 'هلند',
                 RO: 'رومانی',
                 RO: 'رومانی',
+                RU: 'روسیه',
                 SE: 'سوئد',
                 SE: 'سوئد',
                 SG: 'سنگاپور',
                 SG: 'سنگاپور',
                 US: 'ایالات متحده'
                 US: 'ایالات متحده'

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

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Pays-Bas',
                 NL: 'Pays-Bas',
                 RO: 'Roumanie',
                 RO: 'Roumanie',
+                RU: 'Russie',
                 SE: 'Suède',
                 SE: 'Suède',
                 SG: 'Singapour',
                 SG: 'Singapour',
                 US: 'USA'
                 US: 'USA'

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

@@ -343,6 +343,7 @@
                 MA: 'Μαρόκο',
                 MA: 'Μαρόκο',
                 NL: 'Ολλανδία',
                 NL: 'Ολλανδία',
                 RO: 'Ρουμανία',
                 RO: 'Ρουμανία',
+                RU: 'Ρωσία',
                 SE: 'Σουηδία',
                 SE: 'Σουηδία',
                 SG: 'Σιγκαπούρη',
                 SG: 'Σιγκαπούρη',
                 US: 'ΗΠΑ'
                 US: 'ΗΠΑ'

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

@@ -343,6 +343,7 @@
                 MA: 'marokkó',
                 MA: 'marokkó',
                 NL: 'holland',
                 NL: 'holland',
                 RO: 'románia',
                 RO: 'románia',
+                RU: 'orosz',
                 SE: 'svájci',
                 SE: 'svájci',
                 SG: 'singaporei',
                 SG: 'singaporei',
                 US: 'Egyesült Államok beli'
                 US: 'Egyesült Államok beli'

+ 1 - 0
src/js/language/it_IT.js

@@ -343,6 +343,7 @@
                 MA: 'Marocco',
                 MA: 'Marocco',
                 NL: 'Paesi Bassi',
                 NL: 'Paesi Bassi',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Russia',
                 SE: 'Svezia',
                 SE: 'Svezia',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'Stati Uniti d\'America'
                 US: 'Stati Uniti d\'America'

+ 1 - 0
src/js/language/ja_JP.js

@@ -343,6 +343,7 @@
                 MA: 'モロッコ',
                 MA: 'モロッコ',
                 NL: 'オランダ',
                 NL: 'オランダ',
                 RO: 'ルーマニア',
                 RO: 'ルーマニア',
+                RU: 'ロシア',
                 SE: 'スウェーデン',
                 SE: 'スウェーデン',
                 SG: 'シンガポール',
                 SG: 'シンガポール',
                 US: 'アメリカ'
                 US: 'アメリカ'

+ 1 - 0
src/js/language/nl_NL.js

@@ -343,6 +343,7 @@
                 MA: 'Marokko',
                 MA: 'Marokko',
                 NL: 'Nederland',
                 NL: 'Nederland',
                 RO: 'Roemenië',
                 RO: 'Roemenië',
+                RU: 'Rusland',
                 SE: 'Zweden',
                 SE: 'Zweden',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'VS'
                 US: 'VS'

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

@@ -343,6 +343,7 @@
                 MA: 'Maroko',
                 MA: 'Maroko',
                 NL: 'Holandia',
                 NL: 'Holandia',
                 RO: 'Rumunia',
                 RO: 'Rumunia',
+                RU: 'Rosja',
                 SE: 'Szwecja',
                 SE: 'Szwecja',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'USA'
                 US: 'USA'

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

@@ -343,6 +343,7 @@
                 MA: 'Marrocos',
                 MA: 'Marrocos',
                 NL: 'Holanda',
                 NL: 'Holanda',
                 RO: 'Roménia',
                 RO: 'Roménia',
+                RU: 'Rússia',
                 SE: 'Suécia',
                 SE: 'Suécia',
                 SG: 'Cingapura',
                 SG: 'Cingapura',
                 US: 'EUA'
                 US: 'EUA'

+ 1 - 0
src/js/language/ro_RO.js

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Olanda',
                 NL: 'Olanda',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Rusia',
                 SE: 'Suedia',
                 SE: 'Suedia',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'SUA'
                 US: 'SUA'

+ 1 - 1
src/js/language/ru_RU.js

@@ -1,7 +1,7 @@
 (function($) {
 (function($) {
     /**
     /**
      * Russian language package
      * Russian language package
-     * Translated by @cylon-v
+     * Translated by @cylon-v. Improved by @stepin
      */
      */
     $.fn.bootstrapValidator.i18n = $.extend(true, $.fn.bootstrapValidator.i18n, {
     $.fn.bootstrapValidator.i18n = $.extend(true, $.fn.bootstrapValidator.i18n, {
         base64: {
         base64: {

+ 1 - 0
src/js/language/sv_SE.js

@@ -343,6 +343,7 @@
                 MA: 'Marocko',
                 MA: 'Marocko',
                 NL: 'Nederländerna',
                 NL: 'Nederländerna',
                 RO: 'Rumänien',
                 RO: 'Rumänien',
+                RU: 'Ryssland',
                 SE: 'Sverige',
                 SE: 'Sverige',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'USA'
                 US: 'USA'

+ 1 - 0
src/js/language/th_TH.js

@@ -343,6 +343,7 @@
                 MA: 'โมร็อกโก',
                 MA: 'โมร็อกโก',
                 NL: 'เนเธอร์แลนด์',
                 NL: 'เนเธอร์แลนด์',
                 RO: 'โรมาเนีย',
                 RO: 'โรมาเนีย',
+                RU: 'รัสเซีย',
                 SE: 'สวีเดน',
                 SE: 'สวีเดน',
                 SG: 'สิงคโปร์',
                 SG: 'สิงคโปร์',
                 US: 'สหรัฐอเมริกา'
                 US: 'สหรัฐอเมริกา'

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

@@ -343,6 +343,7 @@
                 MA: 'Fas',
                 MA: 'Fas',
                 NL: 'Hollanda',
                 NL: 'Hollanda',
                 RO: 'Romanya',
                 RO: 'Romanya',
+                RU: 'Rusya',
                 SE: 'İsveç',
                 SE: 'İsveç',
                 SG: 'Singapur',
                 SG: 'Singapur',
                 US: 'Amerika Birleşik Devletleri'
                 US: 'Amerika Birleşik Devletleri'

+ 1 - 0
src/js/language/ua_UA.js

@@ -343,6 +343,7 @@
                 MA: 'Марокко',
                 MA: 'Марокко',
                 NL: 'Нідерландах',
                 NL: 'Нідерландах',
                 RO: 'Румунії',
                 RO: 'Румунії',
+                RU: 'Росії',
                 SE: 'Швеції',
                 SE: 'Швеції',
                 SG: 'Сингапурі',
                 SG: 'Сингапурі',
                 US: 'США'
                 US: 'США'

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

@@ -343,6 +343,7 @@
                 MA: 'Maroc',
                 MA: 'Maroc',
                 NL: 'Hà Lan',
                 NL: 'Hà Lan',
                 RO: 'Romania',
                 RO: 'Romania',
+                RU: 'Nga',
                 SE: 'Thuỵ Sĩ',
                 SE: 'Thuỵ Sĩ',
                 SG: 'Singapore',
                 SG: 'Singapore',
                 US: 'Mỹ'
                 US: 'Mỹ'

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

@@ -343,6 +343,7 @@
                 MA: '摩洛哥',
                 MA: '摩洛哥',
                 NL: '荷兰',
                 NL: '荷兰',
                 RO: '罗马尼亚',
                 RO: '罗马尼亚',
+                RU: '俄罗斯',
                 SE: '瑞典',
                 SE: '瑞典',
                 SG: '新加坡',
                 SG: '新加坡',
                 US: '美国'
                 US: '美国'

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

@@ -343,6 +343,7 @@
                 MA: '摩洛哥',
                 MA: '摩洛哥',
                 NL: '荷蘭',
                 NL: '荷蘭',
                 RO: '羅馬尼亞',
                 RO: '羅馬尼亞',
+                RU: '俄羅斯',
                 SE: '瑞典',
                 SE: '瑞典',
                 SG: '新加坡',
                 SG: '新加坡',
                 US: '美國'
                 US: '美國'

+ 22 - 0
test/spec.js

@@ -5495,6 +5495,28 @@ describe('vat', function() {
         }
         }
     });
     });
 
 
+    it('Russian VAT number', function() {
+        this.bv.updateOption('vat', 'vat', 'country', 'RU');
+
+        // Valid samples
+        var validSamples = ['RU7805145876', 'RU781300557475', '7805145876', '781300557475'];
+        for (var i in validSamples) {
+            this.bv.resetForm();
+            this.$vat.val(validSamples[i]);
+            this.bv.validate();
+            expect(this.bv.isValid()).toBeTruthy();
+        }
+
+        // Invalid samples
+        var invalidSamples = ['RU7805145877', 'RU781300557474', '7805145877', '781300557474'];
+        for (i in invalidSamples) {
+            this.bv.resetForm();
+            this.$vat.val(invalidSamples[i]);
+            this.bv.validate();
+            expect(this.bv.isValid()).toEqual(false);
+        }
+    });
+
     it('Swedish VAT number', function() {
     it('Swedish VAT number', function() {
         this.bv.updateOption('vat', 'vat', 'country', 'SE');
         this.bv.updateOption('vat', 'vat', 'country', 'SE');