feat: add page shell, preferences and translations

Base layout with top bar, role-based menu, profile menu and phone layout; theme, language and German form of address kept in cookies; German formal, German informal and English text; Fluent avatar bundled in the image by a Node build stage; placeholder pages for the Publisher and Admin groups.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3t4WL7bd9bdHHNjEsxzqC
This commit is contained in:
2026-10-17 21:05:40 +02:00
co-authored by Claude Sonnet 5.5
parent 3c69c2a156
commit 0dc079a8ac
34 changed files with 2132 additions and 24 deletions
+3 -1
View File
@@ -33,6 +33,7 @@ INSTALLED_APPS = [
"django.contrib.staticfiles",
"portal.audit",
"portal.accounts",
"portal.shell",
]
MIDDLEWARE = [
@@ -44,7 +45,7 @@ MIDDLEWARE = [
"django.contrib.sessions.middleware.SessionMiddleware",
"portal.accounts.middleware.AbsoluteSessionLimitMiddleware",
"portal.accounts.middleware.CurrentUserMiddleware",
"django.middleware.locale.LocaleMiddleware",
"portal.shell.middleware.PreferencesMiddleware",
"django.middleware.common.CommonMiddleware",
"django.middleware.csrf.CsrfViewMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
@@ -62,6 +63,7 @@ TEMPLATES = [
"context_processors": [
"django.template.context_processors.request",
"django.template.context_processors.i18n",
"portal.shell.context.shell",
],
},
}