mirror of
https://github.com/discourse/discourse.git
synced 2024-11-24 22:09:35 +08:00
34 lines
679 B
Ruby
34 lines
679 B
Ruby
# frozen_string_literal: true
|
|
|
|
class TopicViewWordpressSerializer < ApplicationSerializer
|
|
# These attributes will be delegated to the topic
|
|
attributes :id, :category_id, :posts_count, :filtered_posts_count, :posts
|
|
|
|
has_many :participants, serializer: UserWordpressSerializer, embed: :objects
|
|
has_many :posts, serializer: PostWordpressSerializer, embed: :objects
|
|
|
|
def id
|
|
object.topic.id
|
|
end
|
|
|
|
def category_id
|
|
object.topic.category_id
|
|
end
|
|
|
|
def posts_count
|
|
object.topic.posts_count
|
|
end
|
|
|
|
def filtered_posts_count
|
|
object.filtered_post_ids.size
|
|
end
|
|
|
|
def participants
|
|
object.participants.values
|
|
end
|
|
|
|
def posts
|
|
object.posts
|
|
end
|
|
end
|