Discussion MediaWiki:Gadget-RevertDiff.js

Dernier commentaire : il y a 7 ans par Od1n dans le sujet Erreur pour une page de diff de création

Mode d'emploi modifier

Est-ce qu'une âme charitable voudrait bien expliciter les différentes fonctionnalités de ce script ? Que fait Vandalisme part rapport à Annuler ?

Merci. Rémih ·)) 16 novembre 2006 à 21:53 (CET)Répondre

Ça laisse un message de commentaire prédéfini différent (que tu peux personnaliser en cliquant sur "message".  Bix? (ℹ) 22 novembre 2006 à 13:51 (CET)Répondre

Décalage modifier

Quand j'essaye de réverter une modif, je dois sélectionner la modif antérieure pour que ça marche, et du coup le message ne tient pas la route :/. Un exemple sera plus parlant : l'historique de Autoroute française A9 Sakh=> 24 novembre 2006 à 23:31 (CET)Répondre

Correction : utilisation du bouton annuler dans la boite de message modifier

Quelqu'un qui s'y connait en javascript saurait comment annuler "l'annulation" d'un édit lorsqu'on clique sur "Annuler" plutôt que "OK" lorsque on choisit de mettre un message avec le révert ? Chico (blabla) 17 décembre 2006 à 16:58 (CET)Répondre

C'est une modif relativement simple a faire (mais il faut que ce soit fait par un administrateur ...) la fonction getMessage devrait ressembler a ca :

function getMessage (where, user1, user2) {
        var message = prompt ('Quel message faut-il laisser ?', '');
        if (message) {
        window.location = 'http://fr.wikipedia.org/w/index.php?title=' + _GET['title'] + '&action=edit&oldid=' + _GET['oldid'] + '&'+where+'=2&user1='+user1+'&user2='+user2+'&message='+message;
        }
}

--JoKerozen 2 janvier 2007 à 22:16 (CET)Répondre

ça a été corrigé :) -- Chico (blabla) 4 janvier 2007 à 09:26 (CET)Répondre

Erreur pour une page de diff de création modifier

J'ai remarqué une erreur plutot banale sur les page de diff de création : Exemple : la console javascript me dit que user1[0] n'a pas de methode. Le script pourait tester si c'est le diff de la première contrib grace a :

if (getElementsByClass('firstrevisionheader',null,'div')[0]) {
  return
} else {
/* tout ce que y'a a faire ... */
}

Le souci étant qu'un autre script qui utilise addOnloadHook() ne marche pas sur ces pages la. merci de corriger :D --JoKerozen 2 janvier 2007 à 20:13 (CET)Répondre

Pour référence, même bug signalé et corrigé un an plus tard, voir section « Diff de création de page » un peu plus bas. od†n ↗blah 12 février 2017 à 15:48 (CET)Répondre

Gestion du oldid modifier

Après avoir rencontré plusieurs fois un problème avec ce script (principalement des révocations non complètes de plusieurs modif successives), je pense en avoir localiser l'origine.

Exemple : je veux annuler avec RevertDiff cette modif (ancienne version : num=25358257 ; nouvelle version : num=25505792).

On a bien oldid=25358257 et diff=25505792. Si je clique sur le "Annuler" fourni par le script, la modif sera bien annulée.

Et ici, on a oldid=25505792 (c'est-à-dire la nouvelle version au lieu de l'ancienne). Si je clique sur le "Annuler", ça n'annule rien. Et dans les cas où on veut annuler plusieurs contributions d'un coup en affichant le diff de la première contrib, ça les annulera toutes sauf la première.

Dans le premier cas (où la révocation se passe bien), le lien du "Annuler" est :

  • http://fr.wikipedia.org/w/index.php?title=Utilisateur:Chphe/Bac_%C3%A0_sable&action=edit&oldid=25358257&revert=1&user1=Chphe&user2=Chphe

et dans le deuxième (où ça merdoit), c'est :

  • http://fr.wikipedia.org/w/index.php?title=Utilisateur:Chphe/Bac_%C3%A0_sable&action=edit&oldid=25505792&revert=1&user1=Chphe&user2=Chphe

Ce qui est cohérent avec le résultat constaté.


Il semblerait que dans une adresse de page de diff le champ oldid ne corresponde à la version vraiment old que quand dans les cas :

  • ...&diff=25505792&oldid=25358257
  • ...&diff=next&oldid=25358257

