diff options
Diffstat (limited to 'sick-fits/backend/src/utils.js')
| -rw-r--r-- | sick-fits/backend/src/utils.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/sick-fits/backend/src/utils.js b/sick-fits/backend/src/utils.js new file mode 100644 index 0000000..faf028b --- /dev/null +++ b/sick-fits/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; |
