diff --git a/frontend/src/components/AppShell.vue b/frontend/src/components/AppShell.vue index 52bc3d9..4d35d6f 100644 --- a/frontend/src/components/AppShell.vue +++ b/frontend/src/components/AppShell.vue @@ -31,6 +31,7 @@ const currentLabel = computed( const visibleNavItems = computed(() => navItems.filter((item) => item.to !== '/admin' || authStore.isAdmin), ) +const isAdminRoute = computed(() => route.path.startsWith('/admin')) async function login(role: 'viewer' | 'admin') { loginError.value = '' @@ -56,15 +57,21 @@ async function login(role: 'viewer' | 'admin') { {{ currentLabel }} - - + + - - + + VTUBER - STAR AWARDS + STAR AWARDS @@ -96,7 +103,7 @@ async function login(role: 'viewer' | 'admin') { {{ loginError }} - + - + + {{ eyebrow }} - {{ title }} - {{ description }} + {{ title }} + + {{ description }} diff --git a/frontend/src/components/admin/AdminSeasonToolbar.vue b/frontend/src/components/admin/AdminSeasonToolbar.vue index 73cc792..2ef61f5 100644 --- a/frontend/src/components/admin/AdminSeasonToolbar.vue +++ b/frontend/src/components/admin/AdminSeasonToolbar.vue @@ -26,22 +26,18 @@ const currentSeason = computed(() => store.adminSeasonDetail) - - - Arbeitskontext - Die gewaehlte Season steuert Kategorien, Kandidaten und Review-Queues im gesamten Admin-Bereich. - - + + + Season + {{ currentSeason.currentPhase || 'Kein Status' }} - - + + {{ currentSeason.isCurrent ? 'Public Season' : 'Nicht aktiv' }} - - + - - Season + import { computed, onMounted } from 'vue' import { RouterLink, RouterView, useRoute } from 'vue-router' -import { Activity, AlertTriangle, CalendarCog, LayoutDashboard, Sparkles, Users } from '@lucide/vue' +import { AlertTriangle, CalendarCog, LayoutDashboard, Sparkles, Users } from '@lucide/vue' import Card from '../../components/ui/Card.vue' import { useAwardsStore } from '../../stores/awards' @@ -34,72 +34,55 @@ onMounted(async () => { - - - Admin - - Betriebswerkzeug fuer Awards, Moderation und Risiko-Sichtung - - - Der Admin-Bereich ist in klar getrennte Arbeitszonen aufgeteilt, damit Season-Pflege, Review und Monitoring nicht mehr auf einer einzigen Seite kollidieren. - + + + + + + + + + Admin + {{ currentNavItem.label }} + + - - - - - - - - Aktueller Bereich - {{ currentNavItem.label }} - {{ currentNavItem.description }} - + + + {{ item.label }} + {{ item.value }} - - - - - - Season Snapshot - - - - {{ item.label }} - {{ item.value }} - - - + - + - - - + + + - - - + + + - - {{ item.label }} - {{ item.description }} + + {{ item.label }} + {{ item.description }} {{ item.badge() }} @@ -107,13 +90,10 @@ onMounted(async () => { - - Aktive Season - - {{ currentSeason.year ? `${currentSeason.year}` : 'Keine Season' }} - - {{ currentSeason.name || 'Bitte Season auswaehlen.' }} - {{ currentSeason.currentPhase || 'Kein Status' }} + + Aktive Season + {{ currentSeason.year || 'Keine Season' }} ยท {{ currentSeason.currentPhase || 'Kein Status' }} + {{ currentSeason.name || 'Bitte Season auswaehlen.' }}
{{ loginError }}
{{ eyebrow }}
{{ description }}
Arbeitskontext
Die gewaehlte Season steuert Kategorien, Kandidaten und Review-Queues im gesamten Admin-Bereich.
Season
Admin
- Der Admin-Bereich ist in klar getrennte Arbeitszonen aufgeteilt, damit Season-Pflege, Review und Monitoring nicht mehr auf einer einzigen Seite kollidieren. -
Aktueller Bereich
{{ currentNavItem.description }}
{{ item.label }}
Season Snapshot
{{ item.description }}
Aktive Season
{{ currentSeason.name || 'Bitte Season auswaehlen.' }}
{{ currentSeason.currentPhase || 'Kein Status' }}
{{ currentSeason.year || 'Keine Season' }} ยท {{ currentSeason.currentPhase || 'Kein Status' }}