ibanvalidator 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +16 -11
- data/ibanvalidator.gemspec +3 -0
- data/lib/ibanvalidator.rb +10 -0
- data/lib/ibanvalidator/iban.rb +2 -2
- data/lib/ibanvalidator/iban_rules.rb +1 -1
- data/lib/ibanvalidator/version.rb +1 -1
- metadata +15 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: df9ef70e80f3f5a94807f4d814d037d416805bf2
|
4
|
+
data.tar.gz: a7eebc7a2f2e702be45f1727ea43f61688da4078
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 97a76394a50c53bed84c79ab7e8d44a8d94d5e71ed0bd62a21f893a0fa12b56daeb824e81f909ec8ceaef3028d0a9c260c17792c55bb58cb572d02ee2d1ce2d9
|
7
|
+
data.tar.gz: 83da8bbef0b66c35f5c2cb32cff0418bc1f8f192065b907434b6db2c33d298708df6ad848aa640e33aa63b8caa2cb39b80e2c115de6d319269be58937b7d26ed
|
data/README.md
CHANGED
@@ -5,7 +5,7 @@ Ibanvalidator ist eine Ruby Library zum überüfen von IBANs. [Mehr Infos zur IB
|
|
5
5
|
Es basiert auf der gem [iban-tools](http://github.com/iulianu/iban-tools) von [Iulianu](http://github.com/iulianu) die dann vom Team
|
6
6
|
bei [AlphaSights](https://engineering.alphasights.com) weiterentwickelt wurde.
|
7
7
|
|
8
|
-
Wir wollen diese gem weiterpflegen und zusätzliche
|
8
|
+
Wir wollen diese gem weiterpflegen und zusätzliche Funktionen integrieren.
|
9
9
|
|
10
10
|
|
11
11
|
## Installation
|
@@ -27,22 +27,27 @@ Or install it yourself as:
|
|
27
27
|
## Usage
|
28
28
|
|
29
29
|
### quick validation
|
30
|
-
require 'ibanvalidator'
|
31
|
-
Ibanvalidator::IBAN.valid?("DE89370400440532013000") => true
|
30
|
+
require 'ibanvalidator'
|
31
|
+
Ibanvalidator::IBAN.valid?("DE89370400440532013000") => true
|
32
32
|
|
33
33
|
### advanced
|
34
|
-
require 'ibanvalidator'
|
35
|
-
iban = Ibanvalidator::IBAN.new("DE89370 40044053201 3000")
|
36
|
-
iban.code => "DE89370400440532013000"
|
37
|
-
iban.bban => "370400440532013000"
|
38
|
-
iban.country_code => "DE"
|
39
|
-
iban.to_local => {bank_code: '37040044', account_number: '532013000'}
|
40
|
-
iban.check_digits => "89"
|
34
|
+
require 'ibanvalidator'
|
35
|
+
iban = Ibanvalidator::IBAN.new("DE89370 40044053201 3000")
|
36
|
+
iban.code => "DE89370400440532013000"
|
37
|
+
iban.bban => "370400440532013000"
|
38
|
+
iban.country_code => "DE"
|
39
|
+
iban.to_local => {bank_code: '37040044', account_number: '532013000'}
|
40
|
+
iban.check_digits => "89"
|
41
|
+
iban.prettify => "DE89 3704 0044 0532 0130 00"
|
42
|
+
|
43
|
+
|
44
|
+
Ibanvalidator.rules, liefert alle IBAN Regeln
|
45
|
+
Ibanvalidator.rule_countries, liefert ein Array mit allen Ländern für die eine Rule hinterlegt ist
|
41
46
|
|
42
47
|
|
43
48
|
## Development
|
44
49
|
|
45
|
-
After checking out the repo, run `bin/setup` to install dependencies. Then, run `
|
50
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
46
51
|
|
47
52
|
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
48
53
|
|
data/ibanvalidator.gemspec
CHANGED
@@ -33,5 +33,8 @@ Gem::Specification.new do |spec|
|
|
33
33
|
spec.add_development_dependency "bundler", "~> 1.15"
|
34
34
|
spec.add_development_dependency "rake", "~> 10.0"
|
35
35
|
spec.add_development_dependency "rspec", "~> 3.0"
|
36
|
+
|
37
|
+
#for mattr_accessor
|
38
|
+
spec.add_dependency "activesupport"
|
36
39
|
|
37
40
|
end
|
data/lib/ibanvalidator.rb
CHANGED
@@ -1,4 +1,14 @@
|
|
1
|
+
require 'active_support'
|
2
|
+
require 'active_support/core_ext'
|
1
3
|
require "ibanvalidator/version"
|
2
4
|
require 'ibanvalidator/conversion.rb'
|
3
5
|
require 'ibanvalidator/iban.rb'
|
4
6
|
require 'ibanvalidator/iban_rules.rb'
|
7
|
+
|
8
|
+
module Ibanvalidator
|
9
|
+
mattr_accessor :default_rules
|
10
|
+
mattr_accessor :rule_countries
|
11
|
+
#falls noch nciht gesetzt zb in einem initializer.....
|
12
|
+
Ibanvalidator.default_rules = (Ibanvalidator.default_rules || Ibanvalidator::IBANRules.defaults.rules)
|
13
|
+
Ibanvalidator.rule_countries = (Ibanvalidator.rule_countries || Ibanvalidator.default_rules.keys)
|
14
|
+
end
|
data/lib/ibanvalidator/iban.rb
CHANGED
@@ -38,7 +38,7 @@ module Ibanvalidator
|
|
38
38
|
|
39
39
|
# Load and cache the default rules from rules.yml
|
40
40
|
def self.default_rules
|
41
|
-
|
41
|
+
Ibanvalidator.default_rules
|
42
42
|
end
|
43
43
|
|
44
44
|
def self.from_local(country_code, data)
|
@@ -64,7 +64,7 @@ module Ibanvalidator
|
|
64
64
|
return [:too_short] if @code.size < 5
|
65
65
|
return [:too_long] if @code.size > 34
|
66
66
|
return [:bad_chars] unless @code =~ /^[A-Z0-9]+$/
|
67
|
-
errors += validation_errors_against_rules( rules ||
|
67
|
+
errors += validation_errors_against_rules( rules || Ibanvalidator.default_rules )
|
68
68
|
errors << :bad_check_digits unless valid_check_digits?
|
69
69
|
errors
|
70
70
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ibanvalidator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Olaf Kaderka
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: activesupport
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
55
69
|
description: ''
|
56
70
|
email:
|
57
71
|
- okaderka@yahoo.de
|