Par contre, dans le cas ...&diff=prev&oldid=25505792, oldid correspond en fait à la nouvelle version. Et c'est dans ce cas-là qu'il faudrait corriger le script (mais je ne vois pas trop comment faire). --Christophe (d) 29 janvier 2008 à 18:33 (CET)Répondre

Finalement j'ai trouvé un moyen de corriger ce problème (cf. Utilisateur:Chphe/Gadget-RevertDiff.js). Au lieu de récupérer le oldid dans l'adresse de la page de diff, je récupère directement l'adresse de la page d'edit (celle qui rétablira une ancienne version) au niveau du <td colspan='2' class='diff-otitle'> (celui qui est utilisé pour obtenir le nom user1). Les tests que j'ai effectués sont pour l'instant concluants. --Christophe (d) 30 janvier 2008 à 19:11 (CET)Répondre
Tes modifs me semblent correctes, j'ai modifié le script. J'espère qu'on a rien pété  . --Zelda 1 février 2008 à 22:00 (CET)Répondre
On verra bien si ça râle  . Tiens, il semblerait que sur en: quelqu'un a rencontré le même problème. --Christophe (d) 2 février 2008 à 12:11 (CET)Répondre

Diff de création de page modifier

Un bug (qui, j'ai vérifié, ne vient pas de ma modif, ouf !) survient lorsque dans la liste des contrib de quelqu'un on clique sur un diff correspondant à la création d'un page (par exemple : [1]). Cette page de diff particulière ne contient pas de div de classe diff-otitle (à la place on a un firstrevisionheader), ce qui pose problème car le tableau var user1 = getElementsByClass('diff-otitle',null,'td'); est alors vide. D'où erreur javascript qui me fout en l'air mes autres scripts. Ma solution consiste à ne plus afficher dans ce cas les liens annuler, vandalisme, etc (ajout d'une condition if(user1.length != 0)). Détails ici : Utilisateur:Chphe/Gadget-RevertDiff.js. Il doit y avoir moyen, si c'est utile, de réafficher les raccourcis pour permettre par exemple le blanchiment de la page. --Christophe (d) 6 février 2008 à 14:54 (CET)Répondre

  ok, modif effectuée --Zelda 7 février 2008 à 23:10 (CET)Répondre

Révocation ou Annulation ? modifier

"Révocation de vandalisme", d'accord, mais "Révocation des modifications", je trouve que c'est un peu agressif. Pourquoi ne pas garder le "Annulation des modifications" qui est plus neutre ? The RedBurn (ϕ) 19 mars 2008 à 20:16 (CET)Répondre

Bienvenue spammeur modifier

J'ai ajouté cet avertissement — Steƒ (  Стеф  ) 14 juin 2008 à 14:10 (CEST)Répondre


Erreur avec RevertDiff sous Vector modifier

Depuis que j'utilise l'apparence Vector j'ai une erreur lors de l'utilisation du bouton « annuler » du gadget RevertDiff. Le message d'erreur est le suivant : « Votre modification n’a pas été acceptée car votre navigateur web a mélangé les caractères de ponctuation dans l’identifiant de modification. La modification a été rejetée afin d’empêcher la corruption du texte de la page. Ce problème se produit lorsque vous utilisez un serveur mandataire anonyme problématique. » Le retour à l'apparence Monobook permet d'utiliser ce bouton normalement. L'un d'entre vous a t il une idée sur l'origine de ce problème ? — Mirgolth 27 août 2009 à 15:46 (CEST)Répondre

Ça marche chez moi. Je suis sous vector (sans passer par Açai). Elfix discuter. 27 août 2009 à 18:27 (CEST)Répondre
J'ai creusé mon pb ce matin et j'ai remarqué que tu utilisais une version perso de RevertDiff dans vector.js et non le gadget du même nom dispo dans les préférences. Avec ta version de RevertDiff pas de pb sous Vector. — Mirgolth 28 août 2009 à 07:54 (CEST)Répondre
Ce qui est très étrange c'est que si copie la version du script dans une de mes sous-pages que je charge dans Vector.js le problème ne ce présente pas. J'ai comme l'impression que c'est la méthode d'inclusion du Gadget qui pose problème... — Mirgolth 28 août 2009 à 15:25 (CEST)Répondre

Ajout de bienvenue modifier

