Utilisateur:DreZhsh/Apparence.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./* jshint esversion: 6 */
mw.loader.using( [ 'mediawiki.util', 'mediawiki.api', 'oojs-ui-core' ], () => {
// "Mes liens"
// Label - Texte
const spanLabel = document.createElement( 'span' );
spanLabel.classList.add( 'vector-menu-heading-label' );
spanLabel.textContent = 'Mes liens';
// Label
const divLabel = document.createElement( 'div' );
divLabel.classList.add( 'vector-menu-heading' );
divLabel.append( spanLabel );
// Contenu - Liste
const ulContent = document.createElement( 'ul' );
ulContent.classList.add( 'vector-menu-content-list' );
// Contenu
const divContent = document.createElement( 'div' );
divContent.classList.add( 'vector-menu-content' );
divContent.append( ulContent );
// Élément principal
const portlet = document.createElement( 'div' );
portlet.classList.add( 'vector-main-menu-group', 'vector-menu', 'mw-portlet', 'mw-portlet-cs' );
portlet.setAttribute( 'id', 'p-cs' );
portlet.append( divLabel );
portlet.append( divContent );
// Date
const date = new Date(),
jour = date.getDate(),
numéroMois = date.getMonth(),
annee = date.getFullYear(),
mois = [ 'janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre' ],
pageBistroJour = `Wikipédia:Le Bistro/${jour} ${mois[ numéroMois ]} ${annee}`;
/**
* newLink
*
* @param {string} page - L'URL du lien
* @param {string} text - Le texte du lien
*/
function newLink( page, text ) {
mw.util.addPortletLink( 'p-cs', page, text );
}
document.getElementById( 'p-Contribuer' ).after( portlet );
newLink( `/wiki/${pageBistroJour}`, 'Bistro du jour' );
newLink( '/wiki/Utilisateur:DreZhsh/common.js', 'Gadgets' );
newLink( '/wiki/Utilisateur:DreZhsh/Aide_mémoire', 'Aide mémoire' );
newLink( 'https://meta.wikimedia.org/wiki/Special:GlobalWatchlist', 'Liste de suivi' );
newLink( '/wiki/Wikipédia:Bulletin_des_administrateurs', 'Bulletin' );
newLink( '/wiki/Wikipédia:Requête_aux_administrateurs', 'Requêtes' );
// Menu Outils
if ( mw.config.get( 'wgNamespaceNumber' ) !== 0 || mw.config.get( 'wgNamespaceNumber' ) !== -1 ) {
mw.util.addPortletLink(
'p-tb',
`https://fr.wikipedia.org/wiki/Spécial:Index/${mw.config.get( 'wgPageName' )}/`,
'Sous-pages',
'p-spages',
'Sous-pages'
);
}
if ( mw.config.get( 'wgNamespaceNumber' ) === 0 ) {
mw.util.addPortletLink(
'p-tb',
'https://refswikipedia.toolforge.org/index.php',
'Références',
'p-refswikipedia',
'Mise en forme des références'
);
}
// Menu Plus
if ( mw.config.get( 'wgNamespaceNumber' ) !== -1 ) {
if ( mw.config.get( 'wgNamespaceNumber' ) === 2 || mw.config.get( 'wgNamespaceNumber' ) === 3 ) {
mw.util.addPortletLink(
'p-cactions',
`https://fr.wikipedia.org/wiki/Sp%C3%A9cial:Journal_du_filtre_antiabus?wpSearchUser=${mw.config.get( 'wgRelevantUserName' )}`,
'Filtre',
'ca-filtreantiabus',
'Filtre'
);
}
mw.util.addPortletLink(
'p-cactions',
`https://fr.wikipedia.org/wiki/Sp%C3%A9cial:Journal?type=&page=${mw.config.get( 'wgPageName' )}`,
'Journal',
'ca-log',
'Journal'
);
}
// Bas de page
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Sp%C3%A9cial:Journal_du_filtre_antiabus',
'Filtre',
'p-FILTRE'
);
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Patrouille_RC',
'Patrouille',
'p-PRC',
'Accueil de la patrouille'
);
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Patrouille_RC/Tableau',
'Tableau de bord',
'p-TBORD',
'Tableau de bord'
);
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Wikipédia:Patrouille RC/Outils',
'Outils',
'p-TOOLS',
'Outils'
);
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Bulletin_des_patrouilleurs',
'Bulletin',
'p-BULLPAT',
'Bulletin des patrouilleurs'
);
mw.util.addPortletLink(
'footer-places',
'https://fr.wikipedia.org/wiki/Projet:Scripts_et_gadgets',
'Scripts et gadgets',
'p-JS',
'JavaScript'
);
mw.util.addPortletLink(
'footer-places',
'https://intersect-contribs.toolforge.org/',
'Intersect Contribs',
'p-Intersect',
'Contributions'
);
mw.util.addPortletLink(
'footer-places',
'https://interaction-timeline.toolforge.org/',
'Interaction Timeline',
'p-Timeline',
'Contributions'
);
// Message pour page non patrouillée
new mw.Api().get( {
action: 'query',
format: 'json',
list: 'recentchanges',
rcprop: 'parsedcomment|ids|user',
rcshow: '!patrolled',
rctype: 'edit',
rctoponly: 1,
rctitle: mw.config.get( 'wgPageName' )
} ).then(
( query ) => {
const data = query.query.recentchanges[ 0 ];
if ( data !== undefined ) {
const warningPossibleVand = new OO.ui.MessageWidget( {
type: 'error',
label: new OO.ui.HtmlSnippet( `<strong>Page non patrouillée</strong><br><p>La <a href="/wiki/Special:Diff/${data.revid}">dernière modification</a> de cette page effectuée par <a href="/wiki/Spécial:Contributions/${data.user}">${data.user}</a>${data.parsedcomment !== '' ? ` avec le commentaire \u00ab ${data.parsedcomment} \u00bb` : ''} n'a pas été vérifiée.</p>` ),
showClose: true
} );
$( document.querySelector( '.mw-body-header' ) ).after( warningPossibleVand.$element );
}
} );
} );