/* {{Projet:JavaScript/Script|AffMasLiens}} */
/**
* Permet de masquer les liens d'un article pour en améliorer la lisibilité.
*
* Pour ce faire, ce script place un switch en haut de page,
* permettant de masquer ou de réafficher les liens à chaque clic dessus.
**/
/* globals mw, OO, $ */
if ( mw.config.get( 'wgNamespaceNumber' ) === 0 && mw.config.get( 'wgAction' ) === 'view' ) {
mw.loader.using( , function () {
$( function ( $ ) {
'use strict';
// '1' : CSS activé, liens masqués
// '0' ou null : CSS désactivé, liens affichés
var enabledAtStart = ( mw.storage.get( 'AffMasLiens' ) === '1' );
var sheet = mw.util.addCSS( '#mw-content-text .mw-parser-output a { color: inherit }' );
if ( !enabledAtStart ) {
sheet.disabled = true;
}
var toggleSwitch = new OO.ui.ToggleSwitchWidget( { value: enabledAtStart } ),
label = new OO.ui.LabelWidget( { label: 'Masquer les liens' } ),
layout = new OO.ui.HorizontalLayout( { 'items': } );
toggleSwitch.on( 'change', function () {
if ( toggleSwitch.getValue() ) {
sheet.disabled = false;
mw.storage.set( 'AffMasLiens', '1' );
} else {
sheet.disabled = true;
mw.storage.set( 'AffMasLiens', '0' );
}
} );
layout.$element.css( 'margin-left', '8px' );
if ( mw.config.get( 'skin' ) === 'vector-2022' ) {
$( '#firstHeading' ).after( layout.$element.css( 'flex-shrink', 0 ) );
} else {
$( '#firstHeading' ).before( layout.$element.css( 'float', 'right' ) );
}
} );
} );
}