User:Spinningspark/monobook.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
The accompanying .css page for this skin is at User:Spinningspark/monobook.css. |
//Find username
var uservar= mw.config.get( 'wgRelevantUserName' );
var userparam='';
if (uservar) { userparam='name='+ encodeURIComponent(uservar) +'&'; }
var userIP=false;
if (uservar && uservar.match(/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/)) { userIP=true; }
//IP ranges
var range24 = '0.0.0.0/24';
var range16 = '0.0.0.0/16';
if (userIP === true) {
var base24 = uservar.substring(0,uservar.lastIndexOf('.'));
var base16 = base24.substring(0,base24.lastIndexOf('.'));
range24 = base24 + '.0/24';
range16 = base16 + '.0.0/16';
}
//Date formatting
var hitDate = new Date();
var hitMonth = hitDate.getMonth()+1; //Date() counts months from zero;
var hitDay = hitDate.getDate();
var MonthLeading0 = '';
if (hitMonth < 10) {MonthLeading0 = '0';}
else {MonthLeading0 = '';}
var DayLeading0 = '';
if (hitDay < 10) {DayLeading0 = '0';}
else {DayLeading0 = '';}
var YearMonth = hitDate.getFullYear() + MonthLeading0 + hitMonth;
var Year_Month_Day = hitDate.getFullYear() + '-' + MonthLeading0 + hitMonth + '-' + DayLeading0 + hitDay;
hitDate.setDate(hitDate.getDate() - 30); //form dates for prev month;
var hitMonth = hitDate.getMonth()+1; //Date() counts months from zero;
var hitDay = hitDate.getDate();
var MonthLeading0 = '';
if (hitMonth < 10) {MonthLeading0 = '0';}
else {MonthLeading0 = '';}
var DayLeading0 = '';
if (hitDay < 10) {DayLeading0 = '0';}
else {DayLeading0 = '';}
var Year_PrevMonth_Day = hitDate.getFullYear() + '-' + MonthLeading0 + hitMonth + '-' + DayLeading0 + hitDay;
// utility function
//Add sidebar menu function ('User:Anakin101/addPortlet.js')
function addPortlet(id, title, before) {
var copy = document.getElementById('p-tb');
var div = document.createElement('div');
div.setAttribute('id', id);
div.setAttribute('class', copy.getAttribute('class'));
div.innerHTML = '<h3>' + title + '</h3>';
var pBody = document.createElement('div');
pBody.setAttribute('class', copy.getElementsByTagName('div')[0].getAttribute('class'));
pBody.appendChild(document.createElement('ul'));
div.appendChild(pBody);
if (before && (before = document.getElementById(before))) {
copy.parentNode.insertBefore(div, before);
} else {
copy.parentNode.appendChild(div);
}
return pBody;
}
//end sidebar menu function
//navigation menu
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function () {
//Work in progress
mw.util.addPortletLink('p-navigation', 'http://wiki.riteme.site/wiki/User:Spinningspark/Work_in_progress', 'Work in progress', 'n-wip', 'Work in progress page', '', '');
//Maintenance templates
mw.util.addPortletLink('p-navigation', 'http://wiki.riteme.site/wiki/Wikipedia:Template_messages', 'Maintenance templates', 'n-usertemp', 'Maintenance templates', '', '');
mw.util.addPortletLink('p-navigation', 'http://wiki.riteme.site/wiki/User:Spinningspark/Useful_templates', 'My useful templates', 'n-mytemp', 'My useful templates', '', '');
mw.util.addPortletLink('p-navigation', 'http://wiki.riteme.site/wiki/Template:HD', 'Helpdesk templates', 'n-hd', 'Helpdesk templates', '', '');
});
//end navigation menu
//personal menu
//Coding and formatting
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function () {
mw.util.addPortletLink('p-personal', 'http://wiki.riteme.site/wiki/User:Spinningspark/Coding_and_formatting', 'Coding help', 'pt-coding', 'Go to Coding and formatting page', '', document.getElementById('pt-logout'));
});
//end personal menu
//content action tabs
//Is X an admin?
if( uservar) {
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function () {
mw.util.addPortletLink('p-cactions', 'http://wiki.riteme.site/w/index.php?title=Special:ListUsers&limit=1&username='+ encodeURIComponent( uservar), 'Admin?', 'ca-admin', 'Determine if user is an admin', '', '');
});
}
//end content action tabs
//interaction menu
//The name of this portlet is 'p-interaction' if user addition required in future
//end interaction menu
//toolbox additional tools
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function() {
mw.util.addPortletLink('p-tb', 'http://wiki.riteme.site/wiki/Special:Upload', 'Upload form', 't-upload_form', 'Go direct to upload form', '', document.getElementById('t-upload'));
mw.util.addPortletLink('p-tb', 'https://wiki.riteme.site/wiki/User:Spinningspark/Useful_tools', 'More tools', 't-more', 'Other useful tools', '', '');
});
//end toolbox additional tools
//Toolbox 2 Administration tools
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function() {
addPortlet('p-tb2', 'Admin tools', 'p-coll-print_export');
//Block user
if ( mw.config.get( 'wgNamespaceNumber' ) === 3 || mw.config.get( 'wgNamespaceNumber' ) === 2 ) {
mw.util.addPortletLink('p-tb2', '/wiki/Special:Block/'+uservar, 'Block user', 't-block', 'Block user', '', '');
}
//Wikiblame
mw.util.addPortletLink('p-tb2', 'http://wikipedia.ramselehof.de/wikiblame.php?article='+ encodeURIComponent(mw.config.get( 'wgPageName')), 'Wikiblame', 't-wikiblame', 'Go to Wikiblame tool', '', '');
//User contribution search
mw.util.addPortletLink('p-tb2', 'http://tools.wmflabs.org/usersearch/usersearch.py?name=Spinningspark&page='+encodeURIComponent(mw.config.get( 'wgPageName'))+'&server=enwiki&max=500', 'Contribs search', 't-contribsearch', 'Find user contributions on this page', '', '');
//Watchers
mw.util.addPortletLink('p-tb2', 'https://wiki.riteme.site/w/index.php?title='+encodeURIComponent(mw.config.get( 'wgPageName'))+'&action=info#mw-pageinfo-watchers', 'Watchers', 't-watchers', 'Numbers watching this page', '', '');
//Active watchers
mw.util.addPortletLink('p-tb2', 'http://toolserver.org/~dispenser/cgi-bin/watcher.py?page='+encodeURIComponent(mw.config.get( 'wgPageName')), 'Active watchers', 't-awatchers', 'Numbers watching this page', '', '');
//Unified login information
if(uservar){
mw.util.addPortletLink('p-tb2', 'http://toolserver.org/~quentinv57/sulinfo/'+ uservar, 'Unified login', 't-unified_login', 'Unified login statistics', '', '');
//User autoblock search
mw.util.addPortletLink('p-tb2', 'http://tools.wmflabs.org/xtools/autoblock/?u='+ encodeURIComponent(uservar), 'Autoblock search', 't-autoblock_search', 'User autoblock search', '', '');
}
//CIDR range contributions
mw.util.addPortletLink('p-tb2', 'https://tools.wmflabs.org/xtools/rangecontribs/?project=wiki.riteme.site&text='+range16 + '&limit=50&begin=' + Year_PrevMonth_Day, 'CIDR (X!tools)', 't-CIDR_range', 'CIDR range contributions tool', '', '');
//WikiChecker
mw.util.addPortletLink('p-tb2', 'http://en.wikichecker.com/', 'WikiChecker', 't-WikiChecker', 'WikiChecker main page', '', '');
});
//end toolbox 2
//Toolbox 3: Editing tools
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function() {
addPortlet('p-tb3', 'Editing tools', 'p-coll-print_export');
//WebCite
mw.util.addPortletLink('p-tb3', 'http://www.webcitation.org/archive', 'WebCite', 't-webcite', 'Web Citation archive tool', '', '');
//Bugzilla
mw.util.addPortletLink('p-tb3', 'https://bugzilla.wikimedia.org/', 'Bugzilla', 't-bugzilla', 'Bugzilla for MediaWiki', '', '');
mw.util.addPortletLink('p-tb3', 'https://tools.wmflabs.org/copyvios/?lang=en&project=wikipedia&title='+ encodeURIComponent( mw.config.get( 'wgPageName' ) ) +'&action=search&use_engine=1&use_links=1', 'Copyvio check', 't-copyvio', 'Earwig\'s copyvio tool', '', '');
});
//end toolbox 3
//Toolbox 4: Statistics
$.when( mw.loader.using( [ 'mediawiki.util'] ), $.ready ).done( function() {
addPortlet('p-tb4', 'Statistics', 'p-coll-print_export');
//User stats tools
if( uservar ) {
mw.util.addPortletLink('p-tb4', 'http://tools.wmflabs.org/supercount/index.php?user='+ encodeURIComponent( uservar ) +'&project=en.Wikipedia', 'User statistics', 't-user stats', 'User statistics', '', '');
mw.util.addPortletLink('p-tb4', 'http://en.wikichecker.com/user/?t='+ encodeURIComponent( uservar )+'&l=1000', 'WikiChecker user stats', 't-wcuser stats', 'User statistics', '', '');
}
//Admin statistics
mw.util.addPortletLink('p-tb4', 'https://tools.wmflabs.org/xtools/adminstats/', 'Administrator statistics', 't-adminstats', 'Admin action statistics', '', '');
//Page editing stats
mw.util.addPortletLink('p-tb4', 'http://vs.aka-online.de/cgi-bin/wppagehiststat.pl?page='+ encodeURIComponent( mw.config.get( 'wgPageName' ) ) , 'Page editing statistics', 't-pagestats', 'Page statistics', '', '');
mw.util.addPortletLink('p-tb4', 'http://en.wikichecker.com/article/?a='+ encodeURIComponent( mw.config.get( 'wgPageName' ) ) , 'WikiChecker page stats', 't-wcpagestats', 'Page statistics', '', '');
//Page creation counter
mw.util.addPortletLink('p-tb4', 'http://toolserver.org/~tparis/pages/index.php?'+userparam+'lang=en&wiki=wikipedia&namespace=0&redirects=noredirects', 'Page creation counter', 't-pagecreatecount', 'Users page creation count', '', '');
// Page hit counter
mw.util.addPortletLink('p-tb4', 'https://tools.wmflabs.org/pageviews/?project=wiki.riteme.site&start='+Year_PrevMonth_Day+'&end='+Year_Month_Day+'&pages='+ encodeURIComponent( mw.config.get( 'wgPageName' ) ) , 'Page hit counter', 't-pagehit', 'Page hit counter', '', '');
//Ngram viewer
mw.util.addPortletLink('p-tb4', 'https://books.google.com/ngrams', 'N-gram viewer', 't-ngram', 'Ngram viewer', '', '');
//Google correlate statistics
mw.util.addPortletLink('p-tb4', 'http://www.google.com/trends/correlate/', 'Correlation statistics', 't-correlation', 'Google correlate', '', '');
});
//end toolbox 4
//importScript('User:Mr.Z-man/closeAFD2.js'); //Now a gadget
//Page size function
importScript('User:Dr pda/prosesize.js');
importScript('User:PrimeHunter/Source links.js'); // What links here with transclusions removed
importScript('User:Evad37/duplinks-alt.js'); // Find duplicate wikilinks on a page