User:KoshVorlon/GeorgeMoney.js

// //GeorgeMoney's monobook.js //Copy this to User:Eagle 101/monobook.js //DEVELOPMENTAL--- //MAIN VARS var myname="Betacommand" var mypage="User:Betacommand" var mytalk="User talk:Betacommand" var mytalkurl="User_talk:Betacommand" var mycontribs="Special:Contributions/Betacommand" var serverurl="http://en.wikipedia.org" var wikiurl=serverurl+"/wiki/" var pathurl=serverurl+"/w/" var phpurl=pathurl+"index.php?title=" var editcounturl="http://tools.wikimedia.de/~interiot/cgi-bin/Tool1/wannabe_kate" var editcount=editcounturl+"?username=" //READONLY if (window.location.href.indexOf('read=1') != -1) { loadCSS('User:GeorgeMoney/ReadOnly.css'); } // if (window.location.href.indexOf('css=1') != -1) { loadCSSext('http://wikipedia.georgemoney.com/rc.css'); } // //COMMANDS FROM URL $(function {  var fontsize=getParamValue('fontsize');  if (fontsize) document.write('#content {font-size:'+fontsize+';} ');  var fontsizenc=getParamValue('fontsizenc');  if (fontsizenc) document.write('* {font-size:'+fontsizenc+';} ');  var welcome=getParamValue('welcome');   if (welcome) {  document.getElementById('wpTextbox1').value = "";  document.getElementById('wpSummary').value = "Welcome to wikipedia!";  document.getElementById('editform').submit;   } /*  var minor=getParamValue('autominor');  if (minor) {    switch (minor) {    case '1':    case 'yes':    case 'true':      document.editform.wpMinoredit.checked=true;      break;    case '0':    case 'no':    case 'false':      document.editform.wpMinoredit.checked=false;    }  }  */ }); // ARCHIVING - DOESN'T WORK YET if (location.href.indexOf('&action=edit&archive=1') != -1) { $(function { document.getElementById('wpTextbox1').value = "";  document.getElementById('wpSummary').value = "JS: Archiving talk page";  document.getElementById('editform').submit; }); } if (location.href.indexOf('&action=edit&archive=2') != -1) { $(function { document.getElementById('wpTextbox1').value = "";  document.getElementById('wpSummary').value = "JS: Archiving talk page";  document.getElementById('editform').submit; }); } //Modified version of user:Where/usertabs $(function { if (document.title.search("/") != -1 || document.title.search("- History -") != -1) { //no subpages or history     return;  }  if (document.title.indexOf("User:") == 0 || document.title.indexOf("User talk:") == 0) {     username_a = document.URL.match(/:.*:(.*)/);     username=username_a[1];     addTab(phpurl+"User_talk:"+username+"&action=edit&section=new&welcome=1", "welcome!", "ca-contrib", "contribs", "");  } }); //POPUPS popupFixDabs=true; //NON-DEV; REC-- //ADD EDIT COUNT LINK FOR USERS $(function {        if (document.getElementById('t-contributions')) {                z=document.getElementById("content").childNodes;                for (var n=0;n<z.length;n++) {                         if (z[n].className=="firstHeading") var username = z[n].textContent.replace(new RegExp('User(?:[ _]talk)?:([^/]*)', 'g'), '$1');                };                var toolbox = document.getElementById('p-tb').getElementsByTagName('ul')[0];                var link = document.createElement('a');                link.href = editcount+username+"&site=en.wikipedia.org";                link.appendChild(document.createTextNode('Edit count'));                var li = document.createElement('li');                li.appendChild(link);                toolbox.appendChild(li);        } }); //LIST REDLINKS function listRedLinks { var len=document.links.length; var output=document.createElement('div'); output.innerHTML=' Red links '; var gotSome=false; for (var i=0; i<len; ++i) { if (document.links[i].className=='new') { gotSome=true; var l=document.links[i].cloneNode(true); output.appendChild(l); output.appendChild(document.createElement('br')); }       }        if (gotSome){ output.appendChild(document.createElement('hr')); var h1=document.getElementsByTagName('h1')[0]; h1.parentNode.insertBefore(output, h1.nextSibling); } } $(function{addToolboxLink('javascript:listRedLinks', 'List red links');}); //-IGNORE //LINKS $(function{addTopLink(editcount+myname+"&site=en.wikipedia.org", 'edit count');}); $(function{addNavLink(phpurl+'Special%3ALog&type=newusers&user=&page=', 'New user log');}); $(function{addNavLink('http://wiki.xyrael.net/mediawiki/index.php?title=Special:Recentchanges', 'Test Wiki');}); $(function{addNavLink('http://wikipedia.georgemoney.com/search2.php', 'Special Query');}); //---FUNCTS function redir(url) { document.write(''); } function loadJS(page){ page=page.replace(" ", "_"); document.write(' '); } function loadCSS(page){ page=page.replace(" ", "_"); document.write('@import "'+phpurl+page+'&action=raw&ctype=text/css"; '); } function loadCSSext(page){ document.write('@import "'+page+'"; '); } function loadchrome(page){ page=page.replace(" ", "_"); document.write(' '); } //PAGENAME FOR CSS document.write(''); // --HELPERS-- //   --- ADD VARIOUS LINKS function addToolboxLink(url, name, id){ var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0]; addlilink(tb, url, name, id); } // function addTopLink(url, name, id){ var personal = document.getElementById('p-personal').getElementsByTagName('ul')[0]; addlilink(personal, url, name, id); } // function addNavLink(url, name, id){ var navigation = document.getElementById('p-navigation').getElementsByTagName('ul')[0]; addlilink(navigation, url, name, id); } // function addTab(url, name, id, title, key){ var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; return addlilink(tabs, url, name, id, title, key); } // //     -- MORE MAJOR LINKAGE - 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; } // // - LINKAGE 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; } // // // -- END HELPER FUNCTIONS - // //-- TEST function NUPatrol { if ( ( window.location.href.indexOf( 'Special%3ALog&type=newusers' ) == -1 ) && ( window.location.href.indexOf( 'Special:Log/newusers'       ) == -1 )  ) return; // make more robust??? var items, item, i, links, user, name, talk, contribs, insertLoc, link; items = document.getElementById( 'bodyContent' ).getElementsByTagName( 'ul' )[ 0 ].getElementsByTagName( 'li' ); function NewLink( txt, url, plainlinks, linkColor ) { var a = document.createElement( 'a' ); a.appendChild( document.createTextNode( txt ) ); a.href = url; if ( plainlinks ) a.className = 'plainlinks'; if ( linkColor ) { if ( typeof linkColor == "string" ) a.style.color = linkColor; } return a; } for ( i = 0; i < items.length; i++ ) { item = items[ i ]; links = item.getElementsByTagName( 'a' ); user = links[ 0 ]; name = user.firstChild.nodeValue; talk = links[ 1 ]; talk.firstChild.nodeValue = '&#9608;&#9608;&#9608;&#9608;'; // lowercase 'Talk' for consistency insertLoc = user.nextSibling; // ' newusers ' item.insertBefore( document.createTextNode( ' ( ' ), insertLoc ); item.insertBefore( talk, insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc ); item.insertBefore( NewLink( 'blocks', '/w/index.php?title=Special%3ALog&type=block&page=User%3A' + name, true, '#002bb8' ), insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc ); item.insertBefore( NewLink( '[report]', 'javascript:AIVandal("' + name + '")', true, 'red' ), insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc ); item.insertBefore( NewLink( '[welcome]', '/w/index.php?title=User_talk:' + name + '&action=edit&section=new&welcome=1', true, 'green' ), insertLoc ); item.insertBefore( document.createTextNode( ' )' ), insertLoc ); item.removeChild( insertLoc.nextSibling ); // should remove the span item.removeChild( insertLoc ); // should remove ' newusers ' text } } if ( window.addEventListener ) window.addEventListener( 'load', NUPatrol, false ); else if ( window.attachEvent ) window.attachEvent( 'onload', NUPatrol ); // AIV tools document.write(' '); loadJS('User:Voice_of_All/Sleeper/monobook.js');