diff options
Diffstat (limited to 'app/serializers/rest')
-rw-r--r-- | app/serializers/rest/account_serializer.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/app/serializers/rest/account_serializer.rb b/app/serializers/rest/account_serializer.rb index 6152d54f7..c4e281b80 100644 --- a/app/serializers/rest/account_serializer.rb +++ b/app/serializers/rest/account_serializer.rb @@ -26,6 +26,16 @@ class REST::AccountSerializer < ActiveModel::Serializer end end + class RoleSerializer < ActiveModel::Serializer + attributes :id, :name, :color + + def id + object.id.to_s + end + end + + has_many :roles, serializer: RoleSerializer, if: :local? + class FieldSerializer < ActiveModel::Serializer include FormattingHelper @@ -118,6 +128,14 @@ class REST::AccountSerializer < ActiveModel::Serializer object.silenced? end + def roles + if object.suspended? + [] + else + [object.user.role].compact.filter { |role| role.highlighted? } + end + end + def noindex object.user_prefers_noindex? end |