diff options
Diffstat (limited to 'stepped-solutions/FINISHED/backend/src/utils.js')
| -rw-r--r-- | stepped-solutions/FINISHED/backend/src/utils.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/stepped-solutions/FINISHED/backend/src/utils.js b/stepped-solutions/FINISHED/backend/src/utils.js new file mode 100644 index 0000000..faf028b --- /dev/null +++ b/stepped-solutions/FINISHED/backend/src/utils.js @@ -0,0 +1,17 @@ +function hasPermission(user, permissionsNeeded) { + const matchedPermissions = user.permissions.filter(permissionTheyHave => + permissionsNeeded.includes(permissionTheyHave) + ); + if (!matchedPermissions.length) { + throw new Error(`You do not have sufficient permissions + + : ${permissionsNeeded} + + You Have: + + ${user.permissions} + `); + } +} + +exports.hasPermission = hasPermission; |
