Jump to content

MediaWiki:Monobook.js

From Wikipedia, the free encyclopedia
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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.
/* Any JavaScript here will be loaded for users using the MonoBook skin */

/**
 * Topbar content fix with sitenotice and CentralNotice
 *
 * Description: This fixes the location of topbar content (e.g., featured
 *              content star) when the sitenotice or CentralNotice is active.
 * Maintainers: [[User:TheDJ]], [[User:MZMcBride]]
 */
// Only when editing/previewing a page
if ( mw.config.get( 'wgAction' ) == 'submit' || mw.config.get( 'wgAction' ) == 'view' ) {
	$( function() {
		// If there is a dismissible sitenotice or an (expanded) centralnotice
		if ( $( '#mw-dismissible-notice' ).length || $( '#centralNotice' ).hasClass('expanded') ) {
			mw.util.addCSS( '#bodyContent { position: relative; } #coordinates { position: absolute; top: 1px !important; }' );
		}
	} );
}

// Add support for legacy methods still being used by logged in users in their user scripts so these do not log as errors
// Please talk to [[User:Jon (WMF)]] before removing.

function stubMissingFunctionError( method, rtnValue ) {
  if(window[method]) return;
  window[method] = function () {
    mw.log.error('Monobook.js says - A user script or gadget you have loaded is using a deprecated method:' + method);
    return rtnValue;
  };
}
stubMissingFunctionError('getElementsByClassName', []);
stubMissingFunctionError('sajax_init_object');
stubMissingFunctionError('appendCSS');
stubMissingFunctionError('akeytt');
stubMissingFunctionError('attachEvent');
if (typeof InstaView === 'undefined') {
  window.InstaView = {}; // seeing various Uncaught ReferenceError: InstaView is not defined errors. Can be removed when addressed in https://global-search.toolforge.org/?q=InstaView%5C.&regex=1&namespaces=&title=.*%2Fmonobook%5C.js
}
// Avoid issue in old Monobook scripts: ReferenceError: mwCustomEditButtons is not defined 
if(typeof mwCustomEditButtons !== 'undefined') window.mwCustomEditButtons = [];