Aller au contenu

Utilisateur:PAC2/articlebox.js

Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 2 juillet 2020 à 07:32 et modifiée en dernier par PAC2 (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
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) ;
}

});