User:Eitch/monobook.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
//if (wgPageName == "Main_Page") {
//window.location = "http://en.wikipedia.org/wiki/User:Eitch/Main Page 2";
//}



importScript('User:Voice_of_All/Addtabs/monobook.js');

importScript('User:Misza13/statusChanger.js');

// outdate twinkle scripts (commented out sept 2012)

//
//importScript('User:AzaToth/morebits.js');
//importScript('User:AzaToth/twinklefluff.js');
//importScript('User:AzaToth/twinklewarn.js');
//importScript('User:AzaToth/twinklearv.js');
//importScript('User:AzaToth/twinklediff.js');

importScript('User:TheJosh/Scripts/NewPagePatrol.js');
importScript('User:TheJosh/Scripts/RecentChangesPatrol.js');

importScript('User:ais523/editcount.js'); //[[User:ais523/editcount.js]]

importScript('Wikipedia:WikiProject User scripts/Scripts/Watchlist notifier');
importScript('User:Ais523/catwatch.js');
importScript('User:Cacycle/watchlistSorter.js');
importScript('User:Ais523/watchlistnotifier.js');
importScript('Wikipedia:WikiProject_User_scripts/Scripts/Watchlist_since');
//importScript('User:Gerbrant/hidePane.js');

importScript('Wikipedia:WikiProject_User_scripts/Scripts/Unwatch');



// This line is for statistics: [[User:Paranomia/samepageedit/dummy]]
//importScript('User:Paranomia/samepageedit.js');



// [[User:Dschwen/highlightredirects.js]] - please include this line 
mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Dschwen/highlightredirects.js' 
+ '&action=raw&ctype=text/javascript');


//Wikipedia:WikiProject_User_scripts/Scripts/Set_Book_Source
//load isbn links in abebooks


function externISBN() {

var magicURL = "http://dogbert.abebooks.com/abe/BookSearch?isbn=MAGICNUMBER&sortby=2";

var magicRegex = /MAGICNUMBER/ig;
if(wgPageName != "Special:Booksources" && wgPageName != "Wikipedia:Book_sources"){
for (var i = 0; i < document.links.length; i++) {       
if( document.links[i].href.match(/isbn=(.*)/) ) {
document.links[i].href=magicURL.replace(magicRegex, RegExp.$1);
}
}
}

}

$(externISBN);


//COOKIE FUNCTIONS
function readCookie(name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
                var c = ca[i];
                while (c.charAt(0)==' ') c = c.substring(1,c.length);
                if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
}

function createCookie(name,value,days) {
        if (days) {
                var date = new Date();
                date.setTime(date.getTime()+(days*24*60*60*1000));
                var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
        document.cookie = name+"="+value+expires+"; path=/";
}


function eraseCookie(name) {
        createCookie(name,"",-1);
}

//END

//    --- ADD VARIOUS LINKS ----
if(!addToolBoxLink) {
function addToolboxLink(url, name, id){
    var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0];
    addlilink(tb, url, name, id);
}}
// 
if(!addTopLink) {
function addTopLink(url, name, id){
    var personal = document.getElementById('p-personal').getElementsByTagName('ul')[0];
    addlilink(personal, url, name, id);
}}
// 
if(!addNavLink) {
function addNavLink(url, name, id){
    var navigation = document.getElementById('p-navigation').getElementsByTagName('ul')[0];
    addlilink(navigation, url, name, id);
}}
// 
if(!addTab) {
function addTab(url, name, id, title, key){
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    return addlilink(tabs, url, name, id, title, key);
}}

if(!addLink) {
function addLink(where, url, name, id, title, key, after){
    //* where is the id of the toolbar where the button should be added;
    //   i.e. one of "p-cactions", "p-personal", "p-navigation", or "p-tb".
    //
    //* url is the URL which will be called when the button is clicked.
    //   javascript: urls can be used to do more complex things.
    //
    //* name is what will appear as the name of the button.
    //
    //* id is the id of the button; it's best to define one.  
    //   Use a prefix to make sure its unique. Optional.
    //
    //* title is the tooltip title that gives a longer description 
    //   of the button; if you define a accesskey, mention it here. Optional.
    //
    //* key is the char you want for the accesskey. Optional.
    //
    //* after is the id of the button you want to follow this one. Optional.
    //
    var na = document.createElement('a');
    na.href = url;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    if(id) li.id = id;
    li.appendChild(na);
    var tabs = document.getElementById(where).getElementsByTagName('ul')[0];
    if(after) {
        tabs.insertBefore(li,document.getElementById(after));
    } else {
        tabs.appendChild(li);
    }
    if(id) {
        if(key && title) { ta[id] = [key, title]; }
        else if(key) { ta[id] = [key, '']; }
        else if(title) { ta[id] = ['', title];} 
    }
    // re-render the title and accesskeys from existing code in wikibits.js
    akeytt();
    return li;
}}
if(!addlilink) {
function addlilink(tabs, url, name, id, title, key){
    var na = document.createElement('a');
    na.href = url;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    if(id) li.id = id;
    li.appendChild(na);
    tabs.appendChild(li);
    if(id)
    {
        if(key && title)
        {
            ta[id] = [key, title];
        }
        else if(key)
        {
            ta[id] = [key, ''];
        }
        else if(title)
        {
            ta[id] = ['', title];
        }
    }
    // re-render the title and accesskeys from existing code in wikibits.js
    akeytt();
    return li;
}}

//Check User:GeorgeMoney/UserScripts to see what helper functions this needs
$(function(){
var theuser = wgUserName.replace(' ', '_');
var divs = document.getElementsByTagName('div');
for (i=0; i<divs.length; i++) {
  if (divs[i].className == 'usermessage' && divs[i].innerHTML.indexOf(theuser) != -1) {
    if(readCookie('nmsalerted')  != 'yes') {
          divs[i].innerHTML = 
          '<input type="button" value="kill this bar" onclick="this.parentNode.style.display = \'none\';"> New Messages. <a href="/wiki/User_talk:'+theuser+'?diff=cur"><b>last change</b></a> → <a href="/wiki/User_talk:'+theuser+'">talk page</a>';
          document.title = wgPageName.replace(/\_/g, ' ')+' - NEW MESSAGES - wikipedia';
          alert('NEW MESSAGES');
          createCookie('nmsalerted', 'yes', 365);
     } else {
        divs[i].innerHTML = "";
        divs[i].style.display = "none";
        addTab('/wiki/User_talk:'+theuser+'?diff=cur', 'view new message', 'ca-nms', 'view msg', 'n');
     }
  } else if((divs[i].className == 'usermessage' && divs[i].innerHTML.indexOf(theuser) == -1)) {
     divs[i].style.display = "none";
  }
}

if(document.getElementById('bodyContent').innerHTML.indexOf('class=\"usermessage\"') == -1 && readCookie('nmsalerted') == 'yes') {
createCookie('nmsalerted', 'no', 365);
}

});

//END
//