diff --git a/website/server/libs/chat/group-chat.js b/website/server/libs/chat/group-chat.js index dc6b0d8278..e9db7a4169 100644 --- a/website/server/libs/chat/group-chat.js +++ b/website/server/libs/chat/group-chat.js @@ -10,7 +10,12 @@ const questScrolls = shared.content.quests; // @TODO: Don't use this method when the group can be saved. export async function getGroupChat (group) { - const maxChatCount = group.hasActiveGroupPlan() ? MAX_SUBBED_GROUP_CHAT_COUNT : MAX_CHAT_COUNT; + let maxChatCount = MAX_CHAT_COUNT; + if (group.chatLimitCount && group.chatLimitCount >= MAX_CHAT_COUNT) { + maxChatCount = group.chatLimitCount; + } else if (group.hasActiveGroupPlan()) { + maxChatCount = MAX_SUBBED_GROUP_CHAT_COUNT; + } const groupChat = await Chat.find({ groupId: group._id }) .limit(maxChatCount) diff --git a/website/server/models/group.js b/website/server/models/group.js index 1c770823b6..a3a103a64e 100644 --- a/website/server/models/group.js +++ b/website/server/models/group.js @@ -91,6 +91,7 @@ export const schema = new Schema({ }, memberCount: { $type: Number, default: 1 }, challengeCount: { $type: Number, default: 0 }, + chatLimitCount: { $type: Number }, balance: { $type: Number, default: 0 }, logo: String, leaderMessage: String,