about summary refs log tree commit diff
path: root/app/models/account.rb
diff options
context:
space:
mode:
authorAurélien Reeves <aurelien.reeves@hiptest.net>2019-03-11 20:48:24 +0100
committerEugen Rochko <eugen@zeonfederated.com>2019-03-11 20:48:24 +0100
commit85537b00695b1091e2a147597ab7c3557b150b11 (patch)
treecf722bd91358600bbcb751dc0abee98166daa1c3 /app/models/account.rb
parentf5eeac01047874269bbb2910bab4b32f739c616d (diff)
Squish username before validation (#10239)
* Squish username before validation (#10101)

Fix #10101

* Move before_validation hook to a private method

Also add Unicode wite-spaces to the spec to support the use of squish
over strip.
Diffstat (limited to 'app/models/account.rb')
-rw-r--r--app/models/account.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/app/models/account.rb b/app/models/account.rb
index b81c64182..d6d718354 100644
--- a/app/models/account.rb
+++ b/app/models/account.rb
@@ -472,6 +472,7 @@ class Account < ApplicationRecord
 
   before_create :generate_keys
   before_validation :prepare_contents, if: :local?
+  before_validation :prepare_username, on: :create
   before_destroy :clean_feed_manager
 
   private
@@ -481,6 +482,10 @@ class Account < ApplicationRecord
     note&.strip!
   end
 
+  def prepare_username
+    username&.squish!
+  end
+
   def generate_keys
     return unless local? && !Rails.env.test?