User:Jdrowlands/monobook.js: Difference between revisions

From the Super Mario Wiki, the Mario encyclopedia
Jump to navigationJump to search
No edit summary
(aw)
Line 75: Line 75:
     addPortletLink("p-cactions", wgServer + "/index.php?title=Special:Log&type=delete&user=" + username, "Deletions", "", "Deletions 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> */
/* </nowiki></pre> */

Revision as of 01:45, March 24, 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");
  }
/* </nowiki></pre> */