Einrichtung: Setup-Assistent fuer neue Nutzer auf der Startseite

Nutzer ohne Bewerbungen sehen einen mehrstufigen Wizard, der Persoenliche
Angaben, Basis-Unterlagen und Ollama-KI per fetch speichert. Dashboard bleibt
im DOM (hidden), damit main.js und "Bewerbung manuell anlegen" funktionieren.
Neue Endpunkte /api/einrichtung/{persoenlich,basis,ollama,verstecken} mit
SSRF-Guard; Ollama gezielt via setForUser, ohne Mail/Kalender/Token zu leeren.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-07-14 12:48:26 +02:00
co-authored by Claude
parent 92ade10a37
commit 1bc0188fcc
3 changed files with 640 additions and 1 deletions
+9
View File
@@ -7,6 +7,14 @@
<%- include('partials/header') %>
<main class="flex-1 container mx-auto px-4 py-8">
<% var zeigeDashboard = !(typeof setupWizard !== 'undefined' && setupWizard && setupWizard.aktiv); %>
<% if (!zeigeDashboard) { %>
<%- include('partials/einrichtung') %>
<% } %>
<!-- Dashboard: Markup bleibt immer im DOM, damit main.js seine Listener
binden kann (auch der "Bewerbung manuell anlegen"-Pfad des Wizards).
Bei aktivem Wizard wird der Block nur ausgeblendet. -->
<div id="dashboardWrap" class="<%= zeigeDashboard ? '' : 'hidden' %>">
<!-- Toolbar: search + actions -->
<div class="flex flex-col gap-3 mb-8 sm:flex-row sm:items-center">
<div class="relative flex-1">
@@ -652,6 +660,7 @@
});
})();
</script>
</div><!-- /dashboardWrap -->
</main>
<%- include('partials/footer') %>