User:Stang/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.
// Anti-Vandal
//======================================
// (Global/Local)AutoUndo & All-in-One by WhitePhosphorus
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:WhitePhosphorus/js/AutoUndo.js&action=raw&ctype=text/javascript');
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:WhitePhosphorus/js/AutoUndoGlobal.js&action=raw&ctype=text/javascript');
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:WhitePhosphorus/js/all-in-one.js&action=raw&ctype=text/javascript');

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


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

// Twinkle Global by Xiplus@zhwiki
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Xiplus/TwinkleGlobal.js&action=raw&ctype=text/javascript');

// Provides several useful functions for rollback (custom edit summary, mark as bot edits and mass revert)
// by [[m:user:Hoo man]] [[m: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');

// Shows the number of active (one log entry in the last 7 days, or as configured) sysops, uses data from the toolserver
// by [[m:user:Hoo man]] <http://meta.wikimedia.org/wiki/User:Hoo_man/Scripts/Active_sysops>
// mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/active_sysops.js&action=raw&ctype=text/javascript');
// Now replaced by WhitePhosphorus's version
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:WhitePhosphorus/js/active_sysops.js&action=raw&ctype=text/javascript');

// all-in-one by Krinkle [[File:Krinkle_Countervandalism.js]]
// includes RTRC, WhatLeavesHere, CVNSimpleOverlay_wiki, Prefixindex sidebar and purge button
// mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/Countervandalism.js&action=raw&ctype=text/javascript');
// [[File:Krinkle_CVNSimpleOverlay_wiki.js]] [[File:Krinkle_WhatLeavesHere.js]] [[File:Krinkle_RTRC.js]]
// Now splited into several scripts:
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/Prefixindex.js&action=raw&ctype=text/javascript');
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Tools/WhatLeavesHere.js&action=raw&ctype=text/javascript');
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/Scripts/CVNSimpleOverlay_wiki.js&action=raw&ctype=text/javascript');
mw.loader.getState('ext.gadget.rtrc') ? mw.loader.load('ext.gadget.rtrc') : mw.loader.load('//www.mediawiki.org/w/load.php?debug=false&modules=ext.gadget.rtrc&lang=' + mw.config.get('wgUserLanguage', 'en'));
var tb_sw = mw.util.addPortletLink('p-tb', '//swviewer.toolforge.org/',	'SWViewer', 't-swviewer', 'Launch SWViewer', 'v', '#t-rtrc');

// Allow CIDR ranges and wildcard Prefix search on Special:Contributions
if ($.inArray(mw.config.get("wgDBname"), ['zhwiki']) === -1){
	mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-contribsrange.js&action=raw&ctype=text/javascript');
}

// Quick script to show the accounts created by a user, by DannyS712
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:DannyS712/AccountsCreated.js&action=raw&ctype=text/javascript');

// Expand diff in history by Bradv@enwiki
// Backlink: [[User:Bradv/Scripts/ExpandDiffs.js]]
if (mw.config.get('wgCanonicalSpecialPageName') !== 'Recentchanges'){
	mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Bradv/Scripts/ExpandDiffs.js&action=raw&ctype=text/javascript');
}

// Emergency, SRG, CentralAuth, and GUC links on sidebar by Vermont
// mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Vermont/sidebar.js&action=raw&ctype=text/javascript');

// mass rollback: Selecting the "rollback all" tab in contributions will open all rollback links
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ_Keeper/Scripts/massRollback.js&action=raw&ctype=text/javascript');

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

// A tool very similar to the Nuke extension, but with more features
// by [[m:user:Hoo man]] [[m:User:Hoo_man/Scripts/SledgeHammer]]
// mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Hoo_man/sledgeHammer.js&action=raw&ctype=text/javascript');

// sidebar link for proxy check
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Kb03/scripts/proxychecker.js&action=raw&ctype=text/javascript');

/**
 * Ajax sysop
 * @see https://meta.wikimedia.org/wiki/Ajax_sysop
 * @update-token [[File:Pathoschild/ajaxsysop.js]]
 */
