diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index eee61b41a..ff2e3ea82 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -23,14 +23,15 @@ def update end def search + fields = %i[username id name] + fields << :email if current_user.is_admin? respond_to do |format| format.json do render json: { users: User.active.where( 'username ILIKE :search OR email ILIKE :search OR name ILIKE :search', search: "%#{params[:query]}%" - ).as_json(only: - %i[username id name email], methods: :dropdwon_display) } + ).as_json(only: fields, methods: :dropdwon_display) } end end end diff --git a/app/models/user.rb b/app/models/user.rb index c00531ee2..1d50c07ee 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -396,7 +396,8 @@ def self.empty? end def dropdwon_display - "#{name} (#{username} #{email})" + more_info = email_public? ? username : "#{username} #{email}" + "#{name} (#{more_info})" end private