From 7c52281e1f4ea191815ed2496a13ed95f6f35173 Mon Sep 17 00:00:00 2001
From: Sebastian <sebastian.mihalache@thinslices.com>
Date: Fri, 13 Apr 2018 13:38:18 +0300
Subject: [PATCH] feat(component-mail-service): add details to invite url

---
 packages/component-email/src/helpers/Email.js       |  7 +------
 packages/component-invite/src/helpers/User.js       |  7 +------
 packages/component-mail-service/src/Mail.js         | 12 ++++++++----
 packages/component-user-manager/src/helpers/User.js |  7 +------
 4 files changed, 11 insertions(+), 22 deletions(-)

diff --git a/packages/component-email/src/helpers/Email.js b/packages/component-email/src/helpers/Email.js
index 0f36a7953..08b1f3e44 100644
--- a/packages/component-email/src/helpers/Email.js
+++ b/packages/component-email/src/helpers/Email.js
@@ -58,12 +58,7 @@ module.exports = {
         })
     }
     try {
-      await mailService.setupInviteEmail(
-        email,
-        emailType,
-        user.passwordResetToken,
-        url,
-      )
+      await mailService.setupInviteEmail(user, emailType, url)
       return res.status(200).json({})
     } catch (e) {
       logger.error(e)
diff --git a/packages/component-invite/src/helpers/User.js b/packages/component-invite/src/helpers/User.js
index 5ccba0e94..5da4184d5 100644
--- a/packages/component-invite/src/helpers/User.js
+++ b/packages/component-invite/src/helpers/User.js
@@ -25,12 +25,7 @@ module.exports = {
 
     try {
       if (role !== 'reviewer') {
-        await mailService.setupInviteEmail(
-          newUser.email,
-          invitationType,
-          newUser.passwordResetToken,
-          url,
-        )
+        await mailService.setupInviteEmail(newUser, invitationType, url)
       }
 
       return newUser
diff --git a/packages/component-mail-service/src/Mail.js b/packages/component-mail-service/src/Mail.js
index f07fd48df..6e53819af 100644
--- a/packages/component-mail-service/src/Mail.js
+++ b/packages/component-mail-service/src/Mail.js
@@ -7,18 +7,22 @@ const config = require('config')
 const resetPath = config.get('invite-reset-password.url')
 
 module.exports = {
-  setupInviteEmail: async (email, emailType, token, inviteUrl) => {
+  setupInviteEmail: async (user, emailType, inviteUrl) => {
     const replacements = {
       url: `${inviteUrl}${resetPath}?${querystring.encode({
-        email,
-        token,
+        email: user.email,
+        token: user.passwordResetToken,
+        firstName: user.firstName,
+        lastName: user.lastName,
+        affiliation: user.affiliation,
+        title: user.title,
       })}`,
     }
 
     const { htmlBody, textBody } = getEmailBody(emailType, replacements)
     const mailData = {
       from: config.get('mailer.from'),
-      to: email,
+      to: user.email,
       subject: 'Hindawi Invitation',
       text: textBody,
       html: htmlBody,
diff --git a/packages/component-user-manager/src/helpers/User.js b/packages/component-user-manager/src/helpers/User.js
index d2a10aab5..a0db58ab1 100644
--- a/packages/component-user-manager/src/helpers/User.js
+++ b/packages/component-user-manager/src/helpers/User.js
@@ -24,12 +24,7 @@ module.exports = {
     )
 
     try {
-      await mailService.setupInviteEmail(
-        newUser.email,
-        invitationType,
-        newUser.passwordResetToken,
-        url,
-      )
+      await mailService.setupInviteEmail(newUser, invitationType, url)
 
       return newUser
     } catch (e) {
-- 
GitLab