summaryrefslogtreecommitdiffstats
path: root/sick-fits/backend/src/utils.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-06-14 16:44:21 -0400
committerWes Bos <wesbos@gmail.com>2018-06-14 16:44:21 -0400
commitb1600adec47a04f60e1da07d94a3ed3906ff5aee (patch)
tree828f786da6806d7237ee5cbc5df61e552353b85b /sick-fits/backend/src/utils.js
parenta95e08cd2dd5d7ec0a0412adae02515a5f9cec4f (diff)
starter files
Diffstat (limited to 'sick-fits/backend/src/utils.js')
-rw-r--r--sick-fits/backend/src/utils.js17
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;