From 1a44221df1a3316a802555c6d8e2fccd21011d23 Mon Sep 17 00:00:00 2001 From: Rish Date: Wed, 24 Feb 2021 14:24:54 +0530 Subject: [PATCH] Updated last4 to return masked value if empty in theme closes https://github.com/TryGhost/Team/issues/464 Currently, if the last4 value for a customer is empty, we end up showing `null` in theme where the card details are shown. The fix updates the last4 to return a masked value of **** instead of null if it's empty, ensuring themes using the last4 values don't have a `null` value shown to the user. --- core/frontend/services/themes/middleware.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/frontend/services/themes/middleware.js b/core/frontend/services/themes/middleware.js index 0182daebdd..3deec0758c 100644 --- a/core/frontend/services/themes/middleware.js +++ b/core/frontend/services/themes/middleware.js @@ -173,7 +173,11 @@ function updateLocalTemplateOptions(req, res, next) { name: req.member.name, firstname: req.member.name && req.member.name.split(' ')[0], avatar_image: req.member.avatar_image, - subscriptions: req.member.subscriptions, + subscriptions: req.member.subscriptions && req.member.subscriptions.map((sub) => { + return Object.assign({}, sub, { + default_payment_card_last4: sub.default_payment_card_last4 || '****' + }); + }), paid: req.member.status === 'paid' } : null;