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