« MediaWiki:Common.js » : différence entre les versions
(Tooltips ref v2 — DOMContentLoaded) |
(Ajout lien Coopter une abeille pour groupes abeille*) |
||
| Ligne 70 : | Ligne 70 : | ||
}() ); | }() ); | ||
/* === Lien "Coopter une abeille" pour les abeilles et sysops === */ | |||
mw.loader.using(['mediawiki.util']).then(function () { | |||
var groups = mw.config.get('wgUserGroups') || []; | |||
var isAbeille = groups.some(function (g) { | |||
return g.indexOf('abeille') === 0 || g === 'sysop'; | |||
}); | |||
if (isAbeille) { | |||
mw.util.addPortletLink( | |||
'p-tb', | |||
mw.util.getUrl('Special:UserRights'), | |||
'Coopter une abeille', | |||
't-coopter', | |||
'Attribuer des droits à un utilisateur' | |||
); | |||
} | |||
}); | |||
Version du 27 juin 2026 à 15:51
/* ============================================================
Tooltips pour les exposants <ref> — Ruches wiki v2
============================================================ */
( function () {
'use strict';
function init() {
var refs = document.querySelectorAll( 'sup.reference a' );
if ( !refs.length ) return;
var tip = document.createElement( 'div' );
tip.style.cssText = [
'position:fixed',
'z-index:9999',
'max-width:380px',
'background:#fefefe',
'border:1px solid #a2a9b1',
'border-radius:4px',
'box-shadow:0 2px 8px rgba(0,0,0,.25)',
'padding:10px 14px',
'font-size:.875rem',
'line-height:1.5',
'color:#202122',
'pointer-events:none',
'display:none'
].join( ';' );
document.body.appendChild( tip );
refs.forEach( function ( a ) {
a.addEventListener( 'mouseenter', function ( e ) {
var href = a.getAttribute( 'href' );
if ( !href ) return;
var id = href.replace( /^#/, '' );
var li = document.getElementById( id );
if ( !li ) return;
var clone = li.cloneNode( true );
clone.querySelectorAll( '.mw-cite-backlink' ).forEach( function ( el ) {
el.remove();
} );
tip.textContent = clone.textContent.trim();
tip.style.display = 'block';
move( e );
} );
a.addEventListener( 'mousemove', move );
a.addEventListener( 'mouseleave', function () {
tip.style.display = 'none';
} );
} );
function move( e ) {
var x = e.clientX + 16;
var y = e.clientY + 16;
if ( x + tip.offsetWidth > window.innerWidth - 10 ) {
x = e.clientX - tip.offsetWidth - 16;
}
if ( y + tip.offsetHeight > window.innerHeight - 10 ) {
y = e.clientY - tip.offsetHeight - 16;
}
tip.style.left = x + 'px';
tip.style.top = y + 'px';
}
}
if ( document.readyState === 'loading' ) {
document.addEventListener( 'DOMContentLoaded', init );
} else {
init();
}
}() );
/* === Lien "Coopter une abeille" pour les abeilles et sysops === */
mw.loader.using(['mediawiki.util']).then(function () {
var groups = mw.config.get('wgUserGroups') || [];
var isAbeille = groups.some(function (g) {
return g.indexOf('abeille') === 0 || g === 'sysop';
});
if (isAbeille) {
mw.util.addPortletLink(
'p-tb',
mw.util.getUrl('Special:UserRights'),
'Coopter une abeille',
't-coopter',
'Attribuer des droits à un utilisateur'
);
}
});