X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/001ff5764bcf15aaa179dc5c7844038676536622..a12b0878bc338cd5ec3c315c14148b1ea07b362a:/app/models/user.rb diff --git a/app/models/user.rb b/app/models/user.rb index d2535bbd4..0b2a902df 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -23,13 +23,14 @@ class User < ActiveRecord::Base validates_confirmation_of :pass_crypt#, :message => ' must match the confirmation password' validates_uniqueness_of :display_name, :allow_nil => true validates_uniqueness_of :email + validates_uniqueness_of :openid_url, :allow_nil => true validates_length_of :pass_crypt, :within => 8..255 validates_length_of :display_name, :within => 3..255, :allow_nil => true - validates_email_format_of :email - validates_email_format_of :new_email, :allow_blank => true - validates_format_of :display_name, :with => /^[^\/;.,?]*$/ - validates_format_of :display_name, :with => /^\S/, :message => "has leading whitespace" - validates_format_of :display_name, :with => /\S$/, :message => "has trailing whitespace" + validates_email_format_of :email, :if => Proc.new { |u| u.email_changed? } + validates_email_format_of :new_email, :allow_blank => true, :if => Proc.new { |u| u.new_email_changed? } + validates_format_of :display_name, :with => /^[^\/;.,?]*$/, :if => Proc.new { |u| u.display_name_changed? } + validates_format_of :display_name, :with => /^\S/, :message => "has leading whitespace", :if => Proc.new { |u| u.display_name_changed? } + validates_format_of :display_name, :with => /\S$/, :message => "has trailing whitespace", :if => Proc.new { |u| u.display_name_changed? } validates_numericality_of :home_lat, :allow_nil => true validates_numericality_of :home_lon, :allow_nil => true validates_numericality_of :home_zoom, :only_integer => true, :allow_nil => true