Search account domain in lowercase (#13016)
* Search account domain in lowercase * fix rubocop error * fix spec/models/account_spec.rb
This commit is contained in:
parent
37dc12dd53
commit
61a7390b66
5 changed files with 55 additions and 16 deletions
|
@ -7,8 +7,9 @@ class UniqueUsernameValidator < ActiveModel::Validator
|
|||
return if account.username.nil?
|
||||
|
||||
normalized_username = account.username.downcase
|
||||
normalized_domain = account.domain&.downcase
|
||||
|
||||
scope = Account.where(domain: nil).where('lower(username) = ?', normalized_username)
|
||||
scope = Account.where(Account.arel_table[:username].lower.eq normalized_username).where(Account.arel_table[:domain].lower.eq normalized_domain)
|
||||
scope = scope.where.not(id: account.id) if account.persisted?
|
||||
|
||||
account.errors.add(:username, :taken) if scope.exists?
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue