urrl_formatter 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- 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 [![Build Status](https://api.travis-ci.org/Valmasso/urrl_formatter.png)](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
|