User:Jdrowlands/monobook.js: Difference between revisions
From the Super Mario Wiki, the Mario encyclopedia
Jump to navigationJump to search
Jdrowlands (talk | contribs) mNo edit summary |
Jdrowlands (talk | contribs) No edit summary |
||
Line 76: | Line 76: | ||
} | } | ||
/* | |||
function formatRecentChanges() { | |||
/* | |||
* formatRecentChanges() | |||
* (c) Tim Laqua, 2007 (http://en.wikipedia.org/wiki/User:Tim_Laqua/Scripts/formatRecentChanges.js) | |||
*/ | |||
if (wgCanonicalNamespace == 'Special' && wgCanonicalSpecialPageName == 'Recentchanges' ) { | |||
var colorPrimaryRow = '#77beea'; | |||
var colorAltRow = '#82b9e6'; | |||
var colorPatrolledRow = '#77beea'; | |||
var colorHeaderRow = '#67aeca'; | |||
var colorFooterRow = '#67aeca'; | |||
var columns = '7'; | |||
var colUL = document.getElementsByTagName('ul'); | |||
if ( colUL.length > 0 ) { | |||
var tableWrapper = document.createElement('table'); | |||
var tableNode = document.createElement('tbody'); | |||
tableWrapper.width = '100%'; | |||
var contentDiv = document.getElementById('content'); | |||
contentDiv.appendChild(tableWrapper); | |||
tableWrapper.appendChild(tableNode); | |||
for(var i=0; i<colUL.length; i++) { | |||
if (colUL[i].className == 'special') { | |||
var altRow = false; | |||
var nodeListHeading = document.getElementsByTagName('h4')[0]; | |||
var rowHeading = document.createElement('tr'); | |||
var cellHeading = document.createElement('td'); | |||
cellHeading.appendChild(nodeListHeading); | |||
cellHeading.colSpan = columns; | |||
rowHeading.appendChild(cellHeading); | |||
rowHeading.style.backgroundColor = colorHeaderRow; | |||
tableNode.appendChild(rowHeading); | |||
var colLI = colUL[i].getElementsByTagName('li'); | |||
for(var j=0; j<colLI.length; j++) { | |||
var minor = false; | |||
var bot = false; | |||
var unpatrolled = false; | |||
var newpage = false; | |||
var rowNode = document.createElement('TR'); | |||
var flagNode = document.createElement('TD'); | |||
flagNode.style.whiteSpace = 'nowrap'; | |||
var changedNode = document.createElement('TD'); | |||
changedNode.style.whiteSpace = 'nowrap'; | |||
changedNode.style.textAlign = 'right'; | |||
var messageNode = document.createElement('TD'); | |||
//var colSPAN = colLI[j].getElementsByTagName('span'); | |||
var colSPAN = colLI[j].childNodes; | |||
for(var k=0; k < colSPAN.length; k++) { | |||
if (colSPAN[k].nodeType == 1) { | |||
switch (colSPAN[k].className.toLowerCase()) { | |||
case 'mw-plusminus-neg': | |||
//add to changedNode | |||
changedNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'mw-plusminus-null': | |||
//add to changedNode | |||
changedNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'mw-plusminus-pos': | |||
//add to changedNode | |||
changedNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'unpatrolled': | |||
//add to flagNode | |||
unpatrolled = true; | |||
flagNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'minor': | |||
//add to flagNode | |||
minor = true; | |||
flagNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'newpage': | |||
//add to flagNode | |||
newpage = true; | |||
flagNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'bot': | |||
//add to flagNode | |||
bot = true; | |||
flagNode.appendChild(colSPAN[k--]); | |||
break; | |||
case 'comment': | |||
//add to messageNode | |||
messageNode.appendChild(colSPAN[k--]); | |||
break; | |||
default: | |||
//do nothing | |||
} | |||
} | |||
} | |||
//check for unpatrolled flag | |||
if (unpatrolled) { | |||
rowNode.style.backgroundColor = colorPatrolledRow; | |||
} else { | |||
if (altRow) { | |||
rowNode.style.backgroundColor = colorAltRow; | |||
} else { | |||
rowNode.style.backgroundColor = colorPrimaryRow; | |||
} | |||
} | |||
altRow = altRow ? false : true; | |||
var regexp = /; (\d\d:\d\d)/i; | |||
var colMatches = colLI[j].innerHTML.match(regexp); | |||
var time = colMatches[1]; | |||
var cleanText = colLI[j].innerHTML.replace(regexp,''); | |||
var arrLI = cleanText.split(' . . '); | |||
var timeNode = document.createElement('TD'); | |||
timeNode.innerHTML = time; | |||
timeNode.style.whiteSpace = 'nowrap'; | |||
var contextNode = document.createElement('TD'); | |||
contextNode.innerHTML = arrLI[0]; | |||
contextNode.style.whiteSpace = 'nowrap'; | |||
var titleNode = document.createElement('TD'); | |||
//titleNode.style.whiteSpace = 'nowrap'; | |||
var nameNode = document.createElement('TD'); | |||
nameNode.style.whiteSpace = 'nowrap'; | |||
if (arrLI.length == 4) { | |||
//standard entry | |||
titleNode.innerHTML = arrLI[1]; | |||
nameNode.innerHTML = arrLI[3]; | |||
} else if (arrLI.length == 2) { | |||
//log message - append fragment to message node | |||
nameNode.innerHTML = arrLI[1]; | |||
} | |||
if (changedNode.firstChild) { | |||
changedNode.firstChild.innerHTML = | |||
changedNode.firstChild.innerHTML.replace(/(^\s*\()|(\)\s*$)/ig,''); | |||
} | |||
if (messageNode.firstChild) { | |||
messageNode.firstChild.innerHTML = | |||
messageNode.firstChild.innerHTML.replace(/(^\s*\()|(\)\s*$)/ig,''); | |||
} | |||
rowNode.appendChild(timeNode); | |||
rowNode.appendChild(contextNode); | |||
rowNode.appendChild(flagNode); | |||
rowNode.appendChild(titleNode); | |||
rowNode.appendChild(messageNode); | |||
rowNode.appendChild(nameNode); | |||
rowNode.appendChild(changedNode); | |||
tableNode.appendChild(rowNode); | |||
} | |||
colUL[i].parentNode.removeChild(colUL[i--]); | |||
} | |||
} | |||
} | |||
} | |||
} | |||
/* </nowiki></pre> */ | |||
} | |||
} | |||
} | |||
} | |||
/* </nowiki> </pre> */ |
Revision as of 10:24, March 23, 2008
/* <pre> <nowiki> */
/* WikEd text editor */
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Cacycle/wikEd.js'
+ '&action=raw&ctype=text/javascript&dontcountme=s"></script>');
function addTab(id, after, caption, url) {
if (!document.getElementById(id)) {
var edit = document.getElementById(after);
if (!edit) return; //If the previous tab doesn't exist, don't add this one
var editparent = edit.parentNode;
var aseclinkcaption = document.createTextNode(caption)
var aseclink = document.createElement('a');
aseclink.setAttribute('href',url);
var addsectionlinkcaption = aseclink.appendChild(aseclinkcaption);
var asec = document.createElement('li');
asec.setAttribute('id',id);
var addsectionlink = asec.appendChild(aseclink);
var addsection = editparent.insertBefore(asec,edit.nextSibling);
}
}
//source: http://en.wikipedia.org/wiki/User:Flex/welcome_newuser.js
function welcome() {
// Find the edit box
var txt = document.editform.wpTextbox1;
//The welcome *template* you want to use
var welcome_user = 'Jdrowlands';
var welcome_summary = 'Welcome';
var welcome_watch = false;
var tag = '{{welcome|'+ welcome_user +'}}';
if (txt.value.indexOf(tag) == -1) {
txt.value += tag;
document.editform.wpSummary.value = welcome_summary;
document.editform.wpWatchthis.checked = welcome_watch;
document.editform.submit();
}
else {
document.getElementById('ca-unverified').firstChild.style.backgroundColor = "#ff4444";
document.getElementById('ca-unverified').style.backgroundColor = "#ff4444";
}
}
addOnloadHook(
function ()
{
if(document.title.indexOf("Editing User talk:") == 0)
{
addPortletLink('p-cactions', 'javascript:welcome()', 'welcome', 'ca-welcome', 'Adds a welcome note to the new user', '', '');
}
}
);
// [[user:Where/usertabs]]
// This is a good one!
addOnloadHook(function() {
if (wgTitle.indexOf("/") != -1 || document.title.indexOf("- History -") != -1) //no subpages or history
return;
if (wgCanonicalNamespace == "User" || wgCanonicalNamespace == "User_talk") {
var username = encodeURIComponent( wgTitle );
addPortletLink("p-cactions", wgServer + "/Special:Contributions/" + username, "Edits", "ca-contrib", "User contributions");
addPortletLink("p-cactions", "/index.php?title=Special:EditCount&target="+ username + "&doeditcount=Show+count", "Edit count", "ca-editcount", "Get this user's edit count.");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=move&user=" + username, "Moves", "ca-pagemoves", "Page moves by this user");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=block&page=User:" + username, "Blocks", "ca-blog", "Blocks received by this user");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Prefixindex&from=" + username + "&namespace=2", "Userspace", "", "List of pages in this user's userspace");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=block&user=" + username, "Block Log", "", "Blocks by this user");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=protect&user=" + username, "Protections", "", "Protections by this user");
addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=delete&user=" + username, "Deletions", "", "Deletions by this user");
}
/*
function formatRecentChanges() {
/*
* formatRecentChanges()
* (c) Tim Laqua, 2007 (http://en.wikipedia.org/wiki/User:Tim_Laqua/Scripts/formatRecentChanges.js)
*/
if (wgCanonicalNamespace == 'Special' && wgCanonicalSpecialPageName == 'Recentchanges' ) {
var colorPrimaryRow = '#77beea';
var colorAltRow = '#82b9e6';
var colorPatrolledRow = '#77beea';
var colorHeaderRow = '#67aeca';
var colorFooterRow = '#67aeca';
var columns = '7';
var colUL = document.getElementsByTagName('ul');
if ( colUL.length > 0 ) {
var tableWrapper = document.createElement('table');
var tableNode = document.createElement('tbody');
tableWrapper.width = '100%';
var contentDiv = document.getElementById('content');
contentDiv.appendChild(tableWrapper);
tableWrapper.appendChild(tableNode);
for(var i=0; i<colUL.length; i++) {
if (colUL[i].className == 'special') {
var altRow = false;
var nodeListHeading = document.getElementsByTagName('h4')[0];
var rowHeading = document.createElement('tr');
var cellHeading = document.createElement('td');
cellHeading.appendChild(nodeListHeading);
cellHeading.colSpan = columns;
rowHeading.appendChild(cellHeading);
rowHeading.style.backgroundColor = colorHeaderRow;
tableNode.appendChild(rowHeading);
var colLI = colUL[i].getElementsByTagName('li');
for(var j=0; j<colLI.length; j++) {
var minor = false;
var bot = false;
var unpatrolled = false;
var newpage = false;
var rowNode = document.createElement('TR');
var flagNode = document.createElement('TD');
flagNode.style.whiteSpace = 'nowrap';
var changedNode = document.createElement('TD');
changedNode.style.whiteSpace = 'nowrap';
changedNode.style.textAlign = 'right';
var messageNode = document.createElement('TD');
//var colSPAN = colLI[j].getElementsByTagName('span');
var colSPAN = colLI[j].childNodes;
for(var k=0; k < colSPAN.length; k++) {
if (colSPAN[k].nodeType == 1) {
switch (colSPAN[k].className.toLowerCase()) {
case 'mw-plusminus-neg':
//add to changedNode
changedNode.appendChild(colSPAN[k--]);
break;
case 'mw-plusminus-null':
//add to changedNode
changedNode.appendChild(colSPAN[k--]);
break;
case 'mw-plusminus-pos':
//add to changedNode
changedNode.appendChild(colSPAN[k--]);
break;
case 'unpatrolled':
//add to flagNode
unpatrolled = true;
flagNode.appendChild(colSPAN[k--]);
break;
case 'minor':
//add to flagNode
minor = true;
flagNode.appendChild(colSPAN[k--]);
break;
case 'newpage':
//add to flagNode
newpage = true;
flagNode.appendChild(colSPAN[k--]);
break;
case 'bot':
//add to flagNode
bot = true;
flagNode.appendChild(colSPAN[k--]);
break;
case 'comment':
//add to messageNode
messageNode.appendChild(colSPAN[k--]);
break;
default:
//do nothing
}
}
}
//check for unpatrolled flag
if (unpatrolled) {
rowNode.style.backgroundColor = colorPatrolledRow;
} else {
if (altRow) {
rowNode.style.backgroundColor = colorAltRow;
} else {
rowNode.style.backgroundColor = colorPrimaryRow;
}
}
altRow = altRow ? false : true;
var regexp = /; (\d\d:\d\d)/i;
var colMatches = colLI[j].innerHTML.match(regexp);
var time = colMatches[1];
var cleanText = colLI[j].innerHTML.replace(regexp,'');
var arrLI = cleanText.split(' . . ');
var timeNode = document.createElement('TD');
timeNode.innerHTML = time;
timeNode.style.whiteSpace = 'nowrap';
var contextNode = document.createElement('TD');
contextNode.innerHTML = arrLI[0];
contextNode.style.whiteSpace = 'nowrap';
var titleNode = document.createElement('TD');
//titleNode.style.whiteSpace = 'nowrap';
var nameNode = document.createElement('TD');
nameNode.style.whiteSpace = 'nowrap';
if (arrLI.length == 4) {
//standard entry
titleNode.innerHTML = arrLI[1];
nameNode.innerHTML = arrLI[3];
} else if (arrLI.length == 2) {
//log message - append fragment to message node
nameNode.innerHTML = arrLI[1];
}
if (changedNode.firstChild) {
changedNode.firstChild.innerHTML =
changedNode.firstChild.innerHTML.replace(/(^\s*\()|(\)\s*$)/ig,'');
}
if (messageNode.firstChild) {
messageNode.firstChild.innerHTML =
messageNode.firstChild.innerHTML.replace(/(^\s*\()|(\)\s*$)/ig,'');
}
rowNode.appendChild(timeNode);
rowNode.appendChild(contextNode);
rowNode.appendChild(flagNode);
rowNode.appendChild(titleNode);
rowNode.appendChild(messageNode);
rowNode.appendChild(nameNode);
rowNode.appendChild(changedNode);
tableNode.appendChild(rowNode);
}
colUL[i].parentNode.removeChild(colUL[i--]);
}
}
}
}
}
/* </nowiki></pre> */