probably fixed blank page issue upon logout
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
import { Router, Route } from 'svelte-tiny-router';
|
import { Router, Route } from 'svelte-tiny-router';
|
||||||
|
|
||||||
import { loadTranslation } from './translations.svelte.js';
|
import { loadTranslation } from './translations.svelte.js';
|
||||||
import { user } from './user.svelte.js';
|
import { checkUser, user } from './user.svelte.js';
|
||||||
|
|
||||||
import AddDoc from "./routes/document/Add.svelte";
|
import AddDoc from "./routes/document/Add.svelte";
|
||||||
import AddTask from "./routes/task/Add.svelte";
|
import AddTask from "./routes/task/Add.svelte";
|
||||||
@@ -46,12 +46,17 @@
|
|||||||
fetch(url).then(resp => resp.text()).then(css => document.getElementById('usercss').innerText = css);
|
fetch(url).then(resp => resp.text()).then(css => document.getElementById('usercss').innerText = css);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function testGuard({to, from, next}){
|
||||||
|
await checkUser();
|
||||||
|
next();
|
||||||
|
}
|
||||||
|
|
||||||
$effect(() => loadTheme(user.theme));
|
$effect(() => loadTheme(user.theme));
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#if translations_ready }
|
{#if translations_ready }
|
||||||
<Router>
|
{#if user.name}
|
||||||
{#if user.name }
|
<Router beforeEach={[testGuard]}>
|
||||||
<!-- https://github.com/notnotsamuel/svelte-tiny-router -->
|
<!-- https://github.com/notnotsamuel/svelte-tiny-router -->
|
||||||
<Menu />
|
<Menu />
|
||||||
<Route path="/" component={User} />
|
<Route path="/" component={User} />
|
||||||
@@ -85,14 +90,16 @@
|
|||||||
<Route>
|
<Route>
|
||||||
Not found!
|
Not found!
|
||||||
</Route>
|
</Route>
|
||||||
|
</Router>
|
||||||
{:else}
|
{:else}
|
||||||
|
<Router>
|
||||||
<Route path="/user/reset/pw" component={ResetPw} />
|
<Route path="/user/reset/pw" component={ResetPw} />
|
||||||
<Route path="/oidc_callback" component={Callback} />
|
<Route path="/oidc_callback" component={Callback} />
|
||||||
<Route>
|
<Route>
|
||||||
<Login />
|
<Login />
|
||||||
</Route>
|
</Route>
|
||||||
{/if}
|
|
||||||
</Router>
|
</Router>
|
||||||
|
{/if}
|
||||||
<Footer />
|
<Footer />
|
||||||
{:else}
|
{:else}
|
||||||
<p>Loading translations...</p>
|
<p>Loading translations...</p>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
import { onDestroy, onMount } from 'svelte';
|
import { onMount } from 'svelte';
|
||||||
import { useTinyRouter } from 'svelte-tiny-router';
|
import { useTinyRouter } from 'svelte-tiny-router';
|
||||||
|
|
||||||
import { logout, user } from '../user.svelte.js';
|
import { logout, user } from '../user.svelte.js';
|
||||||
@@ -37,10 +37,6 @@ async function search(e){
|
|||||||
}
|
}
|
||||||
|
|
||||||
onMount(fetchModules);
|
onMount(fetchModules);
|
||||||
|
|
||||||
onDestroy(() => {
|
|
||||||
if (interval) clearInterval(interval);
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
<script>
|
<script>
|
||||||
|
import { onDestroy } from 'svelte';
|
||||||
import { useTinyRouter } from 'svelte-tiny-router';
|
import { useTinyRouter } from 'svelte-tiny-router';
|
||||||
|
|
||||||
import { api } from '../urls.svelte';
|
import { api } from '../urls.svelte';
|
||||||
@@ -44,6 +45,10 @@
|
|||||||
interval = null;
|
interval = null;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
onDestroy(() => {
|
||||||
|
if (interval) clearInterval(interval);
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ export async function checkUser(){
|
|||||||
for (let key of Object.keys(json)) user[key] = json[key];
|
for (let key of Object.keys(json)) user[key] = json[key];
|
||||||
url = `${location.protocol}//${location.host.replace('5173','8080')}/api/time/started`;
|
url = `${location.protocol}//${location.host.replace('5173','8080')}/api/time/started`;
|
||||||
resp = await fetch(url,{credentials: 'include'});
|
resp = await fetch(url,{credentials: 'include'});
|
||||||
|
} else {
|
||||||
|
user.name = null;
|
||||||
}
|
}
|
||||||
if (resp.ok){
|
if (resp.ok){
|
||||||
const track = await resp.json();
|
const track = await resp.json();
|
||||||
|
|||||||
Reference in New Issue
Block a user