Pourrait-on avoir svp {{Subst:Bienvenue}} ? JackPotte ($) 27 juin 2010 à 14:22 (CEST)Répondre

Marquer comme patrouillé modifier

Nous utilisons ce gadget sur Wikipédia, le Wiktionnaire, la Wikiversité et Wikilivres en plus de l'addon "patrolled edit", or il serait un gain de temps d'en tenir compte dans le gadget, je cite : lorsqu'un diff est marqué comme "Vandalisme" ou qu'on le reverte en utilisant le lien "Annuler", penses-tu qu'il soit possible au passage de marquer le diff en question comme patrouillé ?
Personnellement j'ai vu que MW:Help:Patrolled_edits parlait du style span.unpatrolled, mais après avoir tenté d'adapter une partie de s:en:MediaWiki:Gadget-LinkPatroller.js et les fonctions "&markpatrolled&rcid=" je renonce pour aujourd'hui... JackPotte ($) 27 juin 2010 à 14:22 (CEST)Répondre

Commentaire tronqué modifier

Pourquoi pert-on une partie du commentaire ? Trop long ; quelle taille max ? Est-ce une limitation du gadjet ou de la page d'historique ? Exemple de diffX-Javier [discuter] 23 mars 2013 à 21:10 (CET)Répondre

C'est Mediawiki qui limite automatiquement la taille du résumé, à 255 caractères.
⇨ Dr Brains ∞ Consultation ∞ 23 mars 2013 à 22:01 (CET)Répondre

BienvenueIP ne prend pas de paramètre modifier

Bonjour,

Quand on bienvenute un IP, la syntaxe déposée est {{Bienvenue IP|sign=~~~~}}, alors que {{BienvenueIP}} ne prend pas de paramètre. Est-il possible de changer ça, par cohérence ?

Merci par avance, Automatik (discuter) 3 janvier 2014 à 15:20 (CET)Répondre

  ⇨ Dr Brains ∞ Consultation ∞ 3 janvier 2014 à 16:05 (CET)Répondre

Oasis modifier

Bonjour, je suis Emperor Jarjarkine, contributeur de Wikia et je me demandais, si c'était possible d'adapter le code à Oasis ? :/Emperor Jarjarkine (discuter) 1 août 2014 à 21:55 (CEST)Répondre

Paramètres des test 0, test 1, etc. modifier

Bonjour. Est-il possible de faire en sorte que l'utilisateur que l'on avertit sache de quel article il est question. Actuellement, le gadget permet de déposer sur sa page de discussion {{subst:Test 0}}, {{subst:Test 1}}, etc. Il serait intéressant de pouvoir déposer {{subst:Test 0|nom de la page}}, {{subst:Test 1|nom de la page}}, etc. Florn (discuter) 23 août 2014 à 00:07 (CEST)Répondre

+1 Je soutiens cette demande. — Thibaut にゃんぱすー 1 décembre 2014 à 13:06 (CET)Répondre
  Florn88 et Thibaut120094 :
Easy.
Refaire le code ci-dessous en mettant pour l'item template
  • le mot-clef $page là où doit être le nom de la page
  • le mot-clef $user là où doit être le nom de l'utilisateur (celui qui donne l'avertissement).
Exemple : {urlparam:"warn=02", text:"Vandalisme", template:'{{subst:Test 1|$page}} ~~~~'},
RevertDiffParams.Warn = [ 
  {urlparam:"warn=01", text:"Maladresse",   template:'{{subst:Test 0}} ~~~~'},
  {urlparam:"warn=02", text:"Vandalisme",   template:'{{subst:Test 1}} ~~~~'},
  {urlparam:"warn=03", text:"Test2",        template:'{{subst:Test 2}} ~~~~'},
  {urlparam:"warn=04", text:"Test3",        template:'{{subst:Test 3}} ~~~~'},
  {urlparam:"warn=05", text:"Test4",        template:'{{subst:Seul avertissement}} ~~~~'},
  {urlparam:"warn=06", text:"Lien externe", template:'{{subst:Bienvenue spammeur}} ~~~~'},
  {urlparam:"warn=07", text:"Faut sourcer", template:'{{subst:Faut sourcer}} ~~~~'},
  {urlparam:"warn=08", text:"Bienvenue",    template:'{{Bienvenue nouveau|sign=~~~~}}'},
  {urlparam:"warn=09", text:"BienvenueIP",  template:'{{Bienvenue IP}} ~~~~'},
  {urlparam:"warn=10", text:"MerciIP",      template:'{{Bienvenue IP méritante|sign=~~~~}}'}
];
Après c'est simple comme bonjour.
⇨ Dr Brains ∞ Consultation ∞ 1 décembre 2014 à 23:48 (CET)Répondre
  Dr Brains : Merci mais c'est possible de l'ajouter dans le code source du gadget ou l'on doit créer notre propre .js ? Ça pourrait servir à d'autres contributeurs... — Thibaut にゃんぱすー 2 décembre 2014 à 03:22 (CET)Répondre
  Florn88 et Thibaut120094 :
