From 9261c0a2a38359706b60fc504671b48f6f7afb70 Mon Sep 17 00:00:00 2001
From: Sebastian <sebastian.mihalache@thinslices.com>
Date: Thu, 26 Apr 2018 15:52:59 +0300
Subject: [PATCH] feat(component-invite): fix authsome post collections

---
 packages/component-invite/src/helpers/authsome.js      |  8 ++++++++
 .../src/routes/collectionsInvitations/post.js          |  1 +
 .../config/{authsome.js => authsome-mode.js}           | 10 +++++-----
 packages/xpub-faraday/config/default.js                |  9 +++++++--
 4 files changed, 21 insertions(+), 7 deletions(-)
 create mode 100644 packages/component-invite/src/helpers/authsome.js
 rename packages/xpub-faraday/config/{authsome.js => authsome-mode.js} (97%)

diff --git a/packages/component-invite/src/helpers/authsome.js b/packages/component-invite/src/helpers/authsome.js
new file mode 100644
index 000000000..7ae32a08c
--- /dev/null
+++ b/packages/component-invite/src/helpers/authsome.js
@@ -0,0 +1,8 @@
+const config = require('config')
+const Authsome = require('authsome')
+
+const mode = require(config.get('authsome.mode'))
+
+const authsome = new Authsome({ ...config.authsome, mode }, {})
+
+module.exports = authsome
diff --git a/packages/component-invite/src/routes/collectionsInvitations/post.js b/packages/component-invite/src/routes/collectionsInvitations/post.js
index 28660b529..73a588a3b 100644
--- a/packages/component-invite/src/routes/collectionsInvitations/post.js
+++ b/packages/component-invite/src/routes/collectionsInvitations/post.js
@@ -40,6 +40,7 @@ module.exports = models => async (req, res) => {
       error: notFoundError.message,
     })
   }
+
   const baseUrl = `${req.protocol}://${req.get('host')}`
   const params = {
     baseUrl,
diff --git a/packages/xpub-faraday/config/authsome.js b/packages/xpub-faraday/config/authsome-mode.js
similarity index 97%
rename from packages/xpub-faraday/config/authsome.js
rename to packages/xpub-faraday/config/authsome-mode.js
index cd7bed1d0..a7c36a2cb 100644
--- a/packages/xpub-faraday/config/authsome.js
+++ b/packages/xpub-faraday/config/authsome-mode.js
@@ -97,11 +97,11 @@ function unauthenticatedUser(operation, object) {
 
 async function authenticatedUser(user, operation, object, context) {
   // Allow the authenticated user to POST a collection (but not with a 'filtered' property)
-  // if (operation === 'POST' && object.path === '/collections') {
-  //   return {
-  //     filter: collection => omit(collection, 'filtered'),
-  //   }
-  // }
+  if (operation === 'POST' && object.path === '/collections') {
+    return {
+      filter: collection => omit(collection, 'filtered'),
+    }
+  }
 
   // Allow the authenticated user to GET collections they own
   if (operation === 'GET' && object === '/collections/') {
diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js
index be3a905e9..a773b41f2 100644
--- a/packages/xpub-faraday/config/default.js
+++ b/packages/xpub-faraday/config/default.js
@@ -21,9 +21,14 @@ const getDbConfig = () => {
 
 module.exports = {
   authsome: {
-    mode: path.resolve(__dirname, 'authsome.js'),
+    mode: path.resolve(__dirname, 'authsome-mode.js'),
     teams: {
-      // TODO
+      handlingEditor: {
+        name: 'Handling Editors',
+      },
+      reviewer: {
+        name: 'Reviewer',
+      },
     },
   },
   validations: path.resolve(__dirname, 'validations.js'),
-- 
GitLab