mirror of
https://github.com/discourse/discourse.git
synced 2024-11-23 22:26:26 +08:00
845170bd6b
There are 4 visibility levels - public (default) - members only - staff - owners Note, admins and group owners ALWAYS have visibility to groups Migration treated old "non public" as "members only"
54 lines
1.1 KiB
Ruby
54 lines
1.1 KiB
Ruby
class BasicGroupSerializer < ApplicationSerializer
|
|
attributes :id,
|
|
:automatic,
|
|
:name,
|
|
:display_name,
|
|
:user_count,
|
|
:alias_level,
|
|
:visibility_level,
|
|
:automatic_membership_email_domains,
|
|
:automatic_membership_retroactive,
|
|
:primary_group,
|
|
:title,
|
|
:grant_trust_level,
|
|
:incoming_email,
|
|
:has_messages,
|
|
:flair_url,
|
|
:flair_bg_color,
|
|
:flair_color,
|
|
:bio_raw,
|
|
:bio_cooked,
|
|
:public,
|
|
:allow_membership_requests,
|
|
:full_name,
|
|
:default_notification_level
|
|
|
|
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
|
|
|
|
def include_incoming_email?
|
|
staff?
|
|
end
|
|
|
|
def include_has_messsages
|
|
staff?
|
|
end
|
|
|
|
def include_bio_raw
|
|
staff?
|
|
end
|
|
|
|
private
|
|
|
|
def staff?
|
|
@staff ||= scope.is_staff?
|
|
end
|
|
end
|