diff --git a/app/src/App.tsx b/app/src/App.tsx index 54c1af8..d7b1a4d 100644 --- a/app/src/App.tsx +++ b/app/src/App.tsx @@ -31,7 +31,7 @@ function App() { aria-hidden className="pointer-events-none fixed inset-0 bg-[radial-gradient(circle_at_12%_6%,rgba(24,24,27,0.09),transparent_34%),radial-gradient(circle_at_92%_-4%,rgba(113,113,122,0.13),transparent_30%)]" /> - +
diff --git a/app/src/app/app-header.tsx b/app/src/app/app-header.tsx index 2dd190e..478a4d4 100644 --- a/app/src/app/app-header.tsx +++ b/app/src/app/app-header.tsx @@ -1,13 +1,15 @@ import { useState, useEffect } from 'react' import { useTranslation } from 'react-i18next' -import { Menu, Trophy, X } from 'lucide-react' +import { Menu, Trophy, User, X } from 'lucide-react' import logoSvg from '@/assets/logo3.svg' type AppHeaderProps = { page: string + isFinalized: boolean + shareToken: string | null } -export function AppHeader({ page }: AppHeaderProps) { +export function AppHeader({ page, isFinalized, shareToken }: AppHeaderProps) { const { t } = useTranslation() const [mobileOpen, setMobileOpen] = useState(false) @@ -32,11 +34,16 @@ export function AppHeader({ page }: AppHeaderProps) { : 'text-zinc-500 hover:bg-zinc-50 hover:text-zinc-950' }` + const showMyTip = isFinalized && shareToken + const myTipHref = `#tipp/${shareToken}` + const myTipActive = page === `tipp/${shareToken}` + const links = [ { href: '#jatek', label: t('header.menuBallot'), active: page === 'jatek' || page === '' }, { href: '#csoportok', label: t('header.menuGroups'), active: page === 'csoportok' || page.startsWith('csoport/') || page.startsWith('meghivo/') }, { href: '#stats', label: t('header.menuStats'), active: page === 'stats' }, { href: '#info', label: t('header.menuInfo'), active: page === 'info' }, + ...(showMyTip ? [{ href: myTipHref, label: t('header.menuMyTip'), active: myTipActive, icon: true }] : []), ] return ( @@ -50,6 +57,7 @@ export function AppHeader({ page }: AppHeaderProps) {