diff --git a/TODO.md b/TODO.md index 4f56410..9efc465 100644 --- a/TODO.md +++ b/TODO.md @@ -25,20 +25,20 @@ - [ ] Fetch name from LDAP - [ ] Social Login - **Hunt Admin** - - [ ] Create hunt - - [ ] Add Questions + - [x] Create hunt + - [x] Add Questions - [ ] View Answers on Map - [x] Image Diashow - **Hunt User** - [x] View all images on one page - [x] i18n data - - [ ] Mark image as private + - [x] Mark image as private - [ ] How-to/Guide/Good explanation - - [ ] Leave/Remove/Edit team + - [x] Leave/Remove/Edit team - [ ] Support chat - [ ] Copy team from different hunt - [ ] Get Geo-Location - - [ ] View other answers + - [-] View other answers - [ ] View other reviews and scores - [x] Process image uploads (resize, remove EXIF, etc.) - [ ] Review other answers (Fan-Favorite) diff --git a/app/app.vue b/app/app.vue index 0ca68a4..e2fe117 100644 --- a/app/app.vue +++ b/app/app.vue @@ -22,19 +22,9 @@ const { s3Bucket, s3Host } = useRuntimeConfig().public; > {{ title }} - - + - + diff --git a/app/lang/de.json b/app/lang/de.json index f1956be..93d6ae1 100644 --- a/app/lang/de.json +++ b/app/lang/de.json @@ -176,12 +176,12 @@ "how_it_works": "So funktioniert es", "login_to_see_hunts": "Melde dich an, um deine beigetretenen Hunts zu sehen und neuen beizutreten!", "step_number": "Schritt {n}", + "step_quests_text": "Erkunde die Quests, mache kreative Fotos und reiche deine Antworten ein.", + "step_quests_title": "Quests erfüllen", "step_register_text": "Erstelle in Sekunden ein kostenloses Konto und erhalte Zugang zu allen Hunts.", "step_register_title": "Registrieren", "step_team_text": "Gründe ein Team mit Freunden oder tritt einem bestehenden Team mit einem Einladungscode bei.", "step_team_title": "Team gründen", - "step_quests_text": "Erkunde die Quests, mache kreative Fotos und reiche deine Antworten ein.", - "step_quests_title": "Quests erfüllen", "step_win_text": "Sammle Punkte, klettere die Rangliste hinauf und feiere in der Showcase.", "step_win_title": "Punkte gewinnen" }, @@ -205,6 +205,7 @@ "role_changed": "Rolle aktualisiert!", "role_confirm": "Möchtest du die Rolle von {name} zu {role} ändern?", "search_user": "Benutzer per E-Mail suchen...", + "title": "Profil", "uploaded_pictures": "Hochgeladene Bilder", "user_management": "Benutzerverwaltung" }, @@ -281,6 +282,7 @@ }, "teams": "Teams", "third_place": "Dritter Platz", + "title": "Abschluss", "total_points": "Punkte erzielt", "users": "Spieler" } @@ -367,4 +369,4 @@ "uploadFile": "Datei hochladen", "voteRating": "vote rating {value} of {max}" } -} +} \ No newline at end of file diff --git a/app/lang/en.json b/app/lang/en.json index 913e3f1..b006450 100644 --- a/app/lang/en.json +++ b/app/lang/en.json @@ -176,12 +176,12 @@ "how_it_works": "How it works", "login_to_see_hunts": "Login to see your joined hunts and join new ones!", "step_number": "Step {n}", + "step_quests_text": "Explore the quests, take creative photos and submit your answers.", + "step_quests_title": "Complete quests", "step_register_text": "Create a free account in seconds and get access to all hunts.", "step_register_title": "Register", "step_team_text": "Team up with friends or join an existing team with an invite code.", "step_team_title": "Form a team", - "step_quests_text": "Explore the quests, take creative photos and submit your answers.", - "step_quests_title": "Complete quests", "step_win_text": "Collect points, climb the leaderboard and celebrate in the showcase.", "step_win_title": "Win points" }, @@ -205,6 +205,7 @@ "role_changed": "Role updated!", "role_confirm": "Do you want to change the role of {name} to {role}?", "search_user": "Search user by email...", + "title": "Profile", "uploaded_pictures": "Uploaded pictures", "user_management": "User management" }, @@ -281,6 +282,7 @@ }, "teams": "Teams", "third_place": "Third place", + "title": "Showcase", "total_points": "Total points earned", "users": "Users" } @@ -367,4 +369,4 @@ "uploadFile": "Upload file", "voteRating": "vote rating {value} of {max}" } -} +} \ No newline at end of file diff --git a/app/pages/hunt/[huntSlug]/showcase.vue b/app/pages/hunt/[huntSlug]/showcase.vue index ea300ae..298557b 100644 --- a/app/pages/hunt/[huntSlug]/showcase.vue +++ b/app/pages/hunt/[huntSlug]/showcase.vue @@ -15,6 +15,13 @@ const app = useNuxtApp(); const { name, id } = app.$slugData.huntSlug!; const { data, error } = await useFetch(`/api/hunt/${id}/showcase`); +useHead({ + title: t('layouts.two_title', { + title: tKey(data.value ?? { name_de: name, name_en: name }, 'name').value, + subtitle: t('page.showcase.title') + }) +}); + const { toggle, isFullscreen, isSupported } = useFullscreen(); const leaderboardColumns: DataTableColumnSource[] = [ diff --git a/app/pages/index.vue b/app/pages/index.vue index 48296b4..58b3ba4 100644 --- a/app/pages/index.vue +++ b/app/pages/index.vue @@ -19,6 +19,20 @@ const steps = [ { icon: 'photo_camera', key: 'step_quests' }, { icon: 'emoji_events', key: 'step_win' } ]; + +useHead({ + title: t('layouts.default_tile'), + meta: [ + { + property: 'og:title', + content: t('page.landing.hero_title') + }, + { + property: 'og:description', + content: t('page.landing.hero_subtitle') + } + ] +});