Files
overleaf-cep/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.js
T
Alexandre Bourdin 53131239d0 Merge pull request #14169 from overleaf/revert-14167-revert-14106-ab-ab-group-settings-admin-only
Revert "Revert "[web] Restrict group settings page and managed users activation to group admin""

GitOrigin-RevId: 3e622fe3c25dfa9940351450f55c1441634fbd44
2023-08-10 08:04:24 +00:00

31 lines
756 B
JavaScript

const UserMembershipAuthorization = {
hasStaffAccess(requiredStaffAccess) {
return req => {
if (!req.user) {
return false
}
return (
requiredStaffAccess &&
req.user.staffAccess &&
req.user.staffAccess[requiredStaffAccess]
)
}
},
hasEntityAccess() {
return req => {
if (!req.entity) {
return false
}
const fieldAccess = req.entity[req.entityConfig.fields.access]
const fieldAccessArray = Array.isArray(fieldAccess)
? fieldAccess
: [fieldAccess.toString()]
return fieldAccessArray.some(
accessUserId => accessUserId.toString() === req.user._id.toString()
)
}
},
}
module.exports = UserMembershipAuthorization