MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
Created page with "→Any JavaScript here will be loaded for all users on every page load.: function findIndexableTables() { var tabs = document.getElementsByTagName("table"); var res = n..." |
No edit summary |
||
| Line 17: | Line 17: | ||
var cb = document.getElementById('index0_' + id); | var cb = document.getElementById('index0_' + id); | ||
if (cb && reid_tables[id]) { | if (cb && reid_tables[id]) { | ||
var delta; | |||
if (cb.checked) | |||
delta = -1; | |||
else | |||
delta = 1; | |||
for (a = 0; a < reid_tables[id].rows.length; a++) { | for (a = 0; a < reid_tables[id].rows.length; a++) { | ||
var row = reid_tables[id].rows[a]; | var row = reid_tables[id].rows[a]; | ||
if (!isNaN(row.cells[0].innerHTML)) | if (!isNaN(row.cells[0].innerHTML)) | ||
row.cells[0].innerHTML = parseInt(row.cells[0].innerHTML) + delta; | row.cells[0].innerHTML = parseInt(row.cells[0].innerHTML) + delta; | ||
if (!isNaN(row.cells[1].innerHTML.substr(4))) { | |||
var n = parseInt(row.cells[1].innerHTML.substr(4)); | |||
row.cells[1].innerHTML.replace(n, n + delta); | |||
} | } | ||
} | } | ||
Revision as of 19:04, 16 February 2013
/* Any JavaScript here will be loaded for all users on every page load. */
function findIndexableTables()
{
var tabs = document.getElementsByTagName("table");
var res = new Array();
for (a = 0; a < tabs.length; a++) {
var cls = tabs[a].className.split(/\s+/);
if (cls.indexOf("indexable") > -1)
res.push(tabs[a]);
}
return res;
}
function reindexTable(id)
{
var cb = document.getElementById('index0_' + id);
if (cb && reid_tables[id]) {
var delta;
if (cb.checked)
delta = -1;
else
delta = 1;
for (a = 0; a < reid_tables[id].rows.length; a++) {
var row = reid_tables[id].rows[a];
if (!isNaN(row.cells[0].innerHTML))
row.cells[0].innerHTML = parseInt(row.cells[0].innerHTML) + delta;
if (!isNaN(row.cells[1].innerHTML.substr(4))) {
var n = parseInt(row.cells[1].innerHTML.substr(4));
row.cells[1].innerHTML.replace(n, n + delta);
}
}
}
}
var reid_tables = findIndexableTables();
for (a = 0; a < reid_tables.length; a++) {
var tr = reid_tables[a].rows[0];
if (reid_tables[a].caption == null)
reid_tables[a].createCaption();
else
reid_tables[a].caption.innerHTML += '<br>';
reid_tables[a].caption.innerHTML +=
'<form><input type="checkbox" name="index0" value="1" id="index0_'+(a)+'"'
+ ' style="margin-left:0;vertical-align:middle"'
+ ' onclick="reindexTable('+a+')" />'
+ '<label for="index0_'+(a)+'" style="vertical-align:middle;font-weight:normal">Index from 0</label>'
+ '</form>';
}