Benutzer Diskussion:ParaDox/monobook/MissingTopicsFilter.js

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 16 Jahren von ParaDox in Abschnitt V0.3: MissingTopicsFilter.js
Zur Navigation springen Zur Suche springen


Anti-Blau-Bot (von WP:FZW hierher kopiert bzw. verschoben)[Quelltext bearbeiten]

Gibt es einen Bot, der Zeilen mit blauen Links (aber nicht roten) entfernen kann? Ich könnte das hier gebrauchen. Einmal im Monat würde reichen. --Constructor 16:29, 7. Mär. 2008 (CET)Beantworten

Füge versuchsweise folgendes in deine Benutzer:Conspiration/monobook.js ein:
addOnloadHook(function () {
    ////
    // "RedLinkTable" V1 (später "MissingTopicsFilter.js" V0.1 genannt)
    // Siehe:
    // http://de.wikipedia.org/wiki/Wikipedia:Fragen_zur_Wikipedia#Anti-Blau-Bot
    // http://de.wikipedia.org/w/index.php?title=Wikipedia:Fragen_zur_Wikipedia&oldid=43450426#Anti-Blau-Bot
    // 08.03.2008 13:50 by [[Benutzer:ParaDox]]
    // http://de.wikipedia.org/wiki/Benutzer:ParaDox
    ////
    if ( window.location.href.indexOf('#doRedLinkTable') > 0 ) {
        var redLemmas = '{| class="prettytable"\n|- class="hintergrundfarbe6"\n! Wanted || Title\n';
        var contentA = document.getElementById('content').getElementsByTagName('A');
        for ( var i=0; i<contentA.length; i++ ) {
            if ( contentA[i].className == 'new' ) {
                redLemmas += '|-\n'
                    + '| ' + contentA[i].parentNode.previousSibling.previousSibling.firstChild.data
                    + ' || [[' + contentA[i].firstChild.data 
                    + ']]\n';
            }
        }
        var textContainer = document.createElement('TEXTAREA');
        document.getElementsByTagName('H1')[0].appendChild(textContainer);
        textContainer.rows  = '20';
        textContainer.value = redLemmas + '|}\n';
    }
});
Und verwende dann diesen Link: http://de.wikipedia.org/wiki/Benutzer:Conspiration/FA#doRedLinkTable
Nur mit Firefox getestet. --ParaDox 13:50, 13:53, 8. Mär. 2008 (CET)Beantworten
Klappt bei mir nicht, habe aber auch Firefox... :-( --Constructor 17:21, 8. Mär. 2008 (CET)Beantworten
Ich habe es soeben in meiner monobook.js ausprobiert, und es läuft einwandfrei. Hast du deinen Firefox-Browser-Cache mit Shift+Strg+R geleert, und auch dein JavaScript aktiviert, und dann auch diesen Link verwendet? --ParaDox 18:42, 8. Mär. 2008 (CET)Beantworten
NACHTRAG: Ach ja, die Wikitext-Tabelle, welche das Script am Seitenanfang in dem großen Eingabefeld erzeugt, musst du natürlich selbst in die/deine Seite hineinkopieren und speichern. --ParaDox 18:48, 8. Mär. 2008 (CET)Beantworten


Die Version 0.1 oben hat nicht alles gewollte aus der Tabelle übernommen, daher die folgende Version 0.2:

addOnloadHook(function () {
    ////
    // "RedLinkTable" V2 (später "MissingTopicsFilter.js" V0.2 genannt)
    // Siehe:
    // http://de.wikipedia.org/wiki/Wikipedia:Fragen_zur_Wikipedia#Anti-Blau-Bot
    // http://de.wikipedia.org/w/index.php?title=Wikipedia:Fragen_zur_Wikipedia&oldid=43466375#Anti-Blau-Bot
    // 08.03.2008 21:00 by [[Benutzer:ParaDox]]
    // http://de.wikipedia.org/wiki/Benutzer:ParaDox
    ////
    if ( window.location.href.indexOf('#doRedLinkTable') > 0 ) {
        var TD = document.getElementById('content').getElementsByTagName('TD');
        var tabelle = '<!-- Wikitext-Tabelle mittels JavaScript (monobook.js)'
                    + ' (Anzahl TD-Zellen == ' + TD.length + ').\n'
                    + '     Sollte nur noch Zeilen mit roten Links enthalten.\n'
                    + '================================================================================== -->\n';
        if ( TD.length > 0 ) {
            tabelle += '{| class="prettytable"\n|- class="hintergrundfarbe6"\n! Wanted || Title\n';
        } else {
            tabelle += '<!-- Keine Tabelle gefunden -->\n';
        }
        for ( var i=0; i<TD.length; i++ ) {
            if ( TD[i].firstChild.tagName == 'A' ) {
                if ( TD[i].firstChild.className == 'new' ) {
                    // Spalte 1: Anzahl
                    tabelle += '|-\n! ' + TD[i].previousSibling.previousSibling.firstChild.data + '\n| ';
                    // Spalte 2: roter Link, evtl. noch Text und Wiki-Links
                    if ( TD[i].childNodes.length < 1 ) {
                        tabelle += '-leer-';
                    } else {
                        for ( var j=0; j<TD[i].childNodes.length; j++ ) {
                            if ( TD[i].childNodes[j].nodeType == 3 ) {
                                tabelle += TD[i].childNodes[j].data;
                            } else if ( TD[i].childNodes[j].nodeType == 1 ) {
                                tabelle += '[[' + TD[i].childNodes[j].firstChild.data + ']]';
                            }
                        }
                    } 
                    tabelle += '\n';
                }
            }
        }
        var textContainer = document.createElement('TEXTAREA');
        document.getElementsByTagName('H1')[0].appendChild(textContainer);
        textContainer.rows  = '20';
        textContainer.value = tabelle + '|}\n';
    }
});

--ParaDox 21:02, 21:04, 8. Mär. 2008 (CET)Beantworten

Jetzt funktioniert es, aber es sollte noch Links in den Benutzernamensraum ignorieren. --Constructor 21:19, 8. Mär. 2008 (CET)Beantworten
(a) Sehr gut. (b) Etwas genauer bitte. --ParaDox 21:31, 8. Mär. 2008 (CET)Beantworten
Der löscht die Links zu Benutzer:Tsor/notizen auch raus, obwohl ich die behalten will, solange der Artikel noch nicht besteht. --Constructor 21:39, 8. Mär. 2008 (CET)Beantworten
Du beschreibst eine entscheidende Macke von Version 0.1, weshalb es zu Version 0.2 kam, und die erhält die Links zu Benutzer:Tsor/notizen. Ich glaube, dass du dass mit dem Browser-Cache leeren noch nicht so ganz im Griff hast. Probier das mit Shift+Strg+R (steht oben auf jeder monobook.js-Seite) mindestens noch einmal bitte. --ParaDox 21:51, 8. Mär. 2008 (CET)Beantworten
Sorry, hast recht! Vielen Dank! --Constructor 22:10, 8. Mär. 2008 (CET)Beantworten

V0.3: MissingTopicsFilter.js[Quelltext bearbeiten]

Mit der Version 0.3 ist aus der Geschichte mehr geworden als erwartet, jedenfalls mMn deutlich mehr als unter WP:FZW noch angemessen erscheint, zumal ich momentan keine Ahnung habe, ob noch mehr daraus wird oder nicht. Bitte beachten, mit der Version 0.3 wurde der Script-URL-Parameter geändert von #doRedLinkTable zu #MissingTopicsFilter, so dass die URL zum ausführen des Scripts an Seite Benutzer:Conspiration/FA jetzt die folgende ist:

Es ist auch möglich das Script über ältere Versionen einer Seite laufen zu lassen, beispielsweise über die momentan vorletzte Version vom 00:56, 2. Mär. 2008:

--ParaDox 09:29, 09:42, 09:49, 10:23, 11:10, 9. Mär. 2008 (CET)Beantworten

Sorry, kannst du das wieder reinmachen, dass es die Version anzeigt (oben aus Version vom), die bereinigt wurde? --Constructor 15:06, 9. Mär. 2008 (CET)Beantworten
Tja, so kann's gehen (ächz). Das Script hat das nicht getan, sondern ich manuell, aber die Version 0.31 macht das ab jetzt. Gruß, --ParaDox 20:16, 20:45, 9. Mär. 2008 (CET)Beantworten
Ok, danke. --Constructor 20:40, 9. Mär. 2008 (CET)Beantworten