diff --git a/services/web/app/src/Features/Authorization/PermissionsManager.js b/services/web/app/src/Features/Authorization/PermissionsManager.js index fca40443d4..aafcf9f17b 100644 --- a/services/web/app/src/Features/Authorization/PermissionsManager.js +++ b/services/web/app/src/Features/Authorization/PermissionsManager.js @@ -450,9 +450,11 @@ module.exports = { getUserRestrictions, getUserValidationStatus: callbackify(getUserValidationStatus), checkCollaboratorsPermission: callbackify(checkUserListPermissions), + checkUserPermissions: callbackify(checkUserPermissions), promises: { assertUserPermissions, getUserValidationStatus, checkUserListPermissions, + checkUserPermissions, }, } diff --git a/services/web/app/src/Features/Project/ProjectController.js b/services/web/app/src/Features/Project/ProjectController.js index 191033e3bd..e37e1a9eac 100644 --- a/services/web/app/src/Features/Project/ProjectController.js +++ b/services/web/app/src/Features/Project/ProjectController.js @@ -613,10 +613,10 @@ const _ProjectController = { !showPersonalAccessToken && splitTestAssignments['personal-access-token'].variant === 'enabled' // `?personal-access-token=enabled` + // still allow users to access project if we cant get their permissions, but disable AI feature let canUseAi try { - await checkUserPermissions(user, ['use-ai']) - canUseAi = true + canUseAi = await checkUserPermissions(user, ['use-ai']) } catch (err) { canUseAi = false }