show year in calendar if not current year

This commit is contained in:
2024-08-10 15:18:55 +02:00
parent 660140c280
commit 7bb1ce4559

View File

@ -244,6 +244,16 @@ const CalendarWeek = ({ days }: { days: Record<string, SingularEvent[]> }) => {
); );
}; };
function maybeYear(yearMonthString: string) {
const yearMonth = new Date(yearMonthString);
const now = new Date();
const isCurrentYear = yearMonth.getFullYear() == now.getFullYear();
if (isCurrentYear) {
return <span className="sr-only"> {yearMonth.getFullYear()}</span>;
}
return ` ${yearMonth.getFullYear()}`;
}
const EventCalendar = ({ events }: { events: EventFragment[] }) => { const EventCalendar = ({ events }: { events: EventFragment[] }) => {
const futureSingularEvents = getSingularEvents(events).filter( const futureSingularEvents = getSingularEvents(events).filter(
(x) => x.occurrence?.start && isTodayOrFuture(x.occurrence.start) (x) => x.occurrence?.start && isTodayOrFuture(x.occurrence.start)
@ -275,6 +285,7 @@ const EventCalendar = ({ events }: { events: EventFragment[] }) => {
), ),
0 0
); );
return ( return (
<div <div
key={yearMonth} key={yearMonth}
@ -282,7 +293,8 @@ const EventCalendar = ({ events }: { events: EventFragment[] }) => {
data-collapsed={!visibleYearMonths.includes(yearMonth)} data-collapsed={!visibleYearMonths.includes(yearMonth)}
> >
<h2 onClick={() => toggleYearMonth(yearMonth)}> <h2 onClick={() => toggleYearMonth(yearMonth)}>
{formatYearMonth(yearMonth)}{" "} {formatYearMonth(yearMonth)}
{maybeYear(yearMonth)}{" "}
<span className={styles.eventCounter}>({eventCount})</span> <span className={styles.eventCounter}>({eventCount})</span>
</h2> </h2>
{eventCount === 0 && ( {eventCount === 0 && (