diff --git a/ghost/members-csv/lib/unparse.js b/ghost/members-csv/lib/unparse.js index 33055f443c..7380357b01 100644 --- a/ghost/members-csv/lib/unparse.js +++ b/ghost/members-csv/lib/unparse.js @@ -15,6 +15,12 @@ const DEFAULT_COLUMNS = [ ]; const unparse = (members, columns = DEFAULT_COLUMNS.slice()) => { + columns = columns.map((column) => { + if (column === 'subscribed') { + return 'subscribed_to_emails'; + } + return column; + }); const mappedMembers = members.map((member) => { if (member.error) { columns.push('error'); diff --git a/ghost/members-csv/test/unparse.test.js b/ghost/members-csv/test/unparse.test.js index ec1cd486f1..b09b518084 100644 --- a/ghost/members-csv/test/unparse.test.js +++ b/ghost/members-csv/test/unparse.test.js @@ -16,4 +16,19 @@ describe('unparse', function () { const expected = `id,email,name,note,subscribed_to_emails,complimentary_plan,stripe_customer_id,created_at,deleted_at,labels,products\r\n,email@example.com,Sam Memberino,Early supporter,,,,,,,`; should.equal(result, expected); }); + + it('maps the subscribed property to subscribed_to_emails', function () { + const json = [{ + email: 'do-not-email-me@email.com', + subscribed: false + }]; + + const columns = Object.keys(json[0]); + + const result = unparse(json, columns); + + const expected = `email,subscribed_to_emails\r\ndo-not-email-me@email.com,false`; + + should.equal(result, expected); + }); });