overleaf/services/web/app/src/Features/UserMembership/UserMembershipAuthorization.js
Timothée Alby a23ecc9bf8 Merge pull request #2105 from overleaf/ta-user-membership-refactor
UserMembershipAuthorization Refactor

GitOrigin-RevId: 7711cda4a134823cbacee42731319fbb8aa648d0
2019-09-24 08:58:05 +00:00

29 lines
634 B
JavaScript

let UserMembershipAuthorization = {
hasStaffAccess(requiredStaffAccess) {
return req => {
if (!req.user) {
return false
}
if (req.user.isAdmin) {
return true
}
return (
requiredStaffAccess &&
req.user.staffAccess &&
req.user.staffAccess[requiredStaffAccess]
)
}
},
hasEntityAccess() {
return req => {
if (!req.entity) {
return false
}
return req.entity[req.entityConfig.fields.access].some(accessUserId =>
accessUserId.equals(req.user._id)
)
}
}
}
module.exports = UserMembershipAuthorization