User:Alexis Zhang/global.js

From Meta, a Wikimedia project coordination wiki

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
//globalWatchlist
/*window.GlobalWatchlistConfig = { "sites": [  "en.wikipedia",  "meta.wikimedia",  "commons.wikimedia",  "www.wikidata",  "www.mediawiki",  "simple.wikipedia",  "hi.wikipedia",  "en.wikibooks",  "en.wikiversity" ], "botFilter": 0, "anonFilter": 0, "minorFilter": 0 };
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:DannyS712/Global_watchlist.js&action=raw&ctype=text/javascript');*/
//deletion afd finder
//Superlinks
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Bradv/Scripts/Superlinks.js&action=raw&ctype=text/javascript');
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ Keeper/Scripts/googleTitle.js&action=raw&ctype=text/javascript');
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ Keeper/Scripts/commonHistory.js&action=raw&ctype=text/javascript');

//confirmationRollback mobile
mw.loader.load('https://en.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=MediaWiki:Gadget-confirmationRollback-mobile.js');
//diff-permalink
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Enterprisey/diff-permalink.js&action=raw&ctype=text/javascript');
//stew links
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=User:Erwin/stewardlinks.js&action=raw&ctype=text/javascript' );
//mass patrol
if ($.inArray(mw.config.get('wgDBname'), ['enwiki']) == -1)
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-patrolRevisions.js&action=raw&ctype=text/javascript' );
//mw.loader.load('//www.wikidata.org/w/index.php?title=User:Matěj Suchánek/patrolRevisions.js&action=raw&ctype=text/javascript');
//reply link
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:EnterpriseyBot/reply-link.js&action=raw&ctype=text/javascript');
//window.replyLinkAutoReload = true;

//[[File:Krinkle_RTRC.js]]
//mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/RTRC.js&action=raw&ctype=text/javascript');
//WhatLeavesHere
//mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Tools/WhatLeavesHere.js&action=raw&ctype=text/javascript');

//SidebarTranslate
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Equazcion/SidebarTranslate.js&action=raw&ctype=text/javascript');
//x-tools
//mw.loader.load('//www.mediawiki.org/w/index.php?title=XTools/ArticleInfo.js&action=raw&ctype=text/javascript');

/**
 * Navigation PopUps
 * See <https://en.wikipedia.org/wiki/Wikipedia:Tools/Navigation_popups>
 */
/*mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-popups.js&oldid=841713951&action=raw&ctype=text/javascript');
mw.loader.load(location.protocol + '//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-navpop.css&oldid=825269631&action=raw&ctype=text/css', 'text/css');
popupDelay=0.3;
popupHideDelay=0.3;
popupFixDabs=true;
popupOnEditSelection=false;
popupAdminLinks=true;*/

//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/Restorer.js&action=raw&ctype=text/javascript');
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/TodoList.js&action=raw&ctype=text/javascript');

//AutoUndo
//mw.loader.load('//test2.wikipedia.org/w/index.php?title=User:1997kB/Scripts/GlobalAutoUndo.js&action=raw&ctype=text/javascript');
//cvn overlay
//mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:1997kB/common.js&oldid=19141315&action=raw&ctype=text/javascript');
/*tools,  No MediaViewer, subpages, translate, Live clock, Purge button, CSS/JS subpage, Useful_links, Active sysops, rollback, tag pages, GlobalView, Forces left-to-right, configurable templates */
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Erwin/xwikirollback.js&action=raw&ctype=text/javascript');
// Mass edit tool
mw.loader.load('//www.mediawiki.org/w/index.php?title=User:Infinite0694/Mass edit tool.js&action=raw&ctype=text/javascript');

//AQ fetcher
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:N8wilson/AQFetcher.js&action=raw&ctype=text/javascript');

mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Indic-TechCom/Script/findAndreplace.js&action=raw&ctype=text/javascript');

mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:D2F0F5/DisamAssist.js&action=raw&ctype=text/javascript');

// Old, added 1 Feb
//$('a').prop('target', '_blank')

