alexander_graham_bell 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d35fca9242c8482807144626721bbfe784cd271a
4
- data.tar.gz: f217ec7dd145a12aa231e4d2c80b87307e4096bb
3
+ metadata.gz: 926ea95a3d2aa6a163c4729f2ef82e2241418f51
4
+ data.tar.gz: 0afff154f9914785920404eb76b68bcefa1babc3
5
5
  SHA512:
6
- metadata.gz: f2048efbeac23c2881feec4758564bcf6ec84729b38920f32c14f3d0f2b850c0c5fb8265da05bcc65bc666440cbc1dd6c450e2e104053f73ceba962e3c8c0094
7
- data.tar.gz: 35a4beea8c093ded131097b1432ee3d9007aa1cbdddb4f723913d81ad66f0c3f066852c4da7aa0ec48174b0ecd1f2fe0c59ce02799386fbe7450d270648c7e7d
6
+ metadata.gz: 40a0a7deec8b03e8c8753f2f66fb459db27b13c4be6e10dd610fbbf9f39df68083f0e14fc01b79b689a1b3d2bf7993e628f8d64d4140a859b2b22e6d57aeea92
7
+ data.tar.gz: 003fb7a06ee93637b00c932dd7c16d6a56a4b862b191a81eea472841a4729d20cafee4a9f5f22dbb664ca2f8a332e58f850631b4be705f0204028a19c9d100d2
data/Guardfile ADDED
@@ -0,0 +1,5 @@
1
+ guard :minitest do
2
+ watch(%r{^test/(.*)\/?test_(.*)\.rb$})
3
+ watch(%r{^lib/(.*/)?([^/]+)\.rb$}) { |m| "test/#{m[1]}test_#{m[2]}.rb" }
4
+ watch(%r{^test/test_helper\.rb$}) { 'test' }
5
+ end
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ [![Build Status](https://circleci.com/gh/appfolio/alexander_graham_bell.svg?style=svg)](https://circleci.com/gh/appfolio/alexander_graham_bell.svg?style=svg)
2
+
1
3
  # AlexanderGrahamBell
2
4
 
3
5
  Phone number parser and tel link creator.
@@ -14,25 +16,30 @@ gem install alexander_graham_bell
14
16
  * Ruby 2.2.3 or higher
15
17
 
16
18
  ## Examples
17
-
19
+ #### Generate a tel link
18
20
  ```ruby
19
- # Use the class methods to generate a tel link
20
- puts AlexanderGrahamBell.tel_link('1-800-275-2273')
21
- # <a href=\"tel:18002752273\">1-800-275-2273</a>
22
-
23
- # Extensions
24
- puts AlexanderGrahamBell.tel_link('+18052234567ext5')
25
- #<a href=\"tel:+18052234567;isub=5\">+18052234567ext5</a>
21
+ puts AlexanderGrahamBell.tel_link('1-800-555-1234')
22
+ # <a href=\"tel:18005551234\">1-800-555-1234</a>
23
+ ```
24
+ #### Generate a tel link with an extension
25
+ ```ruby
26
+ puts AlexanderGrahamBell.tel_link('1-800-555-1234ext5')
27
+ #<a href=\"tel:18005551234;isub=5\">1-800-555-1234ext5</a>
28
+ ```
29
+ #### Get the href contents
30
+ ```ruby
31
+ puts AlexanderGrahamBell.tel_href('1-800-555-1234')
32
+ # tel:18005551234
26
33
  ```
27
- ###rails
34
+ #### For use with rails
28
35
  ```ruby
29
- # If you're using rails and you want to html escape everything wrap it in your own module or class.
36
+ # If you're using rails and you want to html escape everything, wrap it in your own module or class.
30
37
 
31
- module MyLinkGenerator
38
+ module MyTelLinkGenerator
32
39
  def self.build(phone_number)
33
40
  AlexanderGrahamBell.tel_link(phone_number).html_safe
34
41
  end
35
42
  end
36
43
 
37
-
44
+ MyTelLinkGenerator.build('+18052234567ext5')
38
45
  ```
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
9
9
  spec.authors = ["Scott Speidel","Michael Jewell"]
10
10
  spec.email = ["scottspeidel@gmail.com", "michaeljewell9911@gmail.com"]
11
11
 
12
- spec.summary = %q{Phone number parser and tel link creator.}
12
+ spec.summary = "Phone number parser and tel link creator."
13
13
  spec.homepage = "https://github.com/appfolio/alexander-graham-bell"
14
14
  spec.license = "MIT"
15
15
 
@@ -18,7 +18,9 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.11"
22
- spec.add_development_dependency "rake", "~> 10.0"
21
+ spec.add_development_dependency "bundler", "~> 1.9"
22
+ spec.add_development_dependency "rake"
23
23
  spec.add_development_dependency "minitest", "~> 5.0"
24
+ spec.add_development_dependency "guard"
25
+ spec.add_development_dependency "guard-minitest"
24
26
  end
@@ -1,3 +1,3 @@
1
1
  module AlexanderGrahamBell
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -6,13 +6,24 @@ module AlexanderGrahamBell
6
6
  class << self
7
7
  def tel_link(phone_number, escaper = ERB::Util.method(:h))
8
8
  phone = Phone.new(phone_number)
9
- escaped_phone_number = escaper ? escaper.call(phone_number) : phone_number
9
+ escaped_phone_number = escape_phone_number(phone_number, escaper)
10
10
  return escaped_phone_number unless phone.valid?
11
11
  "<a href=\"tel:#{phone.number}#{isub(phone)}\">#{escaped_phone_number}</a>"
12
12
  end
13
13
 
14
+ def tel_href(phone_number)
15
+ phone = Phone.new(phone_number)
16
+ escaped_phone_number = escape_phone_number(phone_number)
17
+ return "tel:#{escaped_phone_number}" unless phone.valid?
18
+ "tel:#{phone.number}#{isub(phone)}"
19
+ end
20
+
14
21
  private
15
22
 
23
+ def escape_phone_number(phone_number, escaper = ERB::Util.method(:h))
24
+ escaper ? escaper.call(phone_number) : phone_number
25
+ end
26
+
16
27
  def isub(phone)
17
28
  ";isub=#{phone.extension}" unless phone.extension.nil?
18
29
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alexander_graham_bell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Speidel
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2016-03-08 00:00:00.000000000 Z
12
+ date: 2016-03-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '1.11'
20
+ version: '1.9'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '1.11'
27
+ version: '1.9'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rake
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - "~>"
32
+ - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: '10.0'
34
+ version: '0'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - "~>"
39
+ - - ">="
40
40
  - !ruby/object:Gem::Version
41
- version: '10.0'
41
+ version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: minitest
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -53,6 +53,34 @@ dependencies:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '5.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: guard
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: guard-minitest
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
56
84
  description:
57
85
  email:
58
86
  - scottspeidel@gmail.com
@@ -64,6 +92,7 @@ files:
64
92
  - ".gitignore"
65
93
  - ".travis.yml"
66
94
  - Gemfile
95
+ - Guardfile
67
96
  - LICENSE.txt
68
97
  - README.md
69
98
  - Rakefile