validates_russian 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6e97b119010d0a6820f7f31e6839104f2e2b005a
4
- data.tar.gz: 37676d8a1f51e2d6dfc94723c36275e31e8879dd
3
+ metadata.gz: 46e3af0d1808ab847f2cd084325c33418232028b
4
+ data.tar.gz: 1f6e04ec2815f26f13c71d754b2f5f66f0cdd147
5
5
  SHA512:
6
- metadata.gz: 5b5da3c0ef4b177e0b48ac8818d9e9e59ab525f15448af1dda13ebb5df45f5ed1f91044a25eba0d25ad1ce2f71a9d74074b06d067e7c2162084419ca0cab511e
7
- data.tar.gz: ae8fe525c3c6f952a03a70f843c6a9f852330b58bdd644364263f1c479fd985b4d6f9bed0e24aad1c77828c4f829701fe65888b34b2e9bad7bb7d8a215202b55
6
+ metadata.gz: f650d9ee7f675c3367d40e3ab7ec4d7719cd600575529f975f2e9b93333dd9fe095b1fec03d9d21c8df852646164870136209d5b9c8a10865954bc32c4701b09
7
+ data.tar.gz: 5dddeaa8ca84b76d4c79ad90be8715d880e61d1410cc0ed71ff9e6990f12296302fa9db960d3e1abc122c792c667d1d52730379b3631b7a0371790bc82476e1b
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ ### 0.0.8
2
+
3
+ * Validate the Crimea region numbers
4
+ * Speeding up a validators
5
+
1
6
  ### 0.0.7
2
7
 
3
8
  * BikValidator