//mw.loader.load('//en.wikipedia.org/w/index.php?title=Wikipedia:Igloo/gloo.js&action=raw&ctype=text/javascript');
//mw.loader.load('//zh.wikipedia.org/w/index.php?title=User:A2569875-sandbox/MyPopupsSetting_zh-hant.js&action=raw&ctype=text/javascript');
mw.loader.load('https://wikiplus-app.com/Main.js');
// Provides several useful functions for rollback (custom edit summary, mark as bot edits and mass revert)
// by [[m:user:Hoo man]] <http://meta.wikimedia.org/wiki/User:Hoo_man/Scripts/Smart_rollback>
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/smart_rollback.js&action=raw&ctype=text/javascript');
mw.loader.load("//zh.wikipedia.org/wiki/MediaWiki:Gadget-markblocked.js&action=raw&ctype=text/javascript"); //用删除线表示被封禁的用户

// 1997kB
if ($.inArray(mw.config.get('wgDBname'), ['metawiki']) == -1)
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=User:1997kB/common.js&action=raw&ctype=text/javascript' );
//script installer
//mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Equazcion/ScriptInstaller.js&action=raw&ctype=text/javascript');

//talk page conversatioon archiver
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Σ/Testing facility/Archiver.js&action=raw&ctype=text/javascript');
// Add info on userpages listing their flags, account-age, contributions-count, and last-edit-time
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:PleaseStand/userinfo.js&action=raw&ctype=text/javascript');
//deletion afd finder
mw.loader.load('//en.wikipedia.org/w/index.php?title=User%3AWrit+Keeper%2FScripts%2FdeletionFinder.js&action=raw&ctype=text/javascript');
//Superlinks
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Bradv/Scripts/Superlinks.js&action=raw&ctype=text/javascript');
//mass rollback
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ_Keeper/Scripts/massRollback.js&action=raw&ctype=text/javascript');
//stew links
mw.loader.load( '//meta.wikimedia.org/w/index.php?title=User:Erwin/stewardlinks.js&action=raw&ctype=text/javascript' );

// [[File:Krinkle_RTRC.js]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/RTRC.js&action=raw&ctype=text/javascript');
// [[File:Krinkle_Global_SUL.js]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Tools/Global_SUL.js&action=raw&ctype=text/javascript');

//Strike out links to blocked users [[File:MediaWiki:Gadget-markblocked.js]]
mw.loader.using( [ 'mediawiki.util' ], function () {
   mw.loader.load( '//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-markblocked.js&action=raw&ctype=text/javascript' );
} );

// [[d:User:Yair rand/WikidataInfo.js]]
//mw.loader.load('//www.wikidata.org/w/index.php?title=User:Yair rand/WikidataInfo.js&action=raw&ctype=text/javascript');
// [[d:User:Yair rand/checksitelinks.js]]
//mw.loader.load('//www.wikidata.org/w/index.php?title=User:Yair_rand/checksitelinks.js&action=raw&ctype=text/javascript');
//x-tools
//mw.loader.load('//www.mediawiki.org/w/index.php?title=XTools/ArticleInfo.js&action=raw&ctype=text/javascript');

