From 2c66802cd7b3fbe3c284ec7e5575c23b2c0b9294 Mon Sep 17 00:00:00 2001 From: Xenon010101 Date: Fri, 5 Jun 2026 01:41:59 +0530 Subject: [PATCH 1/2] fix: replace hardcoded program deadlines with dynamic computation (#999) --- .../student/opensource/ProgramTrackerPage.tsx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/client/src/module/student/opensource/ProgramTrackerPage.tsx b/client/src/module/student/opensource/ProgramTrackerPage.tsx index f14207747..a2685ff37 100644 --- a/client/src/module/student/opensource/ProgramTrackerPage.tsx +++ b/client/src/module/student/opensource/ProgramTrackerPage.tsx @@ -6,6 +6,13 @@ import { } from "lucide-react"; import { Button } from "../../../components/ui/button"; +function nextDate(month: number, day: number, hour = 23, minute = 59): string { + const now = new Date(); + const d = new Date(Date.UTC(now.getFullYear(), month - 1, day, hour, minute, 0)); + if (d <= now) d.setUTCFullYear(d.getUTCFullYear() + 1); + return d.toISOString(); +} + // ─── Data ────────────────────────────────────────────────────── interface Program { id: number; @@ -83,7 +90,7 @@ const PROGRAMS: Program[] = [ "Write a detailed proposal (problem statement, timeline, milestones)", "Submit via the GSoC portal before the deadline", ], - applicationDeadline: "2026-04-19T23:59:00Z", + applicationDeadline: nextDate(4, 19), }, { id: 2, @@ -129,7 +136,7 @@ const PROGRAMS: Program[] = [ "Complete any take-home tasks if requested", "Wait for mentor selection notification", ], - applicationDeadline: "2026-05-15T23:59:00Z", + applicationDeadline: nextDate(5, 15), }, { id: 3, @@ -230,8 +237,8 @@ const PROGRAMS: Program[] = [ "Make contributions to 1–2 projects during the contribution period", "Submit a final application with your contribution summary", ], - applicationStart: "2026-02-06T16:00:00Z", - applicationDeadline: "2026-02-13T16:00:00Z", + applicationStart: nextDate(2, 6, 16, 0), + applicationDeadline: nextDate(2, 13, 16, 0), }, { id: 5, From 02374f9bcedf0a0ecf0c41a0a1093eb6729e2cc0 Mon Sep 17 00:00:00 2001 From: Xenon010101 Date: Fri, 5 Jun 2026 01:42:36 +0530 Subject: [PATCH 2/2] fix: compute GSoC year filter end year dynamically instead of hardcoding (#1001) --- client/src/module/student/opensource/GSoCReposPage.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/module/student/opensource/GSoCReposPage.tsx b/client/src/module/student/opensource/GSoCReposPage.tsx index 75516ba31..830362f0c 100644 --- a/client/src/module/student/opensource/GSoCReposPage.tsx +++ b/client/src/module/student/opensource/GSoCReposPage.tsx @@ -626,7 +626,7 @@ export default function GSoCReposPage() { - 2016-2026 years + 2016-{new Date().getFullYear()} years