diff --git a/web/src/app/aktuelt/[slug]/page.tsx b/web/src/app/aktuelt/[slug]/page.tsx index eacad15..650d075 100644 --- a/web/src/app/aktuelt/[slug]/page.tsx +++ b/web/src/app/aktuelt/[slug]/page.tsx @@ -3,7 +3,7 @@ import { Blocks } from "@/components/blocks/Blocks"; import Image from "@/components/general/Image"; import { graphql } from "@/gql"; import { NewsFragment } from "@/gql/graphql"; -import { compactDateFormat, formatDate } from "@/lib/date"; +import { formatExtendedDateTime } from "@/lib/date"; import { notFound } from "next/navigation"; export async function generateStaticParams() { @@ -67,7 +67,7 @@ export default async function Page({ params }: { params: { slug: string } }) { )} )} -
{formatDate(news.firstPublishedAt, compactDateFormat)}
+{formatExtendedDateTime(news.firstPublishedAt, true, true)}
- {formatDate(news.firstPublishedAt, compactDateFormat)} + {formatExtendedDateTime(news.firstPublishedAt, true, true)}
{news.excerpt}
diff --git a/web/src/lib/date.ts b/web/src/lib/date.ts index 507b6be..0eec552 100644 --- a/web/src/lib/date.ts +++ b/web/src/lib/date.ts @@ -24,15 +24,18 @@ export function formatYearMonth(yearMonth: string) { return formatDate(parsed, "MMMM yyyy"); } -export function formatExtendedDateTime(date: Date | string | number, dateOnly: boolean = false) { +export function formatExtendedDateTime( + date: Date | string | number, + dateOnly: boolean = false, + alwaysIncludeYear: boolean = false +) { // wide date with weekday and month name // year included if not current year const parsed = toLocalTime(date); const timePart = dateOnly ? "" : " 'kl.' HH:mm"; - if (parsed.getFullYear === new Date().getFullYear) { - return formatDate(parsed, `EEEE d. MMMM${timePart}`); - } - return formatDate(parsed, `EEEE d. MMMM yyyy${timePart}`); + const isCurrentYear = parsed.getFullYear === new Date().getFullYear; + const yearPart = isCurrentYear && !alwaysIncludeYear ? "" : " yyyy"; + return formatDate(parsed, `EEEE d. MMMM${yearPart}${timePart}`); } export function isTodayOrFuture(