data/README.md CHANGED
@@ -13,12 +13,14 @@
13
13
  * [КПП](http://ru.wikipedia.org/wiki/Код_причины_постановки_на_учёт) (KppFormatValidator)
14
14
  * [ОГРН](http://ru.wikipedia.org/wiki/Основной_государственный_регистрационный_номер) (OgrnFormatValidator)
15
15
  * [Корреспондентский счёт] (http://ru.wikipedia.org/wiki/Корреспондентский_счёт) (KsFormatValidator)
16
- * [Рассчётный счёт] (http://ru.wikipedia.org/wiki/Расчётный_счёт) (RsFormatValidator)
16
+ * [Расчётный счёт] (http://ru.wikipedia.org/wiki/Расчётный_счёт) (RsFormatValidator)
17
17
  * [OKATO](http://ru.wikipedia.org/wiki/Общероссийский_классификатор_объектов_административно-территориального_деления) (OkatoFormatValidator)
18
18
  * [СНИЛС](http://ru.wikipedia.org/wiki/Страховой_номер_индивидуального_лицевого_счёта) (SnilsFormatValidator)
19
19
  * [Значение паспорта](http://ru.wikipedia.org/wiki/Паспорт_гражданина_Российской_Федерации) (PassportFormatValidator)
20
20
  * [БИК](http://ru.wikipedia.org/wiki/БИК) (BikFormatValidator)
21
21
 
22
+ Для генерации фейковых значений используйте [gem 'faker-russian'](https://github.com/asiniy/faker-russian)
23
+
22
24
  ## Установка
23
25
 
24
26
  Добавь в Gemfile
@@ -27,7 +29,7 @@
27
29
 
28
30
  ## Использование
29
31
 
30
- Используй валидаторы в своей модели
32
+ Используйте валидаторы в своей модели
31
33
 
32
34
  ```ruby
33
35
  validates :attribute, <validator_underscore>: true
@@ -18,6 +18,8 @@ Russian specific values validation:
18
18
  * [Passport Value](http://ru.wikipedia.org/wiki/Паспорт_гражданина_Российской_Федерации) (PassportFormatValidator)
19
19
  * [BIK](http://ru.wikipedia.org/wiki/БИК) (BikFormatValidator) Bank Identification Number
20
20
 
21
+ For generating fake values use [gem 'faker-russian'](https://github.com/asiniy/faker-russian)
22
+
21
23
  ## Installation
22
24
 
23
25
  Add to Gemfile
@@ -1,3 +1,3 @@
1
1
  module ValidatesRussian
2
- OKATO_REGION_NUMBERS = %w{01 03 04 05 07 08 11 12 14 15 17 19 20 22 24 25 26 27 28 29 32 33 34 36 37 38 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99}
2
+ OKATO_REGION_NUMBERS = %w{01 03 04 05 07 08 11 12 14 15 17 19 20 22 24 25 26 27 28 29 32 33 35 34 36 37 38 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99}
3
3
  end
@@ -1,3 +1,3 @@
1
1
  module ValidatesRussian
2
- OKV = %w{388 728 156 230 132 144 756 752 152 203 191 238 826 654 646 953 952 950 174 262 348 608 940 858 860 478 800 949 788 496 398 834 882 050 968 938 972 706 417 760 702 941 690 408 960 682 222 710 462 360 643 116 072 446 586 776 512 578 934 901 604 946 376 554 532 524 064 232 566 498 943 484 504 458 969 480 426 440 748 434 422 430 694 340 008 428 981 104 414 192 188 976 931 977 170 418 598 320 404 454 973 634 124 886 352 364 368 400 356 392 558 985 967 970 818 978 704 214 242 780 840 090 136 516 932 678 784 807 208 270 332 600 980 344 292 324 936 328 951 410 548 108 096 986 068 937 975 060 974 084 048 764 052 590 044 971 533 051 032 012 944 036 810}
2
+ OKV = %w{008 012 032 036 044 048 050 051 052 060 064 068 072 084 090 096 104 108 116 124 132 136 144 152 156 170 174 188 191 192 203 208 214 222 230 232 238 242 262 270 292 320 324 328 332 340 344 348 352 356 360 364 368 376 388 392 398 400 404 408 410 414 417 418 422 426 428 430 434 440 446 454 458 462 478 480 484 496 498 504 512 516 524 532 533 548 554 558 566 578 586 590 598 600 604 608 634 643 646 654 678 682 690 694 702 704 706 710 728 748 752 756 760 764 776 780 784 788 800 807 810 818 826 834 840 858 860 882 886 901 931 932 934 936 937 938 940 941 943 944 946 949 950 951 952 953 960 967 968 969 970 971 972 973 974 975 976 977 978 980 981 985 986}
3
3
  end
@@ -1,3 +1,3 @@
1
1
  module ValidatesRussian
2
- REGION_NUMBERS = %w{01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 75 41 23 24 59 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 76 77 78 79 83 86 87 89}
2
+ REGION_NUMBERS = %w{01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 75 41 23 24 59 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 76 77 78 79 83 86 87 89 91 92}
3
3
  end
@@ -1,3 +1,3 @@
1
1
  module ValidatesRussian
2
- VERSION = '0.0.7'
2
+ VERSION = '0.0.8'
3
3
  end
@@ -6,15 +6,9 @@ class InnFormatValidator < ValidatesRussian::Validator
6
6
  inn = inn.split(//).map(&:to_i)
7
7
 
8
8
  case inn.size
9
- when 10
10
- n10 = calc(P10, inn)
11
- next false unless n10 == inn[9]
12
- when 12
13
- n11 = calc(P11, inn)
14
- n12 = calc(P12, inn)
15
- next false unless n11 == inn[10] && n12 == inn[11]
16
- else
17
- next false
9
+ when 10 then next false unless calc(P10, inn) == inn[9]
10
+ when 12 then next false unless calc(P11, inn) == inn[10] && calc(P12, inn) == inn[11]
11
+ else next false
18
12
  end
19
13
  end
20
14
 
@@ -1,11 +1,7 @@
1
1
  class OgrnFormatValidator < ValidatesRussian::Validator
2
2
  validates_using do |ogrn|
3
3
  next false unless ogrn =~ /^\d+$/
4
-
5
- case ogrn.size
6
- when 13 then next false unless (ogrn[0..-2].to_i % 11 % 10) == ogrn[-1].to_i
7
- when 15 then next false unless (ogrn[0..-2].to_i % 13 % 10) == ogrn[-1].to_i
8
- else next false
9
- end
4
+ next false unless [13, 15].include?(ogrn.size)
5
+ next false unless (ogrn[0..-2].to_i % (ogrn.size - 2) % 10) == ogrn[-1].to_i
10
6
  end
11
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validates_russian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Antonov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-04 00:00:00.000000000 Z
11
+ date: 2015-03-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -133,7 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
133
133
  version: '0'
134
134
  requirements: []
135
135
  rubyforge_project:
136
- rubygems_version: 2.2.1
136
+ rubygems_version: 2.4.6
137
137
  signing_key:
138
138
  specification_version: 4
139
139
  summary: validates specific russian values