diff --git a/packages/web/src/LoginPage.svelte b/packages/web/src/LoginPage.svelte index b1b0af48d..bcb0bb7cf 100644 --- a/packages/web/src/LoginPage.svelte +++ b/packages/web/src/LoginPage.svelte @@ -13,6 +13,7 @@ import FontIcon from './icons/FontIcon.svelte'; import createRef from './utility/createRef'; import Link from './elements/Link.svelte'; + import SpecialPageLayout from './widgets/SpecialPageLayout.svelte'; export let isAdminPage; @@ -71,9 +72,6 @@ } onMount(() => { - const removed = document.getElementById('starting_dbgate_zero'); - if (removed) removed.remove(); - if (!isAdminPage) { loadAvailableAuthProviders(); } @@ -134,177 +132,151 @@ } -
-
DbGate
-
- -
-
Log In
- - - {#if !isAdminPage && availableProviders?.length >= 2} - ({ value: mtd.amoid, label: mtd.name }))} - /> - {/if} - - {#if !isAdminPage && availableConnections && workflowType == 'database'} - ({ value: conn.conid, label: conn.label }))} - /> - {/if} - - {#if selectedConnection} - {#if selectedConnection.passwordMode == 'askUser'} - - {/if} - {#if selectedConnection.passwordMode == 'askUser' || selectedConnection.passwordMode == 'askPassword'} - - {/if} - {:else} - {#if !isAdminPage && workflowType == 'credentials'} - - {/if} - {#if workflowType == 'credentials'} - - {/if} - {/if} - - {#if isAdminPage && $config && !$config.isAdminLoginForm} - - {/if} - - {#if isTesting} -
- Testing connection -
- {/if} - - {#if !isTesting && sqlConnectResult && sqlConnectResult.msgtype == 'error'} -
- Connect failed: - {sqlConnectResult.error} -
- {/if} - -
- {#if selectedConnection?.useRedirectDbLogin} - { - const state = `dbg-dblogin:${strmid}:${selectedConnection?.conid}:${$values.amoid}`; - sessionStorage.setItem('dbloginAuthState', state); - // openWebLink( - // `connections/dblogin?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${ - // location.origin + location.pathname - // }` - // ); - internalRedirectTo( - `/connections/dblogin-web?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${extractRedirectUri()}` - ); - }} - /> - {:else if selectedConnection} - { - if (selectedConnection.passwordMode == 'askUser' || selectedConnection.passwordMode == 'askPassword') { - enableApi(); - isTesting = true; - testIdRef.update(x => x + 1); - const testid = testIdRef.get(); - const resp = await apiCall('connections/dblogin-auth', { - amoid: $values.amoid, - conid: selectedConnection.conid, - user: $values['login'], - password: $values['password'], - }); - if (testIdRef.get() != testid) return; - isTesting = false; - if (resp.accessToken) { - localStorage.setItem('accessToken', resp.accessToken); - internalRedirectTo('/'); - } else { - sqlConnectResult = resp; - } - } else { - enableApi(); - const resp = await apiCall('connections/dblogin-auth', { - amoid: $values.amoid, - conid: selectedConnection.conid, - }); - localStorage.setItem('accessToken', resp.accessToken); - internalRedirectTo('/'); - } - }} - /> - {:else} - { - enableApi(); - - if (isAdminPage || workflowType == 'credentials' || workflowType == 'anonymous') { - await processCredentialsLogin($values.amoid, e.detail); - } else if (workflowType == 'redirect') { - await processRedirectLogin($values.amoid); - } - }} - /> - {/if} -
-
-
- -
- {#each availableProviders.filter(x => x.workflowType == 'anonymous' || x.workflowType == 'redirect') as provider} -
processSingleProvider(provider)}> - {provider.name} -
- {/each} -
+ +
Log In
+ -
+ + {#if !isAdminPage && availableProviders?.length >= 2} + ({ value: mtd.amoid, label: mtd.name }))} + /> + {/if} + + {#if !isAdminPage && availableConnections && workflowType == 'database'} + ({ value: conn.conid, label: conn.label }))} + /> + {/if} + + {#if selectedConnection} + {#if selectedConnection.passwordMode == 'askUser'} + + {/if} + {#if selectedConnection.passwordMode == 'askUser' || selectedConnection.passwordMode == 'askPassword'} + + {/if} + {:else} + {#if !isAdminPage && workflowType == 'credentials'} + + {/if} + {#if workflowType == 'credentials'} + + {/if} + {/if} + + {#if isAdminPage && $config && !$config.isAdminLoginForm} + + {/if} + + {#if isTesting} +
+ Testing connection +
+ {/if} + + {#if !isTesting && sqlConnectResult && sqlConnectResult.msgtype == 'error'} +
+ Connect failed: + {sqlConnectResult.error} +
+ {/if} + +
+ {#if selectedConnection?.useRedirectDbLogin} + { + const state = `dbg-dblogin:${strmid}:${selectedConnection?.conid}:${$values.amoid}`; + sessionStorage.setItem('dbloginAuthState', state); + // openWebLink( + // `connections/dblogin?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${ + // location.origin + location.pathname + // }` + // ); + internalRedirectTo( + `/connections/dblogin-web?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${extractRedirectUri()}` + ); + }} + /> + {:else if selectedConnection} + { + if (selectedConnection.passwordMode == 'askUser' || selectedConnection.passwordMode == 'askPassword') { + enableApi(); + isTesting = true; + testIdRef.update(x => x + 1); + const testid = testIdRef.get(); + const resp = await apiCall('connections/dblogin-auth', { + amoid: $values.amoid, + conid: selectedConnection.conid, + user: $values['login'], + password: $values['password'], + }); + if (testIdRef.get() != testid) return; + isTesting = false; + if (resp.accessToken) { + localStorage.setItem('accessToken', resp.accessToken); + internalRedirectTo('/'); + } else { + sqlConnectResult = resp; + } + } else { + enableApi(); + const resp = await apiCall('connections/dblogin-auth', { + amoid: $values.amoid, + conid: selectedConnection.conid, + }); + localStorage.setItem('accessToken', resp.accessToken); + internalRedirectTo('/'); + } + }} + /> + {:else} + { + enableApi(); + + if (isAdminPage || workflowType == 'credentials' || workflowType == 'anonymous') { + await processCredentialsLogin($values.amoid, e.detail); + } else if (workflowType == 'redirect') { + await processRedirectLogin($values.amoid); + } + }} + /> + {/if} +
+
+ + + {#each availableProviders.filter(x => x.workflowType == 'anonymous' || x.workflowType == 'redirect') as provider} +
processSingleProvider(provider)}> + {provider.name} +
+ {/each} +
+