brodock-validates_as_email 0.7.0 → 0.7.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/CHANGELOG +3 -0
- data/README +1 -1
- data/lib/validates_as_email.rb +15 -0
- metadata +3 -3
data/CHANGELOG
CHANGED
data/README
CHANGED
@@ -36,7 +36,7 @@ end
|
|
36
36
|
|
37
37
|
class MyOtherClass < ActiveRecord::Base
|
38
38
|
# will not accept addresses with a single part domain, e.g user@example
|
39
|
-
validates_as_email :email, :message => 'Invalid Email Address', :allow_nil => true
|
39
|
+
validates_as_email :email, :message => 'Invalid Email Address', :allow_nil => true
|
40
40
|
end
|
41
41
|
|
42
42
|
Tests:
|
data/lib/validates_as_email.rb
CHANGED
@@ -26,6 +26,7 @@ module ActiveModel
|
|
26
26
|
def validate_each(record, attribute, value)
|
27
27
|
|
28
28
|
return if options[:allow_nil] && value.nil?
|
29
|
+
return if options[:allow_blank] && value.blank?
|
29
30
|
|
30
31
|
unless value =~ /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i
|
31
32
|
record.errors[attribute] << (options[:message])
|
@@ -35,6 +36,20 @@ module ActiveModel
|
|
35
36
|
end
|
36
37
|
|
37
38
|
module ClassMethods
|
39
|
+
|
40
|
+
# Validates that the specified attribute is a valid email address.
|
41
|
+
#
|
42
|
+
# Configuration options:
|
43
|
+
# * <tt>:allow_nil</tt> - Attribute may be +nil+; skip validation.
|
44
|
+
# * <tt>:allow_blank</tt> - Attribute may be blank; skip validation.
|
45
|
+
# * <tt>:message</tt> - The error message to be displayed
|
46
|
+
# * <tt>:on</tt> - Specifies when this validation is active (default is <tt>:save</tt>, other options <tt>:create</tt>, <tt>:update</tt>).
|
47
|
+
# * <tt>:if</tt> - Specifies a method, proc or string to call to determine if the validation should
|
48
|
+
# occur (e.g. <tt>:if => :allow_validation</tt>, or <tt>:if => Proc.new { |user| user.signup_step > 2 }</tt>). The
|
49
|
+
# method, proc or string should return or evaluate to a true or false value.
|
50
|
+
# * <tt>:unless</tt> - Specifies a method, proc or string to call to determine if the validation should
|
51
|
+
# not occur (e.g. <tt>:unless => :skip_validation</tt>, or <tt>:unless => Proc.new { |user| user.signup_step <= 2 }</tt>). The
|
52
|
+
# method, proc or string should return or evaluate to a true or false value.
|
38
53
|
def validates_as_email(*attr_names)
|
39
54
|
validates_with EmailValidator, _merge_attributes(attr_names)
|
40
55
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 7
|
8
|
-
-
|
9
|
-
version: 0.7.
|
8
|
+
- 2
|
9
|
+
version: 0.7.2
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Michal Zima
|
@@ -19,7 +19,7 @@ autorequire:
|
|
19
19
|
bindir: bin
|
20
20
|
cert_chain: []
|
21
21
|
|
22
|
-
date: 2010-
|
22
|
+
date: 2010-05-02 00:00:00 -03:00
|
23
23
|
default_executable:
|
24
24
|
dependencies: []
|
25
25
|
|