summaryrefslogtreecommitdiffstats
path: root/stepped-solutions/FINISHED/backend/src/utils.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
committerWes Bos <wesbos@gmail.com>2018-09-13 14:18:56 -0400
commit8a5825d52271d712ec7c8348447d433067e13ef2 (patch)
treeba07c218c1b2d4e59c154f2059b69fd858ae65fe /stepped-solutions/FINISHED/backend/src/utils.js
parentb0d25a9ad3cc1df2fcc11ddb84e4603b94520b09 (diff)
DONE
Diffstat (limited to 'stepped-solutions/FINISHED/backend/src/utils.js')
-rw-r--r--stepped-solutions/FINISHED/backend/src/utils.js17
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;