Benutzer Diskussion:PDD/addEditAndRevertLinks.js

aus Wikipedia, der freien Enzyklopädie

Benutzungshinweise:

Komplette monobook.js von Benutzer:PDD/monobook.js übernehmen, dabei wird dieses Modul gleich mit eingebunden.

Eine separate Einbindung dieses Moduls ist natürlich auch möglich, erfordert aber einiges an Bastelei. (Für ein Einbindungsbeispiel, siehe ganz unten.)


Benutzung dieses Skripts

Wenn du dieses Skript benutzen möchtest, kannst du das auf 2 Arten tun:

  1. Kopie im eigenen Benutzerraum erstellen
  2. Direkte Einbindung der Vorlage von hier

Variante 2 hat den Vorteil, dass du von eventuellen Verbesserungen/Anpassungen immer sofort profitierst.

Bitte aber in diesem Fall das Skript so einbinden wie in Benutzer:PDD/monobook.js, also mit dem Kommentar in der Importzeile. Falls ich am Skript etwas so ändere, dass Du deine monobook.js anpassen müsstest, kann ich dadurch (über "Links auf diese Seite") sehen, wer alles die Vorlage verwendet, und dir auf deiner Diskussionsseite eine Mitteilung hinterlassen.

Funktion

Wprevert.PNG

Das addEditAndRevertLinks-Skript fügt u.a. den linken Button (rv) zur Diff-Oberfläche hinzu sowie analoge (rv)-Buttons und zusätzliche (edit)-Buttons zur Versionsgeschichte.

Godmode-light fixen?

Diskussion verschoben von Benutzer Diskussion:PDD/Spiel & Spaß (Test)

Mit meinem jetzigen (Script von HD) kommt ein anderer Fehler undswar:

Please wait, reverting edits by undefined...
Getting article history...

Können wir das noch fixen? Naja, ich habe ja zwei Alternativen :-p -- Ολλίμίνατορέ •Ω• 00:37, 27. Apr 2006 (CEST)

Das Skript von HD ist ja noch die uralte Variante, wo die ganzen Fixes für die neue Mediawiki-Oberfläche noch nicht drin sind... PDD 08:34, 27. Apr 2006 (CEST)
Ja stimmt, (es scheint aber der selbe Fehler zu sein, es wird nach dem XML parsen keine id="pagehistory" gefunden) ich glaube das ganze Script an sich ist veraltet (wenn es doch auch ohne XML und MD5 hash calculator) geht!? Mir persönlich würde die Variante von Littl mit hinzufügen der Angabe des letzten Benutzers dieses vollkommen ersetzen/ entbehren. Würdest Du das umsetzen? -- Ολλίμίνατορέ •Ω• 12:29, 27. Apr 2006 (CEST)
Na ja, beim Littl-Skript kannst du aber händisch auf jede beliebige Version revertieren, und daher darf das Skript keinen Kommentar "Revert auf letzte Version von..." abgeben, weil das ja vom User abhängt, ob es die letzte oder die vorvorletzte ist. Wie wäre es mit "Revert auf Version von Benutzer:XXX (Datum + Zeit): Grund"? Das wäre dann eindeutiger. PDD 12:38, 27. Apr 2006 (CEST)
Achso ja, wegen der Authentizität :-p @Littl-Skript: Genau, dürfte doch eine Leichtigkeit für dich sein ;) (die Daten sind ja alle in den links schon da). -- Ολλίμίνατορέ •Ω• 13:14, 27. Apr 2006 (CEST)
Ich versuch mal, was zu basteln... PDD 13:28, 27. Apr 2006 (CEST)
Ihr wisst aber, dass Godmode-Light (wenn es denn funktioniert) ebenso wie die originale Admin-Funktion ggf. auch mehrere Edits revertiert. Nämlich alle, die von einem Benutzer/IP kommen. Das erspart längeres Suchen in der Versionsgeschichte, wenn ein Vandale mehrfach hintereinander zugeschlagen hat, selbst wenn man dies als Anwender gar nicht bemerkt hat. Littl's Skript erlaubt zwar das flexible Revertieren auf eine bestimmte Version. Dazu muss man die aber erst händisch identifizieren. --Schwalbe D | C | V 14:04, 27. Apr 2006 (CEST)

