From 8e643d431c8c827b251467e56290e705f06b03bb Mon Sep 17 00:00:00 2001 From: Iosif Boanca <iosif.boanca@thinslices.com> Date: Thu, 1 Nov 2018 17:07:45 +0200 Subject: [PATCH] fix(HE should see decision box): --- .../component-faraday-selectors/src/index.js | 21 ++++++++++++++++++- .../src/components/ManuscriptLayout.js | 3 +-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/packages/component-faraday-selectors/src/index.js b/packages/component-faraday-selectors/src/index.js index 0ab630ff6..97e85dbf4 100644 --- a/packages/component-faraday-selectors/src/index.js +++ b/packages/component-faraday-selectors/src/index.js @@ -361,13 +361,32 @@ export const getInvitationsWithReviewersForFragment = (state, fragmentId) => export const canMakeHERecommendation = (state, { collection, statuses }) => { const validHE = isHEToManuscript(state, get(collection, 'id', '')) + if (!validHE) return false + const statusImportance = get( statuses, `${get(collection, 'status', 'draft')}.importance`, 1, ) - return statusImportance > 1 && statusImportance < 9 && validHE + if (!(statusImportance > 1 && statusImportance < 9)) return false + + if (collection.fragments.length !== 1) { + const previousFragmentId = + collection.fragments[collection.fragments.length - 2] + + const previousRecommendationType = chain(state) + .get(`fragments.${previousFragmentId}.recommendations`, []) + .find( + recommendation => + recommendation.recommendationType === 'editorRecommendation', + ) + .get('recommendation', '') + .value() + if (previousRecommendationType === 'minor') { + return true + } + } } export const getFragmentAuthorResponse = (state, fragmentId) => diff --git a/packages/component-manuscript/src/components/ManuscriptLayout.js b/packages/component-manuscript/src/components/ManuscriptLayout.js index 12bb8a9fb..161ca3fb1 100644 --- a/packages/component-manuscript/src/components/ManuscriptLayout.js +++ b/packages/component-manuscript/src/components/ManuscriptLayout.js @@ -220,8 +220,7 @@ const ManuscriptLayout = ({ )} {isLatestVersion && - get(currentUser, 'permissions.canMakeHERecommendation', false) && - reviewerRecommendations.length > 0 && ( + get(currentUser, 'permissions.canMakeHERecommendation', false) && ( <HERecommendation formValues={get(formValues, 'editorialRecommendation', {})} hasReviewerReports={reviewerRecommendations.length > 0} -- GitLab