From 03844d5b9738fe8a004f5617a63be526016d0132 Mon Sep 17 00:00:00 2001 From: Kevin Ansfield Date: Thu, 20 May 2021 14:31:51 +0100 Subject: [PATCH] Fixed portal preview not updating when connecting/disconnecting Stripe no issue - store current stripe connection status when opening the stripe connect modal and if it's different when the modal is closed force a save and refresh of the portal preview --- .../app/controllers/settings/membership.js | 8 +++++++- .../admin/app/templates/settings/membership.hbs | 17 +++++++++-------- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/ghost/admin/app/controllers/settings/membership.js b/ghost/admin/app/controllers/settings/membership.js index 4f10c76ec1..f83c39b45b 100644 --- a/ghost/admin/app/controllers/settings/membership.js +++ b/ghost/admin/app/controllers/settings/membership.js @@ -36,6 +36,7 @@ export default class MembersAccessController extends Controller { @tracked stripePlanError = ''; @tracked portalPreviewUrl = ''; + @tracked portalPreviewGuid = Date.now().valueOf(); queryParams = ['showPortalSettings']; @@ -147,11 +148,16 @@ export default class MembersAccessController extends Controller { @action openStripeConnect() { + this.stripeEnabledOnOpen = this.membersUtils.isStripeEnabled; this.showStripeConnect = true; } @action - closeStripeConnect() { + async closeStripeConnect() { + if (this.stripeEnabledOnOpen !== this.membersUtils.isStripeEnabled) { + await this.saveSettingsTask.perform(); + this.portalPreviewGuid = Date.now().valueOf(); + } this.showStripeConnect = false; } diff --git a/ghost/admin/app/templates/settings/membership.hbs b/ghost/admin/app/templates/settings/membership.hbs index 7bfba8b65f..c3f2f17e93 100644 --- a/ghost/admin/app/templates/settings/membership.hbs +++ b/ghost/admin/app/templates/settings/membership.hbs @@ -57,6 +57,7 @@ {{else}} @@ -92,8 +93,8 @@ @id="freeWelcomePage" @value={{readonly this.settings.membersFreeSignupRedirect}} @baseUrl={{readonly this.siteUrl}} - @setResult={{action "setFreeSignupRedirect"}} - @validateUrl={{action "validateFreeSignupRedirect"}} + @setResult={{this.setFreeSignupRedirect}} + @validateUrl={{this.validateFreeSignupRedirect}} @placeholder={{readonly this.siteUrl}} /> {{#if this.settings.stripeConnectAccountId}} - + {{else}} - {{/if}} @@ -178,7 +179,7 @@ @value={{readonly this.stripeYearlyAmount}} @type="number" @input={{action (mut this.stripeYearlyAmount) value="target.value"}} - @focus-out={{action "validateStripePlans"}} + @focus-out={{this.validateStripePlans}} @placeholder='' data-test-title-input={{true}} /> @@ -195,8 +196,8 @@ {{/if}} \ No newline at end of file