Skip to content

Commit 32a8151

Browse files
authored
converted time data to local timezone (#6)
* converted time data to local timezone * Convert time on client-side instead of server-side * Fixed pagination bug
1 parent 513f23e commit 32a8151

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

routes/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ router.get("/", async (req, res) => {
77
let contests = await Contest.find({}, { rankings: 0 }).sort({
88
startTime: "desc",
99
});
10+
1011
res.render("index", {
1112
contests: contests,
1213
title: "Leetcode Rating Predictor",

views/index.ejs

+15-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
<% } else { %>
4040
<td>Virtual</td>
4141
<% } %>
42-
<td><%= contest.startTime %></td>
42+
<td class="startTime"><%= contest.startTime %></td>
4343
<td><%= (contest.endTime - contest.startTime)/60000 %> minutes</td>
4444
</tr>
4545
<% } %>
@@ -54,9 +54,22 @@
5454
<script src="https://cdn.jsdelivr.net/npm/simple-datatables@latest" type="text/javascript"></script>
5555
<script>
5656
57-
new simpleDatatables.DataTable("#contest-table", {
57+
const dataTable = new simpleDatatables.DataTable("#contest-table", {
5858
searchable: true,
5959
fixedHeight: true,
6060
sortable:false,
6161
});
62+
63+
const contests = document.getElementsByClassName('startTime')
64+
for (let contest of contests) {
65+
let startTime = new Date(contest.textContent)
66+
contest.textContent = startTime.toLocaleString()
67+
}
68+
dataTable.on('datatable.page', function(page) {
69+
const contests = document.getElementsByClassName('startTime')
70+
for (let contest of contests) {
71+
let startTime = new Date(contest.textContent)
72+
contest.textContent = startTime.toLocaleString()
73+
}
74+
})
6275
</script>

0 commit comments

Comments
 (0)