« MediaWiki:Common.js » : différence entre les versions

De Keyla project
Aller à : navigation, rechercher
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */
/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */
// gestion du Menu Toolbox
function ModifySidebar( action, section, name, link ) {
try {
switch ( section ) {
case 'languages':
var target = 'p-lang';
break;
case 'toolbox':
var target = 'p-tb';
break;
case 'navigation':
var target = 'p-navigation';
break;
default:
var target = 'p-' + section;
break;
}
if ( action == 'add' ) {
var node = document.getElementById( target )
  .getElementsByTagName( 'div' )[0]
  .getElementsByTagName( 'ul' )[0];
var aNode = document.createElement( 'a' );
var liNode = document.createElement( 'li' );
aNode.appendChild( document.createTextNode( name ) );
aNode.setAttribute( 'href', link );
liNode.appendChild( aNode );
liNode.className = 'plainlinks';
node.appendChild( liNode );
}
if ( action == 'remove' ) {
var list = document.getElementById( target )
  .getElementsByTagName( 'div' )[0]
  .getElementsByTagName( 'ul' )[0];
var listelements = list.getElementsByTagName( 'li' );
for ( var i = 0; i < listelements.length; i++ ) {
if (
listelements[i].getElementsByTagName( 'a' )[0].innerHTML == name ||
listelements[i].getElementsByTagName( 'a' )[0].href == link
)
{
list.removeChild( listelements[i] );
}
}
}
} catch( e ) {
// let's just ignore what's happened
return;
}
}
function SetUserToolbox() {
// adds [[Special:CategoryTree|Special:CategoryTree]] to toolbox
//ModifySidebar( 'add', 'toolbox', 'CategoryTree', 'https://en.wikipedia.org/wiki/Special:CategoryTree' );
// removes [[Special:Upload|Special:Upload]] from toolbox
ModifySidebar( 'remove', 'toolbox', 'Téléverser un fichier', '' );
ModifySidebar( 'remove', 'toolbox', 'Pages spéciales', '' );
ModifySidebar( 'remove', 'toolbox', 'Informations sur la page', '' );
ModifySidebar( 'remove', 'toolbox', 'Suivi des pages liées', '' );
ModifySidebar( 'remove', 'toolbox', 'Pages liées', '' );
}
function SetAdminToolbox() {
// adds [[Special:CategoryTree|Special:CategoryTree]] to toolbox
//ModifySidebar( 'add', 'toolbox', 'CategoryTree', 'https://en.wikipedia.org/wiki/Special:CategoryTree' );
// removes [[Special:Upload|Special:Upload]] from toolbox
ModifySidebar( 'add', 'toolbox', 'Aide', 'http://keyla-project.com/index.php?title=Admin:Aide_%26_maintenance' );
}
if ( mw.config.get( 'wgUserGroups', [] ).indexOf( 'user' ) === -1 ) {jQuery( SetUserToolbox ) }
if ( mw.config.get( 'wgUserGroups', [] ).indexOf( 'sysop' ) !== -1 ) {jQuery( SetAdminToolbox ) }
// --------------------------
// Customisation du Wikicode
// Customisation du Wikicode
var customizeToolbar = function () {
var customizeToolbar = function () {

Version du 29 août 2023 à 07:34

/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */
// Customisation du Wikicode
var customizeToolbar = function () {
/* début code boutons */
$('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'format',
	tools: {
		"strikethrough": {
			label: 'Barrer',
			type: 'button',
			icon: wgScriptPath+ '/skins/DarkVector/images/cjnext_toolbar/stroke_icon.png',
			action: {
				type: 'encapsulate',
				options: {
					pre: "<s>",
					post: "</s>"
				}
			}
		}
	}
});

/* fin code boutons */
};

/* Check if view is in edit mode and that the required modules are available. Then, customize the toolbar … */
if ( [ 'edit', 'submit' ].indexOf( mw.config.get( 'wgAction' ) ) !== -1 ) {
	mw.loader.using( 'user.options' ).then( function () {
		// This can be the string "0" if the user disabled the preference ([[phab:T54542#555387]])
		if ( mw.user.options.get( 'usebetatoolbar' ) == 1 ) {
			$.when(
				mw.loader.using( 'ext.wikiEditor' ), $.ready
			).then( customizeToolbar );
		}
	} );
}