// No MediaViewer
mw.config.set("wgMediaViewerOnClick", false);
//translate
mw.loader.using("mediawiki.util", function() {
	if ($.inArray(mw.config.get('wgDBname'), ['enwiki', 'enwikibooks', 'enwikinews', 'enwikiquote', 'enwikisource', 'enwikiversity', 'enwikivoyage', 'enwiktionary',
	'hifwiki', 'hifwiktionary', 'hiwiki', 'hiwikibooks', 'hiwikiquote', 'hiwikiversity', 'hiwikivoyage', 'hiwiktionary', 'mediawikiwiki', 'metawiki',
	'simplewiki', 'simplewiktionary', 'testwiki', 'test2wiki', 'testwikidatawiki', 'wikidatawiki']) == -1)
    mw.util.addPortletLink(
        "p-cactions",
        "https://translate.google.com/translate?u="+window.location.href,
        "translate",
        "translate this page"
    );
});
// Live clock
/* Modified from [[mediawiki:MediaWiki:Gadget-UTCLiveClock.js]] */
mw.loader.using( ['mediawiki.util', 'mediawiki.api', 'mediawiki.notify'] ).then( function () {

function padWithZeroes( num ) {
	// Pad a number with zeroes. The number must be an integer where
	// 0 <= num < 100.
	return num < 10 ? '0' + num.toString() : num.toString(); 
}

function showTime( $target ) {
	var now = new Date();

	// Set the time.
	var hh = now.getUTCHours();
	var mm = now.getUTCMinutes();
	var ss = now.getUTCSeconds();
	var time = padWithZeroes( hh ) + ':' + padWithZeroes( mm ) + ':' + padWithZeroes( ss );
	$target.text( time );

	// Schedule the next time change.
	// 
	// We schedule the change for 100 ms _after_ the next clock tick. The delay
	// from setTimeout is not precise, and if we aim exactly for the tick, there
	// is a chance that the function will run slightly before it. If this
	// happens, we will display the same time for two seconds in a row - not
	// good. By scheduling 100 ms after the tick, we will always be about 100 ms
	// late, but we are also very likely to display a new time every second.
	var ms = now.getUTCMilliseconds();
	setTimeout( function () {
		showTime( $target );
	}, 1100 - ms );
}

function liveClock() {
	mw.util.addCSS( '#utcdate a { font-weight:bolder; font-size:120%; }' );

	// Add the portlet link.
	var node = mw.util.addPortletLink(
		'p-personal',
		mw.util.getUrl( null, { action: 'purge' } ),
		'',
		'utcdate',
		null,
		null,
		'#pt-userpage'
	);
	if ( !node ) {
		return;
	}

	// Purge the page when the clock is clicked. We have to do this through the
	// API, as purge URLs now make people click through a confirmation screen.
	$( node ).on( 'click', function ( e ) {
		new mw.Api().post( { action: 'purge', titles: mw.config.get( 'wgPageName' ) } ).then( function () {
			location.reload();
		}, function () {
			mw.notify( 'Purge failed', { type: 'error' } );
		} );
		e.preventDefault();
	} );

	// Show the clock.
	showTime( $( node ).find( 'a:first' ) );
}

$( liveClock );
} );

/**
 * Navigation PopUps
 * See <https://en.wikipedia.org/wiki/Wikipedia:Tools/Navigation_popups>
 */
//mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-popups.js&oldid=841713951&action=raw&ctype=text/javascript');
//mw.loader.load(location.protocol + '//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-navpop.css&oldid=825269631&action=raw&ctype=text/css', 'text/css');
//popupDelay=0.3;
//popupHideDelay=0.3;
//popupFixDabs=true;
//popupOnEditSelection=false;
//popupAdminLinks=true;

/* Vector only */
	if (mw.config.get('skin') === 'vector') {
		/**
		 * Add "Purge" content action link.
		 *
		 * Dependencies: mediawiki.util, mediawiki.api
		 *
		 * @source https://www.mediawiki.org/wiki/Snippets/Purge_action
		 * @revision 2016-05-17
		 */
		$.when(mw.loader.using(['mediawiki.util', 'mediawiki.api', 'mediawiki.notify']), $.ready).then(function () {
			if ($('#ca-purge').length) return;
			var node = mw.util.addPortletLink( 'p-cactions',
				mw.util.getUrl(null, { action: 'purge' }),
				'Purge',
				'ca-purge',
				'Purge the server cache of this page'
			);
			$(node).on('click', function (e) {
				new mw.Api().post({ action: 'purge', titles: mw.config.get('wgPageName') }).then(function () {
					location.reload();
				}, function () {
					mw.notify('Purge failed', { type: 'error' });
				});
				e.preventDefault();
			});
		});
	}

/**
 * When viewing a user's CSS/JS subpage, show a list of their other pages of the same type.
 */