mw.loader.load('//tools-static.wmflabs.org/meta/scripts/pathoschild.ajaxsysop.js');

// Hightlight user edit when visiting from contrib -> hist pageBacklink: [[User:Guywan/Scripts/HistoryHighlight.js]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Guywan/Scripts/HistoryHighlight.js&action=raw&ctype=text/javascript');

// removespam by Mike.lifeguard
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Mike.lifeguard/removeSpam.js&action=raw&ctype=text/javascript');

// Writ Keeper's "revdel heaven" (-revi's words)
// by [[:w:en:User:Writ Keeper]]
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ_Keeper/Scripts/massRevdel.js&action=raw&ctype=text/javascript');

// Script for redirecting Special:CentralAuth pages on all wikis to the metawiki one
// by [[User:Tks4Fish]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Tks4Fish/CARedirect.js&action=raw&ctype=text/javascript');

// Rollback prompt
// by [[:w:en:User:Anomie]]
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Anomie/rollback-prompt.js&action=raw&ctype=text/javascript');

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

if ($.inArray(mw.config.get("wgDBname"), ['zhwiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/Online-Admins.js&action=raw&ctype=text/javascript');
}

// ORES score highlight
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:He7d3r/Tools/ScoredRevisions.js&action=raw&ctype=text/javascript');

// [[MoreMenu]] adds up to two dropdown menus to the menu bar containing useful links
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:MoreMenu.import.js&action=raw&ctype=text/javascript');

// moremenu-proxy + moremenu-64
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/moremenu-proxy.js&action=raw&ctype=text/javascript');

// Extended info on IPs - gives a popup with their range, ASN, and ISP by @GeneralNotability
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:GeneralNotability/ip-ext-info.js&action=raw&ctype=text/javascript');

// selective delete by DannyS712
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:DannyS712/SelectiveDeleter.js&action=raw&ctype=text/javascript');

// massRevdel
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Writ Keeper/Scripts/massRevdel.js&action=raw&ctype=text/javascript');

// mass delete at Special:MassDelete by Tulsi_Bhagat
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Tulsi Bhagat/massdelete.js&action=raw&ctype=text/javascript');

// mass restore at Special:massrestore by Timotheus_Canens
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Timotheus Canens/massrestore.js&action=raw&ctype=text/javascript');

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

// easyblock by Animum [[:en:User:Animum/EasyBlock]]
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Animum/easyblock.js&action=raw&ctype=text/javascript');
//======================================



// Edit Enhancement
//======================================
// Wikiplus by 镜音铃@zhwiki, ref: http://zh.moegirl.org/zh/User:妹空酱/Wikiplus
// mw.loader.load('//cdn.jsdelivr.net/gh/Wikiplus/Wikiplus@master/Main.min.js');

// Quick Edit, replace Wikiplus
// [[w:User:BrandonXLF/QuickEdit]] by BrandonXLF
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/QuickEdit.js&action=raw&ctype=text/javascript');

// ForkAPage by 青子守歌@jawiki
if(mw.config.get("wgDBname") !== 'zhwiki'){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/ForkAPage.js&action=raw&ctype=text/javascript');
}
// Hotcat
mw.loader.load('//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&action=raw&ctype=text/javascript');

// Link to translatewiki.net
mw.loader.load('//meta.wikipedia.org/w/index.php?title=User:Stang/js/get-translatewiki-link.js&action=raw&ctype=text/javascript');

// Reload with safe/debug mode
// mw.loader.load('//meta.wikipedia.org/w/index.php?title=User:Stang/js/safemode.js&action=raw&ctype=text/javascript');

// edit directly from diff view
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Jon_Harald_Søby/diffedit.js&action=raw&ctype=text/javascript');
// also load MFT button, they are dependent (from position aspect)
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/mft1.load.js&action=raw&ctype=text/javascript');

// Javasctipt Wiki Browser [[w:User:Joeytje50/JWB]]
// Use at page [[Project:AutoWikiBrowser/Script]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js/load.js&action=raw&ctype=text/javascript');

// reFill [[w:Wikipedia:ReFill]]
if(mw.config.get('wgNamespaceNumber') != -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Zhaofeng_Li/Reflinks.js&action=raw&ctype=text/javascript');
}

// semi-automatic (MediaWiki namespace) variant convert tool
mw.loader.load('//www.mediawiki.org/w/index.php?title=User:Stang/js/TranslateVariants.js&action=raw&ctype=text/javascript');

// [[w:User:AutoEd]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=Wikipedia:AutoEd/complete.js&action=raw&ctype=text/javascript');
autoEdTag = "Cleaned up using [[w:en:WP:AutoEd|AutoEd]]";
autoEdLinkName = "auto ed";

// [[w:User:WOSlinker/fontlinks.js]]
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:WOSlinker/fontlinks.js&action=raw&ctype=text/javascript');

// dropdown to choose what lists on the page to sort
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/ListSorter.js&action=raw&ctype=text/javascript');

// swap page, most time require sysop flag, by Andy M. Wang and NguoiDungKhongDinhDanh
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/pageswap.js&action=raw&ctype=text/javascript');

// Add/Modify "DEFAULTSORT" magic word, similar UI with HotCat
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/HotDefaultSort.js&action=raw&ctype=text/javascript');

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

// Edittools from enwiki
if($.inArray(mw.config.get("wgDBname"), ['enwiki', 'commonswiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/MediaWiki:Gadget-charinsert-core.js&action=raw&ctype=text/javascript');
}
//======================================



// Display
//======================================
// xtools display under title
mw.loader.load('//www.mediawiki.org/w/index.php?title=XTools/ArticleInfo.js&action=raw&ctype=text/javascript');

// Display user right at left of the title by Anomie@enwiki
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/useridentifier.js&action=raw&ctype=text/javascript');

// Display wikidata info under title, [[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');

// Convenient Discussions, [[c:User:Jack_who_built_the_house/Convenient_Discussions]]
//mw.loader.load('https://commons.wikimedia.org/w/index.php?title=User:Jack_who_built_the_house/convenientDiscussions.js&action=raw&ctype=text/javascript');
// For Compatibility
//mw.hook('convenientDiscussions.commentsReady').add(function(){
	// Display timestamp in local UTC format by Gary@enwiki
	if ($.inArray(mw.config.get("wgDBname"), ['enwiki', 'zhwiki', 'mswiki', 'zhwikinews', 'zhwikibooks', 'zhwiktionary', 'zhwikiquote', 'zhwikisource', 'zhwikivoyage', 'zhwikiversity']) === -1){
		mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Gary/comments_in_local_time.js&action=raw&ctype=text/javascript');
	}
	
	// Use for zh-related sites
	// Unfortuately, zhwikivoyage use "CST" instead of "UTC" makes this script unable to process...
	if ($.inArray(mw.config.get("wgDBname"), ['zhwiki', 'zhwikinews', 'zhwikibooks', 'zhwiktionary', 'zhwikiquote', 'zhwikisource', 'zhwikiversity']) !== -1){
		mw.loader.load('//zh.wikipedia.org/w/index.php?title=MediaWiki:Gadget-CommentsinLocalTime.js&action=raw&ctype=text/javascript');
	}
//});

// Add curid link on sidebar
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/CurIDLink.js&action=raw&ctype=text/javascript');

// Remove "title" from permalink
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-ShortLink.js&action=raw&ctype=text/javascript');

// Display "subpages" button at right top side by PrimeHunter@enwiki
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:PrimeHunter/My_subpages.js&action=raw&ctype=text/javascript');

// word&character count by Liangent@zhwiki
mw.loader.load('//zh.wikipedia.org/w/index.php?title=MediaWiki:Gadget-Wordcount.js&action=raw&ctype=text/javascript');

// Live UTC cloak also provides purge function
mw.loader.load('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-UTCLiveClock.js&action=raw&ctype=text/javascript');

// Mark blocked user
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-markblocked.js&action=raw&ctype=text/javascript');

// [[User:GeneralNotability/mark-locked.js]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:GeneralNotability/mark-locked.js&action=raw&ctype=text/javascript');

// Backlink: [[User:Bradv/Scripts/WhatLinksHereSnippets.js]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Bradv/Scripts/WhatLinksHereSnippets.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');

// revision jumper [[:en:User:DerHexer/revisionjumper]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-revisionjumper.js&action=raw&ctype=text/javascript');

// Edit count at "contribs" link by Bluedeck@zhwiki
mw.loader.load('//zh.wikipedia.org/w/index.php?title=MediaWiki:Gadget-edit-count.js&action=raw&ctype=text/javascript');

// Open external link on new tab
mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-exlinks.js&action=raw&ctype=text/javascript');

// Add a button to scroll up to the top of the current page, modified by AnYiLin@zhwiki
mw.loader.load('//zh.wikipedia.org/w/index.php?title=MediaWiki:Gadget-scrollUpButton.js&action=raw&ctype=text/javascript');

// toTop, similar to MediaWiki:Gadget-scrollUpButton.js@zhwiki but position fixed at right corner
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/ToTopButton.js&action=raw&ctype=text/javascript');

// Redirect image links to Commons for files that are hosted there
mw.loader.load('//www.wikidata.org/w/index.php?title=MediaWiki:Gadget-imagelinks.js&action=raw&ctype=text/javascript');

// Counts total number of pages linked to a specific page on Special:WhatLinksHere
mw.loader.load('//www.wikidata.org/w/index.php?title=MediaWiki:Gadget-linkscount.js&action=raw&ctype=text/javascript');

// Allow for regex-based filtering of Special:Log, imported from commonswiki
mw.loader.load('//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-rightsfilter.js&action=raw&ctype=text/javascript');

// markAdmins by seija@zhwiki
if ($.inArray(mw.config.get("wgDBname"), ['wikidatawiki', 'commonswiki', 'metawiki', 'zhwiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/markAdmins.js&action=raw&ctype=text/javascript');
}

// show the link to a section at the right side, easy for c&p by Hat600@zhwiki
mw.loader.load('//zh.wikipedia.org/w/index.php?title=User:Hat600/script/sectionlink.js&action=raw&ctype=text/javascript');

// display toc at left side
// mw.loader.load('//zh.wikipedia.org/w/index.php?title=User:Artoria2e5/Gadget-sectionlink.js&action=raw&ctype=text/javascript');

// check GlobalUsage
if (mw.config.get('wgNamespaceNumber') === 6){
    mw.util.addPortletLink('p-cactions', '//commons.wikimedia.org/wiki/Special:GlobalUsage/'+ mw.config.get('wgTitle'), 'GlobalUsage');
}

// view in zh-cn variant by WhitePhosphorus
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/use_zh-cn.js&action=raw&ctype=text/javascript');
// solving the same problem
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/use_zh-cn_2.js&action=raw&ctype=text/javascript');

// no upload special pages for redlink by WhitePhosphorus
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/NoRedlinkFileUpload.js&action=raw&ctype=text/javascript');

// Namespace, SpecialPages normalization by Jimmy_Xu
mw.loader.getScript('//meta.wikimedia.org/w/index.php?title=User:Stang/js/normalizeNS.js&action=raw&ctype=text/javascript').then(function(){
	// Show user edit count under title
	mw.loader.getScript('//meta.wikimedia.org/w/index.php?title=User:Stang/js/page_id.js&action=raw&ctype=text/javascript').then(function(){
		// Page ID by Jimmy Xu@zhwiki
		mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/quickeditcounter.js&action=raw&ctype=text/javascript');
	})
});

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

// View commons deleted file
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/VoCTab.js&action=raw&ctype=text/javascript');

// AF diff check
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Suffusion_of_Yellow/filterDiff.js&action=raw&ctype=text/javascript');

// batchtest-plus
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Suffusion_of_Yellow/batchtest-plus.js&action=raw&ctype=text/javascript');

//TANav
if(($.inArray(mw.config.get("wgDBname"), ['specieswiki', 'sourceswiki', 'incubatorwiki', 'foundationwiki', 'outreachwiki', 'wikimaniawiki']) !== -1)){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/TAnav.js&action=raw&ctype=text/javascript');
}

// never use mobile view (sometimes it do help, so maybe a switch to enable/disable?)
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Þjarkur/NeverUseMobileVersion.js&action=raw&ctype=text/javascript');

// show subcat of a cat
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:DannyS712/Subcategories.js&action=raw&ctype=text/javascript');

// redlink -> view (instead of action=edit)
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Awesome Aasim/noeditredlinks.js&action=raw&ctype=text/javascript');

// sort by editcount in Special:CentralAuth
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Nardog/SortCentralAuthByEditCount.js&action=raw&ctype=text/javascript');

// detailed info about a diff, see [[w:User:BrandonXLF/MoreDiffInfo]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:BrandonXLF/MoreDiffInfo.js&action=raw&ctype=text/javascript');

// show oldid after "data-mw-revid" in action=history
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/ShowRevisionID.js&action=raw&ctype=text/javascript');

// change background color of private AF
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/HighlightPrivateAF.js&action=raw&ctype=text/javascript');

// Different background color display for reference
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Novem_Linguae/Scripts/CiteHighlighter.js&action=raw&ctype=text/javascript');

// isGSWiki by Wim b, display in "#p-personal"
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Wim_b/IsGSWiki.js&action=raw&ctype=text/javascript');

// red interlink on translatable pages
mw.loader.load("//meta.wikimedia.org/w/index.php?title=User:Stang/js/redlink.js&action=raw&ctype=text/javascript");
//======================================



// Miscellaneous
//======================================
mw.config.set("wgMediaViewerOnClick", false);

mw.hook('BeforePageDisplay').remove('ext.visualEditor.viewPageTarget.init');
mw.user.options.set('visualeditor-enable',0);

// patrolRevisions
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Gadget-patrolRevisions.js&action=raw&ctype=text/javascript');

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

// [[w:User:Evad37/livenotifications]], bubble message
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Evad37/livenotifications.js&action=raw&ctype=text/javascript');

// detect lint error [[:en:User:PerfektesChaos/js/lintHint]]
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:PerfektesChaos/js/lintHint/r.js&action=raw&maxage=86400&ctype=text/javascript');

// ShowPageLintError
mw.loader.load('//ja.wikipedia.org/w/index.php?title=User:MawaruNeko/ShowPageLintError.js&action=raw&ctype=text/javascript');

// show clear special:diff style link, [[:en:User:Enterprisey/diff-permalink]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/diff-permalink.js&action=raw&ctype=text/javascript');

// logout confirm
if ($.inArray(mw.config.get("wgDBname"), ['zhwiki']) === -1){
	$.when($.ready).then(function() {
		$('#pt-logout a').off('click').on('click', function(e) {
			if (!confirm('Are you sure you want to logout?')) {
				e.preventDefault();
			}
		});
	});
}

// Fullwidth colon symbol autofix in serachbox
// mw.loader.load('//zh.wikipedia.org/w/index.php?title=MediaWiki:Gadget-fullwidth-search-fix.js&action=raw&ctype=text/javascript');

// warning for too many images in one page by Shizhao
// Disable on commonswiki, as there are so many gallerys, you know...
if ($.inArray(mw.config.get("wgDBname"), ['commonswiki', 'zhwiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/largeimages.js&action=raw&ctype=text/javascript');
}

// clean delete reason
if ($.inArray(mw.config.get("wgDBname"), ['wikidatawiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/CleanDeleteReasons.js&action=raw&ctype=text/javascript');
}

// hide two language variant option (zh-hans/zh-hant) for zh-based page
// now in global.css
// if (mw.config.get('wgPageContentLanguage').match(/zh.*/) && ($.inArray(mw.config.get("wgDBname"), ['zhwiki', 'zhwikibooks', 'zhwikinews', 'zhwikiquote', 'zhwikisource', 'zhwikiversity', 'zhwikivoyage', 'zhwiktionary']) === -1)){
// 	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/css/ca.css&action=raw&ctype=text/css', 'text/css');
// }

// show redirect to current page
if ($.inArray(mw.config.get("wgDBname"), ['zhwiki']) === -1){
	mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Stang/js/show-redirect.js&action=raw&ctype=text/javascript');
}

// decodeURI by 4nn1l2@commonswiki
mw.loader.load('//commons.wikimedia.org/w/index.php?title=User:Stang/js/decodeURI.js&action=raw&ctype=text/javascript');

// massmove at Special:Massmove by Plastikspork
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Plastikspork/massmove.js&action=raw&ctype=text/javascript');

// undelete-backlink
// mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Enterprisey/undelete-backlink.js&action=raw&ctype=text/javascript');

// link-deleted-revs
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Enterprisey/link-deleted-revs.js&action=raw&ctype=text/javascript');

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

// swap the "performer" and "target" in Special:Log
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Amorymeltzer/logSwap.js&action=raw&ctype=text/javascript');

// EditWar checker
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Evad37/EditWarChecker.js&action=raw&ctype=text/javascript');

// [[Project:XXX#yyy]] -> [[Project:XXX/Archive19#yyy]], not tested
mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-find-archived-section.js&action=raw&ctype=text/javascript');

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

// cat-update
if ($.inArray(mw.config.get("wgDBname"), ['zhwiki', 'zhwikinews', 'zhwikibooks', 'zhwiktionary', 'zhwikiquote', 'zhwikisource', 'zhwikivoyage', 'zhwikiversity']) !== -1){
	mw.loader.load("//zh.wikipedia.org/w/index.php?title=User:Stang/js/CatUpdates.js&action=raw&ctype=text/javascript");
} else {
	mw.loader.load("//meta.wikimedia.org/w/index.php?title=User:Stang/js/CatUpdates.js&action=raw&ctype=text/javascript");
}
//======================================



// Custom setting for Gadgets
//======================================
// // Wikiplus
// localStorage.Wikiplus_SendStatistics = "False";
// // From [[translatewiki:User:Xiplus/common.js]]
// (function(){
//     function wikiplusSettingdefaultSummary(w){
// 	    if (w.sectionNumber == -1) return ' ';
// 	    if (w.sectionNumber == 0) return '/* top */ ';
// 	    return '/* ' + w.sectionName + ' */ ';
//     }
//     var wikiplusSetting = {
// 	    "defaultSummary": wikiplusSettingdefaultSummary.toString().replace(/\s+/g, " "),
//         "escToExitQuickEdit": true,
// 	    "documatation": "http://zh.moegirl.org/User:妹空酱/Wikiplus/设置说明"
//     };
//     localStorage.setItem("Wikiplus_Settings", JSON.stringify(wikiplusSetting));
// })();
//======================================
// local UTC format
window.LocalComments = {
    dateDifference: true,
    dateFormat: 'ymd',
    dayOfWeek: true,
    dropDays: 0,
    dropMonths: 0,
    timeFirst: true,
    twentyFourHours: true,
};
//======================================
// fake rollback
if (typeof(fakeRollbackConfig) === 'undefined') fakeRollbackConfig = {};
fakeRollbackConfig.enableCustomSummary = false;
//======================================
// smart rollback
if (typeof(smartRollbackConfig) === 'undefined') smartRollbackConfig = {};
smartRollbackConfig.enableMarkbotedits = true;
//======================================
// globalAutoUndo
p4js_auto_undo_csd_template = {
		'commonswiki': 'speedy', 
		'mediawikiwiki': 'speedy',
		'elwiktionary': 'speedy'
	};
//======================================
// HistoryHighligh custom color
window.hh_highlight = '#FEF';
//======================================
//======================================