@Schwalbe: Also ich weiß das natürlich, deswegen bin ich ja auch nicht der Ansicht, dass (meine Variante von) Littls Skript den godmode-light überflüssig macht. Solange wir godmode-light aber nicht gefixt haben (siehe Benutzer Diskussion:PDD/godmode-light.js, ist Littl für die Problemfälle eine funktionierende Alternative.

@Olliminatore: habe Benutzer:PDD/addEditAndRevertLinks.js jetzt wie oben beschrieben umgestrickt. Die monobook.js muss dafür angepasst werden: erstmal oben eine neue Variable rein:

 var revlinkshowuser = false;     // beim Revertieren über (Rev)-Link letzten Benutzer angeben?

(wobei du dann natürlich true nehmen müsstest) und dann unten (beim Aufruf in der Init) den Parameter übergeben:

 AddEditAndRevertLinks(revlinkshowuser);

Schau mal bitte, ob alles funktioniert... ich hab ziemlich heftig herumgeändert :-) PDD 15:23, 27. Apr 2006 (CEST)

@Schwalbe das hatte ich wieder vergessen :-p @PDD Es geht irgendwie nicht, es kommt auch nix im wpSummary an. In der URL steht aber alles. Ich bekomme auch keinerlei Fehlermeldung. Also muss es irgendwie an der aktion Funktion liegen, oder an meiner monobook. ps. geht bei dir eigentlich das autospechern mit dem click()-event? -- Ολλίμίνατορέ •Ω• 22:02, 27. Apr 2006 (CEST)
Hmm, komisch... bei mir gehts super mit der neuen Version.
Worum gehts bei diesem Autospeichern? Das hab ich mir noch gar nicht angeschaut. PDD 00:50, 28. Apr 2006 (CEST) Kannst du mir noch mal genau sagen, was bei dir nicht funktioniert? Also: kommen die (rev) und (edit) Links überhaupt? Was steht in den Links drin? Und was passiert, wenn man draufclickt? PDD 01:30, 28. Apr 2006 (CEST)
Jetzt geht wieder alles, manman (autoSave auch :)). War ein Leerzeichen in meinem Script. Ich habe gestern auch mal in der englischen Wiki das original Godmode-script getestet, und es ging auch nicht (Fehler: User wurde nicht erkannt)! Aber den Fehler hattest du glaub korrigiert. Dann werde ich mal deins im en: testen ;) -- Ολλίμίνατορέ •Ω• 14:51, 28. Apr 2006 (CEST)
Ich hab auf der en:WP auch schon einiges an Bugfixes gesammelt zur godmode-light.js, ich brauche bloß mal einen freien Nachmittag, um das alles durchzutesten und zu schauen, ob irgendetwas davon unsere Probleme löst :-) PDD 14:59, 28. Apr 2006 (CEST)

Ich habs geschafft en:User:Olliminatore/godmode-light.js!!! Bitte kontollieren und übernehm en :-). -- Ολλίμίνατορέ •Ω•

Siehe auch

Benutzer Diskussion:PDD/godmode-light.js

Potentieller Bug bei Datum/Zeitangabe beim Reverten

Was passiert eigentlich, wenn man in den Einstellungen ein anderes Datumsformat als "Standard" ausgewählt hat? PDD 09:30, 1. Mai 2006 (CEST)

