20 lines
467 B
Ruby
20 lines
467 B
Ruby
|
class CoAuthor
|
||
|
include Mongoid::Document
|
||
|
|
||
|
LANGUAGE_TYPES = [ "English", "Chinese" ]
|
||
|
|
||
|
field :name_id, type: BSON::ObjectId
|
||
|
field :co_author, localize: true
|
||
|
field :email
|
||
|
field :type
|
||
|
|
||
|
|
||
|
VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
|
||
|
validates :email, format: { with: VALID_EMAIL_REGEX },
|
||
|
uniqueness: { case_sensitive: false }
|
||
|
|
||
|
validates :co_author, presence: true
|
||
|
before_save { |coauthor| coauthor.email = email.downcase }
|
||
|
end
|
||
|
|