discourse/app/serializers/topic_list_serializer.rb

35 lines
699 B
Ruby
Raw Normal View History

2013-02-06 03:16:51 +08:00
class TopicListSerializer < ApplicationSerializer
2013-02-07 23:45:24 +08:00
2013-04-03 04:52:51 +08:00
attributes :can_create_topic,
:more_topics_url,
:draft,
:draft_key,
:draft_sequence,
:for_period,
:per_page,
:tags
2013-02-06 03:16:51 +08:00
has_many :topics, serializer: TopicListItemSerializer, embed: :objects
def can_create_topic
scope.can_create?(Topic)
2013-02-06 03:16:51 +08:00
end
def include_for_period?
for_period.present?
end
2013-02-06 03:16:51 +08:00
def include_more_topics_url?
object.more_topics_url.present? && (object.topics.size == object.per_page)
2013-02-06 03:16:51 +08:00
end
def include_tags?
SiteSetting.tagging_enabled && SiteSetting.show_filter_by_tag
end
def tags
Tag.top_tags
end
2013-02-06 03:16:51 +08:00
end