Utilisateur:PAC2/articlebox.js
Apparence
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) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./*
La documentation de ce script se trouve ici [[Utilisateur:PAC2/Rock your side box]]
*/
mw.loader.using('mediawiki.util', function () {
if (mw.config.get('wgNamespaceNumber') == 0) {
$("#p-navigation").append("<div id='p-articlebox' class='mw-portlet' role='navigation', aria-labelledby='p-articlebox-label'><h3 id='p-articlebox-label'>Boîte article</h3><div class='body'><ul></ul></div></div>") ;
var articlebox = function ($) {
mw.util.addPortletLink(
portletId = 'p-articlebox',
href = 'https://tools.wmflabs.org/reasonator/?q=' + mw.config.get('wgWikibaseItemId') + '&lang=fr',
text = 'Reasonator ' + mw.config.get('wgWikibaseItemId'),
id = 'p-reasonator',
tooltip = 'Wikidata mis en forme' );
mw.util.addPortletLink(
portletId = 'p-articlebox',
href = 'https://tools.wmflabs.org/pageviews/?project=fr.wikipedia.org&platform=all-access&agent=user&range=latest-90&pages=' + mw.config.get('wgPageName'),
text = 'Pageviews',
id = 'p-pageviews',
tooltip = 'Nombre de pages vues') ;
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = 'https://xtools.wmflabs.org/articleinfo/fr.wikipedia.org/' + mw.config.get( 'wgPageName' ),
text = 'Articleinfo',
id = 'p-xtools-article',
tooltip = 'xtools' );
mw.util.addPortletLink(
portledID = 'p-articlebox',
href = 'http://www.google.fr/search?num=20&safe=off&q=site%3Afr.wikipedia.org+\"' + mw.util.rawurlencode( mw.config.get( 'wgTitle' ) ) + '\"&btnG=Search',
text = mw.config.get( 'wgTitle' ) + ' dans Wikipédia',
id = 'p-googlewp',
tooltip = 'Recherche du titre dans Wikipédia via Google' );
mw.util.addPortletLink(
portledID = 'p-articlebox',
href = 'http://www.google.fr/search?&q=\"' + mw.util.rawurlencode( mw.config.get( 'wgTitle' ) ) + '\"',
text = mw.config.get( 'wgTitle' ) + ' sur Google' ,
id = 'p-google',
tooltip = 'Recherche du titre sur Google' );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = 'https://scholar.google.fr/scholar?hl=fr&q=\"' + mw.util.rawurlencode( mw.config.get( 'wgTitle' ) ) + '\"&btnG=&lr=',
text = 'Chercher ' + mw.config.get( 'wgTitle' ) + ' sur Google Scholar',
id = 'p-scholar',
tooltip = 'Recherche sur Google Scholar' );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = 'https://commons.wikimedia.org/w/index.php?search=\"' + mw.util.rawurlencode( mw.config.get( 'wgTitle' ) ) + '\"',
text = 'Chercher ' + mw.config.get( 'wgTitle' ) + ' sur Commons',
id = 'p-commons',
tooltip = 'Recherche sur Wikimedia Commons' );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = 'https://commons.wikimedia.org/w/index.php?title=Special:Search&search=haswbstatement%3AP180%3D' + mw.config.get('wgWikibaseItemId'),
text = 'Dépeint par',
id = 'p-p180',
tooltip = 'Dépeint par sur Commons' );
var prose = new XMLHttpRequest();
prose.open("GET", "https://xtools.wmflabs.org/api/page/prose/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), false);
prose.send();
var prosecontent = JSON.parse(prose.responseText) ;
var articleinfo = new XMLHttpRequest();
articleinfo.open("GET", "https://xtools.wmflabs.org/api/page/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), false);
articleinfo.send();
var articleinfocontent = JSON.parse(articleinfo.responseText) ;
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://xtools.wmflabs.org/api/page/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ),
text = articleinfocontent.revisions.toLocaleString('fr-FR') + ' modifications' ,
id = 'p-revisions',
tooltip = "depuis la création de l'article" );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://xtools.wmflabs.org/api/page/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ),
text = articleinfocontent.editors.toLocaleString('fr-FR') + ' contributeurs' ,
id = 'p-editors' );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://xtools.wmflabs.org/api/page/prose/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ),
text = prosecontent.words.toLocaleString('fr-FR') + ' mots' ,
id = 'p-words' );
function readingtime(x) {
return Math.round(x / 300) ;
}
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://xtools.wmflabs.org/api/page/prose/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ),
text = readingtime(prosecontent.words).toLocaleString('fr-FR') + ' minutes' ,
id = 'p-minutes' );
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://xtools.wmflabs.org/api/page/prose/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ),
text = prosecontent.references.toLocaleString('fr-FR') + ' références' ,
id = 'p-references' );
var whatlinkshere = new mw.Api();
whatlinkshere.get( {
action: 'query',
prop: 'linkshere',
titles: mw.config.get( 'wgPageName' ),
format: 'json',
formatversion: 2,
lhnamespace: 0,
lhlimit: 500,
} ).then( function( data ) {
var nbLinks = data.query.pages[ 0 ].linkshere.length ;
mw.util.addPortletLink(
portletID = 'p-articlebox',
href = "https://fr.wikipedia.org/wiki/Sp%C3%A9cial:Pages_li%C3%A9es/" + mw.config.get( 'wgPageName' ),
text = nbLinks.toLocaleString('fr-FR') + ' pages liées' ,
id = 'p-nblinks' );
} );
}
$(document).ready(articlebox) ;
}
});