2013-05-10 14:47:47 +08:00
|
|
|
class BasicCategorySerializer < ApplicationSerializer
|
|
|
|
|
|
|
|
attributes :id,
|
|
|
|
:name,
|
|
|
|
:color,
|
|
|
|
:text_color,
|
|
|
|
:slug,
|
|
|
|
:topic_count,
|
2014-05-29 01:33:39 +08:00
|
|
|
:post_count,
|
2015-08-28 01:14:59 +08:00
|
|
|
:position,
|
2013-05-10 14:47:47 +08:00
|
|
|
:description,
|
2014-10-22 12:48:18 +08:00
|
|
|
:description_text,
|
2013-05-10 14:47:47 +08:00
|
|
|
:topic_url,
|
2016-01-12 19:06:51 +08:00
|
|
|
:logo_url,
|
|
|
|
:background_url,
|
2013-07-16 13:44:07 +08:00
|
|
|
:read_restricted,
|
2013-10-24 01:29:20 +08:00
|
|
|
:permission,
|
2014-04-17 17:17:39 +08:00
|
|
|
:parent_category_id,
|
2014-06-28 03:35:25 +08:00
|
|
|
:notification_level,
|
2015-07-03 04:18:59 +08:00
|
|
|
:can_edit,
|
2015-09-03 05:46:04 +08:00
|
|
|
:topic_template,
|
2016-01-12 18:29:26 +08:00
|
|
|
:has_children
|
2013-05-10 14:47:47 +08:00
|
|
|
|
2013-10-24 02:40:39 +08:00
|
|
|
def include_parent_category_id?
|
|
|
|
parent_category_id
|
|
|
|
end
|
2014-06-25 05:27:29 +08:00
|
|
|
|
|
|
|
def description
|
2016-01-28 07:26:25 +08:00
|
|
|
object.uncategorized? ? I18n.t('category.uncategorized_description') : object.description
|
2014-06-25 05:27:29 +08:00
|
|
|
end
|
2014-08-13 01:30:28 +08:00
|
|
|
|
|
|
|
def can_edit
|
|
|
|
true
|
|
|
|
end
|
2014-09-09 21:32:58 +08:00
|
|
|
|
2014-08-13 01:30:28 +08:00
|
|
|
def include_can_edit?
|
|
|
|
scope && scope.can_edit?(object)
|
|
|
|
end
|
|
|
|
|
2015-12-13 18:26:16 +08:00
|
|
|
def notification_level
|
2016-02-03 20:58:59 +08:00
|
|
|
object.notification_level
|
2015-12-13 18:26:16 +08:00
|
|
|
end
|
2016-08-05 19:03:49 +08:00
|
|
|
|
|
|
|
def logo_url
|
|
|
|
url = object.logo_url
|
|
|
|
url.present? && UrlHelper.is_local(url) ? UrlHelper.schemaless(UrlHelper.absolute(url)) : url
|
|
|
|
end
|
|
|
|
|
|
|
|
def background_url
|
|
|
|
url = object.background_url
|
|
|
|
url.present? && UrlHelper.is_local(url) ? UrlHelper.schemaless(UrlHelper.absolute(url)) : url
|
|
|
|
end
|
2013-05-10 14:47:47 +08:00
|
|
|
end
|