diff --git a/portal/static/js/components/pages/UniServices.mjs b/portal/static/js/components/pages/UniServices.mjs index 757a0298f38ea401b071d591a23cfc712ba1032b..c0d26d8b952824d295631683f1c01fa5bd4bb239 100644 --- a/portal/static/js/components/pages/UniServices.mjs +++ b/portal/static/js/components/pages/UniServices.mjs @@ -2,6 +2,22 @@ import { Service } from "../../model/Service.mjs" import { ServiceLink } from "../pieces/ServiceLink.mjs" import { Base } from "./Base.mjs" +const germanDateFormatter = new Intl.DateTimeFormat("de-DE", { + month: "2-digit", + day: "2-digit", + year: "numeric", +}) + +function getMensaLink() { + const dayToShow = new Date() + if (dayToShow.getHours() >= 15) { + // If it is 15:00 or later, show tomorrow's menu + dayToShow.setDate(dayToShow.getDate() + 1) + } + + return `https://www.stw.uni-heidelberg.de/external-tools/speiseplan/speiseplan.php?lang=de&mode=Mensa+Im+Neuenheimer+Feld+304&date=${germanDateFormatter.format(dayToShow)}` +} + export const UniServices = { oncreate() { document.title = "Uni-Dienste · FS Coli Portal" @@ -46,6 +62,14 @@ export const UniServices = { "Uni-ID", ), ), + m( + ServiceLink, + new Service( + "Mensa INF", + getMensaLink(), + "fa-solid fa-utensils", + ), + ), ]), ) },