2013-05-09 15:37:34 +08:00
|
|
|
class BasicGroupSerializer < ApplicationSerializer
|
2015-01-24 01:25:43 +08:00
|
|
|
attributes :id,
|
|
|
|
:automatic,
|
|
|
|
:name,
|
2017-05-05 14:34:47 +08:00
|
|
|
:display_name,
|
2015-01-24 01:25:43 +08:00
|
|
|
:user_count,
|
|
|
|
:alias_level,
|
2017-07-04 03:26:46 +08:00
|
|
|
:visibility_level,
|
2015-01-24 01:25:43 +08:00
|
|
|
:automatic_membership_email_domains,
|
2015-04-10 10:17:28 +08:00
|
|
|
:automatic_membership_retroactive,
|
|
|
|
:primary_group,
|
2015-09-02 04:52:05 +08:00
|
|
|
:title,
|
2015-12-07 19:39:28 +08:00
|
|
|
:grant_trust_level,
|
2015-12-15 06:17:09 +08:00
|
|
|
:incoming_email,
|
2016-03-03 02:18:17 +08:00
|
|
|
:has_messages,
|
2016-08-17 00:34:04 +08:00
|
|
|
:flair_url,
|
2016-08-27 05:15:37 +08:00
|
|
|
:flair_bg_color,
|
2016-12-05 16:18:24 +08:00
|
|
|
:flair_color,
|
|
|
|
:bio_raw,
|
2016-12-07 12:06:56 +08:00
|
|
|
:bio_cooked,
|
2017-07-28 10:37:10 +08:00
|
|
|
:public_admission,
|
|
|
|
:public_exit,
|
2016-12-13 16:16:26 +08:00
|
|
|
:allow_membership_requests,
|
2017-04-21 03:47:25 +08:00
|
|
|
:full_name,
|
|
|
|
:default_notification_level
|
2015-12-07 19:39:28 +08:00
|
|
|
|
2017-05-05 14:34:47 +08:00
|
|
|
def include_display_name?
|
|
|
|
object.automatic
|
|
|
|
end
|
|
|
|
|
|
|
|
def display_name
|
|
|
|
if auto_group_name = Group::AUTO_GROUP_IDS[object.id]
|
|
|
|
I18n.t("groups.default_names.#{auto_group_name}")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2015-12-07 19:39:28 +08:00
|
|
|
def include_incoming_email?
|
2016-12-05 16:18:24 +08:00
|
|
|
staff?
|
|
|
|
end
|
|
|
|
|
|
|
|
def include_has_messsages
|
|
|
|
staff?
|
|
|
|
end
|
|
|
|
|
|
|
|
def include_bio_raw
|
|
|
|
staff?
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
|
|
|
|
|
|
|
def staff?
|
|
|
|
@staff ||= scope.is_staff?
|
2015-12-07 19:39:28 +08:00
|
|
|
end
|
2013-05-08 13:20:38 +08:00
|
|
|
end
|