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

Improved bulk unsubscribe operation to use member_id column (#400)

refs https://ghost.slack.com/archives/C02G9E68C/p1652980792270029

When bulk unsubscribing members, the number of deleted newsletter relations are returned instead of the number of members with newsletters that were cleared. This update deletes newsletter relations on member_id, so we can return the count of members instead of newsletter relations that were deleted.

Tests in https://github.com/TryGhost/Ghost/pull/14871
This commit is contained in:
Simon Backx 2022-05-20 12:25:58 +02:00 committed by GitHub
parent 90fc7f5064
commit 62c992c8e3

View file

@ -617,13 +617,7 @@ module.exports = class MemberRepository {
const memberIds = memberRows.map(row => row.id);
if (data.action === 'unsubscribe') {
const memberNewsletterRows = await this._Member.getNewsletterRelations({
memberIds
});
const membersNewsletterIds = memberNewsletterRows.map(row => row.id);
return await this._Member.bulkDestroy(membersNewsletterIds, 'members_newsletters');
return await this._Member.bulkDestroy(memberIds, 'members_newsletters', {column: 'member_id'});
}
if (data.action === 'removeLabel') {