MediaWiki:Gadget-refToolbar.js
Jump to navigation
Jump to search
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)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/**
* RefToolbar
*
* Adds tools for citing references to the edit toolbar.
* See [[Wikipedia:RefToolbar]] for further documentation. One of two
* possible versions will load (Reftoolbar 1.0 or Reftoolbar 2.0)
* depending on the user preferences (the usebetatoolbar preference).
*
* @see: [[Wikipedia:RefToolbar]]
* @see: [[MediaWiki:RefToolbar.js]]
* @see: [[MediaWiki:RefToolbarConfig.js]]
* @see: [[MediaWiki:RefToolbarLegacy.js]]
* @see: [[MediaWiki:RefToolbarMessages-en.js]]
* @see: [[MediaWiki:Gadget-refToolbarBase.js]]
* @author: [[User:Mr.Z-man]]
* @author: [[User:Kaldari]]
*/
/* jshint browser: true, camelcase: true, curly: true, eqeqeq: true */
/* global $, mw */
(function () {
'use strict';
function initializeRefTools() {
// 2010 wikitext editor
mw.hook('wikiEditor.toolbarReady').add(() => {
// TODO:
// * Explicitly declare global variables from [[MediaWiki:RefToolbar.js]] using window.*
// * Move [[MediaWiki:RefToolbar.js]] to [[MediaWiki:Gadget-refToolbarDialogs.js]]
// * Create the module 'ext.gadget.refToolbarDialogs' depending on 'ext.gadget.refToolbarBase'
// * Replace the code below by mw.loader.load( 'ext.gadget.refToolbarDialogs' );
mw.loader.using('ext.gadget.refToolbarBase', () => {
mw.loader.load('/w/index.php?title=MediaWiki:RefToolbar.js&action=raw&ctype=text/javascript');
});
window.refToolbarInstalled = true;
});
// 2006 legacy toolbar
mw.hook('mw.toolbar').add(() => {
mw.loader.load('/w/index.php?title=MediaWiki:RefToolbarLegacy.js&action=raw&ctype=text/javascript');
window.refToolbarInstalled = true;
});
}
if (/^(edit|submit)$/.test(mw.config.get('wgAction')) &&
mw.config.get('wgPageContentModel') === 'wikitext' &&
!$('#wpTextbox1[readonly]').length &&
!window.refToolbarInstalled
) {
$(initializeRefTools);
}
}());