0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-03 23:00:14 -05:00

Handled newsletters preference for free members signup

refs https://github.com/TryGhost/Team/issues/1490

With multiple newsletters, free members can choose their newsletter subscription preference while signing up.
This change -
- includes newsletters data in magic link token creation
- attaches newsletter data to new members created via magic link
This commit is contained in:
Rishabh 2022-04-13 14:55:56 +05:30
parent ee817a7625
commit 54a6fe9a62
2 changed files with 3 additions and 4 deletions

View file

@ -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);
}

View file

@ -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);