logout, account and useradmin now only shows when logged in
This commit is contained in:
parent
67255f3773
commit
803dcd19cb
|
|
@ -0,0 +1,10 @@
|
|||
import type { LayoutServerLoad } from "./$types"
|
||||
|
||||
import Permissions from "$lib/permissions"
|
||||
|
||||
export const load: LayoutServerLoad = ({ locals }) => {
|
||||
return {
|
||||
loggedInAs: locals.user?.username,
|
||||
isAdmin: Permissions.any(locals.user?.permissions ?? 0, Permissions.USERADMIN.ALL)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,25 +1,34 @@
|
|||
<script lang="ts">
|
||||
let { children } = $props();
|
||||
import type { LayoutProps } from './$types'
|
||||
|
||||
let { data, children }: LayoutProps = $props();
|
||||
</script>
|
||||
|
||||
{#snippet nav(classlist: string)}
|
||||
<div class={classlist}>
|
||||
<h1>Navigation</h1>
|
||||
<ul>
|
||||
<li><a href="/">Stundenliste</a></li>
|
||||
<li><a href="/schaetzung">Stundenschätzung</a></li>
|
||||
<li><a href="/dokumente">Dokumente</a></li>
|
||||
|
||||
<li class="separator"></li>
|
||||
<li><a href="/user">Account</a></li>
|
||||
<li><a href="/useradmin">Benutzerverwaltung</a></li>
|
||||
<li>
|
||||
<form method="POST" action="/login?/logout">
|
||||
<button type="submit">Logout</button>
|
||||
</form>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class={classlist}>
|
||||
<h1>Navigation</h1>
|
||||
<ul>
|
||||
<li><a href="/">Stundenliste</a></li>
|
||||
<li><a href="/schaetzung">Stundenschätzung</a></li>
|
||||
<li><a href="/dokumente">Dokumente</a></li>
|
||||
|
||||
<li class="separator"></li>
|
||||
{#if data?.loggedInAs != null}
|
||||
<li>Eingeloggt als: {data.loggedInAs}</li>
|
||||
<li><a href="/user">Account</a></li>
|
||||
{/if}
|
||||
{#if data?.isAdmin === true}
|
||||
<li><a href="/useradmin">Benutzerverwaltung</a></li>
|
||||
{/if}
|
||||
{#if data?.loggedInAs != null}
|
||||
<li>
|
||||
<form method="POST" action="/login?/logout">
|
||||
<button type="submit">Logout</button>
|
||||
</form>
|
||||
</li>
|
||||
{/if}
|
||||
</ul>
|
||||
</div>
|
||||
{/snippet}
|
||||
|
||||
<div class="navcontainer">
|
||||
|
|
|
|||
Loading…
Reference in New Issue