Benutzer:Björn Hagemann/monobook.js
Erscheinungsbild
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
//<pre><nowiki>
// Benutzerstatus
mw.loader.load("//de.wikipedia.org/w/index.php?title=Benutzer:Steef389/js/user_status.js&action=raw&ctype=text/javascript"); // [[Benutzer:Steef389/user_status.js]]
// [[File:Krinkle_RTRC.js]]
mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/RTRC.js&action=raw&ctype=text/javascript');
// Modul: recent2.js
/* if (wgPageName== "Benutzer:Suhadi_Sadono/Recent_IP_edits")
window.updateSeconds = 3;
else if (wgPageName== "Benutzer:Suhadi_Sadono/All_recent_changes")
window.updateSeconds = 10;
else if (wgPageName== "Benutzer:Suhadi_Sadono/Filter_recent_change")
window.updateSeconds = 20;
else if (wgPageName== "Benutzer:Suhadi_Sadono/Monitor_my_watchlist")
window.updateSeconds = 60;
else if (wgPageName== "Benutzer:Suhadi_Sadono/Live_spellcheck")
window.updateSeconds = 30;
else
window.updateSeconds = 15;
mw.loader.load('//de.wikipedia.org/w/index.php?title=Benutzer:Suhadi Sadono/recent2.js&action=raw&ctype=text/javascript');
mw.loader.load('//de.wikipedia.org/w/index.php?title=Benutzer:APPER/WikiHistory.js&action=raw&ctype=text/javascript');
// alles drüber geklaut vom Hexer
/**
FAQ:
Frage: Wie übernehme ich dieses Skript?
Antwort: Einfach "Quelltext betrachten", alles markieren und kopieren, dann in deine eigene
monobook.js (also in [[Special:Mypage/monobook.js|Benutzer:<DeinName>/monobook.js]])
oder ander Skinseite /common.js, /vector.js kopieren).
Am sinnvollsten ist es dabei, wenn du die Originalversion von [[Benutzer:PDD/monobook.js]]
übernimmst, da diese immer auf dem neuesten Stand ist.
Frage: Kann ich dieses Skript einfach so übernehmen, oder muss ich da tausend Sachen ändern?
Antwort: Du kannst natürlich alles ändern, aber du musst nicht. Einfach erstmal kopieren, ausprobieren,
und dann so anpassen, dass es deinem Bedarf gerecht wird.
Weitere Fragen und Antworten findest du hier: [[Benutzer:PDD/monobook FAQ]]
<nowiki> {{subst:Benutzer:PDD/monobook.js.DLWS}} </nowiki> <--- diese Zeile bitte nicht löschen
Originalskript ursprünglich gefunden bei [[:en:User:Angela]]
bearbeitet von [[Benutzer:Maximus Rex]]
"" [[Benutzer:SirJective]]
"" [[Benutzer:BLueFiSH.as]]
"" [[Benutzer:Littl]] (2005-09-07 und 2006-02-21)
"" [[Benutzer:Schwalbe]] (2006-02-03)
"" [[Benutzer:PDD]] (ab 2006-04-22)
"" [[User: Perhelion]] (2015-08-30)
verhunzt von [[Benutzer:Björn Hagemann]] unter verschiedenen Benutzernamen seit Urzeiten - organisch gewachsen...
@TODO: add void line 920
@Dependencies: mediawiki.util
**/
/* global $, mw, importJSL */
/* eslint no-implicit-globals:0, one-var:0, vars-on-top:0,camelcase:0, no-underscore-dangle:0, no-unused-vars:0, no-use-before-define:0 */
/* jshint curly:false, eqeqeq:true, latedef:false, strict:false, undef:false, unused:false, scripturl:true */
// (PDD: note to self: version auch in alert-Funktion ändern!)
var version = '0.99s';
// Hier bitte eine Signaturvariante aussuchen! <nowiki>
// (Signaturvariante 1: sinnvoll bei unter "Einstellungen" typografisch angepassten Signaturen)
// var usersignature = '~~~~';
// (Signaturvariante 2: Datum kleiner, kein Zeilenumbruch nach dem Leerzeichen)
// var usersignature = '<span style="white-space:nowrap;">-- ~~~ <small>~~~~~</small></span>';
// (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten)
var usersignature = '-- ~~~~';
// </nowiki>
// *************** SETUP Teil 1a **********************************
// systemweite Default-Optionen aus [[MediaWiki:Common.js]]
window.NavigationBarShowDefault = 0; // Navi-Leisten: alle einklappen = 0; alle ausklappen = 15 (z.B.)
var linkFA_enabled = true; // „Featured Articles“ in fremdsprachigen Wikipedias markieren?
// systemweite Default-Optionen aus [[MediaWiki:Monobook.js]]
var oldEditsectionLinks = false; // [Bearbeiten]-Links bei Abschnitten ganz nach rechts?
// *************** SETUP Teil 1b **********************************
// Parameter für Gadgets
// Gadgets müssen über [[Spezial:Einstellungen]] → Gadgets mit Ausnahme der Rechtschreibpruefung und markAdmins freigeschaltet werden
// Gadget: [[Wikipedia:Helferlein/markAdmins]] sollte deaktiviert werden-
var markadmins = true; // Admins u.ä. besonders hervorheben?
if (markadmins) {
window.marksubpages = true; // auch Links auf Admin-Unterseiten markieren?
window.mawatchlist = true; // auch auf der Beobachtungsliste?
window.macontribs = true; // auch auf den Benutzerbeiträgen?
window.markatxt = 'A'; // Markierung für Admins
window.markrenatxt = 'A-Ren'; // Markierung für umbenannte Admins
window.markbureautxt = 'B'; // Markierung für Bürokraten
window.markstewtxt = 'S'; // Markierung für Stewards
window.markombudsmantxt = 'Omb'; // Markierung für Ombudspersonen
window.markexadmins = true; // zusätzlich: Ex-Admins besonders hervorheben?
window.markexatxt = 'Ex-A'; // Markierung für Ex-Admins
window.markexbureaucrats = true; // zusätzlich: Ex-Bürokraten besonders hervorheben?
window.markexbureautxt = 'Ex-B'; // Markierung für Ex-Bürokraten
window.markarbcom = true; // zusätzlich: Schiedsgericht besonders hervorheben?
window.markarbcomtxt = 'SG'; // Markierung für Schiedsgerichtler
window.markcheckuser = true; // zusätzlich: CheckUser besonders hervorheben?
window.markcheckusertxt = 'CU'; // Markierung für Checkuser-Berechtigte
window.markoversight = true; // zusätzlich: Oversighter besonders hervorheben?
window.markoversighttxt = 'OS'; // Markierung für Oversight-Berechtigte
window.markcomadmins = true; // zusätzlich: Commons-Admins besonders hervorheben?
window.markcomatxt = 'Com-A'; // Markierung für Commons-Admins
window.markwdadmins = true; // zusätzlich: Wikidata-Admins besonders hervorheben?
window.markwdatxt = 'WD-A'; // Markierung für Wikidata-Admins
}
// Gadget: popups.js (Lupin, Navpop) // mw.user.options.get('gadget-navigation-popups')
var lupinpopups = false; // Popup-Modul einbinden?
if (lupinpopups) {
// Optionen für Lupin-Popups
// (ausführliche Liste siehe [[Wikipedia:Helferlein/Navigation-Popups#Optionen]] bzw.
// aktueller und auf englisch [[:en:Wikipedia:Tools/Navigation popups#Options]])
var addpopupLink = true; // Link auf Popups in Messages hinzufügen?
addpopupLink = addpopupLink ? ' (mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]])' : '';
window.popupDelay = 1; // Popupverzögerung in s (DEFAULT: 0.5)
window.simplePopups = false; // auf true setzen, wenn Laden im Hintergrund unerwünscht (DEFAULT: false)
window.popupStructure = 'menus'; // Aussehen der Popups (DEFAULT: 'shortmenus')
window.popupActionsMenu = false; // separates "actions"-Menu (DEFAULT: true)
window.popupImages = true; // Bilder im Popup erwünscht? (DEFAULT: true)
window.popupSubpopups = true; // Popups für Links innerhalb von Popups generieren? (DEFAULT: true)
window.popupAdminLinks = false; // Funktionen, die nur Admins nutzen können (DEFAULT: false)
// nächste Option sollte bei Verwendung von showRedundantLinks.js *nicht* auf true gesetzt werden
window.removeTitles = false; // Originaltitel der Links nach popups verschieben? (DEFAULT: true)
window.popupFixRedirs = true; // Links auf Redirects korrigieren? (DEFAULT: false)
window.popupWatchRedirredPages = false; // korrigierte Seite beobachten? (DEFAULT: null)
window.popupRedirAutoClick = 'wpSave'; // ausgeführte Aktion beim Korrigieren von Redirects (DEFAULT: 'wpDiff')
window.popupRedlinkRemoval = true; // Rote Links entfernen? (DEFAULT: false)
window.popupFixDabs = true; // Links auf BKLs korrigieren? (DEFAULT: false)
window.popupWatchDisambiggedPages = false; // korrigierte Seite beobachten? (DEFAULT: null)
window.popupLastModified = true; // Zeit seit letzter Änderung anzeigen? (DEFAULT: true)
window.popupDiffDates = true; // Änderungsdaten bei Diffs anzeigen? (DEFAULT: true)
window.popupOnlyArticleLinks = true; // Popups nur für Artikel-Links (DEFAULT: true)
window.imagePopupsForImages = false; // Bildvorschau laden, wenn Mausposition über Bild? (DEFAULT: true)
window.popupMaxWidth = 400; // Maximalbreite des Popup-Fensters (DEFAULT: 350)
window.popupRevertSummaryPrompt = true; // Prompt zum Ändern des Revert-Kommentars? (DEFAULT: false)
window.popupMaxPreviewSentences = 2; // Anzahl der angezeigten Sätze in der Vorschau (DEFAULT: 4)
// <nowiki>
// deutsche Texte für Lupin
window.popupFixDabsSummary = 'Ersetze BKL-Seite [[%s]] durch [[%s]]' + addpopupLink;
window.popupExtendedRevertSummary = 'Revert auf Version vom %s von Benutzer %s, oldid %s' + addpopupLink;
window.popupRevertSummary = 'Revert auf Version %s' + addpopupLink;
window.popupRevertToPreviousSummary = 'Revert auf Vorgängerversion der Version %s' + addpopupLink;
window.popupQueriedRevertSummary = 'Revert auf Version $1 vom $2 von $3' + addpopupLink;
window.popupQueriedRevertToPreviousSummary = 'Revert auf Vorgängerversion der Version $1 vom $2 von $3' + addpopupLink;
window.popupFixRedirsSummary = 'Ersetze Redirect [[%s]] durch [[%s]]' + addpopupLink;
window.popupRedlinkSummary = 'Entferne Link auf leere Seite [[%s]]' + addpopupLink;
window.popupRmDabLinkSummary = 'Entferne Link auf BKL-Seite [[%s]]' + addpopupLink;
}
// </nowiki>
// Gadget: APPERs RP [[Wikipedia:Helferlein/Rechtschreibprüfung]] // alt [[Benutzer:APPER/RP/js]]
// Das Gadget sollte hiefür deaktiviert sein!
var rechtschreibpruefung = true; // Rechtschreibprüfung?
window.DontAutorunRP = true; // true = manuell = RP durch Anklicken; false = automatische RP
window.RPonAllPages = true; // nicht nur auf Artikelseiten?
// Gadget: Extra-Editbuttons, siehe: [[Wikipedia:Helferlein/Extra-Editbuttons]]
// Anzahl und Reihenfolge wählbar (siehe: [[Wikipedia:Helferlein/Extra-Editbuttons#Die Buttons]])
var customEditButtons = 'A,A3,B,C,E,F,G,H,I,I1,I2,J1,K,M,O,P,PO,Q,R,R3,S,T,T1,U,V,W,X,Y1,Y2,VP,VC,VN,SM';
var rmEditButtons = [6, 7, 10]; // zu entfernende Standard-Editbuttons (0…10)
var myButtons = {}; // eigene Buttons?
// *************** SETUP Teil 2 **********************************
// Parameter für diese monobook.js (Quickbar, Module etc.)
var zeigeversion = true; // monobook-Version anzeigen?
var zeigehilfe = true; // kurze Hilfetexte beim überfahren mit der Maus anzeigen?
var qbnewpage = true; // sollen Seiten aus dem QuickBar im neuen Fenster aufgerufen werden?
var rclimit = 500; // angezeigte Anzahl auf "Letzte Änderungen"
var nplimit = 500; // angezeigte Anzahl auf "Neue Artikel"
var nulimit = 1000; // angezeigte Anzahl auf "Neuanmeldungs-Logbuch"
var nvlimit = 500; // angezeigte Anzahl auf "Alte, gesichtete Seiten"
var ndlimit = 250; // angezeigte Anzahl auf "Neue Dateien"
var usedropdown = false; // keine Dropdowns gewünscht?
var timeout = 50000; // 50 Sekunden auf das Neuladen der Seite warten
var timezoneshift = 0; // Unterschied lokale Zeit zur Systemzeit (bleibt für Mitteleuropäer 0)
var debugme = false; // Debug-Modus?
var qbfontsize = 100; // Schriftgröße im QuickBar (relativ in %)
// <nowiki>
// Modul: changeBeschriftungen.js
var beschriftungen = true; // kosmetische Änderungen an der MediaWiki-Oberfläche?
if (beschriftungen) {
var markhandsoff = true, // fremde Benutzerseiten grafisch markieren?
// Beschriftungen: personal toolbar
cbmytalk = 'Diskussion',
cbprefs = 'Einstellungen',
cbwatchlist = 'Beobachtungsliste',
cbmyconts = 'Beiträge',
cblogout = 'Notausgang',
// Beschriftungen: current article
cbedit = 'Bearbeiten',
cbhistory = 'Versionen',
cbmove = 'Verschieben',
cbwatch = 'Beobachten',
cbunwatch = 'Ignorieren',
// Beschriftungen: tools
cbwhatlinkshere = 'Links hierher',
cblinked = 'Verlinkte Änderungen',
cbmail = 'E-Mail senden',
cbupload = 'Datei hochladen',
cbprint = 'Druckversion',
cbblock = 'User sperren',
// Beschriftungen: portlets
cblang = 'Interwiki';
}
// Modul: bkl-check.js
var bklcheck = true; // BKL-Links hervorheben?
// Modul: autoFormatter.js Halbautomatische Behebung von Wikifizierungsfehlern
var autoFormatter = true; // (ersetzt einfacheres FixMark [[Benutzer:BLueFiSH.as/JS/markup.js]])
// Modul: Sperrstatus.js
var sperrstatus = true; // Sperrstatus einer Seite farblich anzeigen?
// Modul: eintragen.js
var autosave = true; // automatisches Speichern von QS/LA/SLA/Vandal-Einträgen?
var signogrundparam = false; // auf true setzen, wenn Signatur das SLA-Eintragen behindert
var emptylinesafterhr = 1; // Leerzeilen zwischen LA-Baustein und Artikeltext
var defaultSLA = "Leider kein Artikel, vgl. [[WP:WWNI|Was Wikipedia nicht ist]] und [[Wikipedia:Artikel]]."; // Standard-SLA-Grund
var defaultVandal = "Vandälchen."; // Standardgrund für Vandalismusmeldung (Benutzer)
var defaultAVandal = "akute Edititis"; // Standardgrund für Vandalismusmeldung (Artikel)
// Modul: hinweise.js
var hinweis = true; // Portal- und Redaktionshinweis verwenden?
// Modul: godmode-light.js
var godmodelight = true; // "Zurücksetzen" einblenden?
var godmodenewstyle = true; // neuer Rollback-Kommentartext?
// 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 = "auf diese Version zurücksetzen"; // 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 = "keine Verbesserung des Artikels"; // Defaultgrund beim Revertieren
var aerhistory = true; // Links auch in der Versionsgeschichte?
var aearlhere = true; // Revertaktion im selben Browserfenster?
// Modul: addLogsLink.js
var addlogslink = true; // Zusatzlinks zu Spezial:Log einfügen?
if (addlogslink) {
var pagelogtext = 'Seitenlog', // Text des Seitenlogbuch-Links
userlogtext1 = 'aktives Userlog', // Texte der beiden Benutzerlog-Links
userlogtext2 = 'passives Userlog',
addusercontriblink = true, // auf Benutzerseiten auch noch Link auf Contributions?
usercontribtext = 'Beiträge', // Text des Contributions-Links ("Benutzerbeiträge")
userdeledittext = 'gelöschte Beiträge', // Text des Links auf Deleted Edits
userstatstext = 'Editcounter', // Text des Links auf Benutzerstatistik
userstatstype = 'xt', // Art der Benutzerstatistik (Auswahl: xt/x/super/quick)
usergallerytext = 'Galerie', // Text des Links auf Bildergalerie des Benutzers
userstimmrechttext = 'Stimmrecht', // Text des Links auf Stimmrechtcheck
adduserarticlelink = true, // auf Benutzerseiten Link auf erstellte Artikel?
userarticletext = 'Neuanlagen', // Text des Links auf erstellte Artikel
userarticletype = 'x', // verwendeter Artikelcounter (Auswahl: x)
addbrowselink = true, // auf allen Seiten Link zum alphabetischen Browsen?
browseuserprefix = true, // bei Nutzerseiten stattdessen alle Unterseiten des Nutzers zeigen?
browsetext = 'Seiten', // Text des Links auf Browsing-Seite
addbrowsedellink = true, // auf allen Seiten Link zum Browsen in gelöschten Seiten?
browsedeltext = 'gelöschte Seiten', // Text des Links auf BrowseDel-Seite
addiusagelink = true, // bei Bildern Link zur Bildnutzung (Commons)?
imgusagetext = 'Bildnutzung';
} // Text des Links auf Bildnutzung
// Modul: mwArticleStatistics.js
var addstatslink = true; // Zusatzlinks zu Statistiktool einfügen?
// Modul: modifyCA.js
var addeditintro = true; // Tab zum Editieren des Nullabschnitts (Intros) einer Seite hinzufügen?
var editintrotext = 'Intro bearbeiten'; // Beschriftung des Tabs
var addpageinfo = true; // Tab für Seiteninfo hinzufügen?
var pageinfotext = 'Info'; // Beschriftung des Tabs
var addpurge = true; // Tab zum Purgen (Servercache-Updaten) einer Seite hinzufügen?
var purgetext = 'Purge'; // Beschriftung des Tabs
var addwatchers = false; // Tab mit Link zum Watchers-Tool hinzufügen?
var watcherstext = 'ºº'; // Beschriftung des Tabs
// Modul: markUTF8.js
var markutf8 = true; // Sonderzeichenbenutzernamen besonders hervorheben?
var muwatchlist = true; // auch auf der Beobachtungsliste?
var mucontribs = true; // auch auf den Benutzerbeiträgen?
var markutf8txt = 'UTF8!'; // Markierung für UTF8-kodierte Nutzernamen etc.
var markltrtxt = 'UTF8:LTR!'; // Markierung für Lemmata mit LTR-Mark
// Modul: markErledigt.js
var markerledigt = true; // Erledigt-Button auf Seiten mit [[Vorlage:Autoarchiv-Erledigt]]
// Modul: reftoggle.js
var reftoggle = false; // "Quellen verstecken"/"Quellen anzeigen"-Schalter für Fußnoten?
// Modul: quickedit.js
var qeEnabled = false; // QuickEdit aktivieren?
var qeEnableSection0 = false; // QuickEdit-Link für Abschnitt 0 (Einleitung)?
var qeEnableAccessKeys = true; // Tastaturbefehle aktivieren?
var qeShowErrors = true; // Fehlermeldungen anzeigen
var qeTextboxHeight = 20; // Höhe des Textfelds
// Modul: APPERs IP-Patrol Vandalenmarkierer
var ippvandalmark = false; // IP-Patrol-Vandalenmarkierung aktivieren?
// Modul: coordinates.js
// (für dieses Modul im CSS #editpage-copywarn nicht ausblenden!)
var coordinates = false; // Koordinate_Artikel in Editfenster generierbar?
// Modul: unsigned.js
var unsigning = true; // Einfügen von Unsigned bei unsignierten Beiträgen auf Diskussionsseiten?
var ssubst = true; // unsigniert-Baustein mit subst einfügen?
var max_history_entries = 36; // Anzahl der angezeigten Edits (max. 36)
// Modul: signing.js
var signing = false; // automatische Unterschrift auf Diskussionsseiten?
// Modul: SearchBox.js
var searchbox = false; // erweitertes suchen/ersetzen
// </nowiki>
/** Fliegelflagel (von Schnark)
@Meta-Script: weitere Skriptsammlung, einfach zu verwenden [[Benutzer:Schnark/js/fliegelflagel]]
standardmäßig u.a. aktiv [[Benutzer:Schnark/js/letzteredit.js]] und [[Benutzer:Schnark/js/diff.js]]
**/// <nowiki>
var fliegelflagel = mw.libs.fliegelflagel ? 0 : false; // empfehlenswert
// Modul: wikEdDiff.js (Cacycle)
var cacyclediff = false, // verbesserte Diff-Ansicht (Cacycle) einbinden? Redundant mit Schnark's Diff
wikEdFullDiff = !cacyclediff ? 0 : false;
// weitere Module
var showredundantlinks = true; // zeigt doppelte Links an
var ripe = false; // Ripe-Tooltips?
var irrenhaus = false; // Script für mehr Abwechslung im "neue Nachrichten"-Balken
var imgdupecheck = true; // Bilder-Duplikate anzeigen
var diffhistory = true; // bei Nachsichtungen Übersicht der ungesichteten Versionen zeigen (von P.Copp)
var hideduplicatecontribs = true; // bei Benutzerbeiträgen Checkboxen zum Filtern einblenden (von P.Copp)
var hidenslinksearch = true; // bei Weblink-Suche unnötiges Zeugs ausblenden (nach P.Copp)
// special rights options
var adddelreason = true; // Löschgrund einfügen (von P.Copp)
var dellinknowcommons = true; // Löschlink bei NowCommons-Bildern (von Revvar/Codeispoetry)
var loescheimer = true; // erleichtertes LK-Abarbeiten (von mnh)
var filter_rfdtoc_by_default = true; // Löscheimer: TOC der LK-Seite filtern?
// **************** SETUP Ende ***********************************
var user = mw.config.get('wgUserName'); // username wird automatisch übernommen
// aktuelle Zeit ermitteln
var jetzt = new Date();
// recalculate 4 furriners
var jetztfixed = jetzt.getTime();
jetztfixed += (timezoneshift * 3600 * 1000);
jetzt.setTime(jetztfixed);
// fill date variables
var Monate = mw.config.get('wgMonthNames');
var Monatekurz = mw.config.get('wgMonthNamesShort');
var Jahr = jetzt.getYear();
if (Jahr < 999) Jahr += 1900;
var Monat = jetzt.getMonth() + 1;
var Tag = jetzt.getDate();
var Stunde = jetzt.getHours();
var Minute = jetzt.getMinutes();
// fill WP date variables
var WPDatum = Tag + '._' + Monate[Monat] + '_' + Jahr;
var WPDatum2 = Jahr + '/' + Monate[Monat] + '/' + Tag;
var WPDatum3 = Monate[Monat] + ' ' + Jahr;
var WPDatum4 = Jahr + '-' + LeadingZero(Monat);
var refDatum = Tag + '. ' + Monatekurz[Monat] + '. ' + Jahr;
var refDatumlang = Tag + '. ' + Monate[Monat] + ' ' + Jahr;
var ndDatum = Jahr + '-' + LeadingZero(Monat) + '-' + LeadingZero(Tag);
// Lemma-Varianten (work in progress) + redundant zu addLogsLink etc.
// get page title
var pagetitle = mw.config.get('wgPageName');
var spagetitle = mw.config.get('wgTitle');
var cpn = mw.config.get('wgCanonicalSpecialPageName');
// var cns = mw.config.get('wgCanonicalNamespace');
var ns = mw.config.get('wgNamespaceNumber');
var cLang = mw.config.get('wgContentLanguage');
var sPath = mw.config.get('wgScriptPath');
var action = mw.config.get('wgAction');
var server = mw.config.get('wgServer');
// do real spaces; fix for lemmas with '&'
var ptitle = pagetitle.replace(/_/g, ' ').split('&').join('%26');
var sptitle = spagetitle.replace(/_/g, ' ').split('&').join('%26');
// do + escaped (" " to "+")
var pesctitle = spaceEscape(ptitle);
var spesctitle = spaceEscape(sptitle);
// lemmatitle for external lookup
var spesctitlelookup = spesctitle.split('+(')[0];
// Komma-Lemma für Personen (Klammerzusätze weg etc.)
var personlemma = spagetitle.split(' (')[0];
var titlesplit = personlemma.split(' ');
var i;
if (titlesplit.length > 1) {
personlemma = titlesplit[titlesplit.length - 1] + ',';
for (i = 0; i < (titlesplit.length - 1); i++) personlemma += ' ' + titlesplit[i];
}
var import_url;
// stub for internal links
// now all links are https (secure.wikimedia.org is also deprecated since 2012)
var intlinkstub = '//' + cLang + '.wikipedia.org/wiki/';
var intfuncstub = '//' + cLang + '.wikipedia.org' + sPath + '/index.php?';
var summary = document.getElementById('wpSummary');
var textbox = document.getElementById('wpTextbox1');
/* Vector Modifications: font must be smaller */
var isVector = '';
if (mw.config.get('skin') === 'vector') {
isVector = 'font-size:78%;'; // scaled proportional with width
qbfontsize *= 0.84; // scale factor
}
// page type variables: namespaces
var isArticle, isUserpage, isArticleTalk, isProject, isFile, isTemplate, isHelp, isCategory, isSpecial, isUserMainpage;
switch (ns) {
case 0:
isArticle = true;
break;
case 1:
isArticleTalk = true;
break;
case 2: // user & user_talk lumped together
case 3:
isUserpage = true;
break;
case 4:
isProject = true;
break; // Wikipedia:
case 6:
isFile = true;
break;
case 10:
isTemplate = true;
break;
case 12:
isHelp = true;
break; // Hilfe:
case 14:
isCategory = true;
break;
case -1:
isSpecial = true;
break;
}
var isGeneric = (!isFile && !isCategory && !isTemplate);
// page type variables: namespace == -1
var isRestore, isContrib, isDelContrib, isWatchlist, isCompare;
if (isSpecial) {
switch (cpn) {
case 'Undelete':
isRestore = true;
break;
case 'Contributions':
isContrib = true;
break;
case 'ComparePages':
isCompare = true;
break;
case 'Watchlist':
isWatchlist = true;
break;
case 'DeletedContributions':
isDelContrib = true;
break;
}
}
// talk page namespace
var isTalk = (!isSpecial && isOdd(ns));
// individual page specials
var isLKpage = (isProject && (spagetitle.indexOf('Löschkandidaten') !== -1));
// userpage/name stuff, vor allem für IPs
var userPageOwner = '';
var isIPUser = false; // handelt es sich um eine IP?
// get URL parameters (used for page type variables)
var UrlParameters = {}; // FIXME deprecated in helperFunctions.js, use mw.util.getParamValue( instead
(function () { // returns UrlParameters
var para,
readUrlParameters = location.search.substring(1, location.search.length).split('&');
for (i = 0; i < readUrlParameters.length; i++) {
para = readUrlParameters[i].split('=');
UrlParameters[decodeURIComponent(para[0])] = decodeURIComponent(para[1]);
}
}());
// Helper-Function
function _getUser() { // returns isIPUser, userPageOwner
var target = mw.util.getParamValue('target');
if (isContrib || isDelContrib) {
if (target) {
userPageOwner = target.split('+').join('_');
} else {
target = decodeURIComponent(location.href.substring(location.href.indexOf('/wiki/') + 6)).split('#')[0];
userPageOwner = target.substring(target.indexOf('Beiträge/') + 9);
}
} else if (isUserpage && spagetitle === user) {
isUserMainpage = true;
userPageOwner = spagetitle;
}
if (userPageOwner && mw.util.isIPAddress(userPageOwner)) isIPUser = true;
}
// page type variables: other stuff
var isPHP = document.URL.indexOf('index.php') > 0;
var isDiff = UrlParameters.diff;
var isEdit = /^(edit|submit)$/.test(action);
var isHistory = (action === 'history');
// Admin & editor functions
var adminflag = hasRight('sysop');
var editorflag = hasRight('editor');
var dev = 'РDD3';
// Browserkram
var userbrowser = 'Standard';
if (navigator.userAgent.indexOf('Opera') > -1) userbrowser = 'Opera';
if (navigator.userAgent.indexOf('Safari') > -1) userbrowser = 'Standard';
if (navigator.userAgent.indexOf('MSIE') > -1) {
userbrowser = 'IE';
if (navigator.userAgent.indexOf('MSIE 7') > -1) userbrowser = 'IE7';
}
// force Browserswitches
if (userbrowser === 'IE' || userbrowser === 'IE7') {
godmodelight = false;
showredundantlinks = false;
}
if (userbrowser === 'Opera') godmodelight = false;
if (debugme) mw.config.set('debug', true);
/*
* ab hier wird der Quickbar (der Kasten oben links) zusammengebaut
*
* zuerst die allgemeinen Variablen (hier bitte nix ändern!)
*/
var Quickbar = '<div class="pBody noprint" id="p-quickbar" style="position:absolute; top:0; left:-1px; width:14.1em; z-index:10;' +
isVector + '">',
// optional: opacity:0.9,
xxx = '',
trenner = '<hr>',
br = '<br>',
qbtarget = qbnewpage ? '_blank' : '_self',
dropdown = usedropdown,
scrpt = '',
scrptn = 0,
indropdown,
ind;
/*
* Quickbar-Zusammenbau, Teil 1:
*
* die Belegung der einzelnen Abschnitte
*/
function qbWPIntern() {
w(0, trenner, 'Wikipedia', '');
w (1,intlinkstub+'Benutzer:Björn_Hagemann/Merkblatt','?!',qbtarget,'Merkblatt');
// w (1,intlinkstub+'Hilfe:MediaWiki','Hilfe:MediaWiki',qbtarget,'MediaWiki-Hilfe');
// w (1,intlinkstub+'Wikipedia:Hilfe','Wikipedia:Hilfe',qbtarget,'Wikipedia-Hilfe');
// w (1,intlinkstub+'Hilfe:Textgestaltung','Hilfe:Textgestaltung',qbtarget,'Hilfe zur Textgestaltung');
// w (1,intlinkstub+'Hilfe:Farben','Hilfe:Farben',qbtarget,'Hilfe zur Farbgestaltung');
// w (1,intlinkstub+'Wikipedia:Kurier','Kurier',qbtarget,'Kurier – Das Wikipedia-Nachrichtenblatt');
// w (1,intlinkstub+'Wikipedia:Fragen zur Wikipedia','Fragen zur Wikipedia',qbtarget,'Fragen zur Wikipedia');
// w (1,intlinkstub+'Wikipedia:Auskunft','Auskunft',qbtarget,'Auskunft');
// w (1,intlinkstub+'Wikipedia:Autorenportal','Autorenportal',qbtarget,'Autorenportal');
// w (1,intlinkstub+'Wikipedia:Projektneuheiten','Projektneuheiten',qbtarget,'Projektneuheiten');
// w (1,intlinkstub+'Wikipedia:Verbesserungsvorschläge','Verbesserungsvorschläge',qbtarget,'Verbesserungsvorschläge');
// w (1,intlinkstub+'Wikipedia:Tellerrand','TE',qbtarget,'Tellerrand');
w (1,intlinkstub+'Wikipedia:Administratoren/Notizen','AN',qbtarget,'Administratoren/Notizen');
w (1,intlinkstub+'Wikipedia:Administratoren/Anfragen','AAF',qbtarget,'Administratoren/Anfragen');
// w (1,intlinkstub+'Wikipedia:Kandidaturen','AK',qbtarget,'Kandidaturen');
w (1,intlinkstub+'Wikipedia:Adminwiederwahl','AWW',qbtarget,'Adminwiederwahl');
// w (1,intlinkstub+'Wikipedia:Dritte_Meinung','Drölfte Meinung',qbtarget,'Dritte Meinung');
// w (1,intlinkstub+'Wikipedia:Vermittlungsausschuss','Verwirrungsausschuss',qbtarget,'Vermittlungsausschuss');
// w (1,intlinkstub+'Wikipedia:Projektdiskussionen','PRD',qbtarget,'Projektdiskussionen');
w (1,intlinkstub+'Wikipedia:Administratoren/Probleme','AP',qbtarget,'Admin-Probleme');
w (1,intlinkstub+'Wikipedia:Schiedsgericht/Anfragen','SGA',qbtarget,'Schiedsgericht/Anfragen');
}
function qbPatrol() {
w(0, trenner, 'Überwachung', '');
// w (1,intfuncstub+'title=Special:Recentchanges&hideminor=0&hideliu=1&hidebots=1&hidepatrolled=0&days=7&limit='+rclimit,'RCs',qbtarget,'Letzte Änderungen');
w (1,intfuncstub+'title=Special:Log&limit='+nulimit+'&type=newusers','Neue Benutzer',qbtarget,'Neue Benutzer');
w (1,intlinkstub+'Special:Contributions/newbies','Beiträge',qbtarget,'Beiträge neuer Benutzer');
w (1,intfuncstub+'title=Special:Newpages&namespace=0&limit='+nplimit,'Artikel',qbtarget,'Neue Artikel');
w (1,intlinkstub+'Special:Newimages','Dateien',qbtarget,'Neue Dateien (Bilder)');
// w (1,intfuncstub+'title=Special:Listfiles&limit='+ndlimit,'NeueD',qbtarget,'Neue Dateien');
// w (1,intfuncstub+'title=Special:OldReviewedPages&limit='+nvlimit,'NeuE',qbtarget,'Neue Edits in gesichteten Artikeln');
// w (1,intfuncstub+'title=Special:ArticleFeedbackv5','NeuF',qbtarget,'Neues Feedback');
w (1,intlinkstub+'Wikipedia:Vandalismusmeldung','VM',qbtarget,'Vandalismusmeldung');
w (1,intlinkstub+'Wikipedia:Oversight/Kontakt','OS',qbtarget,'Oversight-Kontakt');
w (1,intlinkstub+'Wikipedia:Sperrprüfung','SPP',qbtarget,'Sperrprüfung');
w (1,intlinkstub+'Wikipedia:Löschprüfung','LP',qbtarget,'Löschprüfung');
w (1,intlinkstub+'Wikipedia:Entsperrwünsche','EW',qbtarget,'Entsperrwünsche');
w (1,intlinkstub+'Wikipedia:Checkuser/Anfragen','CUA',qbtarget,'Checkuser/Anfragen');
w (1,intlinkstub+'Spezial:Logbuch/Björn_Hagemann','Log',qbtarget,'Logbücher');
// w (1,"//tools.wmflabs.org/xtools/adminstats/?project=de.wikipedia.org",'Adminaktivität',qbtarget,'Adminaktivität (letzte 100 Tage)');
if (adminflag) {
w (1,intlinkstub+'Special:AbuseLog','HAL',qbtarget,'Bearbeitungsfilter-Logbuch');
w (1,intlinkstub+'Wikipedia:Erkennung_offener_Proxys','OP',qbtarget,'Erkennung offener Proxys');
}
w (1,'irc://chat.freenode.net/wikipedia-de-rc','IRC',qbtarget,'IRC-Chat #wikipedia-de-rc');
}
function qbWartung() {
w(0, trenner, 'Wartung', '');
w (1,intlinkstub+'Wikipedia:Löschregeln','Löschen?',qbtarget,'Löschregeln');
w (1,intlinkstub+'Kategorie:Wikipedia:Schnelllöschen','WP:SLK' ,qbtarget,'Schnelllöschkandidaten');
w (1,intlinkstub+'Wikipedia:Löschkandidaten/'+WPDatum,'LKH',qbtarget,'Löschkandidaten (heute)');
w (1,intlinkstub+'Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URV-LK',qbtarget,'Löschkandidaten (URVs)');
// w (1,intlinkstub+'Wikipedia:Löschkandidaten','Löschkandidaten',qbtarget,'Löschkandidaten');
// w (1,intlinkstub+'Wikipedia:Löschkandidaten/Bilder/'+WPDatum,'BildLK',qbtarget,'Löschkandidaten (Bilder)');
// w (1,intlinkstub+'Wikipedia:WikiProjekt_Kategorien/Diskussionen/'+WPDatum2,'KatLK',qbtarget,'Löschkandidaten (Kategorien)');
// w (1,intlinkstub+'Wikipedia:Qualitätssicherung/'+WPDatum,'sogenannte Qualitätssicherung',qbtarget,'Qualitätssicherung');
// w (1,intlinkstub+'Wikipedia:Redundanz/'+WPDatum3,'Redundanz',qbtarget,'Redundanz');
// w (1,intlinkstub+'Kategorie:Wikipedia:Unverständlich','Wirres Zeuch',qbtarget,'Unverständlich');
// w (1,intlinkstub+'Wikipedia:Kandidaturen von Artikeln, Listen und Portalen','KALP',qbtarget,'Kandidaturen von Artikeln, Listen und Portalen');
// w (1,intlinkstub+'Wikipedia:Kandidaten für lesenswerte Artikel','KLA',qbtarget,'Kandidaten für lesenswerte Artikel');
// w (1,intlinkstub+'Wikipedia:Review','RV',qbtarget,'Review');
// w (1,intlinkstub+'Wikipedia:Kandidaten für exzellente Bilder','KEB',qbtarget,'Kandidaten für exzellente Bilder');
// w (1,intlinkstub+'Wikipedia:Kandidaten für exzellente Aufnahmen','KEAU',qbtarget,'Kandidaten für exzellente Aufnahmen');
}
function qbUserTools() {
if (!userPageOwner) return;
if (isIPUser) {
// w (1,"http://www.ripe.net/whois?form_type=simple&full_query_string=&searchtext="+userPageOwner+"&do_search=Search",'IPripe',qbtarget,'IPripe');
w (1,"http://www.mxtoolbox.com/SuperTool.aspx?action=scan%3a"+userPageOwner,'PScan',qbtarget,'Portscan');
// w (1,"http://network-tools.com/default.asp?prog=lookup&host="+userPageOwner,'IPinfo',qbtarget,'IPInfo');
// w (1,"http://toolserver.org/~chm/whois.php?ip="+userPageOwner,'IPinfo',qbtarget,'IPInfo');
w (1,"//tools.wmflabs.org/whois/"+userPageOwner+"/lookup",'IPinfo',qbtarget,'IPInfo');
// w (1,"http://www.dnsstuff.com/tools/tracert.ch?ip="+userPageOwner,'IPtrcrt',qbtarget,'Traceroute');
// w (1,"https://www.dan.me.uk/torcheck?ip="+userPageOwner,'TOR',qbtarget,'TOR-Node-Check');
// w (1,"http://toolserver.org/~krimpet/torcheck.php?ip="+userPageOwner,'K-TOR',qbtarget,'Krimpets TOR-Node-Check');
w (1,"//tools.wmflabs.org/guc/?user="+userPageOwner+"&blocks=true&lang=de",'IP-GUC',qbtarget,'Global user contributions');
// w (1,"http://toolserver.org/~vvv/rangecontribs.php?wiki=dewiki_p&user="+userPageOwner.substring(0, userPageOwner.lastIndexOf('.')),'IP-RaC',qbtarget,'IP range contributions');
w (1,"//de.wikipedia.org" + sPath + "/api.php?action=query&list=usercontribs&format=xml&uclimit=500&ucstart=" + getFutureDate() + "&ucend=" + getPastDate() + "&ucuserprefix="+userPageOwner.substring(0, userPageOwner.lastIndexOf('.'))+".",'IP-RaC',qbtarget,'IP range contributions via API');
w (1,"http://jodies.de/ipcalc?host="+userPageOwner+"&mask1=18&mask2=",'Rng',qbtarget,'Range/Subnet Rechner');
// w (1,"http://toolserver.org/~krimpet/rbhelper.php?db=dewiki_p&ip="+userPageOwner,'RngB?',qbtarget,'Range Block Finder');
// w (1,"//tools.wmflabs.org/erwin85/blockfinder.php?lang=de&family=wikipedia&ip="+userPageOwner,'RngB?',qbtarget,'Range Block Finder');
w (1,"//tools.wmflabs.org/blockcalc/index.php?lang=de",'Rangeblockrechner I',qbtarget,'Rangeblock Calculator');
w (1,"http://nativeforeigner.com/calc/",'Rangeblockrechner II',qbtarget,'Another Rangeblock Calculator');
w (1,"http://www.mikero.com/misc/ipcalc/?start="+userPageOwner+"&end="+userPageOwner,'Rangeblockrechner III',qbtarget,'Yet another Rangeblock Calculator');
} else {
// w (1,"http://www.ripe.net/whois",'Ripe',qbtarget,'Ripe-Lookup');
// w (1,"http://www.denic.de/de/",'Denic',qbtarget,'Domain-Lookup');
// w (1,"http://www.iks-jena.de/cgi-bin/whois",'Whois',qbtarget,'IKS-Whois-Lookup');
w (1,"//tools.wmflabs.org/quentinv57-tools/tools/sulinfo.php?username="+userPageOwner+"&showblocks=1&showlocked=1",'Globale Accounts',qbtarget,'Global user accounts');
// w (1,"http://toolserver.org/~purodha/sample/dbswithuser.php?usr="+userPageOwner+"&go=Go%21&uselang=de",'GUA+',qbtarget,'Global user accounts (ausführlich)');
w (1,"//tools.wmflabs.org/guc/?user="+userPageOwner+"&blocks=true&lang=de",'Globale Beiträge',qbtarget,'Global user contributions');
if (user !== userPageOwner) {
// w (1,"http://toolserver.org/~cyroxx/familiar/familiar.php?user1="+spaceEscape(user)+"&user2="+spaceEscape(userPageOwner),'Woher kenn ich dich?',qbtarget,'Are U familiar? (cyroxx)');
// w (1,"http://toolserver.org/~merl/familiar.php?user1="+spaceEscape(user)+"&user2="+spaceEscape(userPageOwner),'UFam',qbtarget,'Are U familiar? (Merlissimo-Backup)');
w (1,"//tools.wmflabs.org/intersect-contribs/?project=dewiki&user1="+spaceEscape(user)+"&user2="+spaceEscape(userPageOwner),'Woher kenn ich dich?',qbtarget,'Intersect Contribs (pietrodn)');
// w (1,"//tools.wmflabs.org/erwin85/contribs.php?lang=de&family=wikipedia&users="+spaceEscape(user)+"|"+spaceEscape(userPageOwner)+"&limit=500&submit=Submit",'ErwC',qbtarget,'Multiple Contribs (erwin85)');
}
}
}
function qbToolserver() {
w(0, trenner, 'Toolserver', '');
qbUserTools();
// w (1,"http://toolserver.org/~leon/stats/wikicharts/index.php?lang=de&wiki=dewiki&ns=Artikel&limit=200&month=" + LeadingZero(Monat) + "%2F" + Jahr + "&mode=view",'WCh',qbtarget,'WikiCharts');
// w (1,"http://toolserver.org/~aka/cgi-bin/revstat.cgi?period=168",'RStat',qbtarget,'Revert-Statistik (letzte Woche)');
// w (1,"http://toolserver.org/~luxo/Geburtstag.php",'Geburtstagskalender',qbtarget,'Wikipedia Geburtstagskalender');
// w (1,"//tools.wmflabs.org/wiki-todo/?language=de",'2Do',qbtarget,'Wikipedia ToDo');
// w (1,"http://toolserver.org/~aka/cgi-bin/reviewcnt.cgi",'RCt',qbtarget,'Sichtungsstatistik');
if (isArticle) {
// w (1,"http://stats.grok.se/de/"+WPDatum5+ptitle,'ASt',qbtarget,'Wikipedia article traffic statistics');
// w (1,"http://toolserver.org/~mzmcbride/cgi-bin/watcher.py?db=dewiki_p&titles="+pesctitle,'AWa',qbtarget,'Watcher');
// w (1,"http://toolserver.org/~daniel/WikiSense/Contributors.php?wikilang=de&wikifam=.wikipedia.org&page="+pesctitle+"&since=&until=&grouped=on&order=-rev_timestamp&max=100&order=-rev_timestamp&format=html",'ACnt',qbtarget,'Beiträge zu diesem Artikel');
// w (1,"//tools.wmflabs.org/wikihistory/wh.php?page_title="+pesctitle+"&lang=de",'AHst',qbtarget,'WikiHistory (APPER)');
}
if (rechtschreibpruefung && !isSpecial && (isArticle || window.RPonAllPages))
w(4, 'window.DontAutorunRP=0;if(typeof spellcheck!==\'function\')importScript(\'MediaWiki:Gadget-Rechtschreibpruefung.js\');else spellcheck();', 'Dudenn?', '', 'Rechtschreibprüfung');
w (1,intlinkstub+'Wikipedia:Abkürzungen','Aküfi',qbtarget,'Abkürzungen');
}
function qbCategoryTools() {
if (!isCategory) return;
w(0, trenner, 'Kategorie-Tools', '');
// w (1,"http://toolserver.org/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&userlang=de",'K:Scan',qbtarget,'Kategorie: CatScan');
// w (1,"//tools.wmflabs.org/catscan2/quick_intersection.php?lang=de&project=wikipedia&cats="+spesctitle+"&ns=0&depth=12&max=30000&start=0&format=html&redirects=&callback=",'K:Scan',qbtarget,'Kategorie: CatScan');
// w (1,"//tools.wmflabs.org/catscan2/catscan2.php?depth=3&categories="+spesctitle+"&interface_language=de&doit=1",'K:Scan2',qbtarget,'Kategorie: CatScan 2.0');
// w (1,"//tools.wmflabs.org/erwin85/categorycount.php?lang=de&family=wikipedia&namespaces=0&category="+spesctitle+"&subcats=1&d=100&submit=Submit",'K:Count',qbtarget,'Kategorie: Anzahl der Artikel');
// w (1,"http://toolserver.org/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&basedeep=5&mode=rc&hours=168&onlynew=on&userlang=de&go=Scannen",'K:NeuA',qbtarget,'Kategorie: Neue Artikel');
// w (1,"http://toolserver.org/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&basedeep=5&mode=cs&tagcat=Wikipedia%3AL%C3%B6schkandidat&tagdeep=1&userlang=de&go=Scannen",'K:LA',qbtarget,'Kategorie: Artikel mit Löschantrag');
// w (1,"//tools.wmflabs.org/missingtopics/?language=de&project=wikipedia&article=&category="+spesctitle+"&depth=5&wikimode=0&limitnum=1&doit=Run",'K:Miss',qbtarget,'Kategorie: Fehlende Artikel');
// w (1,"//tools.wmflabs.org/sighting/deep_out_of_sight.php?category="+spesctitle+"&depth=9",'K:NeuE',qbtarget,'Kategorie: Nachzusichtende Artikel');
// w (1,"//tools.wmflabs.org/sighting/deep_insight.php?category="+spesctitle+"&depth=9",'K:UsP',qbtarget,'Kategorie: Erstzusichtende Artikel');
}
function qbImageTools() {
if (!isFile) return;
w(0, trenner, 'Bild-Tools', '');
// w (1,"//tools.wmflabs.org/commonshelper/?interface=de&lang=de&project=wikipedia&image="+spesctitle+"&doit='Text generieren'",'D:M2C',qbtarget,'Datei: Move-to-commons-Assistent');
// w (1,"http://toolserver.org/~luxo/reworkhelper/index.php?image="+pesctitle,'D:RWH',qbtarget,'Datei: Reworkhelper');
w (1,"http://commons.wikimedia.org/wiki/Special:Upload",'Commons-Upload',qbtarget,'Commons-Upload');
// w (1,"http://toolserver.org/~daniel/WikiSense/CommonsClash.php?wikilang=de&wikifam=.wikipedia.org&order=img_name&max=200&format=html",'C-C',qbtarget,'CommonsClash');
// w (1,"//tools.wmflabs.org/commonshelper/?interface=de&lang=de&project=wikipedia",'M2C',qbtarget,'Move-to-commons-Assistent');
}
function qbExternTools() {
w(0, trenner, 'Externe Tools', '');
// w (1,"http://www.copyscape.com",'CopySc',qbtarget,'CopyScape');
// w (1,"http://toolserver.org/~revvar/urv.php",'URV?',qbtarget,'URV-Suche');
// w (1,"http://vs.aka-online.de/cgi-bin/globalwpsearch.pl?search="+pesctitle+"&timeout=300&minor=1",'GWS',qbtarget,'GlobalWikiSearch');
// w (1,"http://wikipedia.ramselehof.de/wikiblame.php?article="+pesctitle+"&user_lang=de&skipversions=2&ignorefirst=3&limit=250&searchmethod=lin",'WBlame',qbtarget,'Wikiblame');
// w (1,"http://vs.aka-online.de/cgi-bin/wppagehiststat.pl?lang=de&page="+pesctitle,'WPHS',qbtarget,'Seitenstatistik');
// w (1,"http://www.itp.uni-hannover.de/~krohn/wscan.html.utf8",'Krohn',qbtarget,'Krohn');
// w (1,"http://toolserver.org/~arnomane/cgi-bin/WP-autoreview.pl?l=de&do_typo_check=ON&Go%21=Go%21&lemma="+pesctitle,'AR',qbtarget,'AutoReview');
// w (1,"http://toolserver.org/~timl/cgi-bin/wikilint?l=de&do_typo_check=ON&remove_century=ON&url=http://de.wikipedia.org/wiki/"+pesctitle,'WL',qbtarget,'WikiLint (Autoreviewer)');
// w (1,"http://www.canoo.net",'Canoo',qbtarget,'Canoo');
w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'CIA World Factbook',qbtarget,'CIA World Factbook');
w (1,"http://www.retrobibliothek.de/retrobib/suche.html",'rbib',qbtarget,'retro-bib (u. a. Meyers Konversationslexikon 1888)');
if (isArticle) {
// w (1,"http://www.zeno.org/Zeno/0/Suche?&q=%22" + spesctitlelookup + "%22&h=1",'Zeno',qbtarget,'Verschiedene Lexika bei zeno.org');
w (1,"http://www.zeno.org/Zeno/0/Suche?&q=" + spesctitlelookup + "&h=1",'Zeno',qbtarget,'Verschiedene Lexika bei zeno.org');
} else {
w (1,"http://www.zeno.org/Bibliothek",'Zeno',qbtarget,'Verschiedene Lexika bei zeno.org');
}
w (1,"http://www.ddb.de",'DNB',qbtarget,'Deutsche Nationalbibliothek');
if (isArticle) {
w (1,"http://dispatch.opac.d-nb.de/DB=4.1/CMD?ACT=SRCHA&IKT=8514&SRT=YOP&TRM="+quickEscape(personlemma,1),'DNB GND-Suche',qbtarget,'DNB (GND-Suche)');
w (1,"http://swb2.bsz-bw.de/DB=2.104/SET=2/TTL=2/CMD?ACT=SRCHA&IKT=1&TRM="+quickEscape(personlemma,1),'OGND GND-Suche',qbtarget,'OGND (GND-Suche)');
} else {
w (1,"http://dnb.ddb.de/",'DNB GND-Suche',qbtarget,'DNB (GND-Suche)');
w (1,"http://swb2.bsz-bw.de/DB=2.104/SET=2/TTL=2/LNG=DU/START_WELCOME",'OGND GND-Suche',qbtarget,'OGND (GND-Suche)');
}
// w (1,"http://www.ubka.uni-karlsruhe.de/kvk.html",'KVK',qbtarget,'Karlsruher Virtueller Katalog');
// w (1,"//tools.wmflabs.org/isbn/IsbnCheckAndFormat?Language=Deutsch&FormatOnlyRaw=no&Test=http%3A%2F%2Fswb.bsz-bw.de%2FDB%3D2.1%2FCMD%3FACT%3DSRCHA%26IKT%3D1007%26TRM%3DMAGIC",'ISBN',qbtarget,'ISBN Checker/Formatter');
// w (1,"http://mdz10.bib-bvb.de/~ndb/ndbmaske.html",'A/NDB',qbtarget,'Allgemeine/Neue Deutsche Biographie');
// w (1,"http://www.deutsche-biographie.de/suche.html",'A/NDB',qbtarget,'Allgemeine/Neue Deutsche Biographie');
// w (1,"http://bse.sci-lib.com/",'Бсэ',qbtarget,'Большая советская энциклопедия');
// w (1,"http://encycl.yandex.ru/dict/bse",'Бсэ',qbtarget,'Большая советская энциклопедия');
// w (1,"http://wikyrilliza.visuelya.de/index.php",'Вик',qbtarget,'Wikyrilliza');
// w (1,"http://www.mcaviglia.ch/gmap/get_coor_ext.asp?l=de",'Coord',qbtarget,'Get Coordinates');
}
function qbEditTags() {
if (isFile || !isEdit) return;
w(0, trenner, 'Editierhilfen', '');
w (3,"br,'',''",'Umbruch','','Zeilenumbruch');
w (3,"'&','nbsp;',''",'nbsp','','Geschütztes Leerzeichen');
w (3,"'†','',''",'†','','Kreuz');
w (3,"'—','',''",'Spiegelstrich','','Geviertstrich (Spiegelstrich)');
w (3,"'–','',''",'Gedankenstrich','','Halbgeviertstrich (Gedankenstrich)');
w (3,"'-','',''",'Bindestrich','','Viertelgeviertstrich (Bindestrich)');
w (3,"'−','',''",'Minuszeichen','','Minuszeichen');
// w (3,"'→','',''",'→','','Pfeil nach rechts');
// w (3,"'←','',''",'←','','Pfeil nach links');
w (3,"'<!-- ',' -->',''",'Quelltextkommentar','','<!--Kommentar-->');
// </nowiki>
w (3,"'<nowiki>','</nowiki>',''",'Nowiki','','<nowiki>');
w (3,"'<code><nowiki>','</nowiki></code>',''",'Code','','<code+nowiki>');
w (3,"'<onlyinclude>','</onlyinclude>',''",'Onlyinclude','','<onlyinclude>');
// <nowiki>
w (3,"'„','“',''",'„“','','Anführungszeichen');
// w (3,"'<span class=\\u0022plainlinks\\u0022>','</span>',''",'Plain','','Plain Link');
w (3,"'<small>','</small>',''",'<small>small</small>','','Klein');
w (3,"'<s>','</s>',''",'<s>strike</s>','','Durchstreichen');
w (3,"'<u>','</u>',''",'<u>under</u>','','Unterstreichen');
w (3,"'<ref>','</ref>',''",'<small>[ref]</small>','','Referenz');
w (3,"'<ref name=\\u0022name\\u0022>','</ref>',''",'<small>[refN]</small>','','Referenz-Name');
w (3,"'<ref name=\\u0022name\\u0022 />','',''",'<small>[refR]</small>','','Referenz-Name-Wiederholung');
// w (3,"'<ref group=\\u0022name\\u0022>','</ref>',''",'<small>[refG]</small>','','Referenz-Gruppe');
// w (3,"'<ref group=\\u0022name\\u0022 name=\\u0022name\\u0022>','</ref>',''",'<small>[refGN]</small>','','Referenz-Gruppe-Name');
w (3,"'{{lang|en|','}}',''",'englisch','','Englisch');
w (3,"'<math>','</math>',''",'Mathe');
w (3,"':<math>\\u005Cmathrm{','}</math>',''",'Chemie');
w (3,"'\\n{{Kasten|1=',' " + usersignature + "}}\\n',''","Kasten",'','Kasten');
// temporary
w(3, '\'{{SortKeyName|\',\'|nl=1}}\',\'\'', 'Sortkey', '', 'SortKeyName');
}
function qbArticleTemps() {
if (isFile || !isEdit) return;
var personlemma = tagEscape(this.personlemma);
var spagetitle = tagEscape(this.spagetitle);
w(0, trenner, 'Artikelbausteine', '');
w (3,"'== Einzelnachweise ==\\n<references></references>\\n','',''",'References','','== Einzelnachweise ==');
w (3,"'== Literatur ==\\n','',''",'Literatur','','== Literatur ==');
w (3,"'== Weblinks ==\\n','',''",'Weblinks','','== Weblinks ==');
w (3,"'{{commonscat}}\\n','',''",'Commonscat','','commonscat');
w (3,"'[[Kategorie:',']]\\n',''","Kategorie:",'','[[Kategorie:]]');
w (3,"'{{DEFAULTSORT:" + tagEscape(quickEscape(personlemma,2)) + "}}\\n','',''","{{DEFAULTSORT:",'','{{DEFAULTSORT:');
w (3,"'[[Benutzer:',']]',''","Benutzer:",'','[[Benutzer:]]');
w (3,"'[[Wikipedia:',']]',''","WP:",'','[[Wikipedia:]]');
w (0,br,'','');
w (3,"'* {{DNB-Portal|','}}\\n',''","DNB-P",'','PND (individualisiert mit Treffern)');
w (3,"'* {{PNDfehlt|" + refDatumlang + "|','}}\\n',''","PNDF",'','PNDfehlt (nicht individualisiert, aber mit Treffern)');
w (3,"'{{Normdaten|PND=','}}\\n',''","ND",'','Normdaten (PND individualisiert)');
w (3,"'{{Personendaten\\n|NAME=" + tagEscape(personlemma) + "\\n|ALTERNATIVNAMEN=\\n|KURZBESCHREIBUNG=\\n|GEBURTSDATUM=\\n|GEBURTSORT=\\n|STERBEDATUM=\\n|STERBEORT=\\n}}\\n','',''",'PD','','{{Personendaten...');
// w (3,"'* {{ADB|Band|SeiteStart|SeiteEnde|" + tagEscape(personlemma) + "|Artikelautor}}\\n','',''","ADB",'','{{ADB...');
// w (3,"'* {{NDB|Band|SeiteStart|SeiteEnde|" + tagEscape(personlemma) + "|Artikelautor}}\\n','',''","NDB",'','{{NDB...');
// w (3,"'* {{ÖBL|Band|SeiteStart|SeiteEnde|" + tagEscape(personlemma) + "|Artikelautor}}\\n','',''","ÖBL",'','{{ÖBL...');
// w (3,"'* {{HLS|Artikelnummer|" + tagEscape(personlemma) + "|Autor=Artikelautor}}\\n','',''","HLS",'','{{HLS...');
// w (3,"'* {{WWW-DDR|Artikelnummer|" + tagEscape(personlemma) + "|Artikelautor}}\\n','',''","DDR",'','{{WWW-DDR...');
// w (3,"'* {{BBKL|x/name_x_y|autor=|artikel=" + tagEscape(personlemma) + "|band=|spalten=–}}\\n<!-- bitte vollständig ausfüllen -->\\n','',''","BBKL",'','{{BBKL...');
// w (3,"'* {{IMDb Name|','|" + tagEscape(wgTitle) + "}}\\n',''","IMDb-n",'','{{IMDb Name...');
// w (3,"'* {{IMDb Titel|tt','|" + tagEscape(wgTitle) + "}}\\n',''","IMDb-t",'','{{IMDb Titel...');
// w (3,"'* {{IMDb Unternehmen|','|" + tagEscape(wgTitle) + "}}\\n',''","IMDb-u",'','{{IMDb Unternehmen...');
// w (3,"'* {{OFDb|','|" + tagEscape(wgTitle) + "}}\\n',''","OFDb",'','{{OFDb...');
w (0,br,'','');
w (2,"'','#REDIRECT [[]]',1","Redirect",'','#REDIRECT [[]]');
w (2,"'+Überarbeiten','{{Überarbeiten}}\\n',3","Überarbeiten",'','{{Überarbeiten}}');
w (2,"'+Quelle','{{Quelle}}\\n',3","Quelle?",'','{{Quelle}}');
w (2,"'+Lückenhaft','{{Lückenhaft|Es fehlen...}}\\n',3","Lücke","","Lückenhaft");
// w (2,"'+Rechtshinweis','{{Rechtshinweis}}',2","Rechtshinweis");
// w (2,"'+Gesundheitshinweis','{{Gesundheitshinweis}}',2","Gesundheitswarnung");
}
function qbMarkupTools() {
if (isFile || !isEdit) return;
w(0, trenner, 'Markup-Tools', '');
w(4, 'addPersData();', 'AutoPD', '', 'Automatische Kategorien und Personendaten'); // extern
w(4, 'wpTextReplace();', 'suchen', '', 'finden und ersetzen');
if (autoFormatter) {
w(4, 'mw.libs.autoFormatter.click();', 'Syntaxkorrektur', '', 'Auto-Format: Verschiedene Markup-Korrekturen (User:TMg)'); // extern
} else {
w(4, 'ReplaceQuoteSigns();', 'korrekte Anführungszeichen', '', 'Anführungszeichen korrigieren'); // extern
w(4, 'convertEntities();', 'HTML-Fix', '', 'HTML-Entities entfernen'); // extern
w(4, 'fixDash();', 'einheitliche Halbgeviertstriche', '', 'Striche auf Halbgeviert vereinheitlichen'); // extern
w(4, 'ReplaceMarkup();', 'Markup-Korrekturen', '', 'Verschiedene Markup-Korrekturen (User:BLueFiSH)'); // extern
}
w(4, 'undate();', 'Daten entlinken', '', 'Daten entlinken');
}
function qbImageTemps() {
if (!isFile || !isEdit) return;
w(0, trenner, 'Bildbausteine', '');
w (4,"nowcomm();","NowCommons",'','NowCommons-Baustein setzen');
w (2,"'+DÜP','{{Dateiüberprüfung|Quelle|Urheber|Lizenz|Freigabe|Gezeigtes Werk|1923|Besonderer Fall}}\\n\\n',3","DÜP",'','Dateiüberprüfung (bitte überflüssige Parameter entfernen)');
}
function qbUsertalkTemps() {
if (!isUserpage || !isTalk || !isEdit) return;
var usersignature = tagEscape(this.usersignature);
w(0, trenner, 'Benutzerbausteine', '');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Begrüßung}} \\n\',\'\',\'\',\'Willkommen.\'', 'Wilkommen.', '', 'Willkommen.');
w (3, '\'{{subst:Benutzer:Chaddy/Vorlage:Signaturhinweis}} ' + usersignature + '\\n\',\'\',\'\',\'Bitte Diskussionsbeiträge unterschreiben!\'', 'Signieren!', '', 'Bitte Diskussionsbeiträge unterschreiben.');
w (3, '\'{{subst:Vorschau}} \\n\',\'\',\'\',\'Vorschaufunktion benutzen, büdde.\'', 'Vorschau!', '', 'Vorschaufunktion benutzen, büdde.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Bearbeitungskommentar}} \\n\',\'\',\'\',\'Bearbeitungskommentar abgeben, büdde.\'', 'Bearbeitungskommentar!', '', 'Bearbeitungskommentar abgeben, büdde.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:korrektes Verschieben}} \\n\',\'\',\'\',\'Verschiebefunktion benutzen, büdde. Copypaste ist URV.\'', 'korrekt verschieben!', '', 'Verschiebefunktion benutzen, büdde. Copypaste ist URV.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:korrektes Umtopfen}} \\n\',\'\',\'\',\'Hinweise beachten, büdde. Copypaste ist URV.\'', 'korrekt umtopfen!', '', 'Hinweise beachten, büdde. Copypaste ist URV.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Leeren ist nicht löschen}} \\n\',\'\',\'\',\'Tipp: Leeren ist nicht löschen!\'', 'leeren != löschen', '', 'Tipp: Leeren ist nicht löschen!');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Tee trinken}} \\n\',\'\',\'\',\'+Tee\'', '+Tee', '', '+Tee');
w (3, '\'{{Smiley|Kapitulation}} \\n\',\'\',\'\',\'Schlage Friedensverhandlungen vor!\'', 'Friede?', '', 'Schlage Friedensverhandlungen vor!');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Spielwiese benutzen}} \\n\',\'\',\'\',\'Für sowas die Spielwiese benutzen, büdde.\'', 'Wiese!', '', 'Für sowas die Spielwiese benutzen, büdde.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Auskunft fragen}} \\n\',\'\',\'\',\'Nich verzagen, Auskunft fragen!\'', 'Auskunft fragen', '', 'Nich verzagen, Auskunft fragen!');
w (3, '\'{{subst:Test}} \\n\',\'\',\'\',\'Hinweis\'', 'Test', '', 'Hinweis');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Erste und letzte Warnung}} \\n\',\'\',\'\',\'Das sage ich nur einmal.\'', 'einzige Warnung', '', 'Das sage ich nur einmal.');
w (3, '\'{{subst:Benutzer:Björn Hagemann/Vorlage:Pfoten wech}} \\n\',\'\',\'\',\'Ist das Deine Benutzerseite? Dann [[Spezial:Anmelden|logg Dich bitte ein]], um sie zu bearbeiten.\'', 'Pfoten wech', '', 'Ist das Deine Benutzerseite? Dann [[Spezial:Anmelden|logg Dich bitte ein]], um sie zu bearbeiten.');
w (3, '\'{{nicht archivieren}} \\n\',\'\',\'\',\'nicht archivieren\'', 'nicht archivieren.', '', 'nicht archivieren.');
// w (3,"'{{subst:Benutzer:Complex/Greetings/WP-WEB}} " + usersignature + "\\n','',''",'LinkspamC','','Baustein Complex:WP-WEB'); // Abwandlung von [[Benutzer:LKD/V/LHinweis]]
if (adminflag) w(3, '\'{{subst:Gelöscht|wwni|ka|wer|rel|pov|que|urv|g=ja|art=}} \\n\',\'\',\'\',\'Dein Artikel wurde gelöscht. Was nun?\'', 'SLA-ex', '', 'Autorenbenachrichtigung nach Schnelllöschung');
if (!isTalk) {
if (isUserpage && isEdit) {
w(0, trenner, '', '');
w(3, '\'+ als erledigt markieren\',\'{{Erledigt|1=--~~~~}}\',3', '+ Erle', '', '');
}
}
}
function qbAdminTools() {
if (!adminflag) return;
if (!isTalk) {
if (isUserpage && isEdit) {
w(0, trenner, '', '');
w(2, '\'+ statische IP\',\'{{statische IP}}\',2', '+ stat. IP', '', '+ statische IP');
w(2, '\'+ offener Proxy\',\'{{Offener Proxy}}\',2', '+ OP', '', '+ offener Proxy');
}
}
if (isTalk && isEdit) {
w(0, trenner, '', '');
w(2, '\'+ statische IP\',\'{{statische IP}}\',2', '+ stat. IP', '', '+ statische IP');
w(2, '\'+ gesperrter Benutzer\',\'{{Gesperrter Benutzer}}\',1', '+ GB', '', '+ gesperrter Benutzer');
w(2, '\'+ gesperrte IP\',\'{{IP-Sperrung}}\',2', '+ GIP', '', '+ gesperrte IP');
}
if (isRestore) {
w(0, trenner, '', '');
w(4, 'revAllDeletedVersions();', 'Auswahl umkehren?', '', 'Versionsauswahl umkehren?');
}
}
function qbAutoTemps() {
if (isSpecial && !isContrib) return;
w(0, trenner, 'Auto-Bausteine', '');
if (isUserpage && isEdit) w (3, '\'{{Baustelle}} \\n\',\'\',\'\',\'+Baustelle\'', '+Baustelle', '', '+Baustelle');
if (isArticleTalk && isEdit) w (3, '\'{{Diskussionsseite}} \\n\',\'\',\'\',\'+Diskussionsseitenhinweis\'', '+Diskussionsseitenhinweis', '', '+Diskussionsseitenhinweis');
if (isGeneric && !isSpecial) {
w(4, 'eintragen(1);', 'QS+', '', '+Qualitätssicherung');
w(4, 'eintragen(5);', 'URV+', '', '+URV');
w(4, 'eintragen(2);', 'LA+', '', '+Löschantrag');
}
if ((isCategory) && !isSpecial) {
w(4, 'eintragen(7);', 'KatLA+', '', '+Löschantrag (Kategorie)');
w(4, 'eintragen(14);', 'KatMove+', '', '+Verschiebeantrag (Kategorie)');
}
if (isTemplate) w(4, 'eintragen(8);', 'VorLA+', '', '+Löschantrag (Vorlage)');
if (!isSpecial) w(4, 'eintragen(3);', 'SLA+', '', '+Schnelllöschantrag');
// if (hinweis) {
// if (isGeneric && !isSpecial) w (4,"hinweis(1);","PH+","","+Portalhinweis");
// if (isGeneric && !isSpecial) w (4,"hinweis(2);","RH+","","+Redaktionshinweis");
// }
if (pagetitle === 'Wikipedia:Spielwiese') w(4, 'eintragen(10);', 'Spülwiese kärchern', '', 'Spielwiese mähen');
if (isContrib || isUserpage) w(4, 'eintragen(6);', 'VM (Benutzer)', '', '+Vandalismusmeldung (Benutzer)');
w(4, 'eintragen(9);', 'VM (Seite)', '', '+Vandalismusmeldung (Seite)');
}
//
// ab hier functions
//
function w(was, lurl, linktext, targt, title) {
title = title || linktext;
if (!zeigehilfe) title = '';
if (!dropdown) {
switch (was) {
case 0:
xxx += lurl;
break;
case 1:
xxx += '<a href="' + lurl + '" target="' + targt + '" title="' + title + '">' + linktext + '</a> ';
break;
case 2:
xxx += '<a href="#" onclick="newtext(' + lurl + ');return false;" title="' + title + '">' + linktext + '</a> ';
break;
case 3:
xxx += '<a href="#" onclick="insertTagsWrapper(' + lurl + ');return false;" title="' + title + '">' + linktext + '</a> ';
break;
case 4:
xxx += '<a href="#" onclick="' + lurl + '$(this).css({color:\'green\'});return false;" title="' + title + '">' + linktext + '</a> ';
break;
}
} else { // todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand???
var ltext = '__________'.substr(1, ind) + linktext;
switch (was) {
case 0:
if (lurl === br) {
xxx += '<option>' + linktext + '</option>';
ind = 2;
} else if (lurl === trenner) {
newdropdown(linktext);
}
break;
case 1:
xxx += '<option value="1|' + lurl + '">' + ltext + '</option>';
break;
case 2:
xxx += '<option value="2|' + scrptn + '">' + ltext + '</option>';
scrpt += 'case ' + scrptn + ':newtext(' + lurl + ');break;';
scrptn++;
break;
case 3:
xxx += '<option value="3|' + scrptn + '">' + ltext + '</option>';
scrpt += 'case ' + scrptn + ':insertTagsWrapper(' + lurl + ');break;';
scrptn++;
break;
case 4:
xxx += '<option value="4|' + scrptn + '">' + ltext + '</option>';
scrpt += 'case ' + scrptn + ':' + lurl + ';break;';
scrptn++;
break;
} // switch
} // else
} // w
function dodropdown(aktion) {
var zutun = aktion.split('|');
var was = Number(zutun[0]);
var wie = zutun[1];
switch (was) {
case 1:
window.open(wie);
break;
default:
window._doopt(Number(wie));
} // switch
} // dodropdown
function newdropdown(oname) {
closedropdown();
xxx += '<select size="1" onchange="dodropdown(this.value);" style="width:135px;font-size:9px;">';
if (oname) xxx += '<option>' + oname + '</option>';
indropdown = true;
ind = 2;
}
function closedropdown() {
if (indropdown) xxx += '</select>';
indropdown = false;
}
function newtext(subj, text, wo) {
// wo=1 : Text austauschen
// wo=2 : Text am Ende anhängen
// wo=3 : Text vorne Einfügen
if (subj) {
if (summary.value) summary.value += ', ';
summary.value += subj;
}
switch (wo) {
case 1:
textbox.value = text + '\n';
break;
case 2:
textbox.value += '\n' + text;
break;
case 3:
textbox.value = text + '\n' + textbox.value;
break;
}
textbox.focus();
}
function insertTagsWrapper(tagOpen, tagClose, sampleText, subj) {
if (!textbox) return;
if (subj) {
if (summary.value) summary.value += ', ';
summary.value += subj;
}
// mw.toolbar is deprecated and loads not automatically too
$(textbox).textSelection(
'encapsulateSelection', {
pre: untagEscape(tagOpen),
peri: untagEscape(sampleText),
post: untagEscape(tagClose)
}
);
}
// Krimskrams
function isEven(myNumber) {
return (myNumber % 2 === 0);
}
function isOdd(myNumber) {
return (!isEven(myNumber));
}
function LeadingZero(x) {
return (x >= 10 || x < 0 ? '' : '0') + x;
}
function hasRight(right) {
var specialrights = false;
var userrights = mw.config.get('wgUserGroups');
if (typeof userrights !== 'object') return specialrights;
if (typeof userrights[0] !== 'string') return specialrights;
for (i = 0; i < userrights.length; i++)
if (userrights[i] === right) specialrights = true;
return specialrights;
}
function quickEscape(text, esctype) {
// esctype = 1 -> normal umlaut escapes
// esctype = 2 -> wikisort umlaut escapes
text = text.replace(/[ÀÁÂÃÅĀĂĄǍǞǠǺȀȂȦȺḀẠẢẤẦẨẪẬẮẰẲẴẶ]/g, 'A').replace(/[àáâãåāăąǎǟǡǻȁȃȧⱥḁạảấầẩẫậắằẳẵặẚ]/g, 'a')
.replace(/[ÆǢǼ]/g, 'Ae').replace(/[æǣǽ]/g, 'ae')
.replace(/[ƁƂɃḂḄḆ]/g, 'B').replace(/[ƀƃḃḅḇ]/g, 'b')
.replace(/[ÇĆĈĊČƇȻḈ]/g, 'C').replace(/[çćĉċčƈȼḉ]/g, 'c')
.replace(/[ÐĎĐƉƊƋḊḌḎḐḒ]/g, 'D').replace(/[ðďđƌȡḋḍḏḑḓ]/g, 'd')
.replace(/ȸ/g, 'db')
.replace(/[DŽDžDZDz]/g, 'Dz').replace(/[dždz]/g, 'dz')
.replace(/[ÈÉÊËĒĔĖĘĚƎƐȄȆȨɆḔḖḘḚḜẸẺẼẾỀỂỄỆ]/g, 'E').replace(/[èéêëēĕėęěǝȅȇȩɇḕḗḙḛḝẹẻẽếềểễệ]/g, 'e')
.replace(/[ƑḞ]/g, 'F').replace(/[ƒḟ]/g, 'f')
.replace(/[ĜĞĠĢƓƔǤǦǴḠ]/g, 'G').replace(/[ĝğġģǥǧǵḡ]/g, 'g')
.replace(/[ĤĦȞⱧⱵḢḤḦḨḪ]/g, 'H').replace(/[ĥħȟⱨⱶḣḥḧḩḫẖ]/g, 'h')
.replace(/Ƕ/g, 'Hv').replace(/ƕ/g, 'hv')
.replace(/[ÌÍÎÏĨĪĬĮİƖƗǏȈȊḬḮỈỊ]/g, 'I').replace(/[ìíîïĩīĭįıǐȉȋḭḯỉị]/g, 'i')
.replace(/IJ/g, 'Ij').replace(/ij/g, 'ij')
.replace(/[ĴǰɈ]/g, 'J').replace(/[ĵȷɉ]/g, 'j')
.replace(/[ĶƘǨⱩḰḲḴ]/g, 'K').replace(/[ķĸƙǩⱪḱḳḵ]/g, 'k')
.replace(/[ĹĻĽĿŁȽⱠⱢḶḸḺḼ]/g, 'L').replace(/[ĺļľŀłƚƛȴⱡḷḹḻḽ]/g, 'l')
.replace(/[LJLj]/g, 'Lj').replace(/lj/g, 'lg')
.replace(/[ḾṀṂ]/g, 'M').replace(/[ḿṁṃ]/g, 'm')
.replace(/[ÑŃŅŇŊƝǸȠṄṆṈṊ]/g, 'N').replace(/[ñńņňʼnŋƞǹȵṅṇṉṋ]/g, 'n')
.replace(/[NJNj]/g, 'Nj').replace(/nj/g, 'nj')
.replace(/[ÒÓÔÕØŌŎŐƆƟƠǑǪǬǾȌȎȪȬȮȰṌṎṐṒỌỎỐỒỔỖỘỚỜỞỠỢ]/g, 'O').replace(/[òóôõøōŏőơǒǫǭǿȍȏȫȭȯȱṍṏṑṓọỏốồổỗộớờởỡợ]/g, 'o')
.replace(/Œ/g, 'Oe').replace(/œ/g, 'oe')
.replace(/Ƣ/g, 'Oi').replace(/ƣ/g, 'oi')
.replace(/[ƤⱣṔṖ]/g, 'P').replace(/[ƥṕṗ]/g, 'p')
.replace(/Ɋ/g, 'Q').replace(/ɋ/g, 'q')
.replace(/ȹ/g, 'qp')
.replace(/[ŔŖŘȐȒɌⱤṘṚṜṞ]/g, 'R').replace(/[ŕŗřȑȓɍṙṛṝṟ]/g, 'r')
.replace(/[ŚŜŞŠƩȘṠṢṤṦṨ]/g, 'S').replace(/[śŝşšſșȿṡṣṥṧṩẛ]/g, 's')
.replace(/ß/g, 'ss')
.replace(/[ŢŤŦƬƮȚȾṪṬṮṰ]/g, 'T').replace(/[ţťŧƫƭțȶⱦṫṭṯṱẗ]/g, 't')
.replace(/Þ/g, 'Th').replace(/þ/g, 'th')
.replace(/[ÙÚÛŨŪŬŮŰŲƯǓǕǗǙǛȔȖɄṲṴṶṸṺỤỦỨỪỬỮỰ]/g, 'U').replace(/[ùúûũūŭůűųưǔǖǘǚǜȕȗṳṵṷṹṻụủứừửữự]/g, 'u')
.replace(/[ƲṼṾ]/g, 'V').replace(/[ⱴṽṿ]/g, 'v')
.replace(/[ŴǷẀẂẄẆẈ]/g, 'W').replace(/[ŵƿẁẃẅẇẉẘ]/g, 'w')
.replace(/[ẊẌ]/g, 'X').replace(/[ẋẍ]/g, 'x')
.replace(/[ÝŸŶƳȲɎẎỲỴỶỸ]/g, 'Y').replace(/[ýÿŷƴȳɏẏỳỵỷỹẙ]/g, 'y')
.replace(/[ŹŻŽƵȤⱫẐẒẔ]/g, 'Z').replace(/[źżžƶȥɀⱬẑẓẕ]/g, 'z');
if (esctype === 1) {
text = text.replace(/Ä/g, 'Ae').replace(/ä/g, 'ae')
.replace(/Ö/g, 'Oe').replace(/ö/g, 'oe')
.replace(/Ü/g, 'Ue').replace(/ü/g, 'ue')
.replace(/Ə/g, 'Ae').replace(/ə/g, 'ae');
} else {
text = text.replace(/Ä/g, 'A').replace(/ä/g, 'a')
.replace(/Ö/g, 'O').replace(/ö/g, 'o')
.replace(/Ü/g, 'U').replace(/ü/g, 'u')
.replace(/Ə/g, 'A').replace(/ə/g, 'a');
}
return text;
}
function tagEscape(text) {
return text.replace(/'/g, '%27')
.replace(/"/g, '%22');
}
function untagEscape(text) {
return text.replace(/%27/g, '\'')
.replace(/%22/g, '"');
}
function spaceEscape(text) {
return text.replace(/ /g, '+')
.replace(/_/g, '+');
}
// helper functions for getting API timestamp
function getAPItimestamp(dateobject) {
return (dateobject.getFullYear() * 10000000000) + ((dateobject.getMonth() + 1) * 100000000) + (dateobject.getDate() * 1000000) + (dateobject.getHours() * 10000) + (dateobject.getMinutes() * 100);
}
function getFutureDate() {
var dateobject = new Date();
// adding 3 hours to dateobject
dateobject.setTime(dateobject.getTime() + (3 * 3600 * 1000));
return (getAPItimestamp(dateobject));
}
function getPastDate() {
var dateobject = new Date();
// subtracting 3 days from dateobject
dateobject.setTime(dateobject.getTime() - (3 * 24 * 3600 * 1000));
return (getAPItimestamp(dateobject));
}
// </nowiki>
/*
* 3xImport von [[Benutzer:Revvar]]
* aus [[Benutzer:Revvar/wikibits.js]] und [[Benutzer:Revvar/monobook.js]]
*/
/**
@description Imports a user javascript page from any Wikipedia project into the actual document.
@version 0.1.3
@date 2007/03/22
@author: based on function importPage from [[:de:User:PDD]]s monobook.js, extended by [[:de:User:Revvar]]
@revision 2. Sep. 2015
@param page Name of the user page without the "user:" prefix and function importJSL without the ".js" appendix
@param lang (optional) Language code of the corresponding wikipedia project. Default is the German project.
@return true on success, false otherwise
**/
// Helper-Function: zum Einbinden der Module <nowiki>
function importPage(page, lang) { // all languages support
try {
/* check the parameters and set defaults */
if (!page) throw Error('importPage: Missing parameter page.');
lang = lang || 'de'; // cLang
/* create import url */
import_url = '//' + lang + '.wikipedia.org' + sPath + '/index.php?title=User:' + page +
'&action=raw&ctype=text/javascript&maxage=86400&smaxage=60&bcache=1&debug=' + debugme;
mw.loader.load(import_url, 'text/javascript');
return true;
} catch (e) {
alert(e.message);
return false;
}
}
// Helper-Function
window.importJSL = function (page, lang) {
return importPage(page + '.js', lang);
};
/**
@description Imports a user css page from any Wikipedia project into the actual document.
@version 0.1.1
@date 2007/03/26
@author: based on function importPage from [[:de:User:PDD]]s monobook.js, rewritten by [[:de:User:Revvar]]
@param page Name of the user page without the "user:" prefix and the ".css" appendix
@param lang (optional) Language code of the corresponding wikipedia project. Default is the callers project.
@return true on success, false otherwise
**/
// Helper-Function
function importCSSL(page, lang) {
try {
/* check the parameters and set defaults */
if (!page) throw Error('importCSSL: Missing parameter page.');
lang = lang || cLang;
/* create import url */
import_url = '//' + lang + '.wikipedia.org' + sPath + '/index.php?title=User:' + page +
'.css&action=raw&ctype=text/css&smaxage=0&debug=' + debugme;
/* import page */
mw.loader.load(import_url, 'text/css');
return true;
} catch (e) {
alert(e.message);
return false;
}
}
// ***** FOOT-Block *****
// </nowiki> <- nicht löschen!!!
mw.loader.using(['mediawiki.util'], // load modules first
// virtual indent
function () {
/*
* Quickbar-Zusammenbau, Teil 2:
* zuerst die Reihenfolge der einzelnen Abschnitte:
*/
_getUser();
qbWPIntern();
qbPatrol();
qbWartung();
qbToolserver();
qbCategoryTools();
qbImageTools();
qbExternTools();
// ab hier keine Dropdowns mehr
closedropdown();
dropdown = false;
// die folgenden werden nur im Edit-Modus eingeblendet
qbEditTags();
qbArticleTemps();
qbMarkupTools();
qbImageTemps();
qbUsertalkTemps();
// der folgende Abschnitt wird nur bei Admins eingeblendet
qbAdminTools();
// Automatisches Bausteinsetzen
qbAutoTemps();
/*
* hier wird der Quickbar in die Seite geschrieben
* (ab hier bitte nichts ändern)
*/
var version = window.version || '?';
if (!isEdit || zeigeversion || isPHP) {
Quickbar += '<div style="text-align:right;font-size:' + qbfontsize + '%;">' +
(zeigeversion ?
('<a href="#" onclick="amIuptodate()" title="Versionscheck">' + (adminflag ? 'A/' : '') + version + '</a> ') :
'') +
(!isEdit ?
('<input type="checkbox" id="reloadme" name="reloadme" onchange="setReload()" title="Seite alle ' + (timeout / 1000) + ' s neu laden?" style="vertical-align:middle;"/> ') :
' ') +
'<a href="' + mw.config.get('wgScript') + '?title=Special%3APrefixindex&prefix=' + user +
'&namespace=2" target="' + qbtarget + '" title="Meine Seiten im Benutzernamensraum">' +
((user.split(' ')[0].length < 10) ? user.split(' ')[0] + '/.' : 'MyPages') +
'</a>' +
(userbrowser !== 'Standard' ?
(' <a href="#" onclick="badBrowser()" title="Browser nicht unterstützt">' +
userbrowser.charAt(0) + userbrowser.charAt(1) + '!</a>') :
'') + '</div>';
}
Quickbar += '<div style="font-size:' + qbfontsize + '%;margin:0;padding:0 0 2px 2px;"' + ((isVector) ? ' class="mw-body"' : '') + '>' + xxx + '</div></div>';
Quickbar = $($.parseHTML(Quickbar)); // FIXME: in initQuickbar() save as jQuery for later manipulation
if (scrpt) {
Quickbar.append('<script>function _doopt(was){switch(was){' + scrpt + '};}</script>');
scrpt = '';
}
$('body').append(Quickbar);
// FIXME: Hack for Vector! Need fix in initQuickbar(), .paddingTop is not same!?
if (isVector) Quickbar.height(Quickbar.outerHeight() - 170);
// ausgelagerte obligatorische Funktionen
importJSL('PDD/supportFuncs'); // [[Benutzer:PDD/supportFuncs.js]]
importJSL('Björn Hagemann/helperFunctions'); // [[Benutzer:PDD/helperFunctions.js]]
importJSL('Björn_Hagemann/eintragen'); // [[Benutzer:Björn Hagemann/eintragen.js]]
// importJSL('PDD/alertOnChanges'); // [[Benutzer:PDD/alertOnChanges.js]]
// obligatorisch nur für editpages
if (isEdit) {
importJSL('PDD/wpTextReplace'); // [[Benutzer:PDD/wpTextReplace.js]]
if (autoFormatter) {
importJSL('TMg/autoFormatter'); // [[Benutzer:TMg/autoFormatter.js]]
} else {
importJSL('BLueFiSH.as/JS/replaceQuoteSigns'); // [[Benutzer:BLueFiSH.as/JS/replaceQuoteSigns.js]]
// alt und ungepflegt
importJSL('BLueFiSH.as/JS/markup'); // [[Benutzer:BLueFiSH.as/JS/markup.js]]
importJSL('PDD/convertEntities'); // [[Benutzer:PDD/convertEntities.js]]
}
importJSL('Euku/persDaten'); // [[Benutzer:Euku/persDaten.js]]
// Signierfunktionen
if (!isArticle) {
if (signing) importJSL('Perhelion/signing'); // [[Benutzer:Perhelion/signing.js]]
if (unsigning) importJSL('Lustiger_seth/unsigned'); // [[Benutzer:Lustiger seth/unsigned.js]]
}
// extended search & replace feature
if (searchbox) importJSL('Zocky/SearchBox', 'en'); // [[:en:User:Zocky/SearchBox.js]]
// coordinates: Generierung der Koordinaten-Vorlage
if (coordinates) importJSL('Dschwen/coordinates'); // [[Benutzer:Dschwen/coordinates.js]]
}
// Skriptsammlung Fliegelflagel, [[Benutzer:Schnark/js/fliegelflagel]]
if (fliegelflagel) {
mw.hook('userjs.schnark-fliegelflagel.userdefine').fire({
version: 1.1,
profile: undefined,
additional: {
paneMarker: {
scripts: '[[mw:User:PerfektesChaos/js/paneMarker/r.js]]',
title: 'paneMarker@PerfektesChaos',
description: 'Beim Editieren einer Seite farbiges Tabulator-Icon anzeigen',
docpage: '//de.wikipedia.org/wiki/User:PerfektesChaos/js/paneMarker',
category: 'edit',
status: 'stable',
defaultEnabled: 4
}
},
config: {
}
});
// importJSL('Schnark/js/fliegelflagel.js/define');
importJSL(dev + '/js/fliegelflagel-define');
importJSL('Schnark/js/fliegelflagel.js/load');
}
// Ausgelagerte optionale Funktionen (Autoload)
// Revert/Loglink-Funktionen: möglichst früh einbinden
// Revert godmode-light
if (godmodelight && !adminflag && !editorflag && !isEdit && !(isSpecial && !isContrib)) importJSL('PDD/godmode-light'); // [[Benutzer:PDD/godmode-light.js]]
// Revert addEditAndRevertLinks
if (!(!aerhistory && isHistory) && !isEdit && (editlinkoldversion || revertwithreason)) importJSL('PDD/addEditAndRevertLinks'); // [[Benutzer:PDD/addEditAndRevertLinks.js]]
// LogLinks addLogsLink
if (addlogslink && !isSpecial) importJSL('PDD/addLogsLink'); // [[Benutzer:PDD/addLogsLink.js]]
// Statistik mwArticleStatistics
if (addstatslink && !isSpecial) importJSL('°/mwArticleStatistics'); // [[Benutzer:°/mwArticleStatistics.js]]
// jetzt alles andere, was optional ist
if (!isSpecial && (addeditintro || addpurge)) importJSL('PDD/modifyCA'); // [[Benutzer:PDD/modifyCA.js]]
// changeBeschriftungen *nach* modifyCA.js (!)
if (beschriftungen) importJSL('PDD/changeBeschriftungen'); // [[Benutzer:PDD/changeBeschriftungen.js]]
if (bklcheck && !fliegelflagel) importJSL('Schnark/js/bkl-check'); // [[Benutzer:Schnark/js/bkl-check.js]]
if (irrenhaus) { // Kackbalken-Script
mw.user.options.set('userjs-schnark-kackbalken-irr', '1');
importJSL('Schnark/js/kackbalken'); // [[Benutzer:Schnark/js/kackbalken.js]]
}
if (sperrstatus) importJSL('Stefan/Sperrstatus'); // [[Benutzer:Stefan/Sperrstatus.js]]
if (ippvandalmark && !isEdit) importPage('APPER/IP-Patrol/js'); // [[Benutzer:APPER/IP-Patrol/js]]
if (showredundantlinks && !isSpecial) importJSL('PDD/showRedundantLinks'); // [[Benutzer:PDD/showRedundantLinks.js]]
// Portal- und Redaktionshinweis
if (hinweis) importJSL('DerHexer/hinweise'); // [[Benutzer:DerHexer/hinweise.js]]
// showreftoggle
if (reftoggle && !isSpecial) importJSL('Malte_Schierholz/reftoggle'); // [[Benutzer:Malte Schierholz/reftoggle.js]]
// quickedit
if (qeEnabled) importJSL('ASM/quickedit'); // [[Benutzer:ASM/quickedit.js]]
// RIPE tooltips
if (ripe && !isEdit) importJSL('PDD/tooltips'); // [[Benutzer:PDD/tooltips.js]]
// adddelreason
if (adddelreason && adminflag) importJSL('P.Copp/scripts/adddeletereason'); // [[Benutzer:P.Copp/scripts/adddeletereason.js]]
// dellinknowcommons
if (dellinknowcommons && adminflag && isFile) importJSL('PDD/dellink-nc'); // [[Benutzer:PDD/dellink-nc.js]]
// loescheimer
if (loescheimer && adminflag) importJSL('PDD/modifyLKs'); // [[Benutzer:PDD/modifyLKs.js]]
// Codeispoetrys DupeCheck
if (imgdupecheck && isFile) importJSL('PDD/checkDupes'); // [[Benutzer:PDD/checkDupes.js]]
// P.Copp’s Diffhistory
if (diffhistory) importJSL('P.Copp/scripts/diffhistory'); // [[Benutzer:P.Copp/scripts/diffhistory.js]]
// P.Copp’s Hideduplicatecontribs
if (isContrib && hideduplicatecontribs) importJSL('PDD/hideduplicatecontribs'); // [[Benutzer:PDD/hideduplicatecontribs.js]]
// hideNsLinkSearch.js
if (hidenslinksearch) importJSL('PDD/hideNsLinkSearch'); // [[Benutzer:PDD/hideNsLinkSearch.js]]
// Markierskripte ganz zum Schluss einbinden, da sie innerHTML verändern
if (markerledigt) importJSL('Euku/markErledigt'); // [[Benutzer:Euku/markErledigt.js]]
if (markadmins && action !== 'submit' && !isDiff) {
if (!(!window.mawatchlist && isWatchlist) && !(!window.macontribs && isContrib))
importJSL('PDD/markAdmins'); // [[Benutzer:PDD/markAdmins.js]]
}
if (markutf8 && !(!muwatchlist && isWatchlist) && !(!mucontribs && isContrib)) importJSL('PDD/markUTF8'); // [[Benutzer:PDD/markUTF8.js]]
}); // end load modules
// Und hier ist die monobook.js zu Ende. Jedenfalls die von PDD ^^
// Beobachtungslistenreparaturschnippsel
lang="JavaScript">
document.write('<script type="text/javascript" src="'
+ 'http://en.wikipedia.org/w/index.php?title=User:Alex Smotrov/wlunwatch.js'
+ '&action=raw&ctype=text/javascript"></script>');