urrl_formatter 0.0.1 → 0.0.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/.travis.yml +2 -0
- data/CHANGELOG.md +3 -0
- data/README.md +1 -1
- data/lib/urrl_formatter/model_additions.rb +13 -2
- data/lib/urrl_formatter/version.rb +1 -1
- data/urrl_formatter.gemspec +1 -0
- metadata +24 -1
data/.travis.yml
ADDED
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# UrrlFormatter
|
1
|
+
# UrrlFormatter [](https://api.travis-ci.org/Valmasso/urrl_formatter)
|
2
2
|
|
3
3
|
Format and validate a URL attribute in Active Record. This is an example gem created for [RailsCasts episode #301](http://railscasts.com/episodes/301-extracting-a-ruby-gem).
|
4
4
|
|
@@ -1,9 +1,20 @@
|
|
1
1
|
module UrrlFormatter
|
2
2
|
module ModelAdditions
|
3
|
+
# To format and validate a URL attribute, call <tt>format_url</tt>
|
4
|
+
# in any Active Record model class and pass it the name of an attribute.
|
5
|
+
#
|
6
|
+
# class User < ActiveRecord::Base
|
7
|
+
# format_url :website
|
8
|
+
# end
|
9
|
+
#
|
10
|
+
# This will add a <tt>before_validation</tt> callback to add "http://" to
|
11
|
+
# the attribute if a protocol doesn't exist already. It then validates the
|
12
|
+
# format of the URL.
|
3
13
|
def format_url(attribute)
|
4
14
|
before_validation do
|
5
|
-
send("#{attribute}=",
|
15
|
+
send("#{attribute}=", UrrlFormatter.format_url(send(attribute)))
|
6
16
|
end
|
7
|
-
validates_format_of attribute, with:
|
17
|
+
validates_format_of attribute, with: UrrlFormatter.url_regexp, message: "is not a valid URL"
|
18
|
+
end
|
8
19
|
end
|
9
20
|
end
|
data/urrl_formatter.gemspec
CHANGED
@@ -17,6 +17,7 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ["lib"]
|
19
19
|
|
20
|
+
gem.add_development_dependency "rake"
|
20
21
|
gem.add_development_dependency "rspec"
|
21
22
|
gem.add_development_dependency "supermodel"
|
22
23
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: urrl_formatter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,6 +11,22 @@ bindir: bin
|
|
11
11
|
cert_chain: []
|
12
12
|
date: 2013-03-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rake
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
14
30
|
- !ruby/object:Gem::Dependency
|
15
31
|
name: rspec
|
16
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,6 +68,7 @@ extra_rdoc_files: []
|
|
52
68
|
files:
|
53
69
|
- .gitignore
|
54
70
|
- .rspec
|
71
|
+
- .travis.yml
|
55
72
|
- CHANGELOG.md
|
56
73
|
- Gemfile
|
57
74
|
- LICENSE.txt
|
@@ -77,12 +94,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
77
94
|
- - ! '>='
|
78
95
|
- !ruby/object:Gem::Version
|
79
96
|
version: '0'
|
97
|
+
segments:
|
98
|
+
- 0
|
99
|
+
hash: 3567452022946142690
|
80
100
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
81
101
|
none: false
|
82
102
|
requirements:
|
83
103
|
- - ! '>='
|
84
104
|
- !ruby/object:Gem::Version
|
85
105
|
version: '0'
|
106
|
+
segments:
|
107
|
+
- 0
|
108
|
+
hash: 3567452022946142690
|
86
109
|
requirements: []
|
87
110
|
rubyforge_project:
|
88
111
|
rubygems_version: 1.8.24
|