User:Muchris/monobook.js

Today, User:Muchris/monobook.js is a topic that has gained unprecedented relevance in modern society. From its impact on people's daily lives to its influence on economic, cultural and political spheres, User:Muchris/monobook.js has become a focal point of discussion and debate. With the advancement of technology and globalization, User:Muchris/monobook.js has acquired an importance that transcends borders and affects people of all ages and social conditions. In this article, we will explore the various facets of User:Muchris/monobook.js and analyze its impact on the world today.
//<pre><nowiki>

// Anti Vandal Tool
importScript("User:Lupin/recent2.js");

/* Watchlist notifier (]); displays a message every time a watched page changes. */

var wmwpajax;
// From ] mainpage (wpajax renamed to wmwpajax)
wmwpajax={
        download:function(bundle) {
                // mandatory: bundle.url
                // optional:  bundle.onSuccess (xmlhttprequest, bundle)
                // optional:  bundle.onFailure (xmlhttprequest, bundle)
                // optional:  bundle.otherStuff OK too, passed to onSuccess and onFailure
                
                var x = window.XMLHttpRequest ? new XMLHttpRequest()
                : window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP")
                : false;
                
                if (x) {
                        x.onreadystatechange=function() {
                                x.readyState==4 && wmwpajax.downloadComplete(x,bundle);
                        };
                        x.open("GET",bundle.url,true);
                        x.send(null); 
                }
                return x;
        },

        downloadComplete:function(x,bundle) {
                x.status==200 && ( bundle.onSuccess && bundle.onSuccess(x,bundle) || true )
                || ( bundle.onFailure && bundle.onFailure(x,bundle) || alert(x.statusText+': '+bundle.url));
        }
};

// Example:
// function dlComplete(xmlreq, data) {
//      alert(data.message + xmlreq.responseText);
// }
//  wmwpajax.download({url:'http://en.wikipedia.org/w/index.php?title=Thresher&action=raw', 
//                   onSuccess: dlComplete, message: "Here's what we got:\n\n" });

// End of ] quote

function wmWatchEditFound(xmlreq, data) {
  var watchrev, watchsum, watchrevold, watchpage, junk;
  watchrev=xmlreq.responseText.split('timestamp="').split('"');
  if(wgPageName == "Special:Watchlist")
    document.cookie="ais523wmwatchrev="+watchrev+".";
  else
  {
    watchsum=xmlreq.responseText.split('comment="').split('"');
    watchpage=xmlreq.responseText.split('title="').split('"');
    try
    {
      watchrevold=document.cookie.split('ais523wmwatchrev=').split('.');
    }
    catch(junk) {watchrevold=0;}
    watchsum=watchsum.split('<').join('&lt;').split('>').join('&gt;');
    watchpage=watchpage.split('<').join('&lt;').split('>').join('&gt;');
    if(watchrev!=watchrevold)
      document.getElementById('contentSub').innerHTML+=
        "<div class='watchlistnotify'>\""+watchpage+'" changed: "'+watchsum+'".</div>';
  }
}

addOnloadHook(function() {
  /* Find the top item in the watchlist, and its edit summary. We only need one item, so
     set the limit to 1 to ease the load on the server. */
  if(location.href.indexOf("https://wikifreehand.com/en/")!=-1)
    wmwpajax.download({url:'http://en.wikipedia.org/w/api.php?action=query&list=watchlist&wllimit=1&wldir=older&format=xml&wlprop=comment', onSuccess: wmWatchEditFound});
});

/* Duplicate all the tabs from the top on the bottom of the content box, too.  */
/* From ]. */

addOnloadHook(function () {
    var tabs = document.getElementById('p-cactions').cloneNode(true);
    tabs.id = 'mytabs';
    var listitems = tabs.getElementsByTagName('LI');
    for (i=0;i<listitems.length;i++) {
        if(listitems.id) listitems.id = 'mytabs-' + listitems.id;
    }

    var content = document.getElementById("content");    // Find the content div
    content.parentNode.insertBefore(tabs, content.nextSibling);    // Place tab list right after content div
});

//</nowiki></pre>