feat(hunt): add public flag to hunts and implement hunt creation page

- Add 'public' boolean column to Hunt model with default true
- Update hunt admin UI to toggle 'public' flag
- Implement new hunt creation page with form supporting all hunt properties
- Add sidebar navigation item for hunt creation for authorized users
- Adjust home API to filter hunts by public flag only
This commit is contained in:
2026-07-30 23:33:34 +02:00
parent aa4632cab8
commit 77becc453e
11 changed files with 320 additions and 16 deletions
+29 -7
View File
@@ -36,11 +36,11 @@
},
"enums": {
"text_type": {
"CHAR": "Ein Zeichen",
"INTEGER": "Ganzzahl",
"NUMBER": "Zahl",
"TEXT": "Freitext",
"WORD": "Ein Wort",
"CHAR": "Ein Zeichen"
"WORD": "Ein Wort"
},
"user_role": {
"ADMIN": "Admin",
@@ -80,6 +80,28 @@
"refresh": "Aktualisieren",
"update_btn": "Updaten"
},
"create_hunt": {
"allow_join": "Beitreten erlauben",
"create_btn": "Hunt erstellen",
"de": "Deutsch",
"description_de": "Beschreibung (Deutsch)",
"description_en": "Beschreibung (Englisch)",
"en": "Englisch",
"end": "Ende",
"has_end": "Hat ein Enddatum?",
"has_start": "Hat ein Startdatum?",
"name_de": "Name (Deutsch)",
"name_en": "Name (Englisch)",
"not_allowed": "Du benötigst die Creator- oder Admin-Rolle, um Hunts zu erstellen.",
"public": "Öffentlich (auf der Startseite sichtbar)",
"reveal_answers": "Antworten aufdecken",
"reveal_quests": "Quests aufdecken",
"sidebar": "Hunt erstellen",
"start": "Start",
"success": "Hunt erfolgreich erstellt!",
"title": "Neuen Hunt erstellen",
"virtual": "Virtueller Hunt"
},
"diashow": {
"head": "Diashow"
},
@@ -129,11 +151,11 @@
"title": "Impressum"
},
"pictures": {
"head": "Bilderwand",
"select_team": "Wähle ein Team",
"filter_quest": "Filtere Bilder nach Quests",
"filter_team": "Filtere Bilder nach Teams",
"head": "Bilderwand",
"select_quest": "Wähle eine Quest",
"filter_quest": "Filtere Bilder nach Quests"
"select_team": "Wähle ein Team"
},
"profile": {
"admins_and_creators": "Admins & Ersteller",
@@ -144,8 +166,8 @@
"promote": "Befördern",
"promote_user": "Benutzer befördern",
"role": "Rolle",
"role_changed": "Rolle aktualisiert!",
"role_change_error": "Rolle konnte nicht geändert werden!",
"role_changed": "Rolle aktualisiert!",
"role_confirm": "Möchtest du die Rolle von {name} zu {role} ändern?",
"search_user": "Benutzer per E-Mail suchen...",
"uploaded_pictures": "Hochgeladene Bilder",
@@ -273,4 +295,4 @@
"uploadFile": "Datei hochladen",
"voteRating": "vote rating {value} of {max}"
}
}
}