Stimmt, was kann man da machen? Ich würde (erstmal) die ID als Ersatz nehmen. Übrigens BluhFiSH hat es nicht gefallen dass in manchen Modulen Variablen vorkommen (die es bei ihm gibt aber ...) die abhängig von anderen sind (also woanders deklariert werden). -- Ολλίμίνατορέ •Ω• 10:51, 1. Mai 2006 (CEST)
Das ist ja auch nicht gut; die Module sollten völlig unabhängig voneinander sein. Um welche Variablen ging es? PDD 11:05, 1. Mai 2006 (CEST)
Ich denke wir müssen uns nur auf einen gemeinsamen Nenner der Variablen-Namen bringen. Es war UrlParameters ganz normale standard var :-P (also ich würd sagen lass ersma) Man kann es ja im Einleitungs-Kommentar erwähnen. -- Ολλίμίνατορέ •Ω• 11:09, 1. Mai 2006 (CEST)

Nachdem ich das erste Problem live gesehen habe, hab ich nen versuchsweisen Fix eingebaut. PDD 01:40, 12. Aug 2006 (CEST)

(f) Name

Ist es nicht besser wenn der FunktionsName der Selbe wie der ModulName wäre? Ich mein ja nur; (den Anfangsbuchstaben ) es wäre ein bisschen weniger verwirrend. :-p Gruß -- Ολλίμίνατορέ 20:24, 31. Mai 2006 (CEST)

Hmm, eigentlich schon. Am Anfang war die Idee ja, möglichst wenig an den "übernommenen" Funktionen zu ändern bzw. jede Änderung genau zu dokumentieren, und die Littl-Funktion z.B. hieß eben "Add..." und nicht "add...".
Und die kleingeschriebenen Modulnamen sind zustandegekommen, weil ich mir eingebildet habe, dass nur .js-Module mit kleinem Anfangsbuchstaben von der MediaWiki-Software gesperrt werden (und es wäre ja ein großes Sicherheitsloch, hier JavaScript-Snippets zu haben, die jeder - auch böswillig - verändern kann). Mir fällt aber gerade auf, dass ich das nie getestet habe, ob Module mit großem Anfangsbuchstaben wirklich ungesperrt sind... PDD 20:32, 31. Mai 2006 (CEST)
Aso, kannst Du denn mein Script ändern Benutzer:Olliminatore/Signatur.js!? Ich denk mal das liegt an der Endung. BLuFiSH hat deshalb sogar bei manchen seinen Scripten die Endung weggelassen. Nunja, den Namen hast du ja (glaube ich sowieso) komplett geändert, welchen Namen du jetzt nimmst ist mir egal :-p, hauptsache eine Angleichung. -- Ολλίμίνατορέ 21:09, 31. Mai 2006 (CEST)
Nö, kann ich nicht ändern. Okay, ich gleiche die Namen demnächst an... ich tendiere zu alles mit kleinen Anfangsbuchstaben. Was meinst du? PDD 21:19, 31. Mai 2006 (CEST)
Bzw., hab nochmal nachgedacht: jetzt ändern ist blöd, weil ja schon verschiedene Leute das Zeug eingebunden haben, und egal was ich mache, es wird bei den anderen nicht mehr funktionieren. Vielleicht doch lieber als kleinen Schönheitsfehler abhaken? PDD 21:35, 31. Mai 2006 (CEST)
Nee, jetzt ist der Zeitpunkt gut, da müssen wir durch. IMHO hat niemand diese neue Version bei sich eingebunden (die alte kannst du ja so lasen :-p). Ja, machen wir alle Funktions-Anfangsbuchstaben klein. -- Ολλίμίνατορέ 21:55, 31. Mai 2006 (CEST)
Done. PDD 22:09, 31. Mai 2006 (CEST)

keine (Rev)-Links bei Diffs

Bin ich eigentlich der einzige bei dem seit etwa zwei Wochen keine (revert)-Links mehr bei Difflinks angezeigt werden? In der Versionsgeschichte werden sie aber angezeigt. Es werden auch keine Java-Script Fehler gemeldet (FF 2.0). --Spongo 21:47, 1. Jan. 2007 (CET)

