Files
overleaf-cep/services/web/app/src/models/GroupPolicy.mjs
T
ilkin-overleaf 0113c8ee9f Merge pull request #35936 from overleaf/ii-workspaces-subscription-admin-settings
Shared Workspace settings for subscription admins

GitOrigin-RevId: 61cc45a48aaf1709905e98b3cccf09b50e2afa84
2026-09-17 11:57:14 +00:00

41 lines
1.3 KiB
JavaScript

import mongoose from '../infrastructure/Mongoose.mjs'
const { Schema } = mongoose
export const GroupPolicySchema = new Schema(
{
// User can't delete their own account
userCannotDeleteOwnAccount: Boolean,
// User can't add a secondary email address, or affiliation
userCannotHaveSecondaryEmail: Boolean,
// User can't have an active (currently auto-renewing) personal subscription, nor can they start one
userCannotHaveSubscription: Boolean,
// User can't choose to leave the group subscription they are managed by
userCannotLeaveManagingGroupSubscription: Boolean,
// User can't have a Google SSO account, nor can they link it to their account
userCannotHaveGoogleSSO: Boolean,
// User can't have other third-party SSO (e.g. ORCID/IEEE) active on their account, nor can they link it to their account
userCannotHaveOtherThirdPartySSO: Boolean,
// User can't use any of our AI features, such as the compile-assistant
userCannotUseAIFeatures: Boolean,
// User can't use the chat feature
userCannotUseChat: Boolean,
// User can't use the Dropbox feature
userCannotUseDropbox: Boolean,
// User can't use the shared workspace feature
userCannotUseSharedWorkspace: Boolean,
},
{ minimize: false }
)
export const GroupPolicy = mongoose.model('GroupPolicy', GroupPolicySchema)