From 4367c9adf679ad5a65107b21a98da75c11486c6d Mon Sep 17 00:00:00 2001 From: Martin McKeaveney Date: Tue, 9 Nov 2021 18:00:32 +0100 Subject: [PATCH] prevent redirect to acct portal when not necessary --- .../builder/src/pages/builder/_layout.svelte | 6 ++++- packages/builder/src/stores/portal/auth.js | 23 +++++++++++++++---- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/packages/builder/src/pages/builder/_layout.svelte b/packages/builder/src/pages/builder/_layout.svelte index 179131107f..6227f7938c 100644 --- a/packages/builder/src/pages/builder/_layout.svelte +++ b/packages/builder/src/pages/builder/_layout.svelte @@ -30,7 +30,11 @@ if (user && user.tenantId) { // no tenant in the url - send to account portal to fix this if (!urlTenantId) { - window.location.href = $admin.accountPortalUrl + let redirectUrl = $admin.accountPortalUrl + if (!window.location.host.includes("localhost")) { + const redirectUrl = redirectUrl.replace("://", `://${user.tenantId}.`) + } + window.location.href = redirectUrl return } diff --git a/packages/builder/src/stores/portal/auth.js b/packages/builder/src/stores/portal/auth.js index 9a12667a7e..df4e3f8462 100644 --- a/packages/builder/src/stores/portal/auth.js +++ b/packages/builder/src/stores/portal/auth.js @@ -81,16 +81,29 @@ export function createAuthStore() { } async function setInitInfo(info) { - await api.post(`/api/global/auth/init`, info) + const response = await api.post(`/api/global/auth/init`, info) + const json = await response.json() + auth.update(store => { + store.initInfo = json + return store + }) + return json + } + + async function getInitInfo() { + const response = await api.get(`/api/global/auth/init`) + const json = response.json() + auth.update(store => { + store.initInfo = json + return store + }) + return json } return { subscribe: store.subscribe, setOrganisation: setOrganisation, - getInitInfo: async () => { - const response = await api.get(`/api/global/auth/init`) - return await response.json() - }, + getInitInfo, setInitInfo, checkQueryString: async () => { const urlParams = new URLSearchParams(window.location.search)