diff --git a/src/app/HomePageClient.tsx b/src/app/HomePageClient.tsx index f058fac..1a211da 100644 --- a/src/app/HomePageClient.tsx +++ b/src/app/HomePageClient.tsx @@ -1,6 +1,7 @@ "use client"; -import { Box } from "@mui/material"; +import { Box, Typography } from "@mui/material"; import { useSession } from "next-auth/react"; +import { Fragment } from "react"; import { DefaultButton } from "@/components/Button/DefaultButton"; @@ -24,29 +25,68 @@ export default function HomePageClient({ events, }: HomePageClientProps): React.ReactElement { const { status } = useSession(); + + const groups: Record = {}; + + for (const event of events) { + const date = event.eventDate; + if (!groups[date]) { + groups[date] = []; + } + groups[date].push(event); + } + + const sortedDates = Object.keys(groups).sort(); + return ( <> - {events.map((event) => ( - - ))} - {/* Temporary event creation form */} + {sortedDates.map((dateString) => { + const [year, month, day] = dateString.split("-").map(Number); + const dateObj = new Date(year, month - 1, day); + + const weekday = dateObj.toLocaleDateString("en-US", { + weekday: "long", + }); + const displayDate = `${weekday}, ${month}/${day}/${year}`; + + return ( + + + + {displayDate} + + + + {groups[dateString].map((event) => ( + + ))} + + ); + })} + {status === "authenticated" && ( - + - - {weekday}, {formattedDate} - - - ); -} diff --git a/src/app/WelcomeCard.tsx b/src/app/WelcomeCard.tsx index 2d90b38..cdd8021 100644 --- a/src/app/WelcomeCard.tsx +++ b/src/app/WelcomeCard.tsx @@ -10,6 +10,7 @@ export default function WelcomeCard(): React.ReactElement { display: "flex", justifyContent: "center", alignItems: "center", + mb: 4, }} >