diff --git a/components/breadcrumbs.tsx b/components/breadcrumbs.tsx index 11ace5e..8a7fa75 100644 --- a/components/breadcrumbs.tsx +++ b/components/breadcrumbs.tsx @@ -1,14 +1,20 @@ import { useContext } from 'react' +import { useRouter } from 'next/router' import Link from 'next/link' import UserContext from './user/context' -export default function Breadcrumbs({ label }: { label: string }) { +export default function Breadcrumbs() { const { username, role } = useContext(UserContext) + const router = useRouter() - if (!label) { + const breadcrumbs = router.asPath.replace(/^\//, '').split('/') + + if (!breadcrumbs.length) { return null } + // TODO: translate routes + // TODO: make entries linkable return (
{role === 'admin' && ( @@ -22,10 +28,16 @@ export default function Breadcrumbs({ label }: { label: string }) { Home - {'>'} -

- {label} -

+ {breadcrumbs.map((breadcrumb) => { + return ( + <> + {'>'} +

+ {breadcrumb} +

+ + ) + })}
) diff --git a/components/header.tsx b/components/header.tsx index 0c0aa16..01468bc 100644 --- a/components/header.tsx +++ b/components/header.tsx @@ -3,7 +3,7 @@ import Link from 'next/link' import Logo from './logo' import Breadcrumbs from './breadcrumbs' -export default function Header({ label }: { label?: string }) { +export default function Header() { return ( <> @@ -20,7 +20,7 @@ export default function Header({ label }: { label?: string }) { - + ) diff --git a/pages/admin/booking/[uuid]/bill.tsx b/pages/admin/booking/[uuid]/bill.tsx index 590c64e..4da40a9 100644 --- a/pages/admin/booking/[uuid]/bill.tsx +++ b/pages/admin/booking/[uuid]/bill.tsx @@ -174,7 +174,7 @@ export default function BookingBillPage({ return ( <> -
+
{booking && (
diff --git a/pages/admin/booking/[uuid]/index.tsx b/pages/admin/booking/[uuid]/index.tsx index 137ad80..b171b9f 100644 --- a/pages/admin/booking/[uuid]/index.tsx +++ b/pages/admin/booking/[uuid]/index.tsx @@ -78,7 +78,7 @@ export default function ShowBookingAdmin({ return ( <> -
+

Buchung {booking.uuid}

diff --git a/pages/admin/index.tsx b/pages/admin/index.tsx index a61d73d..5477450 100644 --- a/pages/admin/index.tsx +++ b/pages/admin/index.tsx @@ -29,7 +29,7 @@ export const getServerSideProps = withSession(async (context) => { export default function AdminRecentBookings({ bookings }) { return ( <> -
+
{bookings.map((booking: any) => (
-
+
-
+
diff --git a/pages/booking/[uuid]/index.tsx b/pages/booking/[uuid]/index.tsx index d9af635..6828ceb 100644 --- a/pages/booking/[uuid]/index.tsx +++ b/pages/booking/[uuid]/index.tsx @@ -57,7 +57,7 @@ export default function ShowBooking({ return ( <> -
+
Buchungsstatus: {getBookingStatus(booking.status)} diff --git a/pages/booking/[uuid]/stored.tsx b/pages/booking/[uuid]/stored.tsx index e91d035..b9ac301 100644 --- a/pages/booking/[uuid]/stored.tsx +++ b/pages/booking/[uuid]/stored.tsx @@ -25,7 +25,7 @@ export default function ShowBookingStored({ return ( <> -
+

Vielen Dank für die Buchungsanfrage

diff --git a/pages/impressum.tsx b/pages/impressum.tsx index 67c2a03..dea03b8 100644 --- a/pages/impressum.tsx +++ b/pages/impressum.tsx @@ -4,7 +4,7 @@ import Header from '../components/header' export default function Impressum() { return ( <> -

+

Impressum

diff --git a/pages/privacy.tsx b/pages/privacy.tsx index d81d21e..98c4ae6 100644 --- a/pages/privacy.tsx +++ b/pages/privacy.tsx @@ -4,7 +4,7 @@ import Header from '../components/header' export default function Privacy() { return ( <> -
+

Datenschutzerklärung

Geltungsbereich

diff --git a/pages/terms.tsx b/pages/terms.tsx index db82af7..40e8461 100644 --- a/pages/terms.tsx +++ b/pages/terms.tsx @@ -4,7 +4,7 @@ import Header from '../components/header' export default function Terms() { return ( <> -
+

Allgemeine Geschäftsbedinungen