MediaWiki:Common.js: Difference between revisions
Content added Content deleted
Piranhaplant (talk | contribs) No edit summary |
Piranhaplant (talk | contribs) No edit summary |
||
Line 3: | Line 3: | ||
// Extra functionality for RAM/ROM maps |
// Extra functionality for RAM/ROM maps |
||
function trySort() { |
function trySort() { |
||
⚫ | |||
console.log("Checking for table sort on " + tables.length + " tables"); |
|||
var rerun = false; |
var rerun = false; |
||
⚫ | |||
for (var i = 0; i < tables.length; i++) { |
for (var i = 0; i < tables.length; i++) { |
||
var table = tables[i]; |
var table = tables[i]; |
||
var header = table.getElementsByTagName("th")[0]; |
var header = table.getElementsByTagName("th")[0]; |
||
if (header.classList.contains("headerSort")) { |
if (header.classList.contains("headerSort")) { |
||
console.log("Table " + i + " was sortable"); |
|||
if (!header.classList.contains("headerSortUp")) { |
if (!header.classList.contains("headerSortUp")) { |
||
header.click(); |
header.click(); |
||
} |
} |
||
} else { |
} else { |
||
console.log("Table " + i + " was not sortable"); |
|||
rerun = true; |
rerun = true; |
||
} |
} |
Revision as of 01:38, 8 April 2024
/* Any JavaScript here will be loaded for all users on every page load. */
// Extra functionality for RAM/ROM maps
function trySort() {
var rerun = false;
var tables = document.getElementsByClassName("ram_rom_map");
for (var i = 0; i < tables.length; i++) {
var table = tables[i];
var header = table.getElementsByTagName("th")[0];
if (header.classList.contains("headerSort")) {
if (!header.classList.contains("headerSortUp")) {
header.click();
}
} else {
rerun = true;
}
}
if (rerun) {
setTimeout(trySort, 10);
}
}
setTimeout(trySort, 10);
$(function() {
var tables = document.getElementsByClassName("ram_rom_map");
for (var i = 0; i < tables.length; i++) {
var table = tables[i];
// Sort table by the first column
table.getElementsByTagName("th")[0].click();
// Add the ending address to the length column
var rows = table.getElementsByTagName("tbody")[0].children;
for (var j = 0; j < rows.length; j++) {
var row = rows[j];
var address = row.children[0].innerText;
var length = parseInt(row.children[1].innerText);
var endAddress = address.substr(0, 4) + (parseInt(address.substr(4, 4), 16) + length).toString(16).padStart(4, "0").toUpperCase();
row.children[1].title = "[" + address + ", " + endAddress + ")";
}
}
});