diff --git a/app/src/electron.js b/app/src/electron.js
index a60c07830..9f51f771a 100644
--- a/app/src/electron.js
+++ b/app/src/electron.js
@@ -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);
diff --git a/packages/api/src/auth/authProvider.js b/packages/api/src/auth/authProvider.js
index 93faa5c5c..4f8852d73 100644
--- a/packages/api/src/auth/authProvider.js
+++ b/packages/api/src/auth/authProvider.js
@@ -27,7 +27,7 @@ class AuthProviderBase {
}
isUserLoggedIn(req) {
- return !!req.user || !!req.auth;
+ return !!req?.user || !!req?.auth;
}
getCurrentPermissions(req) {
diff --git a/packages/web/src/ErrorPage.svelte b/packages/web/src/ErrorPage.svelte
index c82b2dfe6..e04f5b034 100644
--- a/packages/web/src/ErrorPage.svelte
+++ b/packages/web/src/ErrorPage.svelte
@@ -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 @@
Configuration error
- {#if !$config?.isLicenseValid}
+ {#if $config?.isLicenseValid == false}
@@ -32,7 +33,7 @@
{:else}
- Back to app
+ internalRedirectTo('/')}>Back to app
{/if}
diff --git a/packages/web/src/LoginPage.svelte b/packages/web/src/LoginPage.svelte
index ed534b482..e76bd2419 100644
--- a/packages/web/src/LoginPage.svelte
+++ b/packages/web/src/LoginPage.svelte
@@ -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}
diff --git a/packages/web/src/clientAuth.ts b/packages/web/src/clientAuth.ts
index 69041e99a..4e9b6c60b 100644
--- a/packages/web/src/clientAuth.ts
+++ b/packages/web/src/clientAuth.ts
@@ -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';
}
diff --git a/packages/web/src/main.ts b/packages/web/src/main.ts
index ee5b5155d..a134b123d 100644
--- a/packages/web/src/main.ts
+++ b/packages/web/src/main.ts
@@ -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;
diff --git a/packages/web/src/utility/api.ts b/packages/web/src/utility/api.ts
index fea810415..875c44c4c 100644
--- a/packages/web/src/utility/api.ts
+++ b/packages/web/src/utility/api.ts
@@ -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();