mirror of
https://github.com/discourse/discourse.git
synced 2025-03-12 20:17:54 +08:00

Group channels will allow users to create channels with a name and invite people. It's possible to add people even after creation of the channel. Removing users is not yet possible but will be added in the near future. Technically a group channel is `direct_message_channel` with a group attribute set to true on its direct message (chatable). This model might evolve in the future but offers much flexibility for now without having to rely on a complex migration. The commit essentially consists of: - a migration to set existing direct message channels with more than 2 users to a group - a new message creator which allows to search, add members, and create groups - a new `AddUsersToChannel` service - a modified `SearchChatable` service
16 lines
309 B
Ruby
16 lines
309 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Chat
|
|
class BasicUserSerializer < BasicUserSerializer
|
|
attributes :can_chat, :has_chat_enabled
|
|
|
|
def can_chat
|
|
SiteSetting.chat_enabled && scope&.can_chat?
|
|
end
|
|
|
|
def has_chat_enabled
|
|
can_chat && object.user_option&.chat_enabled
|
|
end
|
|
end
|
|
end
|