From b5b57a34f716b71ac534c83bb7486bd1156d6a84 Mon Sep 17 00:00:00 2001 From: Shashwat Khanna Date: Sun, 15 Aug 2021 19:36:58 +0530 Subject: [PATCH 1/3] converted time data to local timezone --- routes/index.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/routes/index.js b/routes/index.js index e425663..ae69f19 100644 --- a/routes/index.js +++ b/routes/index.js @@ -7,6 +7,21 @@ router.get("/", async (req, res) => { let contests = await Contest.find({}, { rankings: 0 }).sort({ startTime: "desc", }); + + contests.map((contest) => { + contest.startTime = new Date( + contest.startTime.toLocaleString('en-US', { + timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone, + }) + ) + + contest.endTime = new Date( + contest.endTime.toLocaleString('en-US', { + timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone, + }) + ) + }) + res.render("index", { contests: contests, title: "Leetcode Rating Predictor", From afa5f5e580ab10454dc0013e39f767595d2f18e3 Mon Sep 17 00:00:00 2001 From: Shashwat Khanna Date: Mon, 16 Aug 2021 11:58:13 +0530 Subject: [PATCH 2/3] Convert time on client side instead of server side --- routes/index.js | 14 -------------- views/index.ejs | 11 ++++++++++- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/routes/index.js b/routes/index.js index ae69f19..8e98de6 100644 --- a/routes/index.js +++ b/routes/index.js @@ -8,20 +8,6 @@ router.get("/", async (req, res) => { startTime: "desc", }); - contests.map((contest) => { - contest.startTime = new Date( - contest.startTime.toLocaleString('en-US', { - timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone, - }) - ) - - contest.endTime = new Date( - contest.endTime.toLocaleString('en-US', { - timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone, - }) - ) - }) - res.render("index", { contests: contests, title: "Leetcode Rating Predictor", diff --git a/views/index.ejs b/views/index.ejs index f19154d..ac97c38 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -39,7 +39,7 @@ <% } else { %> Virtual <% } %> - <%= contest.startTime %> + <%= contest.startTime %> <%= (contest.endTime - contest.startTime)/60000 %> minutes <% } %> @@ -59,4 +59,13 @@ new simpleDatatables.DataTable("#contest-table", { fixedHeight: true, sortable:false, }); + +const contests = document.getElementsByClassName('startTime') + for (let contest of contests) { + let startTime = new Date(contest.textContent) + startTime = `${startTime.toLocaleString('en-US', { + timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone, + })} ${Intl.DateTimeFormat().resolvedOptions().timeZone}` + contest.textContent = startTime + } \ No newline at end of file From c66fecd2bcdff865325433a402ec21e03b6c963c Mon Sep 17 00:00:00 2001 From: Shashwat Khanna Date: Fri, 20 Aug 2021 13:07:13 +0530 Subject: [PATCH 3/3] Fixed pagination bug --- views/index.ejs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/views/index.ejs b/views/index.ejs index ac97c38..b36fd41 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -54,18 +54,22 @@ \ No newline at end of file