Jump to content

MediaWiki:Gadget-PageBuilder-loader.js

Revision as of 16:09, 24 October 2026 by Luhte (talk | contribs) (Created page with "( function () { 'use strict'; const action = mw.config.get( 'wgAction' ); const editing = action === 'edit' || action === 'submit'; if ( mw.config.get( 'wgPageContentModel' ) !== 'wikitext' || mw.config.get( 'wgNamespaceNumber' ) < 0 ) { return; } if ( editing ) { mw.loader.load( 'ext.gadget.PageBuilder-core' ); } else if ( action !== 'view' || !mw.config.get( 'wgIsProbablyEditable' ) ) { return; } $( () => { if ( document.getElementById( 'ca-pagebuil...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.
( function () {
	'use strict';

	const action = mw.config.get( 'wgAction' );
	const editing = action === 'edit' || action === 'submit';

	if ( mw.config.get( 'wgPageContentModel' ) !== 'wikitext' || mw.config.get( 'wgNamespaceNumber' ) < 0 ) {
		return;
	}
	if ( editing ) {
		mw.loader.load( 'ext.gadget.PageBuilder-core' );
	} else if ( action !== 'view' || !mw.config.get( 'wgIsProbablyEditable' ) ) {
		return;
	}

	$( () => {
		if ( document.getElementById( 'ca-pagebuilder' ) ) {
			return;
		}
		const href = mw.util.getUrl( mw.config.get( 'wgPageName' ), { action: 'edit', pagebuilder: 1 } );
		const next = document.getElementById( 'ca-history' );
		const link = mw.util.addPortletLink( 'p-views', href, 'Page builder', 'ca-pagebuilder', 'Edit this page with the page builder', null, next );
		if ( link && editing ) {
			link.addEventListener( 'click', ( e ) => {
				e.preventDefault();
				mw.loader.using( 'ext.gadget.PageBuilder-core' ).then( () => {
					mw.hook( 'pagebuilder.open' ).fire();
				} );
			} );
		}
	} );
}() );