diff --git a/packages/component-invite/src/routes/collectionsInvitations/delete.js b/packages/component-invite/src/routes/collectionsInvitations/delete.js index 6e6b99cf329c8248c74c0e13041ee0e366815479..0eb3ca07b1f9ecc2ba3ff95d68c3d05bfcdbe06f 100644 --- a/packages/component-invite/src/routes/collectionsInvitations/delete.js +++ b/packages/component-invite/src/routes/collectionsInvitations/delete.js @@ -32,7 +32,9 @@ module.exports = models => async (req, res) => { collection.invitations = collection.invitations.filter( inv => inv.id !== invitation.id, ) - + if (invitation.role === 'handlingEditor') { + delete collection.handlingEditor + } await collection.save() await teamHelper.removeTeamMember(team.id, invitation.userId, models.Team) const user = await models.User.find(invitation.userId) diff --git a/packages/component-user-manager/src/routes/collectionsUsers/patch.js b/packages/component-user-manager/src/routes/collectionsUsers/patch.js index fb2521e3320b094ee5cdc9c16cb79d4da951b0d2..c973e20d44faaae59eab82afd22a5399e2321924 100644 --- a/packages/component-user-manager/src/routes/collectionsUsers/patch.js +++ b/packages/component-user-manager/src/routes/collectionsUsers/patch.js @@ -34,9 +34,10 @@ module.exports = models => async (req, res) => { error: 'Collection and user do not match', }) } - matchingAuthor.firstName = firstName - matchingAuthor.lastName = lastName - matchingAuthor.affiliation = affiliation + user.firstName = firstName + user.lastName = lastName + user.affiliation = affiliation + await user.save() matchingAuthor.isSubmitting = isSubmitting matchingAuthor.isCorresponding = isCorresponding collection = await collection.save() diff --git a/packages/component-user-manager/src/tests/collectionsUsers/patch.test.js b/packages/component-user-manager/src/tests/collectionsUsers/patch.test.js index 0541f282ef720bd41b952e3086ffd2896cdc3c69..907872eac727afea7ab33cc4acd7601bdcc8c60a 100644 --- a/packages/component-user-manager/src/tests/collectionsUsers/patch.test.js +++ b/packages/component-user-manager/src/tests/collectionsUsers/patch.test.js @@ -42,7 +42,8 @@ describe('Patch collections users route handler', () => { ) expect(matchingAuthor.isSubmitting).toBe(body.isSubmitting) expect(matchingAuthor.isCorresponding).toBe(body.isCorresponding) - expect(matchingAuthor.firstName).toBe(body.firstName) + expect(submittingAuthor.firstName).toBe(body.firstName) + expect(submittingAuthor.lastName).toBe(body.lastName) }) it('should return an error when the params are missing', async () => { delete body.isSubmitting