From 758e049742f1aa8ee611ae91bb4dd3d4b93ff729 Mon Sep 17 00:00:00 2001
From: Sebastian Mihalache <sebastian.mihalache@gmail.con>
Date: Fri, 18 May 2018 15:39:44 +0300
Subject: [PATCH] feat(component-manuscript-manager): handle revision
 recommendation

---
 .../src/routes/fragmentsRecommendations/patch.js           | 2 +-
 .../src/routes/fragmentsRecommendations/post.js            | 7 +++++++
 packages/xpub-faraday/config/default.js                    | 4 ++++
 3 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/patch.js b/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/patch.js
index d6cbf32c2..f6c780a6f 100644
--- a/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/patch.js
+++ b/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/patch.js
@@ -45,7 +45,7 @@ module.exports = models => async (req, res) => {
         user,
         mailService,
       })
-      if (collection.status !== 'pendingApproval')
+      if (!['pendingApproval', 'revisionRequested'].includes(collection.status))
         await collectionHelper.updateStatus(collection, 'reviewCompleted')
     }
     await fragment.save()
diff --git a/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/post.js b/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/post.js
index 745c254c9..b582ad587 100644
--- a/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/post.js
+++ b/packages/component-manuscript-manager/src/routes/fragmentsRecommendations/post.js
@@ -50,12 +50,19 @@ module.exports = models => async (req, res) => {
 
   newRecommendation.recommendation = recommendation || undefined
   newRecommendation.comments = comments || undefined
+
   if (
     ['reject', 'publish'].includes(recommendation) &&
     recommendationType === 'editorRecommendation'
   )
     await collectionHelper.updateStatus(collection, 'pendingApproval')
 
+  if (
+    ['minor', 'major'].includes(recommendation) &&
+    recommendationType === 'editorRecommendation'
+  )
+    await collectionHelper.updateStatus(collection, 'revisionRequested')
+
   fragment.recommendations.push(newRecommendation)
   await fragment.save()
   return res.status(200).json(newRecommendation)
diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js
index dc6d64d96..9249e8887 100644
--- a/packages/xpub-faraday/config/default.js
+++ b/packages/xpub-faraday/config/default.js
@@ -122,6 +122,10 @@ module.exports = {
       public: 'Under Review',
       private: 'Pending Approval',
     },
+    revisionRequested: {
+      public: 'Revision Requested',
+      private: 'Revision Requested',
+    },
   },
   'email-sending': process.env.EMAIL_SENDING || false,
 }
-- 
GitLab