Utilisateur:PAC2/articlebox.js
De Wikipedia, l'encyclopédie encyclopedia
/* La documentation de ce script se trouve ici Utilisateur:PAC2/Rock your side box
- /
if (mw.config.get('wgNamespaceNumber') == 0) {
mw.loader.using('mediawiki.util', function () {
var articlebox = function ($) {
$("#p-navigation").append("
Boîte article
") ;
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/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), /* text */ articleinfocontent.revisions.toLocaleString('fr-FR') + ' modifications' , /* id */ 'p-revisions', /* tooltip */ "Nombre total de modifications" );
mw.util.addPortletLink( /* portletID */ 'p-articlebox', /* href */ "https://xtools.wmflabs.org/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), /* text */ articleinfocontent.editors.toLocaleString('fr-FR') + ' contributeurs' , /* id */ 'p-editors', /* tooltip */ "Nombre total de contributeurs" );
mw.util.addPortletLink( /* portletID */ 'p-articlebox', /* href */ "https://xtools.wmflabs.org/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), /* text */ prosecontent.words.toLocaleString('fr-FR') + ' mots' , /* id */ 'p-words', /* tooltip */ "Nombre total de mots" );
function readingtime(x) {
return Math.round(x / 300) ;
}
mw.util.addPortletLink( /* portletID */ 'p-articlebox', /* href */ "https://xtools.wmflabs.org/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), /* text */ readingtime(prosecontent.words).toLocaleString('fr-FR') + ' minutes de lecture' , /* id */ 'p-minutes', /* tooltip */ "Temps de lecture approximatif (300 mots par minute)" );
mw.util.addPortletLink( /* portletId */ 'p-articlebox', /* href */ 'https://pageviews.toolforge.org/?project=fr.wikipedia.org&platform=all-access&agent=user&redirects=0&range=latest-30&pages=' + mw.config.get('wgPageName'), /* text */ articleinfocontent.pageviews.toLocaleString('fr-FR') + ' vues depuis 30 jours', /* id */ 'p-pageviews', /* tooltip */ 'Nombre de pages vues sur les 30 derniers jours') ;
mw.util.addPortletLink( /* portletId */ 'p-articlebox', /* href */ 'https://reasonator.toolforge.org/?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://xtools.wmflabs.org/articleinfo/fr.wikipedia.org/" + mw.config.get( 'wgPageName' ), /* text */ prosecontent.references.toLocaleString('fr-FR') + ' références' , /* id */ 'p-references', /* tooltip */ "Nombre total de références" );
mw.util.addPortletLink( /* portletID */ '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 */ mw.config.get( 'wgTitle' ) + ' sur Google Scholar', /* id */ 'p-scholar', /* tooltip */ 'Recherche du titre sur Google Scholar' );
// Relier l'article 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/w/index.php?title=Sp%C3%A9cial%3APages+li%C3%A9es&target=" + mw.config.get( 'wgPageName' ) + "&namespace=0", /* text */ nbLinks.toLocaleString('fr-FR') + ' articles liées' , /* id */ 'p-nblinks', /* tooltip */ "Nombre de pages liées dans l'espace principal" );
} );
mw.util.addPortletLink( /* portletID */ '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' );
// Illustrer l'article
mw.util.addPortletLink( /* portletID */ 'p-articlebox', /* href */ 'https://commons.wikimedia.org/w/index.php?search=\"' + mw.util.rawurlencode( mw.config.get( 'wgTitle' ) ) + '\"', /* text */ mw.config.get( 'wgTitle' ) + ' sur Commons', /* id */ 'p-commons', /* tooltip */ 'Recherche du titre 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 */ 'Médias représentant ' + mw.config.get( 'wgTitle' ), /* id */ 'p-p180', /* tooltip */ 'Recherche structurée sur Wikimédia Commons (P180)' );
var gendercount = "https://query.wikidata.org/embed.html#SELECT%20%3Fgender%20%3FgenderLabel%20(COUNT(%3Fitem)%20AS%20%3Fcount)%20%0AWHERE%20%7B%0A%20%20SERVICE%20wikibase%3Amwapi%20%7B%0A%20%20%20%20%20bd%3AserviceParam%20wikibase%3Aendpoint%20%22fr.wikipedia.org%22%3B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20wikibase%3Aapi%20%22Generator%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mwapi%3Agenerator%20%22links%22%3B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20mwapi%3Atitles%20%22" + encodeURIComponent(mw.config.get( 'wgPageName' )) + "%22%3B.%20%0A%20%20%20%20%20%3Fitem%20wikibase%3AapiOutputItem%20mwapi%3Aitem.%0A%20%20%7D%20%0A%20%20FILTER%20BOUND%20(%3Fitem)%20%23%20Safeguard%20to%20not%20get%20a%20timeout%20from%20unbound%20items%20when%20using%20%3Fitem%20below%0A%20%20%3Fitem%20wdt%3AP21%20%3Fgender%20.%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0ASERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%20%20%20%20%0A%7D%0AGROUP%20BY%20%3Fgender%20%3FgenderLabel";
mw.util.addPortletLink(
/* portletID */ 'p-articlebox', /* href */ gendercount, /* text */ 'Diversité de genre', /* id */ 'p-genderdiversity' , /* tooltip */ "Décompte des éléments cités dans par genre" );
}; $(articlebox);
}); }