mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-11-12 21:23:45 +01:00
Merge pull request #36024 from overleaf/rh-cio-group-support
Enable customer.io in-app messages on group management pages GitOrigin-RevId: 0c30c4ccf219cdbc4dd48ea6940cc46a4c6964c3
This commit is contained in:
@@ -74,6 +74,7 @@ async function manageGroupMembers(req, res, next) {
|
||||
canUseFlexibleLicensing: plan?.canUseFlexibleLicensing,
|
||||
canUseAddSeatsFeature,
|
||||
entityAccess: UserMembershipAuthorization.hasEntityAccess()(req),
|
||||
customerIoEnabled: true,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -82,7 +83,8 @@ async function manageGroupManagers(req, res, next) {
|
||||
req,
|
||||
res,
|
||||
next,
|
||||
'user_membership/group-managers-react'
|
||||
'user_membership/group-managers-react',
|
||||
{ customerIoEnabled: true }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -104,7 +106,7 @@ async function managePublisherManagers(req, res, next) {
|
||||
)
|
||||
}
|
||||
|
||||
async function _renderManagersPage(req, res, next, template) {
|
||||
async function _renderManagersPage(req, res, next, template, extraLocals = {}) {
|
||||
const { entity, entityConfig } = req
|
||||
|
||||
const fetchV1Data = new Promise((resolve, reject) => {
|
||||
@@ -135,6 +137,7 @@ async function _renderManagersPage(req, res, next, template) {
|
||||
users,
|
||||
groupId: entityPrimaryKey,
|
||||
entityAccess: UserMembershipAuthorization.hasEntityAccess()(req),
|
||||
...extraLocals,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -202,6 +205,7 @@ async function manageGroupUsers(req, res) {
|
||||
entityAccess: UserMembershipAuthorization.hasEntityAccess()(req),
|
||||
canUseAddSeatsFeature,
|
||||
groupSSOActive: ssoConfig?.enabled,
|
||||
customerIoEnabled: true,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
if(customerIoEnabled && ExposedSettings.cioWriteKey && ExposedSettings.cioSiteId)
|
||||
script(type="text/javascript", id="cio-loader", nonce=scriptNonce, data-cio-write-key=ExposedSettings.cioWriteKey, data-cio-site-id=ExposedSettings.cioSiteId, data-session-analytics-id=getSessionAnalyticsId(), data-user-id=((user && (user._id || user.id)) || ''), data-user-email=((user && user.email) || '')).
|
||||
script(type="text/javascript", id="cio-loader", nonce=scriptNonce, data-cio-write-key=ExposedSettings.cioWriteKey, data-cio-site-id=ExposedSettings.cioSiteId, data-session-analytics-id=getSessionAnalyticsId(), data-user-id=((user && (user._id || user.id)) || getLoggedInUserId() || ''), data-user-email=((user && user.email) || getUserEmail() || '')).
|
||||
var cioSettings = document.querySelector('#cio-loader').dataset;
|
||||
var analyticsId = cioSettings.sessionAnalyticsId;
|
||||
var userId = cioSettings.userId;
|
||||
|
||||
@@ -285,7 +285,7 @@ describe('UserMembershipController', () => {
|
||||
subscription,
|
||||
users,
|
||||
}) => {
|
||||
expect.assertions(4)
|
||||
expect.assertions(5)
|
||||
subscription.managedUsersEnabled = false
|
||||
await UserMembershipController.manageGroupMembers(req, {
|
||||
render: (viewPath, viewParams) => {
|
||||
@@ -293,6 +293,7 @@ describe('UserMembershipController', () => {
|
||||
expect(viewParams.users).to.deep.equal(users)
|
||||
expect(viewParams.groupSize).to.equal(subscription.membersLimit)
|
||||
expect(viewParams.managedUsersActive).to.equal(false)
|
||||
expect(viewParams.customerIoEnabled).to.equal(true)
|
||||
},
|
||||
})
|
||||
})
|
||||
@@ -432,13 +433,14 @@ describe('UserMembershipController', () => {
|
||||
req,
|
||||
user,
|
||||
}) => {
|
||||
expect.assertions(2)
|
||||
expect.assertions(3)
|
||||
req.user = user
|
||||
req.entityConfig = EntityConfigs.groupManagers
|
||||
await UserMembershipController.manageGroupManagers(req, {
|
||||
render: (viewPath, viewParams) => {
|
||||
expect(viewPath).to.equal('user_membership/group-managers-react')
|
||||
expect(viewParams.groupSize).to.equal(undefined)
|
||||
expect(viewParams.customerIoEnabled).to.equal(true)
|
||||
},
|
||||
})
|
||||
})
|
||||
@@ -449,7 +451,7 @@ describe('UserMembershipController', () => {
|
||||
user,
|
||||
institution,
|
||||
}) => {
|
||||
expect.assertions(3)
|
||||
expect.assertions(4)
|
||||
req.user = user
|
||||
req.entity = institution
|
||||
req.entityConfig = EntityConfigs.institution
|
||||
@@ -460,6 +462,7 @@ describe('UserMembershipController', () => {
|
||||
)
|
||||
expect(viewParams.name).to.equal('Test Institution Name')
|
||||
expect(viewParams.groupSize).to.equal(undefined)
|
||||
expect(viewParams.customerIoEnabled).to.equal(undefined)
|
||||
},
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user