MediaWiki:Common.js: Difference between revisions
MediaWiki interface page
More actions
No edit summary |
No edit summary |
||
| Line 45: | Line 45: | ||
filterWrapper.style.marginBottom = "20px"; | filterWrapper.style.marginBottom = "20px"; | ||
const | const title = document.createElement("h3"); | ||
title.innerText = "🔍 Filter Runs"; | |||
filterWrapper.appendChild( | filterWrapper.appendChild(title); | ||
const dungeonSelect = document.createElement("select"); | const dungeonSelect = document.createElement("select"); | ||
dungeonSelect.style.marginRight = " | dungeonSelect.style.marginRight = "10px"; | ||
[ | [ | ||
| Line 96: | Line 96: | ||
return parseTime(a.cells[4].innerText) - parseTime(b.cells[4].innerText); | return parseTime(a.cells[4].innerText) - parseTime(b.cells[4].innerText); | ||
}); | }); | ||
| Line 149: | Line 150: | ||
const rank = parseInt(row.cells[0]?.innerText); | const rank = parseInt(row.cells[0]?.innerText); | ||
if (!dungeon || !player || !time || | if (!dungeon || !player || !time) return; | ||
/* =========================== | |||
POINTS | |||
=========================== */ | |||
if (!isNaN(rank)) { | |||
playerPoints[player] = (playerPoints[player] || 0) + getPoints(rank); | |||
} | |||
/* | /* =========================== | ||
WORLD RECORDS (FIXED) | |||
=========================== */ | |||
const newTime = parseTime(time); | |||
if (!records[dungeon]) { | if (!records[dungeon]) { | ||
records[dungeon] = { time, players: [player] }; | records[dungeon] = { | ||
} else if (time === records[dungeon]. | time: time, | ||
seconds: newTime, | |||
players: [player] | |||
}; | |||
} else { | |||
if (newTime < records[dungeon].seconds) { | |||
records[dungeon] = { | |||
time: time, | |||
seconds: newTime, | |||
players: [player] | |||
}; | |||
} else if (newTime === records[dungeon].seconds) { | |||
records[dungeon].players.push(player); | |||
} | |||
} | } | ||
| Line 178: | Line 203: | ||
/* =========================== | /* =========================== | ||
COMPETITION | COMPETITION TABLE | ||
=========================== */ | =========================== */ | ||
| Line 227: | Line 252: | ||
`; | `; | ||
compTable.appendChild(row); | compTable.appendChild(row); | ||
}); | }); | ||
| Line 233: | Line 259: | ||
/* =========================== | /* =========================== | ||
WORLD | WORLD RECORD TABLE | ||
=========================== */ | =========================== */ | ||
| Line 256: | Line 282: | ||
Object.entries(records).forEach(([d, data]) => { | Object.entries(records).forEach(([d, data]) => { | ||
const row = document.createElement("tr"); | const row = document.createElement("tr"); | ||
row.innerHTML = ` | row.innerHTML = ` | ||
<td>${d}</td> | <td>${d}</td> | ||
| Line 262: | Line 290: | ||
<td>${data.players.join(", ")}</td> | <td>${data.players.join(", ")}</td> | ||
`; | `; | ||
wrTable.appendChild(row); | wrTable.appendChild(row); | ||
}); | }); | ||
| Line 280: | Line 310: | ||
/* =========================== | /* =========================== | ||
FILTER | FILTER | ||
=========================== */ | =========================== */ | ||