mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-18 00:56:02 +00:00
error page handling fixes
This commit is contained in:
@@ -365,11 +365,13 @@ function createWindow() {
|
||||
console.log('Error saving config-root:', err.message);
|
||||
}
|
||||
});
|
||||
|
||||
// mainWindow.webContents.toggleDevTools();
|
||||
|
||||
mainWindow.loadURL(startUrl);
|
||||
if (os.platform() == 'linux') {
|
||||
mainWindow.setIcon(path.resolve(__dirname, '../icon.png'));
|
||||
}
|
||||
// mainWindow.webContents.toggleDevTools();
|
||||
|
||||
mainWindow.on('maximize', () => {
|
||||
mainWindow.webContents.send('setIsMaximized', true);
|
||||
|
||||
@@ -27,7 +27,7 @@ class AuthProviderBase {
|
||||
}
|
||||
|
||||
isUserLoggedIn(req) {
|
||||
return !!req.user || !!req.auth;
|
||||
return !!req?.user || !!req?.auth;
|
||||
}
|
||||
|
||||
getCurrentPermissions(req) {
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
import { useConfig } from './utility/metadataLoaders';
|
||||
import ErrorInfo from './elements/ErrorInfo.svelte';
|
||||
import Link from './elements/Link.svelte';
|
||||
import { internalRedirectTo } from './clientAuth';
|
||||
|
||||
const config = useConfig();
|
||||
|
||||
@@ -23,7 +24,7 @@
|
||||
</div>
|
||||
<div class="box">
|
||||
<div class="heading">Configuration error</div>
|
||||
{#if !$config?.isLicenseValid}
|
||||
{#if $config?.isLicenseValid == false}
|
||||
<ErrorInfo
|
||||
message={`Invalid license. Please contact sales@dbgate.eu for more details. ${$config?.licenseError}`}
|
||||
/>
|
||||
@@ -32,7 +33,7 @@
|
||||
{:else}
|
||||
<ErrorInfo message="No error found, try to open app again" />
|
||||
<div class="m-2">
|
||||
<Link href="?">Back to app</Link>
|
||||
<Link onClick={() => internalRedirectTo('/')}>Back to app</Link>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
// }`
|
||||
// );
|
||||
internalRedirectTo(
|
||||
`connections/dblogin?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${
|
||||
`/connections/dblogin?conid=${selectedConnection?.conid}&state=${encodeURIComponent(state)}&redirectUri=${
|
||||
location.origin + location.pathname
|
||||
}`
|
||||
);
|
||||
@@ -130,7 +130,7 @@
|
||||
isTesting = false;
|
||||
if (resp.accessToken) {
|
||||
localStorage.setItem('accessToken', resp.accessToken);
|
||||
internalRedirectTo('?');
|
||||
internalRedirectTo('/');
|
||||
} else {
|
||||
sqlConnectResult = resp;
|
||||
}
|
||||
@@ -140,7 +140,7 @@
|
||||
conid: selectedConnection.conid,
|
||||
});
|
||||
localStorage.setItem('accessToken', resp.accessToken);
|
||||
internalRedirectTo('?');
|
||||
internalRedirectTo('/');
|
||||
}
|
||||
}}
|
||||
/>
|
||||
@@ -155,7 +155,7 @@
|
||||
});
|
||||
if (resp.error) {
|
||||
internalRedirectTo(
|
||||
`?page=not-logged&error=${encodeURIComponent(resp.error)}&is-admin=${isAdminPage ? 'true' : ''}`
|
||||
`/?page=not-logged&error=${encodeURIComponent(resp.error)}&is-admin=${isAdminPage ? 'true' : ''}`
|
||||
);
|
||||
return;
|
||||
}
|
||||
@@ -163,13 +163,13 @@
|
||||
if (accessToken) {
|
||||
localStorage.setItem(isAdminPage ? 'adminAccessToken' : 'accessToken', accessToken);
|
||||
if (isAdminPage) {
|
||||
internalRedirectTo('?page=admin');
|
||||
internalRedirectTo('/?page=admin');
|
||||
} else {
|
||||
internalRedirectTo('?');
|
||||
internalRedirectTo('/');
|
||||
}
|
||||
return;
|
||||
}
|
||||
internalRedirectTo(`?page=not-logged`);
|
||||
internalRedirectTo(`/?page=not-logged`);
|
||||
}}
|
||||
/>
|
||||
{/if}
|
||||
|
||||
@@ -50,10 +50,10 @@ export function handleOauthCallback() {
|
||||
if (accessToken) {
|
||||
console.log('Settings access token from OAUTH');
|
||||
localStorage.setItem('accessToken', accessToken);
|
||||
internalRedirectTo('?');
|
||||
internalRedirectTo('/');
|
||||
} else {
|
||||
console.log('Error when processing OAUTH callback', error || errorMessage);
|
||||
internalRedirectTo(`?page=not-logged&error=${error || errorMessage}`);
|
||||
internalRedirectTo(`/?page=not-logged&error=${error || errorMessage}`);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -73,9 +73,9 @@ export function handleOauthCallback() {
|
||||
if (authResp.success) {
|
||||
window.close();
|
||||
} else if (authResp.error) {
|
||||
internalRedirectTo(`?page=error&error=${encodeURIComponent(authResp.error)}`);
|
||||
internalRedirectTo(`/?page=error&error=${encodeURIComponent(authResp.error)}`);
|
||||
} else {
|
||||
internalRedirectTo(`?page=error`);
|
||||
internalRedirectTo(`/?page=error`);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -93,11 +93,11 @@ export function handleOauthCallback() {
|
||||
}).then(authResp => {
|
||||
if (authResp.accessToken) {
|
||||
localStorage.setItem('accessToken', authResp.accessToken);
|
||||
internalRedirectTo('?');
|
||||
internalRedirectTo('/');
|
||||
} else if (authResp.error) {
|
||||
internalRedirectTo(`?page=error&error=${encodeURIComponent(authResp.error)}`);
|
||||
internalRedirectTo(`/?page=error&error=${encodeURIComponent(authResp.error)}`);
|
||||
} else {
|
||||
internalRedirectTo(`?page=error`);
|
||||
internalRedirectTo(`/?page=error`);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -109,7 +109,7 @@ export function handleOauthCallback() {
|
||||
|
||||
export async function handleAuthOnStartup(config, isAdminPage = false) {
|
||||
if (!config.isLicenseValid) {
|
||||
internalRedirectTo(`?page=error`);
|
||||
internalRedirectTo(`/?page=error`);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -135,7 +135,7 @@ export async function handleAuthOnStartup(config, isAdminPage = false) {
|
||||
}
|
||||
|
||||
export async function redirectToAdminLogin() {
|
||||
internalRedirectTo('?page=admin-login');
|
||||
internalRedirectTo('/?page=admin-login');
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -152,7 +152,7 @@ export async function redirectToLogin(config = null, force = false) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
internalRedirectTo('?page=login');
|
||||
internalRedirectTo('/?page=login');
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -184,14 +184,14 @@ export async function doLogout() {
|
||||
if (config.oauthLogout) {
|
||||
window.location.href = config.oauthLogout;
|
||||
} else {
|
||||
internalRedirectTo('?page=not-logged');
|
||||
internalRedirectTo('/?page=not-logged');
|
||||
}
|
||||
} else if (config.isLoginForm) {
|
||||
localStorage.removeItem(isAdminPage() ? 'adminAccessToken' : 'accessToken');
|
||||
internalRedirectTo(`?page=not-logged&is-admin=${isAdminPage() ? 'true' : ''}`);
|
||||
internalRedirectTo(`/?page=not-logged&is-admin=${isAdminPage() ? 'true' : ''}`);
|
||||
} else if (config.isAdminLoginForm && isAdminPage()) {
|
||||
localStorage.removeItem('adminAccessToken');
|
||||
internalRedirectTo('?page=admin-login&is-admin=true');
|
||||
internalRedirectTo('/?page=admin-login&is-admin=true');
|
||||
} else {
|
||||
window.location.href = 'config/logout';
|
||||
}
|
||||
|
||||
@@ -8,13 +8,14 @@ import LoginPage from './LoginPage.svelte';
|
||||
import NotLoggedPage from './NotLoggedPage.svelte';
|
||||
import ErrorPage from './ErrorPage.svelte';
|
||||
|
||||
const isOauthCallback = handleOauthCallback();
|
||||
|
||||
const params = new URLSearchParams(location.search);
|
||||
const page = params.get('page');
|
||||
|
||||
const isOauthCallback = handleOauthCallback();
|
||||
|
||||
localStorageGarbageCollector();
|
||||
|
||||
|
||||
function createApp() {
|
||||
if (isOauthCallback) {
|
||||
return null;
|
||||
|
||||
@@ -16,7 +16,7 @@ import { batchDispatchCacheTriggers, dispatchCacheChange } from './cache';
|
||||
export const strmid = uuidv1();
|
||||
|
||||
let eventSource;
|
||||
let apiLogging = false;
|
||||
let apiLogging = true;
|
||||
// let cacheCleanerRegistered;
|
||||
let apiDisabled = false;
|
||||
const disabledOnOauth = isOauthCallback();
|
||||
|
||||
Reference in New Issue
Block a user