Bei mir sind sie noch da, also ist es kein generelles Problem. Ob du der einzige bist, weiß ich allerdings nicht, und eine gute Idee hab ich momentan auch nicht. Besteht das Problem auch, wenn du die aktuelle Version 1:1 übernimmst? PDD 23:34, 2. Jan. 2007 (CET)

OK, hab das Problem gefunden: Das ist die Lösung :-) Schade denn das Modul von Ολλίμίνατορέ ist zwar langsam, aber es funktioniert. Ich werde auch ohne klarkommen, aber vielleicht sollte man es als Warnung daneben schreiben. Gruß --Spongo 12:33, 3. Jan. 2007 (CET)

Es liegt also an Olliminatores fixdiffwidth? Das wird er sicher wieder hinbiegen, wenn er hier nächstes Mal auftaucht. Sagst du ihm Bescheid? PDD 17:35, 3. Jan. 2007 (CET)

Bugs

  1. Bei handgebastelten Weirdo-Diffs wie diesem hier gibt es 3 (rev)-Buttons statt einem (plus JS-Fehlermeldungen). Ist zwar unwichtig, aber könnte man nebenbei mal fixen. PDD 23:13, 26. Aug 2006 (CEST) seh nix PDD 23:05, 2. Nov. 2006 (CET)
  2. Alternativ auch bei ganz normalen Diffs auf weirden Seiten: [1] PDD 13:42, 16. Okt. 2006 (CEST)

Einbindungsbeispiel

// Funktion: importPage
function importPage(seite, lang) { // all languages support
   name='User:'; // international name, works in all wikipedias
   if(!lang) lang = wgContentLanguage;
   // new version
   seite = 'http://' + lang + '.wikipedia.org/w/index.php?title=' + name + seite +
          '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s';
   var head = document.getElementsByTagName('head').item(0);
   var js = document.createElement('script');
   js.setAttribute('type', 'text/javascript');
   js.setAttribute('src', seite);
   js.setAttribute('charset', 'utf-8');
   head.appendChild(js);
   return false;
}
// get URL parameters (used for page type variables)
var UrlParameters = new Array ();
readparams();

function readparams() {
 var asReadInUrlParameters;
 var asReadInUrlParameter;

 // Get URL parameters
 asReadInUrlParameters = location.search.substring(1, location.search.length).split("&");
 for (i = 0; i < asReadInUrlParameters.length; i++) {
   asReadInUrlParameter = asReadInUrlParameters[i].split("=");
   UrlParameters[decodeURIComponent(asReadInUrlParameter[0])] = decodeURIComponent(asReadInUrlParameter[1]);
 }
}
// namespaces
var isSpecial  = (wgCanonicalNamespace == "Special");
var isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions"));
var isEdit    = (document.URL.indexOf('action=edit') > 0) || (document.URL.indexOf ('action=submit') > 0);
var isHistory = (document.URL.indexOf('action=history') > 0);

var drawquickbar = false;
var version  = 'P098b';
var debugme = false;            // Debug-Modus?

// Modul: addEditAndRevertLinks.js
var editlinkoldversion = true;  // Bearbeiten-Link für ältere Versionen anzeigen?
var editlinktxt = "edit";       // Text des Edit-Links
var revertwithreason = true;    // Revert-Link mit Grund-Eingabe anzeigen?
var revlinktxt = "rev";         // Text des Revert-Links
var revlinkshowuser = true;     // beim Revertieren über (Rev)-Link letzten Benutzer angeben?
var rvisminor = true;           // sind Reverts mit "(rev)"-Link Minor-Changes?
var aearldefault = "Grund: Unfug bzw. Vandalismus";      // Defaultgrund beim Revertieren
var aerhistory = true;                       // Links auch in der Versionsgeschichte?
var aearlhere = true;                        // Revertaktion im selben Browserfenster?

importPage('PDD/alertOnChanges.js'); // Benutzer:PDD/alertOnChanges.js
importPage('PDD/helperFunctions.js'); // Benutzer:PDD/helperFunctions.js

