2013-04-05 15:09:27 -05:00
|
|
|
class CategoryDetailedSerializer < ApplicationSerializer
|
2013-02-05 13:16:51 -06:00
|
|
|
|
2013-04-05 15:09:27 -05:00
|
|
|
attributes :id,
|
|
|
|
:name,
|
|
|
|
:color,
|
|
|
|
:text_color,
|
|
|
|
:slug,
|
|
|
|
:topic_count,
|
|
|
|
:topics_week,
|
|
|
|
:topics_month,
|
|
|
|
:topics_year,
|
2013-05-27 13:15:20 -05:00
|
|
|
:description,
|
2013-06-14 10:18:27 -05:00
|
|
|
:description_excerpt,
|
2013-05-27 13:15:20 -05:00
|
|
|
:is_uncategorized
|
2013-02-05 13:16:51 -06:00
|
|
|
|
|
|
|
has_many :featured_users, serializer: BasicUserSerializer
|
2013-05-29 10:46:01 -05:00
|
|
|
has_many :displayable_topics, serializer: ListableTopicSerializer, embed: :objects, key: :topics
|
2013-02-05 13:16:51 -06:00
|
|
|
|
|
|
|
def topics_week
|
|
|
|
object.topics_week || 0
|
|
|
|
end
|
|
|
|
|
|
|
|
def topics_month
|
|
|
|
object.topics_month || 0
|
|
|
|
end
|
|
|
|
|
|
|
|
def topics_year
|
|
|
|
object.topics_year || 0
|
|
|
|
end
|
|
|
|
|
2013-05-27 13:15:20 -05:00
|
|
|
def is_uncategorized
|
|
|
|
name == SiteSetting.uncategorized_name
|
|
|
|
end
|
|
|
|
|
|
|
|
def include_is_uncategorized?
|
|
|
|
is_uncategorized
|
|
|
|
end
|
|
|
|
|
2013-05-28 13:54:00 -05:00
|
|
|
def include_displayable_topics?
|
|
|
|
return displayable_topics.present?
|
|
|
|
end
|
|
|
|
|
2013-06-14 10:18:27 -05:00
|
|
|
def description_excerpt
|
|
|
|
PrettyText.excerpt(description,300) if description
|
|
|
|
end
|
|
|
|
|
2013-02-05 13:16:51 -06:00
|
|
|
end
|