discourse/app/serializers/topic_post_count_serializer.rb
Bianca Nenciu 87c1e98571
FEATURE: Let users select flair (#13587)
User flair was given by user's primary group. This PR separates the
two, adds a new field to the user model for flair group ID and users
can select their flair from user preferences now.
2021-07-08 10:46:21 +03:00

63 lines
1008 B
Ruby

# frozen_string_literal: true
class TopicPostCountSerializer < BasicUserSerializer
attributes :post_count, :primary_group_name,
:flair_name, :flair_url, :flair_color, :flair_bg_color,
:admin, :moderator, :trust_level,
def id
object[:user].id
end
def username
object[:user].username
end
def post_count
object[:post_count]
end
def primary_group_name
return nil unless object[:user].primary_group_id
object[:user]&.primary_group&.name
end
def flair_name
object[:user]&.flair_group&.name
end
def flair_url
object[:user]&.flair_group&.flair_url
end
def flair_bg_color
object[:user]&.flair_group&.flair_bg_color
end
def flair_color
object[:user]&.flair_group&.flair_color
end
def include_admin?
object[:user].admin
end
def admin
true
end
def include_moderator?
object[:user].moderator
end
def moderator
true
end
def trust_level
object[:user].trust_level
end
end