phony_rails 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.
- data/Gemfile.lock +6 -1
- data/README.md +5 -1
- data/lib/phony_rails.rb +10 -22
- data/lib/phony_rails/version.rb +1 -1
- data/phony_rails.gemspec +2 -1
- metadata +18 -2
data/Gemfile.lock
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
phony_rails (0.1.
|
4
|
+
phony_rails (0.1.2)
|
5
5
|
activerecord (~> 3.0)
|
6
|
+
countries (~> 0.8.2)
|
6
7
|
phony (~> 1.7.4)
|
7
8
|
|
8
9
|
GEM
|
@@ -21,6 +22,10 @@ GEM
|
|
21
22
|
multi_json (~> 1.0)
|
22
23
|
arel (3.0.2)
|
23
24
|
builder (3.0.0)
|
25
|
+
countries (0.8.2)
|
26
|
+
currencies (= 0.4.0)
|
27
|
+
currencies (>= 0.2.0)
|
28
|
+
currencies (0.4.0)
|
24
29
|
diff-lcs (1.1.3)
|
25
30
|
i18n (0.6.0)
|
26
31
|
multi_json (1.3.6)
|
data/README.md
CHANGED
@@ -34,7 +34,7 @@ PhonyRails will also check your model for a country_code method to use when norm
|
|
34
34
|
|
35
35
|
Use the Phony.plausible method to validate an attribute:
|
36
36
|
|
37
|
-
|
37
|
+
validates :phone_number, :phony_plausible => true
|
38
38
|
|
39
39
|
In your views use:
|
40
40
|
|
@@ -42,6 +42,10 @@ In your views use:
|
|
42
42
|
|
43
43
|
## Changelog
|
44
44
|
|
45
|
+
0.1.2
|
46
|
+
* Using countries gem as suggested by brutuscat.
|
47
|
+
* Fixes bugs mentioned by ddidier.
|
48
|
+
|
45
49
|
0.1.0
|
46
50
|
* Added specs.
|
47
51
|
|
data/lib/phony_rails.rb
CHANGED
@@ -1,26 +1,14 @@
|
|
1
1
|
require 'phony'
|
2
|
-
require
|
3
|
-
require
|
2
|
+
require 'countries'
|
3
|
+
require 'phony_rails/string_extensions'
|
4
|
+
require 'validators/phony_validator'
|
5
|
+
require 'phony_rails/version'
|
4
6
|
|
5
7
|
module PhonyRails
|
6
8
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
'NL' => '31',
|
11
|
-
'BE' => '32',
|
12
|
-
'DE' => '49',
|
13
|
-
'GB' => '44',
|
14
|
-
'FR' => '33',
|
15
|
-
'ES' => '34',
|
16
|
-
'IT' => '39',
|
17
|
-
'US' => '1',
|
18
|
-
'AU' => '61',
|
19
|
-
'LU' => '352',
|
20
|
-
'AT' => '43',
|
21
|
-
'CH' => '41',
|
22
|
-
'PL' => '48'
|
23
|
-
}
|
9
|
+
def self.country_number_for(country_code)
|
10
|
+
ISO3166::Country::Data[country_code].try(:[], 'country_code')
|
11
|
+
end
|
24
12
|
|
25
13
|
# This method requires a country_code attribute (eg. NL) and phone_number to be set.
|
26
14
|
# Options:
|
@@ -33,14 +21,14 @@ module PhonyRails
|
|
33
21
|
number = number.clone # Just to be sure, we don't want to change the original.
|
34
22
|
number.gsub!(/[^\d\+]/, '') # Strips weird stuff from the number
|
35
23
|
return if number.blank?
|
36
|
-
if country_number =
|
24
|
+
if country_number = country_number_for(options[:country_code] || options[:default_country_code])
|
37
25
|
# Add country_number if missing
|
38
26
|
number = "#{country_number}#{number}" if not number =~ /^(00|\+)?#{country_number}/
|
39
27
|
end
|
40
28
|
number = Phony.normalize(number)
|
41
29
|
return number.to_s
|
42
|
-
rescue
|
43
|
-
|
30
|
+
# rescue
|
31
|
+
# number # If all goes wrong .. we still return the original input.
|
44
32
|
end
|
45
33
|
|
46
34
|
# This module is added to AR.
|
data/lib/phony_rails/version.rb
CHANGED
data/phony_rails.gemspec
CHANGED
@@ -6,7 +6,7 @@ Gem::Specification.new do |gem|
|
|
6
6
|
gem.email = ["joost@joopp.com"]
|
7
7
|
gem.description = %q{This Gem adds useful methods to your Rails app to validate, display and save phone numbers.}
|
8
8
|
gem.summary = %q{This Gem adds useful methods to your Rails app to validate, display and save phone numbers.}
|
9
|
-
gem.homepage = ""
|
9
|
+
gem.homepage = "https://github.com/joost/phony_rails"
|
10
10
|
|
11
11
|
gem.files = `git ls-files`.split($\)
|
12
12
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
@@ -16,5 +16,6 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.version = PhonyRails::VERSION
|
17
17
|
|
18
18
|
gem.add_dependency "phony", "~> 1.7.4"
|
19
|
+
gem.add_dependency "countries", "~> 0.8.2"
|
19
20
|
gem.add_dependency "activerecord", "~> 3.0"
|
20
21
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: phony_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -27,6 +27,22 @@ dependencies:
|
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 1.7.4
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: countries
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 0.8.2
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 0.8.2
|
30
46
|
- !ruby/object:Gem::Dependency
|
31
47
|
name: activerecord
|
32
48
|
requirement: !ruby/object:Gem::Requirement
|
@@ -63,7 +79,7 @@ files:
|
|
63
79
|
- phony_rails.gemspec
|
64
80
|
- spec/lib/phony_rails_spec.rb
|
65
81
|
- spec/spec_helper.rb
|
66
|
-
homepage:
|
82
|
+
homepage: https://github.com/joost/phony_rails
|
67
83
|
licenses: []
|
68
84
|
post_install_message:
|
69
85
|
rdoc_options: []
|