Validate username. Gitlab::Regex added

This commit is contained in:
Dmitriy Zaporozhets 2012-11-28 06:14:05 +03:00
parent 5ed4e7e216
commit 47234ab367
8 changed files with 43 additions and 13 deletions

View file

@ -41,8 +41,8 @@ class User < ActiveRecord::Base
attr_accessible :email, :password, :password_confirmation, :remember_me, :bio, :name, :username,
:skype, :linkedin, :twitter, :dark_scheme, :theme_id, :force_random_password,
:extern_uid, :provider, :as => [:default, :admin]
attr_accessible :projects_limit, :as => :admin
:extern_uid, :provider, as: [:default, :admin]
attr_accessible :projects_limit, as: :admin
attr_accessor :force_random_password
@ -63,9 +63,12 @@ class User < ActiveRecord::Base
has_many :assigned_merge_requests, class_name: "MergeRequest", foreign_key: :assignee_id, dependent: :destroy
validates :bio, length: { within: 0..255 }
validates :extern_uid, :allow_blank => true, :uniqueness => {:scope => :provider}
validates :extern_uid, allow_blank: true, uniqueness: {scope: :provider}
validates :projects_limit, presence: true, numericality: {greater_than_or_equal_to: 0}
validates :username, presence: true
validates :username, presence: true, uniqueness: true,
format: { with: Gitlab::Regex.username_regex,
message: "only letters, digits & '_' '-' '.' allowed. Letter should be first" }
before_validation :generate_password, on: :create
before_save :ensure_authentication_token