// Revert addEditAndRevertLinks
if (!(!aerhistory && isHistory) && !isEdit) {
   if (editlinkoldversion || revertwithreason)
      importPage('PDD/addEditAndRevertLinks.js'); // Benutzer:PDD/addEditAndRevertLinks.js
}

„Anonyme Änderungen bitte … begründen“

Ich schlage vor, in diesem Satz das „Anonyme“ wegzulassen. Begründung: Benutzer_Diskussion:Complex#Quellenpflicht_nur_für IPs?. Gruß, --dealerofsalvation 20:42, 8. Jul. 2007 (CEST)

Danke für den Hinweis; ist geändert. PDD 23:31, 16. Jul. 2007 (CEST)

Shortcuts anzeigen

Wie wäre es wenn man die ganzen Shortcuts, die unter switch (detailgrund) { stehen, über ein zusätzliches Fenster mit z. B. der Eingabe "?" einsehen könnte? Ein kurzer Hinweis dazu müsste noch in die Grund-Abfragebox. Damit erfahren alle, dass es Abk. für die meisten Reverts gibt und können sie nachschlagen. --Spongo B ¿ 23:02, 13. Aug. 2007 (CEST)

Hmm. Gegenargumente:
  1. Die Texte enthalten Wikilinks, die sich in JS-Alerts oder Prompts nicht darstellen lassen, müsste man also rausfiltern.
  2. Die Texte sind auch teilweise recht lang, das sieht in so einem Alert ziemlich sch**** aus.
  3. Die Shortcuts sind als eine Art "hidden feature" angelegt, weil ich das ziemlich wichtig finde, den Benutzer nicht mit Informationen und Features zu erschlagen. Irgendwann kriegt man mit, dass es diese Shortcuts gibt, und wenn man die benutzen möchte, merkt man sich halt die 3 oder 4 davon, die man häufig benutzt - so jedenfalls die Designphilosophie dahinter. Ein direkter Hinweis auf die Shortcuts im JS-Prompt wäre die gegenläufige Strategie: man sagt dem Benutzer "Hier ist schon wieder etwas, das du unbedingt noch ausprobieren musst" - ergo, Featuritis.
  4. Wenn man immer erst eine Hilfeseite studieren muss, ist der Zweck des Features (Zeitersparnis) etwas verfehlt.
  5. Ein kleines Fragezeichen, das auf den entsprechenden FAQ-Abschnitt verlinkt, wäre vielleicht gut, aber Links aus dem JS-Prompt gehen ja nicht.
Soweit die halbausgegorenen Gedanken zum Tage :-) PDD 13:46, 17. Aug. 2007 (CEST)
1. und 2. ließe sich vielleicht schöner lösen, aber bei 3. haste wohl recht. Das Feature ist momentan aber nur im Quelltext dokumentiert, das macht es doch sehr hidden, selbst wenn man davon weiß. --Spongo B ¿ 14:36, 17. Aug. 2007 (CEST)
Die FAQ nicht zu vergessen! :-) Gruß, PDD 14:40, 17. Aug. 2007 (CEST)
D'oh ! --Spongo B ¿ 20:10, 20. Aug. 2007 (CEST)

for

Hallo PDD,

willst du diese Änderung nicht wieder einfügen? Das mit den Fanseiten kannst Du ja weglassen, aber gerade Foren und Blogs werden sehr häufig eingefügt und dies war immer eine sehr passende Revertbegründung welche weniger häufig zu Nachfragen führte als der einfache Hinweis auf WP:WEB. Viele Grüße --Engie 13:39, 6. Jan. 2008 (CET)

Irgendwie war Konsens unter den (zufällig anwesenden) RClern, dass der Kommentar in dieser Form nicht weiterhilft und ein generischer Verweis auf WP:WEB sinnvoller ist. Hmm. PDD 15:51, 8. Jan. 2008 (CET)