135 lines
5.1 KiB
HTML
135 lines
5.1 KiB
HTML
|
|
<html>
|
|
|
|
<head>
|
|
<title>Han's Covid Speedrun Record</title>
|
|
<meta charset="UTF-8">
|
|
<style>
|
|
body {
|
|
background-color: #333;
|
|
color: #ffffff;
|
|
}
|
|
|
|
table {
|
|
font-family: monospace;
|
|
color: #fff;
|
|
font-style: bold;
|
|
}
|
|
|
|
td,
|
|
th {
|
|
text-align: left;
|
|
padding: 8px;
|
|
}
|
|
|
|
tr:nth-child(even) {
|
|
background-color: #777;
|
|
}
|
|
|
|
tr:nth-child(odd) {
|
|
background-color: #333;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<table width="100%" height="100%">
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
<center>
|
|
<h1>Han's Covid Speedrun Record</h1>
|
|
<h2>Any% - Omicron Variant</h2>
|
|
<h4>(Started at 5:51pm EDT on Aug 17 2022)</h4>
|
|
<table>
|
|
<tbody id="speedrun">
|
|
<tr>
|
|
<th>Checkpoint</th>
|
|
<th>Time</th>
|
|
</tr>
|
|
</tbody>
|
|
<tbody id="final"></tbody>
|
|
</table>
|
|
</center>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<script>
|
|
var table = document.getElementById("speedrun");
|
|
var final = document.getElementById("final");
|
|
|
|
var timeline = { // I actually can't recall that much detail so this is just a rough estimate
|
|
"Possible Exposure": new Date("Aug 14, 2022 22:00:00"),
|
|
"Sore Throat": new Date("Aug 15, 2022 20:01:14.861"),
|
|
"Runny Nose": new Date("Aug 17, 2022 11:18:07.751"),
|
|
"First Positive": new Date("Aug 17, 2022 17:51:10.123"),
|
|
"Highest Temperature (37.7 ℃)": new Date("Aug 17, 2022 21:36:00.000"),
|
|
"Sweating": new Date("Aug 18, 2022 09:32:22.441"),
|
|
"Oxygen Lvl Stays at 96%": new Date("Aug 18, 2022 10:00:00.000"),
|
|
"Headache (Mild)": new Date("Aug 18, 2022 22:11:33.451"),
|
|
"No Symptom (while not talking)": new Date("Aug 19, 2022 10:31:12.516"),
|
|
"Oxygen Lvl back to normal 97%-98%" : new Date("Aug 19, 2022 11:00:00.000"),
|
|
"Wake Up without Symptom": new Date("Aug 20, 2022 09:12:44.915"),
|
|
"Tickly Throat": new Date("Aug 20, 2022 20:27:32.013"),
|
|
"Fully Recovered": new Date("Aug 21, 2022 11:30:00.123"),
|
|
}
|
|
|
|
for (var event in timeline) {
|
|
var row = table.insertRow();
|
|
var cell1 = row.insertCell(0);
|
|
var cell2 = row.insertCell(1);
|
|
cell1.innerHTML = event;
|
|
cell2.innerHTML = timeSince(timeline[event] - timeline["First Positive"]);
|
|
if (event == "First Positive") {
|
|
cell1.style.color = "#ff0000";
|
|
cell2.style.color = "#ff0000";
|
|
}
|
|
}
|
|
|
|
// Last Row
|
|
var row = table.insertRow();
|
|
var cell1 = row.insertCell(0);
|
|
var cell2 = row.insertCell(1);
|
|
cell1.style.color = "#00ff00";
|
|
cell2.style.color = "#00ff00";
|
|
// // Still Running
|
|
// cell1.innerHTML = "NOW";
|
|
// function now() {
|
|
// cell2.innerHTML = timeSince(new Date() - timeline["First Positive"]);
|
|
// }
|
|
// setInterval(now, 10);
|
|
// Win
|
|
cell1.innerHTML = "Tested Negative!";
|
|
cell2.innerHTML = timeSince(new Date("Aug 21, 2022 17:50:57.303") - timeline["First Positive"]);
|
|
var row = final.insertRow();
|
|
var cell = row.insertCell(0);
|
|
cell.colSpan = 2;
|
|
cell.innerHTML = "🏆 3d 23:59:47.180";
|
|
cell.style.color = "#00ff00";
|
|
cell.style.fontSize = "30px";
|
|
cell.style.textAlign = "right";
|
|
|
|
function timeSince(timestamp) {
|
|
var sign = "+";
|
|
if (timestamp < 0) {
|
|
sign = "-";
|
|
timestamp = -timestamp;
|
|
}
|
|
var d = Math.floor(timestamp / 86400000);
|
|
timestamp -= d * 86400000;
|
|
var h = Math.floor(timestamp / 3600000);
|
|
timestamp -= h * 3600000;
|
|
var m = Math.floor(timestamp / 60000);
|
|
timestamp -= m * 60000;
|
|
var s = Math.floor(timestamp / 1000);
|
|
timestamp -= s * 1000;
|
|
var ms = Math.floor(timestamp);
|
|
|
|
return sign + String(d).padStart(2, '0') + "d " + String(h).padStart(2, '0') + ":" + String(m).padStart(2, '0') + ":" + String(s).padStart(2, '0') + "." + String(ms).padStart(3, '0');
|
|
}
|
|
</script>
|
|
</body>
|
|
|
|
</html>
|