Krzysztof Kotlarek dd6b073fc3
DEV: Make more group-based settings client: false (#474)
Affects the following settings:

ai_toxicity_groups_bypass
ai_helper_allowed_groups
ai_helper_custom_prompts_allowed_groups
post_ai_helper_allowed_groups

This turns off client: true for these group-based settings,
because there is no guarantee that the current user gets all
their group memberships serialized to the client. Better to check
server-side first.
2024-02-19 13:26:24 +11:00

27 lines
856 B
JavaScript

export function showComposerAIHelper(outletArgs, helper, featureType) {
const enableHelper = _helperEnabled(helper.siteSettings);
const enableAssistant = helper.currentUser.can_use_assistant;
const canShowInPM = helper.siteSettings.ai_helper_allowed_in_pm;
const enableFeature =
helper.siteSettings.ai_helper_enabled_features.includes(featureType);
if (outletArgs?.composer?.privateMessage) {
return enableHelper && enableAssistant && canShowInPM && enableFeature;
}
return enableHelper && enableAssistant && enableFeature;
}
export function showPostAIHelper(outletArgs, helper) {
return (
_helperEnabled(helper.siteSettings) &&
helper.currentUser.can_use_assistant_in_post
);
}
function _helperEnabled(siteSettings) {
return (
siteSettings.discourse_ai_enabled && siteSettings.composer_ai_helper_enabled
);
}