mw.loader.using(['mediawiki.api'], function() {
	$(function() {
		var _cssjsTitlePattern = /\.(?:css|js)$/;

		// get page details
		var title = mw.config.get('wgTitle');
		if(mw.config.get('wgNamespaceNumber') !== 2 || !title.match(_cssjsTitlePattern))
			return;
		var username = mw.config.get('wgRelevantUserName');
		var contentModel = mw.config.get('wgPageContentModel');

		// add CSS
		mw.util.addCSS('.subpages a.is-standard { font-weight: bold; }');

		// fetch subpages
		var api = new mw.Api();
		api.get({ action: 'query', list: 'prefixsearch', pssearch: 'User:' + username + '/', pslimit: 100 }).then(function(data) {
			// get matching scripts
			var titles = [];
			$.each(data.query.prefixsearch, function(p, page) {
				if(page.title.match(_cssjsTitlePattern) && page.title.indexOf(title) === -1)
					titles.push(page.title.replace(/^[^:]+:[^\/]+\//, ''));
			});
			titles.sort();

			// get subpages box
			var container = $('.subpages:first');
			if(!container.length)
				container = $('<div>').addClass('subpages').prependTo('#contentSub'); // some wikis don't have subpages enabled in user namespace

			// add links
			if(titles.length) {
				var articlePath = mw.config.get('wgArticlePath');
				$.each(titles, function(t, title) {
					var link = $('<a>')
						.attr({ href: articlePath.replace('$1', 'User:' + username + '/' + title) })
						.text(title);
					if(title.match(/^(?:cologneblue|common|global|minerva|modern|monobook|vector)\.(?:css|js)$/))
						link.addClass('is-standard');
					container
						.append(' • ')
						.append(link);
				});
			}
			else {
				container
					.append(' • ')
					.append($('<em>').text('no other css/js pages'));
			}
		});
	});
});

//RCs
/*(function() {
	
	$(document).ready(function() {
		mw.loader.using( ['mediawiki.util'], function() {
			// show shortcuts if not editing
			if (!mw.config.get('wgEditMessage')) {
				mw.util.addPortletLink("p-navigation", "https://en.wikipedia.org/w/index.php?goodfaith=likelybad%3Bverylikelybad&hidebots=1&hidepreviousrevisions=1&hidecategorization=1&hideWikibase=1&namespace=0&limit=50&days=30&goodfaith__likelybad_color=c4&goodfaith__verylikelybad_color=c5&title=Special:RecentChanges&urlversion=2", "rc:enwiki");
				mw.util.addPortletLink("p-navigation", "https://simple.wikipedia.org/wiki/Special:RecentChanges?hidebots=1&hidecategorization=1&hideWikibase=1&limit=50&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:simplewiki");
				mw.util.addPortletLink("p-navigation", "https://www.wikidata.org/wiki/Special:RecentChanges?damaging=verylikelybad&goodfaith=verylikelybad&hidebots=1&hidecategorization=1&limit=50&days=7&damaging__verylikelybad_color=c5&goodfaith__verylikelybad_color=c5&urlversion=2", "rc:wikidatawiki");
				mw.util.addPortletLink("p-navigation", "https://meta.wikimedia.org/wiki/Special:RecentChanges?hidebots=1&translations=filter&hidecategorization=1&hideWikibase=1&limit=50&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:metawiki");
				mw.util.addPortletLink("p-navigation", "https://commons.wikimedia.org/wiki/Special:RecentChanges?userExpLevel=unregistered%3Bnewcomer%3Blearner&hidebots=1&translations=filter&hidecategorization=1&hideWikibase=1&limit=50&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:commonswiki");
				mw.util.addPortletLink("p-navigation", "https://hi.wikipedia.org/wiki/%E0%A4%B5%E0%A4%BF%E0%A4%B6%E0%A5%87%E0%A4%B7:RecentChanges?userExpLevel=unregistered%3Bnewcomer%3Blearner&hidebots=1&hidecategorization=1&hideWikibase=1&limit=100&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:hiwiki");
				mw.util.addPortletLink("p-navigation", "https://hif.wikipedia.org/wiki/khaas:RecentChanges?hidebots=1&hidecategorization=1&hideWikibase=1&limit=50&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:hifwiki");
				mw.util.addPortletLink("p-navigation", "https://en.wikivoyage.org/wiki/Special:RecentChanges?userExpLevel=unregistered%3Bnewcomer%3Blearner&hidebots=1&hidecategorization=1&hideWikibase=1&limit=50&days=7&userExpLevel__unregistered_color=c5&userExpLevel__newcomer_color=c3&userExpLevel__learner_color=c2&urlversion=2", "rc:vyowiki");
				return;
			}
		});
	});

}());*/
//

// Gives some useful links on user, user talk and user contribution pages
// by [[m:user:Hoo man]] <http://meta.wikimedia.org/wiki/User:Hoo_man/Scripts/Useful_links>
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/useful_links.js&action=raw&ctype=text/javascript');
if(typeof(usefulLinksConfig) == 'undefined') usefulLinksConfig = {};
usefulLinksConfig.useFoldedMenu = true;

//location for all tools by Hoo
if(typeof(hoofrConfig) == 'undefined') hoofrConfig = {};
hoofrConfig.toolLinkMethod = 'p-navigation';

// Active sysops (For SWMT work/unrelated)
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/active_sysops.js&action=raw&ctype=text/javascript');
if(typeof(activeSysopsConfig) == 'undefined') activeSysopsConfig = {};
activeSysopsConfig.markWikisGS = true;

// Provides several usefull functions for rollback (custom edit summary, mark as bot edits and mass revert)
// by [[m:user:Hoo man]] <https://meta.wikimedia.org/wiki/User:Hoo_man/smart_rollback.js>
// [[File:Hoo man/smart_rollback.js]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/smart_rollback.js&action=raw&ctype=text/javascript');

// Rollback summaries
/*$(document).ready(function(){
    var rollbackPrompt=function(ev){
        var summary = prompt("Enter rollback summary:", "<use default>");
        if(summary == null || summary == "") {
            ev=ev || window.event;
            if(ev.preventDefault) ev.preventDefault();
            if(ev.stopPropagation) ev.stopPropagation();
            ev.returnValue = false;
            ev.cancelBubble = true;
            return false;
        }
        if(summary != "<use default>")
            this.href = this.href.replace("?", "?summary=" + encodeURIComponent(summary) + "&");
        return true;
    };

    var links=document.getElementById('content').getElementsByTagName('a');
    for(var i=links.length-1; i>=0; i--){
        if(/[?&]action=rollback([&#]|$)/.test(links[i].href))
            links[i].onclick=rollbackPrompt;
    }

});*/

// This tool can tag pages with a few clicks (which is much faster than editing the whole page per Hand).
// by [[m:user:Hoo man]] <https://meta.wikimedia.org/wiki/User:Hoo_man/Scripts/Tagger>
if ($.inArray(mw.config.get('wgDBname'), ['enwiki', 'simplewiki', 'testwiki']) == -1) mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/tagger.js&action=raw&ctype=text/javascript');

var otherSpeedy = {
	'mediawikiwiki': 'speedy',
	'enwikisource': 'sdelete',
	'commonswiki': 'speedy delete',
	'bgwiktionary': 'Бързо изтриване'
};
 
var speedyTemplate = "delete";
if (mw.config.get('wgDBname') in otherSpeedy) {
	speedyTemplate = otherSpeedy[mw.config.get('wgDBname')];
}

//<nowiki>
if(typeof(taggerConfig) == 'undefined') taggerConfig = {};
taggerConfig.tags = [];
taggerConfig.editSummary = [];
taggerConfig.tags[1] = '{{' + speedyTemplate + '|Test}}';
taggerConfig.editSummary[taggerConfig.tags[1]] = 'delete';
taggerConfig.tags[2] = '{{' + speedyTemplate + '|Spam}}';
taggerConfig.editSummary[taggerConfig.tags[2]] = 'delete';
taggerConfig.tags[3] = '{{' + speedyTemplate + '|Vandalism}}';
taggerConfig.editSummary[taggerConfig.tags[3]] = 'delete';
taggerConfig.tags[4] = '{{' + speedyTemplate + '|Blanked by the author}}';
taggerConfig.editSummary[taggerConfig.tags[4]] = 'delete';
taggerConfig.tags[5] = '{{' + speedyTemplate + '|No content}}';
taggerConfig.editSummary[taggerConfig.tags[5]] = 'delete';
taggerConfig.tags[6] = '{{' + speedyTemplate + '|Nonsense}}';
taggerConfig.editSummary[taggerConfig.tags[6]] = 'delete';
taggerConfig.tags[7] = '{{' + speedyTemplate + '|No useful content}}';
taggerConfig.editSummary[taggerConfig.tags[7]] = 'delete';
taggerConfig.tags[8] = '{{' + speedyTemplate + '|Out of project scope}}';
taggerConfig.editSummary[taggerConfig.tags[8]] = 'delete';
taggerConfig.tags[9] = '{{' + speedyTemplate + '|Wrong language}}';
taggerConfig.editSummary[taggerConfig.tags[9]] = 'delete';
taggerConfig.tags[10] = '{{' + speedyTemplate + '|Cross-wiki spam}}';
taggerConfig.editSummary[taggerConfig.tags[10]] = 'delete';
taggerConfig.tags[11] = '{{' + speedyTemplate + '|Cross-wiki vandalism}}';
taggerConfig.editSummary[taggerConfig.tags[11]] = 'delete';
taggerConfig.tags[12] = '{{' + speedyTemplate + '|Not a translation}}';
taggerConfig.editSummary[taggerConfig.tags[12]] = 'delete';
taggerConfig.tags[13] = '{{' + speedyTemplate + '|Promotion}}';
taggerConfig.editSummary[taggerConfig.tags[13]] = 'delete';
taggerConfig.tags[14] = '{{' + speedyTemplate + '|Machine translation}}';
taggerConfig.editSummary[taggerConfig.tags[14]] = 'delete';
taggerConfig.tags.other = 'This is used for the option you have to select to be able to insert a custom template';
//</nowiki>

/**
 * GlobalView adds a [[Special:GlobalView]] page on the current
 * wiki to view your new messages and unread notifications on all wikis.
 * 
 * This is a quick and dirty script — it's not ready for reuse! Please contact
 * me if you're interested in using it.
*/
mw.loader.load('https://meta.wikimedia.org/w/index.php?title=User:Pathoschild/Scripts/globalview.js&action=raw&ctype=text/javascript');

/**
 * Forces left-to-right layout and editing on RTL wikis.
 * @see https://meta.wikimedia.org/wiki/Force_ltr
 * @update-token [[File:pathoschild/forceltr.js]]
 */
mw.loader.load('//tools-static.wmflabs.org/meta/scripts/pathoschild.forceltr.js');

/**
 * TemplateScript adds configurable templates and scripts to the sidebar, and adds an example regex editor.
 * @see https://meta.wikimedia.org/wiki/TemplateScript
 * @update-token [[File:Pathoschild/templatescript.js]]
 */
// <nowiki>
$.ajax('//tools-static.wmflabs.org/meta/scripts/pathoschild.templatescript.js', { dataType:'script', cache:true }).then(function() {
pathoschild.TemplateScript.add([
	{
		category: 'Being nice',
		name: 'Welcome',
		template: '{{subst:welcome}} ~~~~',
		position: 'after',
		editSummary: 'Welcome!',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'test1',
		template: '{{subst:Test1}}',
		position: 'after',
		editSummary: 'Do not test on Meta',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'test2',
		template: '{{subst:Test2}}',
		position: 'after',
		editSummary: 'Do not test on Meta',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'test3',
		template: '{{subst:Test3}}',
		position: 'after',
		editSummary: 'Do not test on Meta',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'test4',
		template: '{{subst:Test4}}',
		position: 'after',
		editSummary: 'Do not test on Meta',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'vandalism1',
		template: '{{subst:uw-vandalism1}}',
		position: 'after',
		editSummary: 'Do not vandalize',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'vandalism2',
		template: '{{subst:uw-vandalism2}}',
		position: 'after',
		editSummary: 'Do not vandalize',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'vandalism3',
		template: '{{subst:uw-vandalism3}}',
		position: 'after',
		editSummary: 'Do not vandalize',
		forNamespaces: 'user talk'
	},
]);
pathoschild.TemplateScript.add([
	{
		category: 'Warning',
		name: 'vandalism4',
		template: '{{subst:uw-vandalism4}}',
		position: 'after',
		editSummary: 'Do not vandalize',
		forNamespaces: 'user talk'
	},
]);
});
// </nowiki>