_ _    _ _____  ___   __                       
 __      _(_) | _(_)___ / ( _ ) / /_   ___ ___  _ __ ___  
 \ \ /\ / / | |/ / | |_ \ / _ \| '_ \ / __/ _ \| '_ ` _ \ 
  \ V  V /| |   <| |___) | (_) | (_) | (_| (_) | | | | | |
   \_/\_/ |_|_|\_\_|____/ \___/ \___(_)___\___/|_| |_| |_|

MediaWiki:Gadget-ArticlesRecents.js

Dans cet article, nous allons plonger dans le monde fascinant de MediaWiki:Gadget-ArticlesRecents.js. Nous plongerons dans ses origines, explorerons ses multiples facettes et analyserons son impact sur la société actuelle. Depuis ses premières apparitions jusqu'à sa pertinence aujourd'hui, MediaWiki:Gadget-ArticlesRecents.js a fait l'objet d'intérêt et de débats dans divers domaines. Nous découvrirons son évolution au fil du temps, les différentes perspectives qui existent autour d'elle et les implications possibles qu'elle a sur notre vie quotidienne. Rejoignez-nous dans ce voyage à travers MediaWiki:Gadget-ArticlesRecents.js et découvrez tout ce que ce thème a à nous offrir.
/*<noinclude>{{Catégorisation JS|ArticlesRecents}}


* Documentation : voir ]

	
* Licence : Domaine public
	
</noinclude>

== Code JavaScript ==

{{Boîte déroulante/début|titre=Articles récents}}<!--
*/
// --><source lang=javascript>
//<pre><nowiki>

var ArticlesRecents_TailleListe = 10;

var ArticlesRecents_ModeleDefautDebut = '{{Articles récents\n'
                  + '|pageportail=$1\n'
                  + '|catégorie=$2\n'
                  + '|nbMax=$3\n'
                  + '|defilant=oui\n'
                  + '|hauteur=250\n'
                  + '|listeRecents=\n'
                  + '$4\n'
                  + '}}\n'

var ArticlesRecents_DebutListeRecents = '<!-- Ce tableau est créé automatiquement par un robot. Articles Récents DEBUT -->\n';

var ArticlesRecents_FinListeRecents = '<!-- Ce tableau est créé automatiquement par un robot. Articles Récents FIN -->\n'

var ArticlesRecents_ResumeModif = 'Mise à jour du modèle ]';


if( (mw.config.get('wgAction')!="edit")&&(mw.config.get('wgAction')!="submit") ){
     $(ArticlesRecents_init);
}

// recherche des modèles {{Articles récents}} de la page et ajout des liens de mise à jour

var ArticlesRecents_TemplateCount = 0;
function ArticlesRecents_init(){
     var Cadres = document.getElementsByTagName('div');
     for(s=0;s<Cadres.length;s++){
            if( $(Cadres).hasClass('categoryRecentChanges') ){
                  ArticlesRecents_TemplateCount++
                  Cadres.id = 'categoryRecentChanges_'+ArticlesRecents_TemplateCount;
                  var ParamCategorie = Cadres.firstChild.innerHTML;
                  var ParamPage = Cadres.firstChild.title;
                  var NewButton = '<a href="javascript:ArticlesRecents_Update(\'categoryRecentChanges_'
                  +ArticlesRecents_TemplateCount+ '\',\''+ParamPage.replace(/'/g,"\\'")+'\');" title="Cliquer pour  mettre à jour l\'analyse de la catégorie ' + ParamCategorie + ' sur la page '+ParamPage+'" ><img height="50" width="50" src="//upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Crystal_Clear_action_exit.svg/50px-Crystal_Clear_action_exit.svg.png" alt="Démarrer la mise à jour"/></a>' ;
                  Cadres.innerHTML = NewButton + Cadres.innerHTML;
            }
     }
}

function ArticlesRecents_Update(id, Page){
     if(!id) return;
     if(!Page) Page = mw.config.get('wgPageName');
     var Cadre = document.getElementById(id);
     if(!Cadre){
          alert('Il y a un problème avec le modèle {{Articles récents}}');
          window.location.reload();
     }
     var Bouton = Cadre.getElementsByTagName('span');
     var ParamCategorie = Bouton.innerHTML;
     var ParamPage = Bouton.title;
     var TailleListe = Bouton.className;
     if((!TailleListe)||(TailleListe=='')) TailleListe = ArticlesRecents_TailleListe;
// /*
               var Suretcertain = confirm('Paramètres :'
                                        + '\n* Page à mettre à jour : -( ' + ParamPage + ' )- '
                                        + '\n* Catégorie : -( ' + ParamCategorie + ' )- '
                                        + '\n* Maximum : -( ' + TailleListe + ' )- '
                                        + '\n\n Lancer la mise à jour ?' );
               if(!Suretcertain) window.location.reload();
// */
     var NewCategory = ;
     
     var api = new mw.Api();
     api.get({
          action  : 'query',
          list    : 'categorymembers',
          cmdir   : 'descending',
          cmsort  : 'timestamp',
          cmlimit : TailleListe,
          cmtitle : ParamCategorie
     }).then( function ( data ) {
          var categorymembers = data.query.categorymembers;
          if ( categorymembers ) {
               for(var a=0,l=categorymembers.length;a<l;a++){
                    var TitrePage = categorymembers.title;
                    var NS = parseInt(categorymembers.ns);
                    if(NS === 0) NewCategory.push(TitrePage);
               }
               ArticlesRecents_Edit(id, ParamPage, ParamCategorie, TailleListe, NewCategory);
          }
     } );
}

function ArticlesRecents_Edit(id, ParamPage, ParamCategorie, TailleListe, NewRecents){
     var URL = mw.config.get('wgServer') + mw.config.get('wgScript') + "?title=" + encodeURIComponent(ParamPage) + '&action=edit';
     $.ajax({url : URL, complete : function(Req){
               while(document.body.firstChild){document.body.removeChild(document.body.firstChild);}
               ajaxResponse = Req.responseText;
               document.body.innerHTML = ajaxResponse;
               var ContenuPage = document.getElementById("wpTextbox1").value;
               var AncienResumeModif = document.editform.wpSummary.value;

               var NouvelleListeRecents = ArticlesRecents_DebutListeRecents;
               for(var r=0;r<NewRecents.length;r++){
                    NouvelleListeRecents += '#  + ']]\n';
               }
               NouvelleListeRecents += ArticlesRecents_FinListeRecents;
               if(
                  (ContenuPage.indexOf(ArticlesRecents_DebutListeRecents)!=-1) &&
                  (ContenuPage.indexOf(ArticlesRecents_FinListeRecents)!=-1) ){
                    var debutTexte = ContenuPage.substring(0, ContenuPage.indexOf(ArticlesRecents_DebutListeRecents));
                    AncienModele = ContenuPage.substring(0, ContenuPage.indexOf(ArticlesRecents_FinListeRecents)) + ArticlesRecents_FinListeRecents;
                    AncienModele = AncienModele.replace(debutTexte, "");
                    finTexte = ContenuPage.split(debutTexte).join('').split(AncienModele).join('');
                    var TexteFinal = debutTexte + NouvelleListeRecents + finTexte;
/*
                    alert('Début Texte : \n\n' + debutTexte);
                    alert('NouvelleListeRecents : \n\n' + NouvelleListeRecents);
                    alert('Fin Texte : \n\n' + finTexte);
*/
               }else{
                    var TexteFinal = ArticlesRecents_ModeleDefautDebut;
                    TexteFinal = TexteFinal.split('$1').join(ParamPage);
                    TexteFinal = TexteFinal.split('$2').join(ParamCategorie);
                    TexteFinal = TexteFinal.split('$3').join(TailleListe);
                    TexteFinal = TexteFinal.split('$4').join(NouvelleListeRecents);
               }
               document.getElementById ("wpTextbox1").value = TexteFinal;
               document.editform.wpSummary.value = AncienResumeModif + ArticlesRecents_ResumeModif ;
               var SurEtCertain = confirm('Publier la modification ?');
               if(SurEtCertain) document.editform.submit();;
          }
     });
}

//</nowiki></pre></source>{{Boîte déroulante/fin}}