Migration: Allergene/Zusatzstoffe je Gericht, abschaltbarer Passwort-Login, Favicon

- dishes.allergens/additives (text[]): Kennzeichnung wieder pro Gericht
  statt nur global, referenziert weiterhin die globalen Listen
- profiles.password_auth_enabled: Nutzer können die eigene
  Passwort-Anmeldung deaktivieren; Spalten-Grant + neue Policy
  "profiles_update_own" (ersetzt profiles_update_own_name)
- settings.favicon_path fürs austauschbare Favicon
- Lokale PostgreSQL-Kopie (Docker + nativ) auf den neuen Stand gebracht
This commit is contained in:
2026-07-18 00:46:38 +02:00
parent 4e4abed0ca
commit 29ca8e1227
4 changed files with 79 additions and 34 deletions
+10
View File
@@ -5,6 +5,7 @@ export interface Profile {
email: string;
full_name: string;
role: Role;
password_auth_enabled: boolean;
created_at: string;
}
@@ -19,6 +20,8 @@ export interface Dish {
id: string;
name: string;
price: number;
allergens: string[];
additives: string[];
}
export interface MenuEntry {
@@ -73,3 +76,10 @@ export function logoUrl(path: string | null | undefined): string | null {
if (!path) return null;
return `${process.env.NEXT_PUBLIC_SUPABASE_URL}/storage/v1/object/public/branding/${path}`;
}
export function faviconUrl(path: string | null | undefined): string | null {
if (!path) return null;
return `${process.env.NEXT_PUBLIC_SUPABASE_URL}/storage/v1/object/public/branding/${path}`;
}
export const SITE_TITLE = process.env.SITE_TITLE?.trim() || "Canteen Menu";