From d6a8a55098f7f4c60968eaf8f99797841b4af2eb Mon Sep 17 00:00:00 2001
From: Tania Fecheta <tania.fecheta@thinslices.com>
Date: Fri, 23 Nov 2018 13:59:16 +0200
Subject: [PATCH] fix(authsome-helpers): author and eic see Unassigned on
 dashboard when he is not invited

---
 .../src/ManuscriptCard.js                     |  2 +-
 .../src/manuscriptDetails/ManuscriptHeader.js |  2 +-
 .../xpub-faraday/config/authsome-helpers.js   | 23 +++++++++++--------
 packages/xpub-faraday/config/authsome-mode.js |  7 +++++-
 4 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/packages/component-faraday-ui/src/ManuscriptCard.js b/packages/component-faraday-ui/src/ManuscriptCard.js
index fb471ea96..17e9e1763 100644
--- a/packages/component-faraday-ui/src/ManuscriptCard.js
+++ b/packages/component-faraday-ui/src/ManuscriptCard.js
@@ -76,7 +76,7 @@ const ManuscriptCard = ({
         <Row alignItems="center" justify="flex-start" mb={1}>
           <H4>Handling editor</H4>
           <Text ml={1} mr={3} whiteSpace="nowrap">
-            {get(handlingEditor, 'name', 'Undefined')}
+            {get(handlingEditor, 'name', 'Unassigned')}
           </Text>
           {canViewReports && (
             <Fragment>
diff --git a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js
index 50a362878..3c5767ce9 100644
--- a/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js
+++ b/packages/component-faraday-ui/src/manuscriptDetails/ManuscriptHeader.js
@@ -188,7 +188,7 @@ export default compose(
           </Button>
         )
       }
-      return <Text ml={1}>Assigned</Text>
+      return <Text ml={1}>{handlingEditor.name}</Text>
     },
   }),
   setDisplayName('ManuscriptHeader'),
diff --git a/packages/xpub-faraday/config/authsome-helpers.js b/packages/xpub-faraday/config/authsome-helpers.js
index 08e583c72..8aa6edd8e 100644
--- a/packages/xpub-faraday/config/authsome-helpers.js
+++ b/packages/xpub-faraday/config/authsome-helpers.js
@@ -4,8 +4,6 @@ const { omit, get, last, chain } = require('lodash')
 
 const statuses = config.get('statuses')
 
-const keysToOmit = [`email`, `id`]
-const authorCannotViewHENameStatuses = ['heInvited']
 const authorAllowedStatuses = ['revisionRequested', 'rejected', 'accepted']
 
 const getTeamsByPermissions = async (
@@ -74,21 +72,26 @@ const filterAuthorRecommendations = (recommendations, status, isLast) => {
 
 const stripeCollectionByRole = ({ collection = {}, role = '' }) => {
   if (role === 'author') {
-    const { handlingEditor } = collection
-
-    if (authorCannotViewHENameStatuses.includes(collection.status)) {
+    if (collection.status === 'heInvited') {
+      return {
+        ...collection,
+        handlingEditor: {
+          name: 'Assigned',
+        },
+      }
+    }
+    if (collection.status === 'submitted') {
       return {
         ...collection,
-        handlingEditor: handlingEditor &&
-          !handlingEditor.isAccepted && {
-            ...omit(handlingEditor, keysToOmit),
-            name: 'Assigned',
-          },
+        handlingEditor: {
+          name: 'Unssigned',
+        },
       }
     }
   }
   return collection
 }
+
 const stripeFragmentByRole = ({
   fragment = {},
   role = '',
diff --git a/packages/xpub-faraday/config/authsome-mode.js b/packages/xpub-faraday/config/authsome-mode.js
index fe678f981..c9df55d68 100644
--- a/packages/xpub-faraday/config/authsome-mode.js
+++ b/packages/xpub-faraday/config/authsome-mode.js
@@ -93,8 +93,13 @@ async function applyAuthenticatedUserPolicy(user, operation, object, context) {
             FragmentModel: context.models.Fragment,
           })
 
+          const parsedCollection = helpers.stripeCollectionByRole({
+            collection,
+            role,
+          })
+
           return {
-            ...collection,
+            ...parsedCollection,
             ...parsedStatuses,
             fragments:
               role !== 'reviewer'
-- 
GitLab