summaryrefslogtreecommitdiff
path: root/users/app/models/login_format_validation.rb
blob: 1d02bd13e3da7f832017b30b52517a94f8dde992 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
module LoginFormatValidation
  extend ActiveSupport::Concern

  included do
    # Have multiple regular expression validations so we can get specific error messages:
    validates :login,
      :format => { :with => /\A.{2,}\z/,
        :message => "Login must have at least two characters"}
    validates :login,
      :format => { :with => /\A[a-z\d_\.-]+\z/,
        :message => "Only lowercase letters, digits, . - and _ allowed."}
    validates :login,
      :format => { :with => /\A[a-z].*\z/,
        :message => "Login must begin with a lowercase letter"}
    validates :login,
      :format => { :with => /\A.*[a-z\d]\z/,
        :message => "Login must end with a letter or digit"}
  end
end