42 lines
1.1 KiB
Svelte
42 lines
1.1 KiB
Svelte
<script lang="ts">
|
|
import type { PageProps } from './$types';
|
|
let { data, form }: PageProps = $props();
|
|
</script>
|
|
|
|
<svelte:head><title>Einladung annehmen | Sendewerk</title></svelte:head>
|
|
|
|
<section class="auth-card">
|
|
<p class="eyebrow">Einladung</p>
|
|
<h1>Sendewerk-Konto aktivieren</h1>
|
|
{#if !data.valid && !form?.error}
|
|
<div class="form-message error" role="alert">
|
|
Die Einladung ist ungültig, abgelaufen oder bereits verwendet.
|
|
</div>
|
|
{:else}
|
|
<p>Die Einladung gilt für <strong>{data.email}</strong>.</p>
|
|
{#if form?.error}<div class="form-message error" role="alert">{form.error}</div>{/if}
|
|
<form class="auth-form" method="POST">
|
|
<label
|
|
>Name<input
|
|
name="displayName"
|
|
required
|
|
maxlength="80"
|
|
value={form?.displayName ?? ''}
|
|
autocomplete="name"
|
|
/></label
|
|
>
|
|
<label
|
|
>Passwort<input
|
|
name="password"
|
|
type="password"
|
|
required
|
|
minlength="12"
|
|
maxlength="256"
|
|
autocomplete="new-password"
|
|
/></label
|
|
>
|
|
<button class="primary-button" type="submit">Konto aktivieren</button>
|
|
</form>
|
|
{/if}
|
|
</section>
|