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.

//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://en.wikipedia.org/wiki/User:Spinningspark/Work_in_progress', 'Work in progress', 'n-wip', 'Work in progress page', '', '');

  //Maintenance templates

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/wiki/Wikipedia:Template_messages', 'Maintenance templates', 'n-usertemp', 'Maintenance templates', '', '');

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/wiki/User:Spinningspark/Useful_templates', 'My useful templates', 'n-mytemp', 'My useful templates', '', '');

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/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://en.wikipedia.org/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://en.wikipedia.org/?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://en.wikipedia.org/wiki/Special:Upload', 'Upload form', 't-upload_form', 'Go direct to upload form', '', document.getElementById('t-upload'));



  mw.util.addPortletLink('p-tb', '/info/en/?search=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://en.wikipedia.org/?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=en.wikipedia.org&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=en.wikipedia.org&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
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.

//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://en.wikipedia.org/wiki/User:Spinningspark/Work_in_progress', 'Work in progress', 'n-wip', 'Work in progress page', '', '');

  //Maintenance templates

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/wiki/Wikipedia:Template_messages', 'Maintenance templates', 'n-usertemp', 'Maintenance templates', '', '');

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/wiki/User:Spinningspark/Useful_templates', 'My useful templates', 'n-mytemp', 'My useful templates', '', '');

  mw.util.addPortletLink('p-navigation', 'http://en.wikipedia.org/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://en.wikipedia.org/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://en.wikipedia.org/?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://en.wikipedia.org/wiki/Special:Upload', 'Upload form', 't-upload_form', 'Go direct to upload form', '', document.getElementById('t-upload'));



  mw.util.addPortletLink('p-tb', '/info/en/?search=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://en.wikipedia.org/?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=en.wikipedia.org&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=en.wikipedia.org&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

Videos

Youtube | Vimeo | Bing

Websites

Google | Yahoo | Bing

Encyclopedia

Google | Yahoo | Bing

Facebook