diff --git a/ghost/members-api/lib/MembersAPI.js b/ghost/members-api/lib/MembersAPI.js index f39b603b11..b6917cd282 100644 --- a/ghost/members-api/lib/MembersAPI.js +++ b/ghost/members-api/lib/MembersAPI.js @@ -222,7 +222,7 @@ module.exports = function MembersAPI({ } async function getMemberDataFromMagicLinkToken(token) { - const {email, labels = [], name = '', oldEmail} = await magicLinkService.getDataFromToken(token); + const {email, labels = [], name = '', oldEmail, newsletters} = await magicLinkService.getDataFromToken(token); if (!email) { return null; } @@ -241,8 +241,7 @@ module.exports = function MembersAPI({ } return member; } - - const newMember = await users.create({name, email, labels}); + const newMember = await users.create({name, email, labels, newsletters}); await MemberLoginEvent.add({member_id: newMember.id}); return getMemberIdentityData(email); } diff --git a/ghost/members-api/lib/controllers/router.js b/ghost/members-api/lib/controllers/router.js index e08ee0fb74..5eac3f6314 100644 --- a/ghost/members-api/lib/controllers/router.js +++ b/ghost/members-api/lib/controllers/router.js @@ -296,7 +296,7 @@ module.exports = class RouterController { await this._sendEmailWithMagicLink({email, tokenData, requestedType: emailType, requestSrc}); } } else { - const tokenData = _.pick(req.body, ['labels', 'name']); + const tokenData = _.pick(req.body, ['labels', 'name', 'newsletters']); await this._sendEmailWithMagicLink({email, tokenData, requestedType: emailType, requestSrc}); } res.writeHead(201);