discourse/app/serializers/basic_user_serializer.rb
Jeff Wong 036a24cf30
FIX: correct user serializer user method for extended serializer (#8590)
A small fix for Basic User Serializers where some downstream serializers do not correctly set user objects. This caused some issues in certain plugins that depend on the user method to return a user.
2019-12-19 09:48:01 -08:00

26 lines
498 B
Ruby

# frozen_string_literal: true
class BasicUserSerializer < ApplicationSerializer
attributes :id, :username, :name, :avatar_template
def name
Hash === user ? user[:name] : user.try(:name)
end
def include_name?
SiteSetting.enable_names?
end
def avatar_template
if Hash === object
User.avatar_template(user[:username], user[:uploaded_avatar_id])
else
user&.avatar_template
end
end
def user
object[:user] || object.try(:user) || object
end
end