summaryrefslogtreecommitdiff
path: root/users/app/models/email.rb
diff options
context:
space:
mode:
Diffstat (limited to 'users/app/models/email.rb')
-rw-r--r--users/app/models/email.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/users/app/models/email.rb b/users/app/models/email.rb
new file mode 100644
index 0000000..4b01838
--- /dev/null
+++ b/users/app/models/email.rb
@@ -0,0 +1,17 @@
+class Email
+ include CouchRest::Model::Embeddable
+
+ property :email, String
+
+ validates :email,
+ :format => { :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/, :message => "needs to be a valid email address"}
+
+ def initialize(attributes = nil, &block)
+ attributes = {:email => attributes} if attributes.is_a? String
+ super(attributes, &block)
+ end
+
+ def to_s
+ email
+ end
+end