Oui, ce le sera. Mais avant il faudrait voir quels modèles utilisent quels paramètres avec quelle syntaxe. Je n'ai pas le temps de tout vérifier, aussi j'essaie de sous-traiter cette partie du boulot...
⇨ Dr Brains ∞ Consultation ∞ 2 décembre 2014 à 17:44 (CET)Répondre
  Dr Brains : Merci, je pense que ceci doit convenir :
RevertDiffParams.Warn = [ 
  {urlparam:"warn=01", text:"Maladresse",   template:'{{subst:Test 0|$page|user=$user}}'},
  {urlparam:"warn=02", text:"Vandalisme",   template:'{{subst:Test 1|$page|user=$user}}'},
  {urlparam:"warn=03", text:"Test2",        template:'{{subst:Test 2}} ~~~~'},
  {urlparam:"warn=04", text:"Test3",        template:'{{subst:Test 3}} ~~~~'},
  {urlparam:"warn=05", text:"Test4",        template:'{{subst:Seul avertissement}} ~~~~'},
  {urlparam:"warn=06", text:"Lien externe", template:'{{subst:Bienvenue spammeur|$page|user=$user}}'},
  {urlparam:"warn=07", text:"Faut sourcer", template:'{{subst:Faut sourcer|$page|user=$user}}'},
  {urlparam:"warn=08", text:"Bienvenue",    template:'{{Bienvenue nouveau|sign=~~~~}}'},
  {urlparam:"warn=09", text:"BienvenueIP",  template:'{{Bienvenue IP}} ~~~~'},
  {urlparam:"warn=10", text:"MerciIP",      template:'{{Bienvenue IP méritante|sign=~~~~}}'}
];

J'ai fait rapidement le tour des différents modèles. Florn (discuter) 2 décembre 2014 à 18:08 (CET)Répondre

  Dr Brains : Petit problème, j'ai envoyé test1 pour cette modification mais sur la page de discussion de l'utilisateur, c'est ceci qui est affiché :
Votre modification sur l'article « Discussion utilisateur:Patindu69 » a été annulée en raison de son caractère non constructif.
au lieu de
Votre modification sur l'article « John Adams (homme politique) » a été annulée en raison de son caractère non constructif.
Comment obtenir le nom de la page depuis laquelle l'action a été effectuée ? Florn (discuter) 4 décembre 2014 à 17:35 (CET)Répondre

MàJ   Florn88, Thibaut120094 et Dr Brains : le "problème" est toujours présent. Dans le titre de l'avertissement sur la page de l'utilisateur, il y a seulement deux espaces entre Votre modification et a été annulée, il manque visiblement la mention sur un article bidon entre les deux.

Cdlt,     InfraRouge77 (discuter) 23 septembre 2015 à 16:57 (CEST)Répondre

Pour référence, corrigé par Orlodrim. od†n ↗blah 12 février 2017 à 15:42 (CET)Répondre

Signature HS dans la pose du bandeau de spam modifier

Maintenant qu'un bot nous demande de signer, il faudrait vraiment ajouter la signature manquante dans le bandeau de spam. JackPotte ($) 18 novembre 2015 à 08:35 (CET)Répondre

@Thibaut120094 merci pour l'ajout, en vidant son cache ça marche. Maintenant je crois que les trois autres bandeaux qui utilisent "|user=$user" devraient également en bénéficier, à la place de ce paramètre qui ne fonctionne plus. JackPotte ($) 18 novembre 2015 à 09:51 (CET)Répondre
@JackPotte :   C'est fait. Effectivement c'est mieux quand c'est signé. — Thibaut (会話) 18 novembre 2015 à 17:47 (CET)Répondre
Revenir à la page « Gadget-RevertDiff.js ».