Benutzer:Kenwilliams/monobook.js
Aus MosaPedia
< Benutzer:Kenwilliams(Unterschied zwischen Versionen)
K |
K (hat „Benutzer:Marcus Cyron/monobook.js“ nach „Benutzer:Kenwilliams/monobook.js“ verschoben und dabei eine Weiterleitung überschrieben: zurück verschieben) |
||
(Der Versionsvergleich bezieht 2 dazwischenliegende Versionen mit ein.) | |||
Zeile 2: | Zeile 2: | ||
popupEditCounterTool='custom'; | popupEditCounterTool='custom'; | ||
popupEditCounterUrl='http://mosapedia.de/wiki/Benutzer:$1?ectarget=$1'; | popupEditCounterUrl='http://mosapedia.de/wiki/Benutzer:$1?ectarget=$1'; | ||
+ | |||
+ | // FAQ: | ||
+ | // | ||
+ | // Frage: Wie übernehme ich dieses Skript? | ||
+ | // | ||
+ | // Antwort: Einfach "Quelltext betrachten", alles markieren und kopieren, und dann in deine eigene | ||
+ | // monobook.js (also hierhinein: [[Spezial:Mypage/monobook.js|Benutzer:<DeinName>/monobook.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 | ||
+ | |||
+ | // | ||
+ | // 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>\n'; | ||
+ | // (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten) | ||
+ | // var usersignature = '-- \~\~\~\~'; | ||
+ | // </nowiki> | ||
+ | |||
+ | // Originalskript ursprünglich gefunden bei [[:en:User:Angela]] | ||
+ | // bearbeitet von [[Benutzer:Maximus Rex]] | ||
+ | // bearbeitet von [[Benutzer:SirJective]] | ||
+ | // bearbeitet von [[Benutzer:BLueFiSH.as]] | ||
+ | // bearbeitet von [[Benutzer:Littl]] (2005-09-07) | ||
+ | // bearbeitet von [[Benutzer:Schwalbe]] (2006-02-03) | ||
+ | // bearbeitet wieder von [[Benutzer:Littl]] (2006-02-21) | ||
+ | // bearbeitet von [[Benutzer:PDD]] (ab 2006-04-22) | ||
+ | |||
+ | // *************** SETUP Anfang ********************************** | ||
+ | // Funktionen im Quickbar (monobook.js) | ||
+ | |||
+ | 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 usedropdown = false; // Wenn keine Dropdowns gewünscht sind, hier false eintragen! | ||
+ | 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 Prozent) | ||
+ | |||
+ | // systemweite Default-Optionen aus [[MediaWiki:Monobook.js]] | ||
+ | NavigationBarShowDefault = 15; // Navi-Leisten: alle einklappen == 0; alle ausklappen == 15 (z.B.) | ||
+ | var oldEditsectionLinks = false; // "Bearbeiten"-Links bei Abschnitten ganz nach rechts? | ||
+ | var enable_linkFA = true; // "Featured Articles" in fremdsprachigen Wikipedias markieren? | ||
+ | |||
+ | // <nowiki> | ||
+ | // Modul: changeBeschriftungen.js | ||
+ | var beschriftungen = true; // kosmetische Änderungen an der MediaWiki-Oberfläche? | ||
+ | var markhandsoff = true; // fremde Benutzerseiten grafisch markieren? | ||
+ | var markbecareful = true; // verschiedene Buttons rot markieren? | ||
+ | // Beschriftungen: personal toolbar | ||
+ | var cbmytalk = "Meine Diskussion"; | ||
+ | var cbprefs = "Einstellungen"; | ||
+ | var cbwatchlist = "Beobachtungsliste"; | ||
+ | var cbmyconts = "Meine Beiträge"; | ||
+ | var cblogout = "X"; | ||
+ | // Beschriftungen: current article | ||
+ | var cbedit = "Bearbeiten"; | ||
+ | var cbhistory = "Versionen"; | ||
+ | var cbmove = "Verschieben"; | ||
+ | var cbwatch = "Beobachten"; | ||
+ | var cbunwatch = "Ignorieren"; | ||
+ | // Beschriftungen: tools | ||
+ | var cbwhatlinkshere = "Links a. d. Seite"; | ||
+ | var cblinked = "Verlinkte Änderungen"; | ||
+ | var cbmail = "E-Mail senden"; | ||
+ | var cbupload = "Bild hochladen"; | ||
+ | var cbprint = "Druckversion"; | ||
+ | var cbblock = "User sperren"; | ||
+ | // Beschriftungen: portlets | ||
+ | var cblang = "Interwiki"; | ||
+ | |||
+ | // Modul: changeSZtoSS.js | ||
+ | var changeszlig = false; // "ß" in "ss" ändern (nach Schweizer Rechtschreibung)? | ||
+ | |||
+ | // Modul: eintragen.js | ||
+ | var autosave = true; // automatisches Speichern von QS/LA/SLA/BildLA/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 = "Kein Artikel"; // Standard-SLA-Grund | ||
+ | var defaultVandal = "vandaliert in [[]]"; // Standardgrund für Vandalismusmeldung | ||
+ | |||
+ | // 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 = "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: 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? | ||
+ | var pagelogtext = "Page:Log"; // Text des Seitenlogbuch-Links | ||
+ | var userlogtext1 = "User:Log:1"; // Texte der beiden Benutzerlog-Links | ||
+ | var userlogtext2 = "User:Log:2"; | ||
+ | |||
+ | var addusercontriblink = true; // auf Benutzerseiten auch noch Link auf Contributions? | ||
+ | var usercontribtext = "User:Contribs"; // Text des Contributions-Links ("Benutzerbeiträge") | ||
+ | var userdeledittext = "User:DelEdits"; // Text des Links auf Deleted Edits | ||
+ | var userstatstext = "User:Stats"; // Text des Links auf Benutzerstatistik | ||
+ | var userstimmrechttext = "User:Stimmrecht"; // Text des Links auf Stimmrechtcheck | ||
+ | |||
+ | var adduserarticlelink = true; // auf Benutzerseiten Link auf erstellte Artikel? | ||
+ | var userarticletext = "User:Articles"; // Text des Links auf erstellte Artikel | ||
+ | |||
+ | var addbrowselink = true; // auf allen Seiten Link zum alphabetischen Browsen? | ||
+ | var browseuserprefix = true; // bei Nutzerseiten stattdessen alle Unterseiten des Nutzers zeigen? | ||
+ | var browsetext = "Browse"; // Text des Links auf Browsing-Seite | ||
+ | |||
+ | var addiusagelink = true; // bei Bildern Link zur Bildnutzung (Commons)? | ||
+ | var imgusagetext = "IMG:C-Usage"; // Text des Links auf Bildnutzung | ||
+ | |||
+ | // Modul: modifyCA.js | ||
+ | var addeditintro = true; // TAB zum Editieren des Nullabschnitts (Intros) einer Seite hinzufügen? | ||
+ | var editintrotext = "IntroBearbeiten"; // Beschriftung des TABs | ||
+ | var addpurge = true; // TAB zum Purgen (Servercache-Updaten) einer Seite hinzufügen? | ||
+ | var purgetext = "Purge"; // Beschriftung des TABs | ||
+ | |||
+ | // Modul: markAdmins.js | ||
+ | var markadmins = true; // Admins besonders hervorheben? | ||
+ | var mawatchlist = true; // auch auf der Beobachtungsliste? | ||
+ | var macontribs = true; // auch auf den Benutzerbeiträgen? | ||
+ | var markatxt = "A"; // Markierung für Admins | ||
+ | var markrenatxt = "UmA"; // Markierung für umbenannte Admins | ||
+ | var markbureautxt = "B"; // Markierung für Bürokraten | ||
+ | var markstewtxt = "S"; // Markierung für Stewards | ||
+ | var markcomadmins = true; // Commons-Admins besonders hervorheben? | ||
+ | var markcomatxt = "ComA"; // Markierung für Commons-Admins | ||
+ | var markexadmins = true; // Ex-Admins besonders hervorheben? | ||
+ | var markexatxt = "ExA"; // Markierung für Ex-Admins | ||
+ | var markexbureautxt = "ExB"; // Markierung für Ex-Bürokraten | ||
+ | var markarbcom = true; // Schiedsgericht besonders hervorheben? | ||
+ | var markarbcomtxt = "SG"; // Markierung für Schiedsgerichtler | ||
+ | var markadmarbcomtxt = "SGA"; // Markierung für adminisierte Schiedsgerichtler (öhm) | ||
+ | var markcheckuser = true; // CheckUser besonders hervorheben? | ||
+ | var markcheckusertxt = "CU"; // Markierung für Checkuser-Berechtigte | ||
+ | |||
+ | // 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: reftoggle.js | ||
+ | var reftoggle = false; // "Quellen verstecken"/"Quellen anzeigen"-Schalter für Fußnoten? | ||
+ | |||
+ | // Modul: newgallery.js | ||
+ | var newgallery = false; // Anzahl Bilder/Zeile in Galerien verändern? | ||
+ | var gallery_len = 6; // Breite der Galerien | ||
+ | var bCategory = true; // nur in Kategorien? | ||
+ | var bArticle = true; // (oder/und) nur in Artikeln? | ||
+ | |||
+ | // Modul: quickedit.js | ||
+ | var qeEnabled = false; // QuickEdit aktivieren? | ||
+ | var qeEnableSection0 = false; // QuickEdit-Link für Abschnitt 0 (Einleitung)? | ||
+ | var qeEnableAccessKeys = true; // Tastaturbefehle aktivieren? | ||
+ | var qeTextboxHeight = 20; // Höhe des Textfelds | ||
+ | |||
+ | // Modul: APPERs RP | ||
+ | var rechtschreibpruefung = false; // Rechtschreibprüfung aktivieren? | ||
+ | var AutorunRP = false; // false = RP durch Anklicken; true = automatische RP | ||
+ | |||
+ | // Modul: APPERs IP-Patrol Vandalenmarkierer | ||
+ | var ippvandalmark = false; // IP-Patrol-Vandalenmarkierung aktivieren? | ||
+ | |||
+ | // Modul: wikiminiatlas2.js | ||
+ | var miniatlas = false; // WikiMiniAtlas anschalten? | ||
+ | |||
+ | // 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? | ||
+ | |||
+ | // Modul: signing.js | ||
+ | var signing = false; // automatische Unterschrift auf Diskussionsseiten? | ||
+ | // Liste der Nicht-Diskussionsseiten, die ebenfalls unterschrieben werden sollen: | ||
+ | var regpages = new Array(':Verbesserungsvorschläge', ':Löschkandidaten', ':Adminkandidaturen', ':Qualitätssicherung', ':Fragen_zur_Wikipedia', ':Meinungsbilder', ':Review', ':Bilderwünsche',':Kandidaten'); | ||
+ | |||
+ | // Modul: SearchBox.js | ||
+ | var searchbox = false; // erweitertes suchen/ersetzen | ||
+ | |||
+ | // </nowiki> | ||
+ | // Modul: customToolbar.js | ||
+ | var customtoolbar = false; // mehr Buttons in der Symbolleiste? | ||
+ | // Anzahl und Reihenfolge wählbar (siehe: [[Benutzer:Olliminatore/Extra-Editbuttons]]) | ||
+ | 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"; | ||
+ | // zu entfernende Standard-Edit buttons (0...10) | ||
+ | var rmEditButtons = [6,7,10]; // Standardbutton entfernen | ||
+ | |||
+ | // Modul: popups.js (Lupin, Navpop) | ||
+ | var lupinpopups = false; // Popup-Modul einbinden? | ||
+ | // 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]]) | ||
+ | popupDelay = 1; // Popupverzögerung in s (DEFAULT: 0.5) | ||
+ | simplePopups = false; // auf true setzen, wenn Laden im Hintergrund unerwünscht (DEFAULT: false) | ||
+ | popupStructure = 'menus'; // Aussehen der Popups (DEFAULT: 'shortmenus') | ||
+ | popupActionsMenu = false; // separates "actions"-Menu (DEFAULT: true) | ||
+ | popupImages = true; // Bilder im Popup erwünscht? (DEFAULT: true) | ||
+ | popupSubpopups = true; // Popups für Links innerhalb von Popups generieren? (DEFAULT: true) | ||
+ | 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 | ||
+ | removeTitles = false; // Originaltitel der Links nach popups verschieben? (DEFAULT: true) | ||
+ | popupFixRedirs = true; // Links auf Redirects korrigieren? (DEFAULT: false) | ||
+ | popupWatchRedirredPages = false; // korrigierte Seite beobachten? (DEFAULT: null) | ||
+ | popupRedirAutoClick = 'wpSave'; // ausgeführte Aktion beim Korrigieren von Redirects (DEFAULT: 'wpDiff') | ||
+ | popupRedlinkRemoval = true; // Rote Links entfernen? (DEFAULT: false) | ||
+ | popupFixDabs = true; // Links auf BKLs korrigieren? (DEFAULT: false) | ||
+ | popupWatchDisambiggedPages = false; // korrigierte Seite beobachten? (DEFAULT: null) | ||
+ | popupLastModified = true; // Zeit seit letzter Änderung anzeigen? (DEFAULT: true) | ||
+ | popupDiffDates = true; // Änderungsdaten bei Diffs anzeigen? (DEFAULT: true) | ||
+ | popupOnlyArticleLinks = true; // Popups nur für Artikel-Links (DEFAULT: true) | ||
+ | imagePopupsForImages = false; // Bildvorschau laden, wenn Mausposition über Bild? (DEFAULT: true) | ||
+ | popupMaxWidth = 400; // Maximalbreite des Popup-Fensters (DEFAULT: 350) | ||
+ | popupRevertSummaryPrompt = true; // Prompt zum Ändern des Revert-Kommentars? (DEFAULT: false) | ||
+ | popupMaxPreviewSentences = 2; // Anzahl der angezeigten Sätze in der Vorschau (DEFAULT: 4) | ||
+ | // <nowiki> | ||
+ | // Link auf Popups zu Messages hinzufügen? | ||
+ | addpopuplink = true; | ||
+ | // deutsche Texte für Lupin | ||
+ | popupFixDabsSummary = "Ersetze BKL-Seite [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupExtendedRevertSummary = "Revert auf Version vom %s von Benutzer %s, oldid %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupRevertSummary = "Revert auf Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupRevertToPreviousSummary = "Revert auf Vorgängerversion der Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupQueriedRevertSummary = "Revert auf Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupQueriedRevertToPreviousSummary = "Revert auf Vorgängerversion der Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupFixRedirsSummary = "Ersetze Redirect [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupRedlinkSummary = "Entferne Link auf leere Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | popupRmDabLinkSummary = "Entferne Link auf BKL-Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); | ||
+ | |||
+ | // weitere Module | ||
+ | var showredundantlinks = false; // zeigt doppelte Links an | ||
+ | var ripe = false; // Ripe - Tooltips? | ||
+ | var irrenhaus = false; // Script für mehr Abwechslung im "neue Nachrichten"-Balken | ||
+ | var js_highlight = false; // javascript-code farbig hervorheben (.js and pre-tags) | ||
+ | |||
+ | // special rights options | ||
+ | var dellinknowcommons = true; | ||
+ | |||
+ | // **************** SETUP Ende *********************************** | ||
+ | |||
+ | // (PDD: note to self: version auch in alert-Funktion ändern!) | ||
+ | var version = 'P098n'; | ||
+ | |||
+ | var user = 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 = new Array("", "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); | ||
+ | var Jahr = jetzt.getYear(); | ||
+ | if (Jahr < 999) Jahr += 1900; | ||
+ | var Monat = jetzt.getMonth() + 1; | ||
+ | var Tag = jetzt.getDate(); | ||
+ | // 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); | ||
+ | |||
+ | // Lemma-Varianten (work in progress) + redundant zu addLogsLink etc. | ||
+ | // get page title | ||
+ | var pagetitle = wgPageName; | ||
+ | var spagetitle = wgTitle; | ||
+ | // 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 | ||
+ | var pesctitle = ptitle.split(' ').join('+'); | ||
+ | var spesctitle = sptitle.split(' ').join('+'); | ||
+ | // Komma-Lemma für Personen (Klammerzusätze weg etc.) | ||
+ | var personlemma = spagetitle.split(' (')[0]; | ||
+ | var titlesplit = personlemma.split(' '); | ||
+ | if (titlesplit.length > 1) { | ||
+ | personlemma = titlesplit[titlesplit.length-1] + ','; | ||
+ | for (i=0; i<(titlesplit.length-1); i++) | ||
+ | personlemma=personlemma + " "+titlesplit[i]; | ||
+ | } | ||
+ | |||
+ | // 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]); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // page type variables: namespaces | ||
+ | var isArticle = (wgNamespaceNumber == 0); | ||
+ | var isArticleTalk = (wgNamespaceNumber == 1); | ||
+ | var isBild = (wgCanonicalNamespace == "Image"); | ||
+ | var isCategory = (wgCanonicalNamespace == "Category"); | ||
+ | var isTemplate = (wgCanonicalNamespace == "Template"); | ||
+ | var isGeneric = false; | ||
+ | if ((!isBild) && (!isCategory) && (!isTemplate)) | ||
+ | isGeneric = true; | ||
+ | var isProject = (wgCanonicalNamespace == "Project"); /* NR Wikipedia: */ | ||
+ | var isHelp = (wgCanonicalNamespace == "Help"); /* NR Hilfe */ | ||
+ | |||
+ | // page type variables: namespace == -1 | ||
+ | var isSpecial = (wgCanonicalNamespace == "Special"); | ||
+ | var isRestore = (isSpecial && (wgCanonicalSpecialPageName == "Undelete")); | ||
+ | var isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions")); | ||
+ | var isWatchlist = (isSpecial && (wgCanonicalSpecialPageName == "Watchlist")); | ||
+ | |||
+ | // page type variables: namespace == -1 | ||
+ | var isTalk = (!isSpecial && isOdd(wgNamespaceNumber)); | ||
+ | |||
+ | // page type variables: other stuff | ||
+ | var isPHP = (document.URL.indexOf('index.php') > 0); | ||
+ | var isDiff = UrlParameters["diff"]; | ||
+ | var isEdit = ((UrlParameters['action']=='edit') || (UrlParameters['action']=='submit')); | ||
+ | var isHistory = (UrlParameters['action']=='history'); | ||
+ | |||
+ | // userpage/name stuff, vor allem für IPs | ||
+ | var userPageOwner = ""; | ||
+ | if (isContrib) { | ||
+ | if (UrlParameters['target']) userPageOwner = UrlParameters['target'].split('+').join('_'); | ||
+ | else { | ||
+ | userPageOwner = decodeURIComponent(location.href.substring(location.href.indexOf("/wiki/") + 6)).split('#')[0]; | ||
+ | userPageOwner = userPageOwner.substring(userPageOwner.indexOf("Beiträge/") + 9); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // page type variables: user & user discussion lumped together | ||
+ | var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") ); | ||
+ | var isUserMainpage = false; | ||
+ | if (isUserpage) | ||
+ | if (wgTitle == wgTitle.split("/")[0]) { | ||
+ | isUserMainpage = true; | ||
+ | userPageOwner = wgTitle; | ||
+ | } | ||
+ | |||
+ | // handelt es sich um eine IP? | ||
+ | var isIPUser = false; | ||
+ | if (userPageOwner != "") | ||
+ | if (userPageOwner.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/) != null) | ||
+ | if ((userPageOwner.split(".")[0] > 1) && (userPageOwner.split(".")[0] < 255)) | ||
+ | isIPUser = true; | ||
+ | |||
+ | // Admin functions | ||
+ | var adminflag = false; | ||
+ | if (isAdmin()) adminflag = true; | ||
+ | |||
+ | // Browserkram | ||
+ | var userbrowser = "Standard"; | ||
+ | if (navigator.userAgent.indexOf("Opera") > -1) | ||
+ | userbrowser = "Opera" | ||
+ | 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; | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * 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:5px; left:0px; width:14.1em; z-index:10;">'; | ||
+ | // optional: opacity:0.9; | ||
+ | var xxx = ''; | ||
+ | |||
+ | var trenner='<hr />'; | ||
+ | var br ='<br />'; | ||
+ | |||
+ | var qbtarget = '_self'; | ||
+ | if (qbnewpage) qbtarget = '_blank'; | ||
+ | |||
+ | var dropdown = usedropdown; | ||
+ | var scrpt = ''; | ||
+ | var scrptn = 0; | ||
+ | var indropdown; | ||
+ | var ind; | ||
+ | |||
+ | /* | ||
+ | * Quickbar-Zusammenbau, Teil 1: | ||
+ | * | ||
+ | * zuerst die Reihenfolge der einzelnen Abschnitte: | ||
+ | */ | ||
+ | |||
+ | function buildQuickbar() { | ||
+ | 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(); | ||
+ | } | ||
+ | |||
+ | |||
+ | /* | ||
+ | * Quickbar-Zusammenbau, Teil 2: | ||
+ | * | ||
+ | * die Belegung der einzelnen Abschnitte | ||
+ | */ | ||
+ | |||
+ | function qbWPIntern() { | ||
+ | w (0,trenner,'Wikipedia',''); | ||
+ | |||
+ | // w (1,'/wiki/Hilfe:MediaWiki','MW',qbtarget,'MediaWiki-Hilfe'); | ||
+ | // w (1,'/wiki/Wikipedia:Hilfe','RTFM',qbtarget,'Wikipedia-Hilfe'); | ||
+ | // w (1,'/wiki/Hilfe:Textgestaltung','TG',qbtarget,'Hilfe zur Textgestaltung'); | ||
+ | // w (1,'/wiki/Hilfe:Farben','FT',qbtarget,'Hilfe zur Farbgestaltung'); | ||
+ | w (1,'/wiki/Wikipedia:Kurier','K',qbtarget,'Wikikurier - Das Wikipedia-Nachrichtenblatt'); | ||
+ | w (1,'/wiki/Wikipedia:Fragen zur Wikipedia','FZW',qbtarget,'Fragen zur Wikipedia'); | ||
+ | w (1,'/wiki/Wikipedia:Auskunft','A',qbtarget,'Auskunft'); | ||
+ | // w (1,'/wiki/Wikipedia:Autorenportal','P',qbtarget,'Autorenportal'); | ||
+ | w (1,'/wiki/Wikipedia:Projektneuheiten','NEU',qbtarget,'Projektneuheiten'); | ||
+ | w (1,'/wiki/Wikipedia:Verbesserungsvorschläge','VV',qbtarget,'Verbesserungsvorschläge'); | ||
+ | w (1,'/wiki/Wikipedia:Administratoren/Notizen','AN',qbtarget,'Administratoren/Notizen'); | ||
+ | w (1,'/wiki/Wikipedia:Adminkandidaturen','AK',qbtarget,'Adminkandidaturen'); | ||
+ | w (1,'/wiki/Wikipedia:Administratoren/Probleme','AP',qbtarget,'Administratoren/Probleme'); | ||
+ | w (1,'/wiki/Wikipedia:Schiedsgericht/Anfragen','SG/A',qbtarget,'Schiedsgericht/Anfragen'); | ||
+ | w (1,'/wiki/Wikipedia:Checkuser/Anfragen','CU/A',qbtarget,'Checkuser/Anfragen'); | ||
+ | w (1,'/wiki/Wikipedia:Abkürzungen','?',qbtarget,'Abkürzungen'); | ||
+ | } | ||
+ | |||
+ | function qbPatrol() { | ||
+ | w (0,trenner,'Überwachung',''); | ||
+ | |||
+ | w (1,'/w/index.php?title=Special:Recentchanges&hideminor=0&hideliu=1&hidebots=1&hidepatrolled=0&days=7&limit='+rclimit,'RCs',qbtarget,'Letzte Änderungen'); | ||
+ | w (1,'/wiki/Special:Contributions/newbies','RCNs',qbtarget,'Beiträge neuer Benutzer'); | ||
+ | w (1,'/w/index.php?title=Special:Newpages&namespace=0&limit='+nplimit+'&offset=0','NeuA',qbtarget,'Neue Artikel'); | ||
+ | // w (1,'/wiki/Special:Newimages','NeuD',qbtarget,'Neue Dateien (Bilder)'); | ||
+ | w (1,'/w/index.php?title=Special:Log&limit='+nulimit+'&type=newusers','NeuB',qbtarget,'Neue Benutzer'); | ||
+ | w (1,'/wiki/Special:Log','Log',qbtarget,'Logfiles'); | ||
+ | w (1,'/wiki/Wikipedia:Vandalismusmeldung','VM',qbtarget,'Vandalismusmeldung'); | ||
+ | // w (1,'irc://irc.freenode.net/wikipedia-de','IRC',qbtarget,'IRC-Chat #wikipedia-de'); | ||
+ | } | ||
+ | |||
+ | function qbWartung() { | ||
+ | w (0,trenner,'Wartung',''); | ||
+ | |||
+ | // w (1,'/wiki/Wikipedia:Löschregeln','WP:LR',qbtarget,'Löschregeln'); | ||
+ | w (1,'/wiki/Kategorie:Wikipedia:Schnelllöschen','SLK',qbtarget,'Schnelllöschkandidaten'); | ||
+ | w (1,'/wiki/Wikipedia:Löschkandidaten','LK',qbtarget,'Löschkandidaten'); | ||
+ | w (1,'/wiki/Wikipedia:Löschkandidaten/'+WPDatum,'LKH',qbtarget,'Löschkandidaten (heute)'); | ||
+ | w (1,'/wiki/Wikipedia:Löschkandidaten/Bilder/'+WPDatum,'BildLK',qbtarget,'Löschkandidaten (Bilder)'); | ||
+ | w (1,'/wiki/Wikipedia:WikiProjekt_Kategorien/Diskussionen/'+WPDatum2,'KatLK',qbtarget,'Löschkandidaten (Kategorien)'); | ||
+ | w (1,'/wiki/Wikipedia:Versionslöschungen','LKV',qbtarget,'Versionslöschungen'); | ||
+ | w (1,'/wiki/Wikipedia:Löschprüfung','LP',qbtarget,'Löschprüfung'); | ||
+ | w (1,'/wiki/Wikipedia:Entsperrwünsche','EW',qbtarget,'Entsperrwünsche'); | ||
+ | |||
+ | w (1,'/wiki/Wikipedia:Qualitätssicherung/'+WPDatum,'QS',qbtarget,'Qualitätssicherung'); | ||
+ | w (1,'/wiki/Wikipedia:Redundanz/'+WPDatum3,'RED',qbtarget,'Redundanz'); | ||
+ | w (1,'/wiki/Kategorie:Wikipedia:Unverständlich','Wirr',qbtarget,'Unverständlich'); | ||
+ | w (1,'/wiki/Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URV',qbtarget,'Löschkandidaten (URVs)'); | ||
+ | |||
+ | w (1,'/wiki/Wikipedia:Kandidaten für exzellente Artikel','KEA',qbtarget,'Kandidaten für exzellente Artikel'); | ||
+ | w (1,'/wiki/Wikipedia:Kandidaten für lesenswerte Artikel','KLA',qbtarget,'Kandidaten für lesenswerte Artikel'); | ||
+ | w (1,'/wiki/Wikipedia:Review','RV',qbtarget,'Review'); | ||
+ | } | ||
+ | |||
+ | function qbToolserver() { | ||
+ | w (0,trenner,'Toolserver',''); | ||
+ | |||
+ | // w (1,"http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user="+user+"&dbname=dewiki_p",'EC+',qbtarget,'Mein Editcount'); | ||
+ | w (1,"http://tools.wikimedia.de/~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://tools.wikimedia.de/~gunther/adminaktivitaet.php",'AdmA',qbtarget,'Adminaktivität'); | ||
+ | w (1,"http://tools.wikimedia.de/~aka/cgi-bin/revstat.cgi?period=168",'RStat',qbtarget,'Revert-Statistik'); | ||
+ | w (1,"http://tools.wikimedia.de/~luxo/Geburtstag.php",'GK',qbtarget,'Wikipedia Geburtstagskalender'); | ||
+ | |||
+ | if (isArticle) { | ||
+ | w (1,"http://tools.wikimedia.de/~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",'Conts',qbtarget,'Beiträge zu diesem Artikel'); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function qbCategoryTools() { | ||
+ | if (!isCategory) return; | ||
+ | |||
+ | w (0,trenner,'Kategorie-Tools',''); | ||
+ | |||
+ | w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&userlang=de",'K:Scan',qbtarget,'Kategorie: CatScan'); | ||
+ | w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&basedeep=5&mode=rc&hours=168&onlynew=on&userlang=de&go=Scannen",'K:Neu',qbtarget,'Kategorie: Neue Artikel'); | ||
+ | w (1,"http://tools.wikimedia.de/~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,"http://tools.wikimedia.de/~magnus/missingtopics.php?project=wikipedia&language=de&category="+spesctitle+"&depth=5&wikimode=0&doit=Run",'K:Miss',qbtarget,'Kategorie: Fehlende Artikel'); | ||
+ | } | ||
+ | |||
+ | function qbImageTools() { | ||
+ | if (!isBild) return; | ||
+ | |||
+ | w (0,trenner,'Bild-Tools',''); | ||
+ | |||
+ | w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia&image="+spesctitle+"&doit='Text generieren'",'B:M2C',qbtarget,'Bild: Move-to-commons-Assistent'); | ||
+ | w (1,'http://tools.wikimedia.de/~luxo/reworkhelper.html','B:RWH',qbtarget,'Bild: Reworkhelper'); | ||
+ | |||
+ | w (1,'http://commons.wikimedia.org/wiki/Special:Upload','C-Up',qbtarget,'Commons-Upload'); | ||
+ | w (1,'http://tools.wikimedia.de/~daniel/WikiSense/CommonsClash.php?wikilang=de&wikifam=.wikipedia.org&order=img_name&max=200&format=html','C-C',qbtarget,'CommonsClash'); | ||
+ | w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia",'M2C',qbtarget,'Move-to-commons-Assistent'); | ||
+ | } | ||
+ | |||
+ | function qbExternTools() { | ||
+ | w (0,trenner,'Externe Tools',''); | ||
+ | |||
+ | if (isIPUser) { | ||
+ | // w (1,"http://www.ripe.net/whois?form_type=simple&full_query_string=&searchtext="+userPageOwner+"&do_search=Search",'IPripe',qbtarget); | ||
+ | w (1,"http://www.dnsstuff.com/tools/ipall.ch?domain="+userPageOwner,'IPinfo',qbtarget,'IPInfo/Whois'); | ||
+ | w (1,"http://www.dnsstuff.com/tools/tracert.ch?ip="+userPageOwner,'IPtrcrt',qbtarget,'Traceroute'); | ||
+ | w (1,"http://jodies.de/ipcalc?host="+userPageOwner+"&mask1=18&mask2=",'IPrange',qbtarget,'Range/Subnet Rechner'); | ||
+ | } else { | ||
+ | // w (1,"http://www.ripe.net/whois",'ripe',qbtarget); | ||
+ | // w (1,"http://www.dnsstuff.com/",'whois',qbtarget,'Whois'); | ||
+ | // w (1,"http://www.denic.de/de/",'denic',qbtarget,'Domain-Lookup'); | ||
+ | // w (1,"http://www.iks-jena.de/cgi-bin/whois",'iks-whois',qbtarget,'IKS-Whois-Lookup'); | ||
+ | } | ||
+ | |||
+ | if ((!isIPUser) && (userPageOwner != "")) | ||
+ | w (1,"http://tools.wikimedia.de/~interiot/cgi-bin/queries/SUL?user="+userPageOwner,'SUL',qbtarget,'Single-user login conflict search'); | ||
+ | |||
+ | // w (1,"http://www.copyscape.com",'CopySc',qbtarget); | ||
+ | w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'AffenKr',qbtarget,'Affenkrieger'); | ||
+ | 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','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); | ||
+ | w (1,'http://rupp.de/cgi-bin/WP-autoreview.pl?l=de&lemma='+pesctitle,'AR',qbtarget,'AutoReview'); | ||
+ | |||
+ | w (1,"http://www.canoo.net",'Canoo',qbtarget); | ||
+ | w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'FactB',qbtarget,'CIA World Factbook'); | ||
+ | w (1,"http://de.encarta.msn.com/artcenter_/browse.html",'Enc',qbtarget,'MSN Encarta'); | ||
+ | w (1,"http://lexikon.meyers.de/index.php/Meyers-Meyers_Lexikon_online",'Meyers',qbtarget,'Meyers Lexikon online'); | ||
+ | w (1,"http://susi.e-technik.uni-ulm.de:8080/Meyers2/index/index.html",'Mey88',qbtarget,'Meyers Konversationslexikon 1888'); | ||
+ | w (1,"http://www.ddb.de",'DNB',qbtarget,'Deutsche Nationalbibliothek'); | ||
+ | |||
+ | if (isArticle) { | ||
+ | w (1,"http://dispatch.opac.ddb.de/DB=4.1/CMD?ACT=SRCHA&IKT=8514&SRT=YOP&TRM="+quickEscape(personlemma,1),'DNB-PND',qbtarget,'DNB (PND-Suche)'); | ||
+ | } else { | ||
+ | w (1,"http://dnb.ddb.de/",'DNB-PND',qbtarget,'DNB (PND-Suche)'); | ||
+ | } | ||
+ | |||
+ | w (1,"http://www.ubka.uni-karlsruhe.de/kvk.html",'KVK',qbtarget,'Karlsruher Virtueller Katalog'); | ||
+ | w (1,"http://mdz1.bib-bvb.de/~ndb/ndbmaske.html",'ADB',qbtarget,'Allgemeine/Neue Deutsche Biographie'); | ||
+ | } | ||
+ | |||
+ | function qbEditTags() { | ||
+ | if (isBild) return; | ||
+ | if (!isEdit) return; | ||
+ | |||
+ | w (0,trenner,'Editierhilfen',''); | ||
+ | |||
+ | w (3,"br,'',''",'br','','Zeilenumbruch'); | ||
+ | w (3,"'&','nbsp;',''",'nbsp','','Geschütztes Leerzeichen'); | ||
+ | w (3,"'†','',''",'†','','Kreuz'); | ||
+ | w (3,"'–','',''",'–','','Gedankenstrich'); | ||
+ | w (3,"'→','',''",'→','','Pfeil nach rechts'); | ||
+ | w (3,"'<!-- ',' -->',''",'// comment','','<!--Kommentar-->'); | ||
+ | w (3,"'„','“',''",'„“','','Anführungszeichen'); | ||
+ | // </nowiki> | ||
+ | w (3,"'<nowiki>','</nowiki>',''",'Nowiki','','<nowiki>'); | ||
+ | w (3,"'<code><nowiki>','</nowiki></code>',''",'Code','','<code+nowiki>'); | ||
+ | // <nowiki> | ||
+ | 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,"'<math>','</math>',''",'Math'); | ||
+ | w (3,"':<math>\\u005Cmathrm{','}</math>',''",'ChemForm'); | ||
+ | } | ||
+ | |||
+ | function qbArticleTemps() { | ||
+ | if (isBild) return; | ||
+ | if (!isEdit) return; | ||
+ | |||
+ | w (0,trenner,'Artikelbausteine',''); | ||
+ | |||
+ | w (3,"'== Weblinks ==\\n','',''",'Weblinks','','== Weblinks =='); | ||
+ | w (3,"'== Einzelnachweise ==\\n<references />\\n','',''",'Refs','','== Einzelnachweise =='); | ||
+ | |||
+ | w (3,"'[[Kategorie:',']]\\n',''","Kat:",'','[[Kategorie:]]'); | ||
+ | w (3,"'{{DEFAULTSORT:"+quickEscape(personlemma,2)+"}}\\n','',''","DefSrt",'','{{DEFAULTSORT:'); | ||
+ | w (3,"'[[Benutzer:',']]',''","User:",'','[[Benutzer:]]'); | ||
+ | w (3,"'[[Wikipedia:',']]',''","WP:",'','[[Wikipedia:]]'); | ||
+ | |||
+ | w (0,br,'',''); | ||
+ | |||
+ | w (3,"'{{Personendaten\\n|NAME="+personlemma+"\\n|ALTERNATIVNAMEN=\\n|KURZBESCHREIBUNG=\\n|GEBURTSDATUM=\\n|GEBURTSORT=\\n|STERBEDATUM=\\n|STERBEORT=\\n}}\\n','',''",'PD','','{{Personendaten...'); | ||
+ | w (3,"'* {{IMDb Name|','|"+wgTitle+"}}\\n',''","IMdb-n",'','{{IMDb Name...'); | ||
+ | w (3,"'* {{IMDb Titel|','|"+wgTitle+"}}\\n',''","IMdb-t",'','{{IMDb Titel...'); | ||
+ | w (3,"'* {{OFDb Titel|','|"+wgTitle+"}}\\n',''","OFDb-t",'','{{OFDb Titel...'); | ||
+ | |||
+ | w (0,br,'',''); | ||
+ | |||
+ | w (2,"'Redirect angelegt','#REDIRECT [[]]',1","Redir",'','#REDIRECT [[]]'); | ||
+ | w (2,"'+Überarbeiten','{{Überarbeiten}}\\n\\n',3","Überarb",'','{{Überarbeiten}}'); | ||
+ | w (2,"'+Quelle','{{Quelle}}\\n\\n',3","Quelle?",'','{{Quelle}}'); | ||
+ | // w (2,"'+Stub','{{Stub}}\\n\\n',2","Stub"); | ||
+ | w (2,"'+Lückenhaft','{{Lückenhaft|Es fehlen...}}\\n\\n',2","Lücke","","Lückenhaft"); | ||
+ | // w (2,"'+Rechtshinweis','{{Rechtshinweis}}',2","Recht"); | ||
+ | // w (2,"'+Gesundheitshinweis','{{Gesundheitshinweis}}',2","Gesundh."); | ||
+ | } | ||
+ | |||
+ | function qbMarkupTools() { | ||
+ | if (isBild) return; | ||
+ | if (!isEdit) return; | ||
+ | |||
+ | w (0,trenner,'Markup-Tools',''); | ||
+ | |||
+ | w (4,"addPersData();","AutoPD",'','Automatische Kategorien und Personendaten'); // extern | ||
+ | w (4,"wpTextReplace();","Replace",'','Suchen und Ersetzen'); | ||
+ | if (rechtschreibpruefung && !AutorunRP && !isSpecial) | ||
+ | w (4,"spellcheck();","SpellChk",'','Rechtschreibprüfung'); | ||
+ | w (4,"replaceQuoteSigns();","FixQuotes",'','Anführungszeichen korrigieren'); // extern | ||
+ | w (4,"ReplaceMarkup();","FixMarkup",'','Verschiedene Markup-Korrekturen'); // extern | ||
+ | w (4,"undate();","UnDate",'','Daten entlinken'); | ||
+ | } | ||
+ | |||
+ | function qbImageTemps() { | ||
+ | if (!isBild) return; | ||
+ | if (!isEdit) return; | ||
+ | |||
+ | w (0,trenner,'Bildbausteine',''); | ||
+ | w (4,"nowcomm();","NowCommons"); | ||
+ | w (2,"'+BLU','{{subst:BLU}}\\n\\n',3","BLU"); | ||
+ | w (2,"'+BLU-User','{{subst:BLU-User}}\\n\\n',3","BLU-User"); | ||
+ | } | ||
+ | |||
+ | function qbUsertalkTemps() { | ||
+ | if (!isUserpage) return; | ||
+ | if (!isTalk) return; | ||
+ | if (!isEdit) return; | ||
+ | |||
+ | w (0,trenner,'Benutzerbausteine',''); | ||
+ | |||
+ | // w (3,"'{{subst:Benutzer:PDD/Greetings/Hallo|" + user + "}} " + usersignature + "\\n','',''","Hallo"); | ||
+ | w (3,"'{{subst:Benutzer:PDD/Greetings/HalloG|" + user + "|" + usersignature + "}}\\n','','','Willkommen!'","Hallo",'','Baustein PDD:Hallo'); | ||
+ | w (3,"'{{subst:Benutzer:PDD/Greetings/Danke}} " + usersignature + "\\n','',''",'Danke','','Baustein PDD:Danke'); | ||
+ | w (3,"'{{subst:Benutzer:Complex/Greetings/TestMitStopschild}} " + usersignature + "\\n','',''",'Stop','','Baustein Complex:TestMitStopschild'); // Abwandlung von [[Benutzer:LKD/V/VHinweis]] | ||
+ | // w (3,"'{{subst:Benutzer:Blah/Vorlage:Vandale}}\\n','',''",'Vand','','Baustein Blah:Vandale'); | ||
+ | // w (3,"'{{subst:Benutzer:Tobi B./Vorlage:Löschvandale}} " + usersignature + "\\n','',''",'LöschV','','Baustein Tobi B.:Löschvandale'); | ||
+ | w (3,"'{{subst:Benutzer:PDD/Greetings/KinderKinder!}}\\n','',''",'Kind','','Baustein PDD:Kind'); | ||
+ | w (3,"'{{Diskussion}}\\n','',''",'Sign!','','{{Diskussion}}'); | ||
+ | w (3,"'{{subst:Vorschau}} " + usersignature + "\\n','',''",'Vorschau','','{{subst:Vorschau}}'); | ||
+ | w (3,"'{{subst:Benutzer:PDD/Greetings/Linkspam}} " + usersignature + "\\n','',''",'Linkspam','','Baustein PDD:Linkspam'); | ||
+ | // 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:Benutzer:LKD/V/ALoesch}} " + usersignature + "\\n','',''",'SLA-ex','','Autorenbenachrichtigung nach Schnelllöschung'); | ||
+ | } | ||
+ | |||
+ | function qbAdminTools() { | ||
+ | if (!adminflag) return; | ||
+ | |||
+ | if (isArticle || isCategory) { | ||
+ | w (0,trenner,'',''); | ||
+ | w (4,"eintragen(12);","LemmaSp+","","+Lemmasperrung"); | ||
+ | } | ||
+ | |||
+ | if (isArticleTalk && isEdit) { | ||
+ | w (0,trenner,'',''); | ||
+ | w (2,"'+Halbsperrung','{{Halbsperrung}}\\n',3","HSp","","Zugehöriger Artikel halbgesperrt"); | ||
+ | w (2,"'+Vollsperrung','{{Vollsperrung}}\\n',3","VSp","","Zugehöriger Artikel vollgesperrt"); | ||
+ | } | ||
+ | |||
+ | // alt | ||
+ | if (isUserMainpage && isEdit) { | ||
+ | w (0,trenner,'',''); | ||
+ | w (2,"'+Gesperrter Benutzer','{{Gesperrter Benutzer}}',1","BSp",'','Benutzer gesperrt'); | ||
+ | } | ||
+ | // neu | ||
+ | //if (isUserpage || isContrib) { | ||
+ | // w (0,trenner,'',''); | ||
+ | // w (4,"eintragen(13);","BSp+","","+Benutzersperrung"); | ||
+ | //} | ||
+ | |||
+ | // if (delreasons && !isSpecial) { | ||
+ | //w (0,trenner,'',''); | ||
+ | //w (4,"del(1);","D(U)"); | ||
+ | //w (4,"del(2);","D(T)"); | ||
+ | //w (4,"del(3);","D(KA)"); | ||
+ | //w (4,"del(4);","D(UR)"); | ||
+ | //w (4,"del(12);","D(FL)"); | ||
+ | //w (4,"del(5);","D(I)"); | ||
+ | //w (4,"del(6);","D(FSR)"); | ||
+ | //w (4,"del(7);","D(Fl)"); | ||
+ | //w (4,"del(14);","D(WdB)"); | ||
+ | //w (4,"del(9);","D(Werb)"); | ||
+ | //w (4,"del(10);","D(Wieder)"); | ||
+ | //w (4,"del(11);","D(Fake)"); | ||
+ | //w (4,"del(15);","D(VDs)"); | ||
+ | // } | ||
+ | |||
+ | if (isRestore) { | ||
+ | w (0,trenner,'',''); | ||
+ | w (4,"checkAllDeletedVersions();","Alle Versionen?","","Alle Versionen wiederherstellen?"); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function qbAutoTemps() { | ||
+ | if (isSpecial && !isContrib) return; | ||
+ | |||
+ | w (0,trenner,'Auto-Bausteine',''); | ||
+ | |||
+ | if (( isGeneric) && (!isSpecial)) w (4,"eintragen(1);","QS+","","+Qualitätssicherung"); | ||
+ | if (( isGeneric) && (!isSpecial)) w (4,"eintragen(5);","URV+","","+URV"); | ||
+ | if (( isGeneric) && (!isSpecial)) w (4,"eintragen(2);","LA+","","+Löschantrag"); | ||
+ | if (( isBild) && (!isSpecial)) w (4,"eintragen(4);","BildLA+","","+Löschantrag Bild"); | ||
+ | // if (( isBild) && (!isSpecial)) w (4,"eintragen(9);","BLU+","","+BLU"); | ||
+ | if (( isCategory) && (!isSpecial)) w (4,"eintragen(7);","KatLA+","","+Löschantrag Kategorie"); | ||
+ | if (( isTemplate) && (!isSpecial)) w (4,"eintragen(8);","VorLA+","","+Löschantrag Vorlage"); | ||
+ | if ( (!isSpecial)) w (4,"eintragen(3);","SLA+","","+Schnelllöschantrag"); | ||
+ | if (( isContrib) || ( isUserpage)) w (4,"eintragen(6);","VANDAL+","","+Vandalismusmeldung"); | ||
+ | if (hinweis) { | ||
+ | if (( isGeneric) && (!isSpecial)) w (4,"hinweis(1);","PH+","","+Portalhinweis"); | ||
+ | if (( isGeneric) && (!isSpecial)) w (4,"hinweis(2);","RH+","","+Redaktionshinweis"); | ||
+ | } | ||
+ | if (wgPageName == "Wikipedia:Spielwiese") w (4,"eintragen(10);","SP-Reset","","Spielwiese zurücksetzen"); | ||
+ | } | ||
+ | |||
+ | |||
+ | /* | ||
+ | * hier wird der Quickbar in die Seite geschrieben | ||
+ | * (ab hier bitte nichts ändern) | ||
+ | */ | ||
+ | |||
+ | buildQuickbar(); | ||
+ | document.write(Quickbar); | ||
+ | |||
+ | if (typeof(version) == 'undefined') var version = "?"; | ||
+ | if (!isEdit || zeigeversion || isPHP) { | ||
+ | document.write( | ||
+ | '<div align=right>', | ||
+ | |||
+ | (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?"></input> ') | ||
+ | : ' ', | ||
+ | |||
+ | '<a href="/w/index.php?title=Spezial%3APrefixindex&from=',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>'); | ||
+ | } | ||
+ | document.write('<div style="font-size:',qbfontsize,'%;">',xxx,'</div></div>'); | ||
+ | |||
+ | if (scrpt > '') { | ||
+ | document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>'); | ||
+ | scrpt=''; | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // ab hier functions | ||
+ | // | ||
+ | |||
+ | function w (was,lurl,linktext,targt,title) { | ||
+ | if (!title) title=linktext; | ||
+ | if (!zeigehilfe) title=''; | ||
+ | if (!dropdown) { | ||
+ | switch (was) { | ||
+ | case 0 : xxx=xxx+lurl;break; | ||
+ | case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> ';break; | ||
+ | case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; | ||
+ | case 3 : xxx=xxx+'<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; | ||
+ | case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a> ';break; | ||
+ | } | ||
+ | } //if | ||
+ | else //todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand???? | ||
+ | { | ||
+ | var ltext='__________'.substr(1,ind)+linktext; | ||
+ | switch (was) { | ||
+ | case 0 : if (lurl==br) {xxx=xxx+'<option>'+linktext+'</option>';ind=2;} | ||
+ | else | ||
+ | if (lurl==trenner) newdropdown(linktext); | ||
+ | break; | ||
+ | case 1 : xxx=xxx+'<option value="1|'+lurl+'">'+ltext+'</option>';break; | ||
+ | case 2 : xxx=xxx+'<option value="2|'+scrptn+'">'+ltext+'</option>'; | ||
+ | scrpt=scrpt+'case '+scrptn+':newtext('+lurl+');break;';scrptn++;break; | ||
+ | case 3 : xxx=xxx+'<option value="3|'+scrptn+'">'+ltext+'</option>'; | ||
+ | scrpt=scrpt+'case '+scrptn+':insertTagsWrapper('+lurl+');break;';scrptn++;break; | ||
+ | case 4 : xxx=xxx+'<option value="4|'+scrptn+'">'+ltext+'</option>'; | ||
+ | scrpt=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; | ||
+ | case 2 : _doopt (Number(wie)); break; | ||
+ | case 3 : _doopt (Number(wie)); break; | ||
+ | case 4 : _doopt (Number(wie)); break; | ||
+ | } //switch | ||
+ | } //dodropdown | ||
+ | |||
+ | function newdropdown (oname) { | ||
+ | closedropdown(); | ||
+ | xxx=xxx+'<select size=1 onchange="dodropdown(this.value);" style="width:135px;font-size:9px;">'; | ||
+ | if (oname > '') {xxx=xxx+'<option>'+oname+'</option>';} | ||
+ | indropdown = true; | ||
+ | ind=2; | ||
+ | } | ||
+ | |||
+ | function closedropdown () { | ||
+ | if (indropdown) xxx=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 (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; | ||
+ | document.editform.wpSummary.value = document.editform.wpSummary.value + subj; | ||
+ | } | ||
+ | |||
+ | switch (wo) { | ||
+ | case 1 : document.editform.wpTextbox1.value=text+'\n'; break; | ||
+ | case 2 : document.editform.wpTextbox1.value=document.editform.wpTextbox1.value+'\n'+text;break; | ||
+ | case 3 : document.editform.wpTextbox1.value=text+'\n'+document.editform.wpTextbox1.value;break; | ||
+ | } | ||
+ | document.editform.wpTextbox1.focus(); | ||
+ | } | ||
+ | |||
+ | function insertTagsWrapper(tagOpen, tagClose, sampleText, subj) { | ||
+ | if (subj > "") { | ||
+ | if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; | ||
+ | document.editform.wpSummary.value = document.editform.wpSummary.value + subj; | ||
+ | } | ||
+ | insertTags(tagOpen, tagClose, sampleText) | ||
+ | } | ||
+ | |||
+ | // 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 isAdmin() { | ||
+ | var specialrights = false; | ||
+ | if (typeof wgUserGroups != 'object') return(specialrights); | ||
+ | if (typeof wgUserGroups[0] != 'string') return(specialrights); | ||
+ | for (i=0;i<wgUserGroups.length;i++) { | ||
+ | if (wgUserGroups[i] == "sysop") specialrights = true; | ||
+ | } | ||
+ | return(specialrights); | ||
+ | } | ||
+ | function quickEscape(text, esctype) | ||
+ | { | ||
+ | // esctype = 1 -> normal umlaut escapes | ||
+ | // esctype = 2 -> wikisort umlaut escapes | ||
+ | text = text.replace(/ß/g, "ss"); | ||
+ | |||
+ | text = text.replace(/Á/g,"A").replace(/á/g,"a").replace(/À/g,"A").replace(/à/g,"a"); | ||
+ | text = text.replace(/Ă/g,"A").replace(/ă/g,"a").replace(/Â/g,"A").replace(/â/g,"a"); | ||
+ | text = text.replace(/Ć/g,"C").replace(/ć/g,"c").replace(/Č/g,"C").replace(/č/g,"c"); | ||
+ | text = text.replace(/Ç/g,"C").replace(/ç/g,"c"); | ||
+ | text = text.replace(/É/g,"E").replace(/é/g,"e").replace(/È/g,"e").replace(/è/g,"e"); | ||
+ | text = text.replace(/Ğ/g,"G").replace(/ğ/g,"g"); | ||
+ | text = text.replace(/Í/g,"I").replace(/í/g,"i").replace(/Ì/g,"I").replace(/ì/g,"i"); | ||
+ | text = text.replace(/İ/g,"I").replace(/ı/g,"i").replace(/Î/g,"I").replace(/î/g,"i"); | ||
+ | text = text.replace(/Ł/g,"L").replace(/ł/g,"l"); | ||
+ | text = text.replace(/Ń/g,"N").replace(/ń/g,"n").replace(/Ñ/g,"N").replace(/ñ/g,"n"); | ||
+ | text = text.replace(/Ó/g,"O").replace(/ó/g,"o").replace(/Ò/g,"O").replace(/ò/g,"o"); | ||
+ | text = text.replace(/Ø/g,"O").replace(/ø/g,"o").replace(/Õ/g,"O").replace(/õ/g,"o"); | ||
+ | text = text.replace(/Ő/g,"O").replace(/ő/g,"o"); | ||
+ | text = text.replace(/Ř/g,"R").replace(/ř/g,"r"); | ||
+ | text = text.replace(/Ś/g,"S").replace(/ś/g,"s").replace(/Š/g,"S").replace(/š/g,"s"); | ||
+ | text = text.replace(/Ş/g,"S").replace(/ş/g,"s"); | ||
+ | text = text.replace(/Ú/g,"U").replace(/ú/g,"u").replace(/Ù/g,"U").replace(/ù/g,"u"); | ||
+ | text = text.replace(/Ű/g,"U").replace(/ű/g,"u"); | ||
+ | text = text.replace(/Ź/g,"Z").replace(/ź/g,"z").replace(/Ž/g,"Z").replace(/ž/g,"z"); | ||
+ | |||
+ | if (esctype == 1) { | ||
+ | text = text.replace(/Ä/g, "Ae").replace(/Ö/g, "Oe").replace(/Ü/g, "Ue"); | ||
+ | text = text.replace(/ä/g, "ae").replace(/ö/g, "oe").replace(/ü/g, "ue"); | ||
+ | } else { | ||
+ | text = text.replace(/Ä/g, "A").replace(/Ö/g, "O").replace(/Ü/g, "U"); | ||
+ | text = text.replace(/ä/g, "a").replace(/ö/g, "o").replace(/ü/g, "u"); | ||
+ | } | ||
+ | return(text); | ||
+ | } | ||
+ | |||
+ | // Funktion: importPage() | ||
+ | // zum Einbinden der Module | ||
+ | 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' + wgScriptPath + '/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; | ||
+ | // old version | ||
+ | // document.write('<SCRIPT TYPE="text/javascript" SRC="http://' + lang | ||
+ | // + '.wikipedia.org/w/index.php?title=' + name + seite | ||
+ | // + '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s"><\/SCRIPT>'); | ||
+ | } | ||
+ | |||
+ | /* | ||
+ | * 3xImport von [[Benutzer:Revvar]] | ||
+ | * aus [[Benutzer:Revvar/wikibits.js]] und [[Benutzer:Revvar/monobook.js]] | ||
+ | */ | ||
+ | |||
+ | /** | ||
+ | Imports a user javascript page from any wikipedia project into the actual document. | ||
+ | |||
+ | @version 0.1 | ||
+ | @date 2007/03/22 | ||
+ | @author: based on function importPage from [[de:User:PDD]]s monobook.js, extended by [[de:User:Revvar]] | ||
+ | @param page Name of the user page without the "user:" prefix and the ".js" appendix | ||
+ | @param lang (optional) Language code of the corresponding wikipedia project. Default is the callers project. | ||
+ | @return "true" on success, "false" otherwise | ||
+ | */ | ||
+ | |||
+ | function importJavascriptL(page, lang) | ||
+ | { | ||
+ | try { | ||
+ | /* check the parameters and set defaults */ | ||
+ | if(!page) throw("importJavascriptL: Missing parameter page."); | ||
+ | if(!lang) lang = wgContentLanguage; | ||
+ | |||
+ | /* create import url */ | ||
+ | var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + | ||
+ | '.js&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s'; | ||
+ | |||
+ | /* import page */ | ||
+ | var Head = document.getElementsByTagName('head').item(0); | ||
+ | var Script = document.createElement('script'); | ||
+ | Script.setAttribute('type', 'text/javascript'); | ||
+ | Script.setAttribute('src', import_url); | ||
+ | Script.setAttribute('charset', 'utf-8'); | ||
+ | Head.appendChild(Script); | ||
+ | |||
+ | return true; | ||
+ | } catch(e) { | ||
+ | alert(e.message); | ||
+ | return false; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | /** | ||
+ | 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 | ||
+ | */ | ||
+ | |||
+ | function importCSSL(page, lang) | ||
+ | { | ||
+ | try { | ||
+ | /* check the parameters and set defaults */ | ||
+ | if(!page) throw("importCSSL: Missing parameter page."); | ||
+ | if(!lang) lang = wgContentLanguage; | ||
+ | |||
+ | /* create import url */ | ||
+ | var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + | ||
+ | '.css&action=raw&ctype=text/css&smaxage=2678400&dontcountme=s'; | ||
+ | |||
+ | /* import page */ | ||
+ | var Head = document.getElementsByTagName('head').item(0); | ||
+ | var CSS = document.createElement('style'); | ||
+ | CSS.setAttribute('type', 'text/css'); | ||
+ | CSS.setAttribute('charset', 'utf-8'); | ||
+ | CSS.appendChild(document.createTextNode("@import url(" + import_url + ");")); | ||
+ | Head.appendChild(CSS); | ||
+ | |||
+ | return true; | ||
+ | } catch(e) { | ||
+ | alert(e.message); | ||
+ | return false; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | /** | ||
+ | Asynchron import of a Javascript file from the toolserver. | ||
+ | |||
+ | @version 0.1 | ||
+ | @date 2007/04/24 | ||
+ | @author based on function importPage from [[de:User:PDD]]s monobook.js, rewritten by [[de:User:Revvar]] | ||
+ | @param path Path to the toolserver script without the ".js" appendix | ||
+ | */ | ||
+ | |||
+ | function import_JS_from_TS(path) | ||
+ | { | ||
+ | try { | ||
+ | /* check the parameter */ | ||
+ | if(!path) throw("import_JS_from_TS: Missing parameter path."); | ||
+ | |||
+ | /* create import url */ | ||
+ | var import_url = 'http://tools.wikimedia.de/' + path + '.js'; | ||
+ | |||
+ | /* import */ | ||
+ | setTimeout(function(e) { | ||
+ | var Head = document.getElementsByTagName('head').item(0); | ||
+ | var Script = document.createElement('script'); | ||
+ | Script.setAttribute('type', 'text/javascript'); | ||
+ | Script.setAttribute('src', import_url); | ||
+ | Script.setAttribute('charset', 'utf-8'); | ||
+ | Head.appendChild(Script); | ||
+ | }, 1000); | ||
+ | |||
+ | } catch(e) { | ||
+ | alert(e.message); | ||
+ | return; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | |||
+ | // ***** FOOT-Block ***** | ||
+ | // </nowiki> <- nicht löschen!!! | ||
+ | |||
+ | // ausgelagerte obligatorische Funktionen | ||
+ | importJavascriptL('PDD/helperFunctions','de'); // [[Benutzer:PDD/helperFunctions.js]] | ||
+ | importJavascriptL('PDD/eintragen','de'); // [[Benutzer:PDD/eintragen.js]] | ||
+ | importJavascriptL('PDD/alertOnChanges','de'); // [[Benutzer:PDD/alertOnChanges.js]] | ||
+ | |||
+ | // obligatorisch nur für editpages | ||
+ | if (isEdit) { | ||
+ | importJavascriptL('PDD/wpTextReplace','de'); // [[Benutzer:PDD/wpTextReplace.js]] | ||
+ | importJavascriptL('PDD/replaceQuoteSigns','de'); // [[Benutzer:PDD/replaceQuoteSigns.js]] | ||
+ | // importJavascriptL('PDD/replaceQuoteSigns2','de'); // [[Benutzer:PDD/replaceQuoteSigns2.js]] | ||
+ | importJavascriptL('BLueFiSH.as/JS/markup','de'); // [[Benutzer:BLueFiSH.as/JS/markup.js]] | ||
+ | importJavascriptL('Spongo/persDaten','de'); // [[Benutzer:Spongo/persDaten.js]] | ||
+ | } | ||
+ | |||
+ | // ausgelagerte optionale Funktionen (Autoload) | ||
+ | |||
+ | // revert/loglink-Funktionen: möglichst früh einbinden | ||
+ | // Revert godmode-light | ||
+ | if (godmodelight && !adminflag && !isEdit && !(isSpecial && !isContrib)) { | ||
+ | importJavascriptL('PDD/godmode-light','de'); // [[Benutzer:PDD/godmode-light.js]] | ||
+ | // importJavascriptL('Olliminatore/godmode-light','en'); // [[:en:User:Olliminatore/godmode-light.js]] | ||
+ | } | ||
+ | // Revert addEditAndRevertLinks | ||
+ | if (!(!aerhistory && isHistory) && !isEdit) { | ||
+ | if (editlinkoldversion || revertwithreason) | ||
+ | importJavascriptL('PDD/addEditAndRevertLinks','de'); // [[Benutzer:PDD/addEditAndRevertLinks.js]] | ||
+ | } | ||
+ | // LogLinks addLogsLink | ||
+ | if (addlogslink && !isSpecial) importJavascriptL('PDD/addLogsLink','de'); // [[Benutzer:PDD/addLogsLink.js]] | ||
+ | |||
+ | // jetzt alles andere, was optional ist | ||
+ | if (!isSpecial) | ||
+ | if (addeditintro || addpurge) importJavascriptL('PDD/modifyCA','de'); // [[Benutzer:PDD/modifyCA.js]] | ||
+ | // changeBeschriftungen *nach* modifyCA.js (!) | ||
+ | if (beschriftungen) importJavascriptL('PDD/changeBeschriftungen','de'); // [[Benutzer:PDD/changeBeschriftungen.js]] | ||
+ | if (changeszlig) importJavascriptL('PDD/changeSZtoSS','de'); // [[Benutzer:PDD/changeSZtoSS.js]] | ||
+ | if (rechtschreibpruefung && !isSpecial) { | ||
+ | DontAutorunRP = !AutorunRP; | ||
+ | importPage('APPER/RP/js'); // [[Benutzer:APPER/RP/js]] | ||
+ | } | ||
+ | if (ippvandalmark && !isEdit) importPage('APPER/IP-Patrol/js'); // [[Benutzer:APPER/IP-Patrol/js]] | ||
+ | if (showredundantlinks && !isSpecial) | ||
+ | importJavascriptL('PDD/showRedundantLinks','de'); // [[Benutzer:PDD/showRedundantLinks.js]] | ||
+ | // Signierfunktionen | ||
+ | if (isEdit && !isArticle) { | ||
+ | if (signing) importJavascriptL('Olliminatore/signing','de'); // [[Benutzer:Olliminatore/signing.js]] | ||
+ | if (unsigning) importJavascriptL('Olliminatore/unsigned','de'); // [[Benutzer:Olliminatore/unsigned.js]] | ||
+ | } | ||
+ | |||
+ | // extended search & replace feature | ||
+ | if (isEdit && searchbox) importJavascriptL('Zocky/SearchBox','en'); // [[:en:User:Zocky/SearchBox.js]] | ||
+ | |||
+ | // Portal- und Redaktionshinweis | ||
+ | if (hinweis) importJavascriptL('DerHexer/hinweise','de'); // [[Benutzer:DerHexer/hinweise.js]] | ||
+ | |||
+ | // Kackbalken-Script | ||
+ | if (irrenhaus) importJavascriptL('Revvar/irrenhaus','de'); // [[Benutzer:Revvar/irrenhaus.js]] | ||
+ | |||
+ | // Syntax highlighter | ||
+ | if (js_highlight) importJavascriptL('Olliminatore/shCore','en'); // [[:en:User:Olliminatore/shCore.js]] | ||
+ | |||
+ | // wikiminiatlas: Atlas bei Georeferenzen | ||
+ | if (miniatlas && !isSpecial) | ||
+ | importJavascriptL('Dschwen/wikiminiatlas2','de'); // [[Benutzer:Dschwen/wikiminiatlas2.js]] | ||
+ | |||
+ | // coordinates: Generierung der Koordinaten-Vorlage | ||
+ | if (coordinates && isEdit) importJavascriptL('Dschwen/coordinates','de'); // [[Benutzer:Dschwen/coordinates.js]] | ||
+ | |||
+ | // showreftoggle | ||
+ | if (reftoggle && !isSpecial) | ||
+ | importJavascriptL('Malte_Schierholz/reftoggle','de'); // [[Benutzer:Malte Schierholz/reftoggle.js]] | ||
+ | |||
+ | // setGallery | ||
+ | if (newgallery && !isSpecial) | ||
+ | importJavascriptL('Olliminatore/newgallery','de'); // [[Benutzer:Olliminatore/newgallery.js]] | ||
+ | |||
+ | // custom toolbar buttons | ||
+ | if (customtoolbar) | ||
+ | importJavascriptL('Olliminatore/customToolbar','de'); // [[Benutzer:Olliminatore/customToolbar.js]] | ||
+ | |||
+ | // quickedit | ||
+ | if (qeEnabled) importJavascriptL('ASM/quickedit','de'); // [[Benutzer:ASM/quickedit.js]] | ||
+ | |||
+ | // RIPE tooltips | ||
+ | if (ripe && !isEdit) importJavascriptL('PDD/tooltips','de'); // [[Benutzer:PDD/tooltips.js]] | ||
+ | |||
+ | // dellinknowcommons | ||
+ | if (dellinknowcommons && adminflag && isBild) | ||
+ | importJavascriptL('PDD/dellink-nc','de'); // [[Benutzer:PDD/dellink-nc.js]] | ||
+ | |||
+ | // Lupin's popups | ||
+ | if (lupinpopups) importJavascriptL('Lupin/popups','en'); // [[:en:User:Lupin/popups.js]] | ||
+ | |||
+ | // Markierskripte ganz zum Schluss einbinden, da sie innerHTML verändern | ||
+ | if (!(!mawatchlist && isWatchlist) && !(!macontribs && isContrib)) { | ||
+ | if (markadmins || markexadmins || markcomadmins) | ||
+ | importJavascriptL('PDD/markAdmins','de'); // [[Benutzer:PDD/markAdmins.js]] | ||
+ | } | ||
+ | if (!(!muwatchlist && isWatchlist) && !(!mucontribs && isContrib)) { | ||
+ | if (markutf8) | ||
+ | importJavascriptL('PDD/markUTF8','de'); // [[Benutzer:PDD/markUTF8.js]] | ||
+ | } | ||
+ | // Und hier ist die monobook.js zu Ende. | ||
+ | |||
+ | // [[Benutzer:Joschua/Userpage Navigation]] | ||
+ | document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title=Benutzer:Joschua/Userpage_Navigation/js&action=raw&ctype=text/javascript"><\/SCRIPT>'); | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | // <nowiki> | ||
+ | // Einfaches Hinzufügen und Entfernen von Kategorien in Artikeln. | ||
+ | // Von http://commons.wikimedia.org/wiki/MediaWiki:HotCat.js und | ||
+ | // http://fr.wikipedia.org/wiki/MediaWiki:JSScripts/HotCats übernommen | ||
+ | // Version: 28. 11. 2007 | ||
+ | |||
+ | // Konfigurationsvariablen: | ||
+ | // Zeit bis die Auswahlliste erscheint | ||
+ | var hotcat_suggestion_delay = 200; | ||
+ | // Anzahl der Zeilen in der Auswahlliste | ||
+ | var hotcat_list_size = 10; | ||
+ | // Anzahl der Elemente in der Auswahlliste | ||
+ | var hotcat_list_items = 50; | ||
+ | // Wenn true: Automatisches Speichern der Änderung ohne Bearbeitungsfenster | ||
+ | // var hotcat_autocommit = false; | ||
+ | // Wenn true: Auswahlliste nach unten statt nach oben ausklappen | ||
+ | // var hotcat_list_down = false; | ||
+ | |||
+ | // interne Variablen | ||
+ | var hotcat_running = 0 ; | ||
+ | var hotcat_last_v = "" ; | ||
+ | var hotcat_exists_yes = "http://upload.wikimedia.org/wikipedia/commons/thumb/b/be/P_yes.svg/20px-P_yes.svg.png" ; | ||
+ | var hotcat_exists_no = "http://upload.wikimedia.org/wikipedia/commons/thumb/4/42/P_no.svg/20px-P_no.svg.png" ; | ||
+ | |||
+ | addOnloadHook ( hotcat ) ; | ||
+ | |||
+ | function hotcat () { | ||
+ | if ( hotcat_check_action() ) return ; // Edited page, reloading anyway | ||
+ | |||
+ | var catlinks = document.getElementById("catlinks"); | ||
+ | |||
+ | if (! catlinks && wgNamespaceNumber %2 == 0) { // all except discussion | ||
+ | // let's create a fake one | ||
+ | var bodyC = document.getElementById("bodyContent"); | ||
+ | catlinks = document.createElement("div"); | ||
+ | catlinks.id = "catlinks"; | ||
+ | catlinks.appendChild(document.createElement("p")); | ||
+ | catlinks.firstChild.className = "catlinks"; | ||
+ | bodyC.appendChild(catlinks); | ||
+ | } | ||
+ | |||
+ | var catline = getElementsByClassName ( document , "p" , "catlinks" ) [0] ; | ||
+ | |||
+ | if ( catline == null || typeof catline == 'undefined' ) return ; | ||
+ | |||
+ | hotcat_modify_existing ( catline ) ; | ||
+ | hotcat_append_add_span ( catline ) ; | ||
+ | } | ||
+ | |||
+ | function hotcat_append_add_span ( catline ) { | ||
+ | var span_add = document.createElement ( "span" ) ; | ||
+ | var span_sep = document.createTextNode ( " | " ) ; | ||
+ | if ( catline.firstChild ) catline.appendChild ( span_sep ) ; | ||
+ | catline.appendChild ( span_add ) ; | ||
+ | hotcat_create_span ( span_add ) ; | ||
+ | } | ||
+ | |||
+ | String.prototype.ucFirst = function () { | ||
+ | return this.substr(0,1).toUpperCase() + this.substr(1,this.length); | ||
+ | } | ||
+ | |||
+ | function hotcat_modify_span ( span , i ) { | ||
+ | var cat_title = span.firstChild.getAttribute ( "title" ) ; | ||
+ | // Removing leading Category: | ||
+ | cat_title = cat_title.substr(cat_title.indexOf(":") + 1); | ||
+ | var sep1 = document.createTextNode ( " " ) ; | ||
+ | var a1 = document.createTextNode ( "(-)" ) ; | ||
+ | var remove_link = document.createElement ( "a" ) ; | ||
+ | remove_link.href = "javascript:hotcat_remove(\"" + cat_title + "\");" ; | ||
+ | remove_link.appendChild ( a1 ) ; | ||
+ | span.appendChild ( sep1 ) ; | ||
+ | span.appendChild ( remove_link ) ; | ||
+ | |||
+ | var mod_id = "hotcat_modify_" + i ; | ||
+ | var sep2 = document.createTextNode ( " " ) ; | ||
+ | var a2 = document.createTextNode ( "(±)" ) ; | ||
+ | var modify_link = document.createElement ( "a" ) ; | ||
+ | modify_link.id = mod_id ; | ||
+ | modify_link.href = "javascript:hotcat_modify(\"" + mod_id + "\");" ; | ||
+ | modify_link.appendChild ( a2 ) ; | ||
+ | span.appendChild ( sep2 ) ; | ||
+ | span.appendChild ( modify_link ) ; | ||
+ | } | ||
+ | |||
+ | function hotcat_modify_existing ( catline ) { | ||
+ | var spans = catline.getElementsByTagName ( "span" ) ; | ||
+ | for ( var i = 0 ; i < spans.length ; i++ ) { | ||
+ | hotcat_modify_span ( spans[i] , i ) ; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function hotcat_remove ( cat_title ) { | ||
+ | var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href; | ||
+ | if (window.confirm("Soll die Kategorie '" + cat_title + "' wirklich entfernt werden?")) { | ||
+ | document.location = editlk + '&hotcat_removecat=' + encodeURIComponent(cat_title) ; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function hotcatGetParamValue(paramName, h) { | ||
+ | if (typeof h == 'undefined' ) { h = document.location.href; } | ||
+ | var cmdRe=RegExp('[&?]'+paramName+'=([^&]*)'); | ||
+ | var m=cmdRe.exec(h); | ||
+ | if (m) { | ||
+ | try { | ||
+ | return decodeURIComponent(m[1]); | ||
+ | } catch (someError) {} | ||
+ | } | ||
+ | return null; | ||
+ | } | ||
+ | |||
+ | function hotcat_check_action () { | ||
+ | var ret = 0 ; | ||
+ | if ( wgAction != "edit" ) return ret ; // Not an edit page, so no business... | ||
+ | var summary = new Array () ; | ||
+ | var t = document.editform.wpTextbox1.value ; | ||
+ | var prevent_autocommit = 1 ; | ||
+ | if ( typeof hotcat_autocommit != 'undefined' && hotcat_autocommit ) prevent_autocommit = 0 ; | ||
+ | |||
+ | // Remove existing category? | ||
+ | var hrc = hotcatGetParamValue('hotcat_removecat') ; | ||
+ | // Add new category? | ||
+ | var hnc = hotcatGetParamValue('hotcat_newcat') ; | ||
+ | |||
+ | if ( typeof hrc != "undefined" && hrc != null && hrc != "" ) { | ||
+ | var hcre = new RegExp("(\\s*)\\[\\[ *(?:Kategorie|Category) *: *" + hrc.replace(/([\\\^\$\*\+\?\.\|\{\}\[\]\(\)])/g, "\\$1") + " *(\\|[^\\]]*)?\\]\\]", "gi"); | ||
+ | var matches = t.match(hcre); | ||
+ | if (matches != null && matches.length == 1) { // Found one occurrence of the category - good! | ||
+ | if ( typeof hnc != "undefined" && hnc != null && hnc != "" ) { | ||
+ | t = t.replace(hcre, "$1[[Kategorie:" + hnc + "$2]]"); | ||
+ | summary.push ( "[[Kategorie:" + hrc + "]] nach [[Kategorie:" + hnc + "]] geändert" ) ; | ||
+ | } else { | ||
+ | t = t.replace(hcre, ""); | ||
+ | summary.push ( "[[Kategorie:" + hrc + "]] entfernt" ) ; | ||
+ | } | ||
+ | ret = 1 ; | ||
+ | } else { | ||
+ | alert ( "Kategorie \"" + hrc + "\" wurde im Text nicht gefunden. Sie wird wahrscheinlich über eine Vorlage eingebunden." ) ; | ||
+ | prevent_autocommit = 1 ; | ||
+ | } | ||
+ | } else { | ||
+ | // Only adding? | ||
+ | if ( typeof hnc != "undefined" && hnc != null && hnc != "" ) { | ||
+ | // Looking for last cat | ||
+ | var re = /\[\[(?:Kategorie|Category):[^\]]+\]\]/ig ; | ||
+ | var index = -1; | ||
+ | while (re.exec(t) != null) index = re.lastIndex; | ||
+ | var txt = "[[Kategorie:" + hnc + "]]" ; | ||
+ | if (index < 0) { | ||
+ | t = t + '\n' + txt ; | ||
+ | } else { | ||
+ | t = t.substring(0, index) + '\n' + txt + t.substring(index); | ||
+ | } | ||
+ | summary.push ( "[[Kategorie:" + hnc + "]] hinzugefügt" ) ; | ||
+ | ret = 1 ; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | if ( ret ) { | ||
+ | document.editform.wpTextbox1.value = t ; | ||
+ | document.editform.wpSummary.value = summary.join( " ; " ) + " (mit [[MediaWiki:Gadget-HotCat.js|HotCat]])" ; | ||
+ | document.editform.wpMinoredit.checked = true ; | ||
+ | if ( !prevent_autocommit ) { | ||
+ | document.getElementById("bodyContent").style.display = "none" ; // Hiding the entire edit section so as not to tempt the user into editing... | ||
+ | document.editform.wpSave.click(); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // This is the end, my friend, the end... | ||
+ | return ret ; | ||
+ | } | ||
+ | |||
+ | function hotcat_clear_span ( span_add ) { | ||
+ | while ( span_add.firstChild ) span_add.removeChild ( span_add.firstChild ) ; | ||
+ | } | ||
+ | |||
+ | function hotcat_create_span ( span_add ) { | ||
+ | hotcat_clear_span ( span_add ) ; | ||
+ | var a_add = document.createElement ( "a" ) ; | ||
+ | var a_text = document.createTextNode ( "(+)" ) ; | ||
+ | span_add.id = "hotcat_add" ; | ||
+ | a_add.href = "javascript:hotcat_add_new()" ; | ||
+ | a_add.appendChild ( a_text ) ; | ||
+ | span_add.appendChild ( a_add ) ; | ||
+ | } | ||
+ | |||
+ | function hotcat_modify ( link_id ) { | ||
+ | var link = document.getElementById ( link_id ) ; | ||
+ | var span = link.parentNode ; | ||
+ | var catname = span.firstChild.firstChild.data ; | ||
+ | |||
+ | while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ; | ||
+ | span.firstChild.style.display = "none" ; | ||
+ | hotcat_create_new_span ( span , catname ) ; | ||
+ | hotcat_last_v = "" ; | ||
+ | hotcat_text_changed () ; // Update icon | ||
+ | } | ||
+ | |||
+ | function hotcat_add_new () { | ||
+ | var span_add = document.getElementById ( "hotcat_add" ) ; | ||
+ | hotcat_clear_span ( span_add ) ; | ||
+ | hotcat_last_v = "" ; | ||
+ | hotcat_create_new_span ( span_add , "" ) ; | ||
+ | } | ||
+ | |||
+ | function hotcat_create_new_span ( thespan , init_text ) { | ||
+ | var form = document.createElement ( "form" ) ; | ||
+ | form.method = "post" ; | ||
+ | form.onsubmit = function () { hotcat_ok(); return false; } ; | ||
+ | form.id = "hotcat_form" ; | ||
+ | form.style.display = "inline" ; | ||
+ | |||
+ | var list = document.createElement ( "select" ) ; | ||
+ | list.id = "hotcat_list" ; | ||
+ | list.onclick = function () { document.getElementById("hotcat_text").value = document.getElementById("hotcat_list").value ; hotcat_text_changed() ; } ; | ||
+ | list.ondblclick = function () { document.getElementById("hotcat_text").value = document.getElementById("hotcat_list").value ; hotcat_text_changed() ; hotcat_ok(); } ; | ||
+ | list.style.display = "none" ; | ||
+ | |||
+ | var text = document.createElement ( "input" ) ; | ||
+ | text.size = 40 ; | ||
+ | text.id = "hotcat_text" ; | ||
+ | text.type = "text" ; | ||
+ | text.value = init_text ; | ||
+ | text.onkeyup = function () { window.setTimeout("hotcat_text_changed();", hotcat_suggestion_delay ); } ; | ||
+ | |||
+ | var exists = document.createElement ( "img" ) ; | ||
+ | exists.id = "hotcat_exists" ; | ||
+ | exists.src = hotcat_exists_no ; | ||
+ | |||
+ | var OK = document.createElement ( "input" ) ; | ||
+ | OK.type = "button" ; | ||
+ | OK.value = "OK" ; | ||
+ | OK.onclick = hotcat_ok ; | ||
+ | |||
+ | var cancel = document.createElement ( "input" ) ; | ||
+ | cancel.type = "button" ; | ||
+ | cancel.value = "Abbrechen" ; | ||
+ | cancel.onclick = hotcat_cancel ; | ||
+ | |||
+ | form.appendChild ( list ) ; | ||
+ | form.appendChild ( text ) ; | ||
+ | form.appendChild ( exists ) ; | ||
+ | form.appendChild ( OK ) ; | ||
+ | form.appendChild ( cancel ) ; | ||
+ | thespan.appendChild ( form ) ; | ||
+ | text.focus () ; | ||
+ | } | ||
+ | |||
+ | function hotcat_ok () { | ||
+ | var text = document.getElementById ( "hotcat_text" ) ; | ||
+ | var v = text.value ; | ||
+ | |||
+ | // Empty category ? | ||
+ | if ( v == "" ) { | ||
+ | hotcat_cancel() ; | ||
+ | return ; | ||
+ | } | ||
+ | |||
+ | var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href; | ||
+ | var url = editlk + '&hotcat_newcat=' + encodeURIComponent( v ) ; | ||
+ | |||
+ | // Editing existing? | ||
+ | var span = text.parentNode.parentNode ; // span.form.text | ||
+ | if ( span.id != "hotcat_add" ) { // Not plain "addition" | ||
+ | var cat_title = span.firstChild.getAttribute ( "title" ) ; | ||
+ | // Removing leading Category: | ||
+ | cat_title = cat_title.substr(cat_title.indexOf(":") + 1); | ||
+ | url += '&hotcat_removecat=' + encodeURIComponent( cat_title ) ; | ||
+ | } | ||
+ | |||
+ | document.location = url ; | ||
+ | } | ||
+ | |||
+ | function hotcat_cancel () { | ||
+ | var span = document.getElementById("hotcat_form").parentNode ; | ||
+ | if ( span.id == "hotcat_add" ) { | ||
+ | hotcat_create_span ( span ) ; | ||
+ | } else { | ||
+ | while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ; | ||
+ | span.firstChild.style.display = "" ; | ||
+ | for ( var i = 0 ; i < span.parentNode.childNodes.length ; i++ ) { | ||
+ | if ( span.parentNode.childNodes[i] != span ) continue ; | ||
+ | hotcat_modify_span ( span , i ) ; | ||
+ | break ; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function hotcat_text_changed () { | ||
+ | if ( hotcat_running ) return ; | ||
+ | var text = document.getElementById ( "hotcat_text" ) ; | ||
+ | var v = text.value.ucFirst() ; | ||
+ | if ( hotcat_last_v == v ) return ; // Nothing's changed... | ||
+ | |||
+ | hotcat_running = 1 ; | ||
+ | hotcat_last_v = v ; | ||
+ | |||
+ | if ( v != "" ) { | ||
+ | var url = wgServer + "/" + wgScriptPath + "/api.php?format=xml&action=query&list=allpages&apnamespace=14&apfrom=" + encodeURIComponent( v ) + "&aplimit=" + encodeURIComponent( hotcat_list_items ); | ||
+ | if ( typeof ( hotcat_xmlhttp ) != "undefined" ) hotcat_xmlhttp.abort() ; // Just to make sure... | ||
+ | hotcat_xmlhttp = new sajax_init_object() ; | ||
+ | hotcat_xmlhttp.open('GET', url, true); | ||
+ | hotcat_xmlhttp.onreadystatechange = function () { | ||
+ | if ( typeof hotcat_xmlhttp == "undefined" ) return ; | ||
+ | if (hotcat_xmlhttp.readyState == 4) { | ||
+ | var xml = hotcat_xmlhttp.responseXML ; | ||
+ | if ( xml == null ) return ; | ||
+ | var pages = xml.getElementsByTagName( "p" ) ; | ||
+ | var titles = new Array () ; | ||
+ | for ( var i = 0 ; i < pages.length ; i++ ) { | ||
+ | var s = pages[i].getAttribute("title"); | ||
+ | // Removing leading "Category:" | ||
+ | s = s.substr(s.indexOf(":") + 1); | ||
+ | if ( s.substr ( 0 , hotcat_last_v.length ) != hotcat_last_v ) break ; | ||
+ | titles.push ( s ) ; | ||
+ | } | ||
+ | hotcat_show_suggestions ( titles ) ; | ||
+ | } | ||
+ | }; | ||
+ | hotcat_xmlhttp.send(null); | ||
+ | } else { | ||
+ | var titles = new Array () ; | ||
+ | hotcat_show_suggestions ( titles ) ; | ||
+ | } | ||
+ | hotcat_running = 0 ; | ||
+ | } | ||
+ | |||
+ | function hotcat_show_suggestions ( titles ) { | ||
+ | var text = document.getElementById ( "hotcat_text" ) ; | ||
+ | var list = document.getElementById ( "hotcat_list" ) ; | ||
+ | var icon = document.getElementById ( "hotcat_exists" ) ; | ||
+ | if ( titles.length == 0 ) { | ||
+ | list.style.display = "none" ; | ||
+ | icon.src = hotcat_exists_no ; | ||
+ | return ; | ||
+ | } | ||
+ | |||
+ | var listh = hotcat_list_size * 20 ; | ||
+ | if (titles.length < hotcat_list_size) { | ||
+ | listh = titles.length * 20 ; | ||
+ | } | ||
+ | var nl = parseInt ( text.parentNode.offsetLeft ) - 1 ; | ||
+ | var nt = parseInt(text.offsetTop) - listh ; | ||
+ | // Parameter to show suggestion list beneath categories instead of above | ||
+ | if (typeof hotcat_list_down != "undefined" && hotcat_list_down) { | ||
+ | nt = text.offsetTop + text.offsetHeight; | ||
+ | } | ||
+ | list.size = 5 ; | ||
+ | list.style.align = "left" ; | ||
+ | list.style.zIndex = 5 ; | ||
+ | list.style.position = "absolute" ; | ||
+ | list.style.top = nt + "px" ; | ||
+ | list.style.width = text.offsetWidth + "px" ; | ||
+ | list.style.height = listh + "px" ; | ||
+ | list.style.left = nl + "px" ; | ||
+ | while ( list.firstChild ) list.removeChild ( list.firstChild ) ; | ||
+ | for ( var i = 0 ; i < titles.length ; i++ ) { | ||
+ | var opt = document.createElement ( "option" ) ; | ||
+ | var ot = document.createTextNode ( titles[i] ) ; | ||
+ | opt.appendChild ( ot ) ; | ||
+ | opt.setAttribute( "value", titles[i] ); | ||
+ | list.appendChild ( opt ) ; | ||
+ | } | ||
+ | |||
+ | list.style.display = "block" ; | ||
+ | |||
+ | icon.src = hotcat_exists_yes ; | ||
+ | |||
+ | var first_title = titles.shift () ; | ||
+ | if ( first_title == hotcat_last_v ) return ; | ||
+ | |||
+ | var suggestion = first_title; | ||
+ | |||
+ | text.value = suggestion ; | ||
+ | if (text.createTextRange) { | ||
+ | // IE | ||
+ | var ra = text.createTextRange(); | ||
+ | ra.moveStart("character", hotcat_last_v.length); | ||
+ | ra.moveEnd("character", suggestion.length); | ||
+ | ra.select(); | ||
+ | } else if( is_khtml ) { | ||
+ | text.setSelectionRange( hotcat_last_v.length, suggestion.length ); | ||
+ | } else { | ||
+ | text.selectionStart = hotcat_last_v.length ; | ||
+ | text.selectionEnd = suggestion.length ; | ||
+ | } | ||
+ | } | ||
+ | // </nowiki> |
Aktuelle Version vom 22:25, 14. Feb. 2011
{{subst:js|User:Lupin/editcount.js}} popupEditCounterTool='custom'; popupEditCounterUrl='http://mosapedia.de/wiki/Benutzer:$1?ectarget=$1'; // FAQ: // // Frage: Wie übernehme ich dieses Skript? // // Antwort: Einfach "Quelltext betrachten", alles markieren und kopieren, und dann in deine eigene // monobook.js (also hierhinein: [[Spezial:Mypage/monobook.js|Benutzer:<DeinName>/monobook.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 // // 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>\n'; // (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten) // var usersignature = '-- \~\~\~\~'; // </nowiki> // Originalskript ursprünglich gefunden bei [[:en:User:Angela]] // bearbeitet von [[Benutzer:Maximus Rex]] // bearbeitet von [[Benutzer:SirJective]] // bearbeitet von [[Benutzer:BLueFiSH.as]] // bearbeitet von [[Benutzer:Littl]] (2005-09-07) // bearbeitet von [[Benutzer:Schwalbe]] (2006-02-03) // bearbeitet wieder von [[Benutzer:Littl]] (2006-02-21) // bearbeitet von [[Benutzer:PDD]] (ab 2006-04-22) // *************** SETUP Anfang ********************************** // Funktionen im Quickbar (monobook.js) 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 usedropdown = false; // Wenn keine Dropdowns gewünscht sind, hier false eintragen! 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 Prozent) // systemweite Default-Optionen aus [[MediaWiki:Monobook.js]] NavigationBarShowDefault = 15; // Navi-Leisten: alle einklappen == 0; alle ausklappen == 15 (z.B.) var oldEditsectionLinks = false; // "Bearbeiten"-Links bei Abschnitten ganz nach rechts? var enable_linkFA = true; // "Featured Articles" in fremdsprachigen Wikipedias markieren? // <nowiki> // Modul: changeBeschriftungen.js var beschriftungen = true; // kosmetische Änderungen an der MediaWiki-Oberfläche? var markhandsoff = true; // fremde Benutzerseiten grafisch markieren? var markbecareful = true; // verschiedene Buttons rot markieren? // Beschriftungen: personal toolbar var cbmytalk = "Meine Diskussion"; var cbprefs = "Einstellungen"; var cbwatchlist = "Beobachtungsliste"; var cbmyconts = "Meine Beiträge"; var cblogout = "X"; // Beschriftungen: current article var cbedit = "Bearbeiten"; var cbhistory = "Versionen"; var cbmove = "Verschieben"; var cbwatch = "Beobachten"; var cbunwatch = "Ignorieren"; // Beschriftungen: tools var cbwhatlinkshere = "Links a. d. Seite"; var cblinked = "Verlinkte Änderungen"; var cbmail = "E-Mail senden"; var cbupload = "Bild hochladen"; var cbprint = "Druckversion"; var cbblock = "User sperren"; // Beschriftungen: portlets var cblang = "Interwiki"; // Modul: changeSZtoSS.js var changeszlig = false; // "ß" in "ss" ändern (nach Schweizer Rechtschreibung)? // Modul: eintragen.js var autosave = true; // automatisches Speichern von QS/LA/SLA/BildLA/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 = "Kein Artikel"; // Standard-SLA-Grund var defaultVandal = "vandaliert in [[]]"; // Standardgrund für Vandalismusmeldung // 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 = "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: 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? var pagelogtext = "Page:Log"; // Text des Seitenlogbuch-Links var userlogtext1 = "User:Log:1"; // Texte der beiden Benutzerlog-Links var userlogtext2 = "User:Log:2"; var addusercontriblink = true; // auf Benutzerseiten auch noch Link auf Contributions? var usercontribtext = "User:Contribs"; // Text des Contributions-Links ("Benutzerbeiträge") var userdeledittext = "User:DelEdits"; // Text des Links auf Deleted Edits var userstatstext = "User:Stats"; // Text des Links auf Benutzerstatistik var userstimmrechttext = "User:Stimmrecht"; // Text des Links auf Stimmrechtcheck var adduserarticlelink = true; // auf Benutzerseiten Link auf erstellte Artikel? var userarticletext = "User:Articles"; // Text des Links auf erstellte Artikel var addbrowselink = true; // auf allen Seiten Link zum alphabetischen Browsen? var browseuserprefix = true; // bei Nutzerseiten stattdessen alle Unterseiten des Nutzers zeigen? var browsetext = "Browse"; // Text des Links auf Browsing-Seite var addiusagelink = true; // bei Bildern Link zur Bildnutzung (Commons)? var imgusagetext = "IMG:C-Usage"; // Text des Links auf Bildnutzung // Modul: modifyCA.js var addeditintro = true; // TAB zum Editieren des Nullabschnitts (Intros) einer Seite hinzufügen? var editintrotext = "IntroBearbeiten"; // Beschriftung des TABs var addpurge = true; // TAB zum Purgen (Servercache-Updaten) einer Seite hinzufügen? var purgetext = "Purge"; // Beschriftung des TABs // Modul: markAdmins.js var markadmins = true; // Admins besonders hervorheben? var mawatchlist = true; // auch auf der Beobachtungsliste? var macontribs = true; // auch auf den Benutzerbeiträgen? var markatxt = "A"; // Markierung für Admins var markrenatxt = "UmA"; // Markierung für umbenannte Admins var markbureautxt = "B"; // Markierung für Bürokraten var markstewtxt = "S"; // Markierung für Stewards var markcomadmins = true; // Commons-Admins besonders hervorheben? var markcomatxt = "ComA"; // Markierung für Commons-Admins var markexadmins = true; // Ex-Admins besonders hervorheben? var markexatxt = "ExA"; // Markierung für Ex-Admins var markexbureautxt = "ExB"; // Markierung für Ex-Bürokraten var markarbcom = true; // Schiedsgericht besonders hervorheben? var markarbcomtxt = "SG"; // Markierung für Schiedsgerichtler var markadmarbcomtxt = "SGA"; // Markierung für adminisierte Schiedsgerichtler (öhm) var markcheckuser = true; // CheckUser besonders hervorheben? var markcheckusertxt = "CU"; // Markierung für Checkuser-Berechtigte // 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: reftoggle.js var reftoggle = false; // "Quellen verstecken"/"Quellen anzeigen"-Schalter für Fußnoten? // Modul: newgallery.js var newgallery = false; // Anzahl Bilder/Zeile in Galerien verändern? var gallery_len = 6; // Breite der Galerien var bCategory = true; // nur in Kategorien? var bArticle = true; // (oder/und) nur in Artikeln? // Modul: quickedit.js var qeEnabled = false; // QuickEdit aktivieren? var qeEnableSection0 = false; // QuickEdit-Link für Abschnitt 0 (Einleitung)? var qeEnableAccessKeys = true; // Tastaturbefehle aktivieren? var qeTextboxHeight = 20; // Höhe des Textfelds // Modul: APPERs RP var rechtschreibpruefung = false; // Rechtschreibprüfung aktivieren? var AutorunRP = false; // false = RP durch Anklicken; true = automatische RP // Modul: APPERs IP-Patrol Vandalenmarkierer var ippvandalmark = false; // IP-Patrol-Vandalenmarkierung aktivieren? // Modul: wikiminiatlas2.js var miniatlas = false; // WikiMiniAtlas anschalten? // 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? // Modul: signing.js var signing = false; // automatische Unterschrift auf Diskussionsseiten? // Liste der Nicht-Diskussionsseiten, die ebenfalls unterschrieben werden sollen: var regpages = new Array(':Verbesserungsvorschläge', ':Löschkandidaten', ':Adminkandidaturen', ':Qualitätssicherung', ':Fragen_zur_Wikipedia', ':Meinungsbilder', ':Review', ':Bilderwünsche',':Kandidaten'); // Modul: SearchBox.js var searchbox = false; // erweitertes suchen/ersetzen // </nowiki> // Modul: customToolbar.js var customtoolbar = false; // mehr Buttons in der Symbolleiste? // Anzahl und Reihenfolge wählbar (siehe: [[Benutzer:Olliminatore/Extra-Editbuttons]]) 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"; // zu entfernende Standard-Edit buttons (0...10) var rmEditButtons = [6,7,10]; // Standardbutton entfernen // Modul: popups.js (Lupin, Navpop) var lupinpopups = false; // Popup-Modul einbinden? // 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]]) popupDelay = 1; // Popupverzögerung in s (DEFAULT: 0.5) simplePopups = false; // auf true setzen, wenn Laden im Hintergrund unerwünscht (DEFAULT: false) popupStructure = 'menus'; // Aussehen der Popups (DEFAULT: 'shortmenus') popupActionsMenu = false; // separates "actions"-Menu (DEFAULT: true) popupImages = true; // Bilder im Popup erwünscht? (DEFAULT: true) popupSubpopups = true; // Popups für Links innerhalb von Popups generieren? (DEFAULT: true) 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 removeTitles = false; // Originaltitel der Links nach popups verschieben? (DEFAULT: true) popupFixRedirs = true; // Links auf Redirects korrigieren? (DEFAULT: false) popupWatchRedirredPages = false; // korrigierte Seite beobachten? (DEFAULT: null) popupRedirAutoClick = 'wpSave'; // ausgeführte Aktion beim Korrigieren von Redirects (DEFAULT: 'wpDiff') popupRedlinkRemoval = true; // Rote Links entfernen? (DEFAULT: false) popupFixDabs = true; // Links auf BKLs korrigieren? (DEFAULT: false) popupWatchDisambiggedPages = false; // korrigierte Seite beobachten? (DEFAULT: null) popupLastModified = true; // Zeit seit letzter Änderung anzeigen? (DEFAULT: true) popupDiffDates = true; // Änderungsdaten bei Diffs anzeigen? (DEFAULT: true) popupOnlyArticleLinks = true; // Popups nur für Artikel-Links (DEFAULT: true) imagePopupsForImages = false; // Bildvorschau laden, wenn Mausposition über Bild? (DEFAULT: true) popupMaxWidth = 400; // Maximalbreite des Popup-Fensters (DEFAULT: 350) popupRevertSummaryPrompt = true; // Prompt zum Ändern des Revert-Kommentars? (DEFAULT: false) popupMaxPreviewSentences = 2; // Anzahl der angezeigten Sätze in der Vorschau (DEFAULT: 4) // <nowiki> // Link auf Popups zu Messages hinzufügen? addpopuplink = true; // deutsche Texte für Lupin popupFixDabsSummary = "Ersetze BKL-Seite [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupExtendedRevertSummary = "Revert auf Version vom %s von Benutzer %s, oldid %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupRevertSummary = "Revert auf Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupRevertToPreviousSummary = "Revert auf Vorgängerversion der Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupQueriedRevertSummary = "Revert auf Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupQueriedRevertToPreviousSummary = "Revert auf Vorgängerversion der Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupFixRedirsSummary = "Ersetze Redirect [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupRedlinkSummary = "Entferne Link auf leere Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); popupRmDabLinkSummary = "Entferne Link auf BKL-Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : ""); // weitere Module var showredundantlinks = false; // zeigt doppelte Links an var ripe = false; // Ripe - Tooltips? var irrenhaus = false; // Script für mehr Abwechslung im "neue Nachrichten"-Balken var js_highlight = false; // javascript-code farbig hervorheben (.js and pre-tags) // special rights options var dellinknowcommons = true; // **************** SETUP Ende *********************************** // (PDD: note to self: version auch in alert-Funktion ändern!) var version = 'P098n'; var user = 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 = new Array("", "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); var Jahr = jetzt.getYear(); if (Jahr < 999) Jahr += 1900; var Monat = jetzt.getMonth() + 1; var Tag = jetzt.getDate(); // 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); // Lemma-Varianten (work in progress) + redundant zu addLogsLink etc. // get page title var pagetitle = wgPageName; var spagetitle = wgTitle; // 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 var pesctitle = ptitle.split(' ').join('+'); var spesctitle = sptitle.split(' ').join('+'); // Komma-Lemma für Personen (Klammerzusätze weg etc.) var personlemma = spagetitle.split(' (')[0]; var titlesplit = personlemma.split(' '); if (titlesplit.length > 1) { personlemma = titlesplit[titlesplit.length-1] + ','; for (i=0; i<(titlesplit.length-1); i++) personlemma=personlemma + " "+titlesplit[i]; } // 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]); } } // page type variables: namespaces var isArticle = (wgNamespaceNumber == 0); var isArticleTalk = (wgNamespaceNumber == 1); var isBild = (wgCanonicalNamespace == "Image"); var isCategory = (wgCanonicalNamespace == "Category"); var isTemplate = (wgCanonicalNamespace == "Template"); var isGeneric = false; if ((!isBild) && (!isCategory) && (!isTemplate)) isGeneric = true; var isProject = (wgCanonicalNamespace == "Project"); /* NR Wikipedia: */ var isHelp = (wgCanonicalNamespace == "Help"); /* NR Hilfe */ // page type variables: namespace == -1 var isSpecial = (wgCanonicalNamespace == "Special"); var isRestore = (isSpecial && (wgCanonicalSpecialPageName == "Undelete")); var isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions")); var isWatchlist = (isSpecial && (wgCanonicalSpecialPageName == "Watchlist")); // page type variables: namespace == -1 var isTalk = (!isSpecial && isOdd(wgNamespaceNumber)); // page type variables: other stuff var isPHP = (document.URL.indexOf('index.php') > 0); var isDiff = UrlParameters["diff"]; var isEdit = ((UrlParameters['action']=='edit') || (UrlParameters['action']=='submit')); var isHistory = (UrlParameters['action']=='history'); // userpage/name stuff, vor allem für IPs var userPageOwner = ""; if (isContrib) { if (UrlParameters['target']) userPageOwner = UrlParameters['target'].split('+').join('_'); else { userPageOwner = decodeURIComponent(location.href.substring(location.href.indexOf("/wiki/") + 6)).split('#')[0]; userPageOwner = userPageOwner.substring(userPageOwner.indexOf("Beiträge/") + 9); } } // page type variables: user & user discussion lumped together var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") ); var isUserMainpage = false; if (isUserpage) if (wgTitle == wgTitle.split("/")[0]) { isUserMainpage = true; userPageOwner = wgTitle; } // handelt es sich um eine IP? var isIPUser = false; if (userPageOwner != "") if (userPageOwner.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/) != null) if ((userPageOwner.split(".")[0] > 1) && (userPageOwner.split(".")[0] < 255)) isIPUser = true; // Admin functions var adminflag = false; if (isAdmin()) adminflag = true; // Browserkram var userbrowser = "Standard"; if (navigator.userAgent.indexOf("Opera") > -1) userbrowser = "Opera" 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; } /* * 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:5px; left:0px; width:14.1em; z-index:10;">'; // optional: opacity:0.9; var xxx = ''; var trenner='<hr />'; var br ='<br />'; var qbtarget = '_self'; if (qbnewpage) qbtarget = '_blank'; var dropdown = usedropdown; var scrpt = ''; var scrptn = 0; var indropdown; var ind; /* * Quickbar-Zusammenbau, Teil 1: * * zuerst die Reihenfolge der einzelnen Abschnitte: */ function buildQuickbar() { 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(); } /* * Quickbar-Zusammenbau, Teil 2: * * die Belegung der einzelnen Abschnitte */ function qbWPIntern() { w (0,trenner,'Wikipedia',''); // w (1,'/wiki/Hilfe:MediaWiki','MW',qbtarget,'MediaWiki-Hilfe'); // w (1,'/wiki/Wikipedia:Hilfe','RTFM',qbtarget,'Wikipedia-Hilfe'); // w (1,'/wiki/Hilfe:Textgestaltung','TG',qbtarget,'Hilfe zur Textgestaltung'); // w (1,'/wiki/Hilfe:Farben','FT',qbtarget,'Hilfe zur Farbgestaltung'); w (1,'/wiki/Wikipedia:Kurier','K',qbtarget,'Wikikurier - Das Wikipedia-Nachrichtenblatt'); w (1,'/wiki/Wikipedia:Fragen zur Wikipedia','FZW',qbtarget,'Fragen zur Wikipedia'); w (1,'/wiki/Wikipedia:Auskunft','A',qbtarget,'Auskunft'); // w (1,'/wiki/Wikipedia:Autorenportal','P',qbtarget,'Autorenportal'); w (1,'/wiki/Wikipedia:Projektneuheiten','NEU',qbtarget,'Projektneuheiten'); w (1,'/wiki/Wikipedia:Verbesserungsvorschläge','VV',qbtarget,'Verbesserungsvorschläge'); w (1,'/wiki/Wikipedia:Administratoren/Notizen','AN',qbtarget,'Administratoren/Notizen'); w (1,'/wiki/Wikipedia:Adminkandidaturen','AK',qbtarget,'Adminkandidaturen'); w (1,'/wiki/Wikipedia:Administratoren/Probleme','AP',qbtarget,'Administratoren/Probleme'); w (1,'/wiki/Wikipedia:Schiedsgericht/Anfragen','SG/A',qbtarget,'Schiedsgericht/Anfragen'); w (1,'/wiki/Wikipedia:Checkuser/Anfragen','CU/A',qbtarget,'Checkuser/Anfragen'); w (1,'/wiki/Wikipedia:Abkürzungen','?',qbtarget,'Abkürzungen'); } function qbPatrol() { w (0,trenner,'Überwachung',''); w (1,'/w/index.php?title=Special:Recentchanges&hideminor=0&hideliu=1&hidebots=1&hidepatrolled=0&days=7&limit='+rclimit,'RCs',qbtarget,'Letzte Änderungen'); w (1,'/wiki/Special:Contributions/newbies','RCNs',qbtarget,'Beiträge neuer Benutzer'); w (1,'/w/index.php?title=Special:Newpages&namespace=0&limit='+nplimit+'&offset=0','NeuA',qbtarget,'Neue Artikel'); // w (1,'/wiki/Special:Newimages','NeuD',qbtarget,'Neue Dateien (Bilder)'); w (1,'/w/index.php?title=Special:Log&limit='+nulimit+'&type=newusers','NeuB',qbtarget,'Neue Benutzer'); w (1,'/wiki/Special:Log','Log',qbtarget,'Logfiles'); w (1,'/wiki/Wikipedia:Vandalismusmeldung','VM',qbtarget,'Vandalismusmeldung'); // w (1,'irc://irc.freenode.net/wikipedia-de','IRC',qbtarget,'IRC-Chat #wikipedia-de'); } function qbWartung() { w (0,trenner,'Wartung',''); // w (1,'/wiki/Wikipedia:Löschregeln','WP:LR',qbtarget,'Löschregeln'); w (1,'/wiki/Kategorie:Wikipedia:Schnelllöschen','SLK',qbtarget,'Schnelllöschkandidaten'); w (1,'/wiki/Wikipedia:Löschkandidaten','LK',qbtarget,'Löschkandidaten'); w (1,'/wiki/Wikipedia:Löschkandidaten/'+WPDatum,'LKH',qbtarget,'Löschkandidaten (heute)'); w (1,'/wiki/Wikipedia:Löschkandidaten/Bilder/'+WPDatum,'BildLK',qbtarget,'Löschkandidaten (Bilder)'); w (1,'/wiki/Wikipedia:WikiProjekt_Kategorien/Diskussionen/'+WPDatum2,'KatLK',qbtarget,'Löschkandidaten (Kategorien)'); w (1,'/wiki/Wikipedia:Versionslöschungen','LKV',qbtarget,'Versionslöschungen'); w (1,'/wiki/Wikipedia:Löschprüfung','LP',qbtarget,'Löschprüfung'); w (1,'/wiki/Wikipedia:Entsperrwünsche','EW',qbtarget,'Entsperrwünsche'); w (1,'/wiki/Wikipedia:Qualitätssicherung/'+WPDatum,'QS',qbtarget,'Qualitätssicherung'); w (1,'/wiki/Wikipedia:Redundanz/'+WPDatum3,'RED',qbtarget,'Redundanz'); w (1,'/wiki/Kategorie:Wikipedia:Unverständlich','Wirr',qbtarget,'Unverständlich'); w (1,'/wiki/Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URV',qbtarget,'Löschkandidaten (URVs)'); w (1,'/wiki/Wikipedia:Kandidaten für exzellente Artikel','KEA',qbtarget,'Kandidaten für exzellente Artikel'); w (1,'/wiki/Wikipedia:Kandidaten für lesenswerte Artikel','KLA',qbtarget,'Kandidaten für lesenswerte Artikel'); w (1,'/wiki/Wikipedia:Review','RV',qbtarget,'Review'); } function qbToolserver() { w (0,trenner,'Toolserver',''); // w (1,"http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user="+user+"&dbname=dewiki_p",'EC+',qbtarget,'Mein Editcount'); w (1,"http://tools.wikimedia.de/~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://tools.wikimedia.de/~gunther/adminaktivitaet.php",'AdmA',qbtarget,'Adminaktivität'); w (1,"http://tools.wikimedia.de/~aka/cgi-bin/revstat.cgi?period=168",'RStat',qbtarget,'Revert-Statistik'); w (1,"http://tools.wikimedia.de/~luxo/Geburtstag.php",'GK',qbtarget,'Wikipedia Geburtstagskalender'); if (isArticle) { w (1,"http://tools.wikimedia.de/~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",'Conts',qbtarget,'Beiträge zu diesem Artikel'); } } function qbCategoryTools() { if (!isCategory) return; w (0,trenner,'Kategorie-Tools',''); w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&userlang=de",'K:Scan',qbtarget,'Kategorie: CatScan'); w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat="+spesctitle+"&basedeep=5&mode=rc&hours=168&onlynew=on&userlang=de&go=Scannen",'K:Neu',qbtarget,'Kategorie: Neue Artikel'); w (1,"http://tools.wikimedia.de/~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,"http://tools.wikimedia.de/~magnus/missingtopics.php?project=wikipedia&language=de&category="+spesctitle+"&depth=5&wikimode=0&doit=Run",'K:Miss',qbtarget,'Kategorie: Fehlende Artikel'); } function qbImageTools() { if (!isBild) return; w (0,trenner,'Bild-Tools',''); w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia&image="+spesctitle+"&doit='Text generieren'",'B:M2C',qbtarget,'Bild: Move-to-commons-Assistent'); w (1,'http://tools.wikimedia.de/~luxo/reworkhelper.html','B:RWH',qbtarget,'Bild: Reworkhelper'); w (1,'http://commons.wikimedia.org/wiki/Special:Upload','C-Up',qbtarget,'Commons-Upload'); w (1,'http://tools.wikimedia.de/~daniel/WikiSense/CommonsClash.php?wikilang=de&wikifam=.wikipedia.org&order=img_name&max=200&format=html','C-C',qbtarget,'CommonsClash'); w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia",'M2C',qbtarget,'Move-to-commons-Assistent'); } function qbExternTools() { w (0,trenner,'Externe Tools',''); if (isIPUser) { // w (1,"http://www.ripe.net/whois?form_type=simple&full_query_string=&searchtext="+userPageOwner+"&do_search=Search",'IPripe',qbtarget); w (1,"http://www.dnsstuff.com/tools/ipall.ch?domain="+userPageOwner,'IPinfo',qbtarget,'IPInfo/Whois'); w (1,"http://www.dnsstuff.com/tools/tracert.ch?ip="+userPageOwner,'IPtrcrt',qbtarget,'Traceroute'); w (1,"http://jodies.de/ipcalc?host="+userPageOwner+"&mask1=18&mask2=",'IPrange',qbtarget,'Range/Subnet Rechner'); } else { // w (1,"http://www.ripe.net/whois",'ripe',qbtarget); // w (1,"http://www.dnsstuff.com/",'whois',qbtarget,'Whois'); // w (1,"http://www.denic.de/de/",'denic',qbtarget,'Domain-Lookup'); // w (1,"http://www.iks-jena.de/cgi-bin/whois",'iks-whois',qbtarget,'IKS-Whois-Lookup'); } if ((!isIPUser) && (userPageOwner != "")) w (1,"http://tools.wikimedia.de/~interiot/cgi-bin/queries/SUL?user="+userPageOwner,'SUL',qbtarget,'Single-user login conflict search'); // w (1,"http://www.copyscape.com",'CopySc',qbtarget); w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'AffenKr',qbtarget,'Affenkrieger'); 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','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); w (1,'http://rupp.de/cgi-bin/WP-autoreview.pl?l=de&lemma='+pesctitle,'AR',qbtarget,'AutoReview'); w (1,"http://www.canoo.net",'Canoo',qbtarget); w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'FactB',qbtarget,'CIA World Factbook'); w (1,"http://de.encarta.msn.com/artcenter_/browse.html",'Enc',qbtarget,'MSN Encarta'); w (1,"http://lexikon.meyers.de/index.php/Meyers-Meyers_Lexikon_online",'Meyers',qbtarget,'Meyers Lexikon online'); w (1,"http://susi.e-technik.uni-ulm.de:8080/Meyers2/index/index.html",'Mey88',qbtarget,'Meyers Konversationslexikon 1888'); w (1,"http://www.ddb.de",'DNB',qbtarget,'Deutsche Nationalbibliothek'); if (isArticle) { w (1,"http://dispatch.opac.ddb.de/DB=4.1/CMD?ACT=SRCHA&IKT=8514&SRT=YOP&TRM="+quickEscape(personlemma,1),'DNB-PND',qbtarget,'DNB (PND-Suche)'); } else { w (1,"http://dnb.ddb.de/",'DNB-PND',qbtarget,'DNB (PND-Suche)'); } w (1,"http://www.ubka.uni-karlsruhe.de/kvk.html",'KVK',qbtarget,'Karlsruher Virtueller Katalog'); w (1,"http://mdz1.bib-bvb.de/~ndb/ndbmaske.html",'ADB',qbtarget,'Allgemeine/Neue Deutsche Biographie'); } function qbEditTags() { if (isBild) return; if (!isEdit) return; w (0,trenner,'Editierhilfen',''); w (3,"br,'',''",'br','','Zeilenumbruch'); w (3,"'&','nbsp;',''",'nbsp','','Geschütztes Leerzeichen'); w (3,"'†','',''",'†','','Kreuz'); w (3,"'–','',''",'–','','Gedankenstrich'); w (3,"'→','',''",'→','','Pfeil nach rechts'); w (3,"'<!-- ',' -->',''",'// comment','','<!--Kommentar-->'); w (3,"'„','“',''",'„“','','Anführungszeichen'); // </nowiki> w (3,"'<nowiki>','</nowiki>',''",'Nowiki','','<nowiki>'); w (3,"'<code><nowiki>','</nowiki></code>',''",'Code','','<code+nowiki>'); // <nowiki> 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,"'<math>','</math>',''",'Math'); w (3,"':<math>\\u005Cmathrm{','}</math>',''",'ChemForm'); } function qbArticleTemps() { if (isBild) return; if (!isEdit) return; w (0,trenner,'Artikelbausteine',''); w (3,"'== Weblinks ==\\n','',''",'Weblinks','','== Weblinks =='); w (3,"'== Einzelnachweise ==\\n<references />\\n','',''",'Refs','','== Einzelnachweise =='); w (3,"'[[Kategorie:',']]\\n',''","Kat:",'','[[Kategorie:]]'); w (3,"'{{DEFAULTSORT:"+quickEscape(personlemma,2)+"}}\\n','',''","DefSrt",'','{{DEFAULTSORT:'); w (3,"'[[Benutzer:',']]',''","User:",'','[[Benutzer:]]'); w (3,"'[[Wikipedia:',']]',''","WP:",'','[[Wikipedia:]]'); w (0,br,'',''); w (3,"'{{Personendaten\\n|NAME="+personlemma+"\\n|ALTERNATIVNAMEN=\\n|KURZBESCHREIBUNG=\\n|GEBURTSDATUM=\\n|GEBURTSORT=\\n|STERBEDATUM=\\n|STERBEORT=\\n}}\\n','',''",'PD','','{{Personendaten...'); w (3,"'* {{IMDb Name|','|"+wgTitle+"}}\\n',''","IMdb-n",'','{{IMDb Name...'); w (3,"'* {{IMDb Titel|','|"+wgTitle+"}}\\n',''","IMdb-t",'','{{IMDb Titel...'); w (3,"'* {{OFDb Titel|','|"+wgTitle+"}}\\n',''","OFDb-t",'','{{OFDb Titel...'); w (0,br,'',''); w (2,"'Redirect angelegt','#REDIRECT [[]]',1","Redir",'','#REDIRECT [[]]'); w (2,"'+Überarbeiten','{{Überarbeiten}}\\n\\n',3","Überarb",'','{{Überarbeiten}}'); w (2,"'+Quelle','{{Quelle}}\\n\\n',3","Quelle?",'','{{Quelle}}'); // w (2,"'+Stub','{{Stub}}\\n\\n',2","Stub"); w (2,"'+Lückenhaft','{{Lückenhaft|Es fehlen...}}\\n\\n',2","Lücke","","Lückenhaft"); // w (2,"'+Rechtshinweis','{{Rechtshinweis}}',2","Recht"); // w (2,"'+Gesundheitshinweis','{{Gesundheitshinweis}}',2","Gesundh."); } function qbMarkupTools() { if (isBild) return; if (!isEdit) return; w (0,trenner,'Markup-Tools',''); w (4,"addPersData();","AutoPD",'','Automatische Kategorien und Personendaten'); // extern w (4,"wpTextReplace();","Replace",'','Suchen und Ersetzen'); if (rechtschreibpruefung && !AutorunRP && !isSpecial) w (4,"spellcheck();","SpellChk",'','Rechtschreibprüfung'); w (4,"replaceQuoteSigns();","FixQuotes",'','Anführungszeichen korrigieren'); // extern w (4,"ReplaceMarkup();","FixMarkup",'','Verschiedene Markup-Korrekturen'); // extern w (4,"undate();","UnDate",'','Daten entlinken'); } function qbImageTemps() { if (!isBild) return; if (!isEdit) return; w (0,trenner,'Bildbausteine',''); w (4,"nowcomm();","NowCommons"); w (2,"'+BLU','{{subst:BLU}}\\n\\n',3","BLU"); w (2,"'+BLU-User','{{subst:BLU-User}}\\n\\n',3","BLU-User"); } function qbUsertalkTemps() { if (!isUserpage) return; if (!isTalk) return; if (!isEdit) return; w (0,trenner,'Benutzerbausteine',''); // w (3,"'{{subst:Benutzer:PDD/Greetings/Hallo|" + user + "}} " + usersignature + "\\n','',''","Hallo"); w (3,"'{{subst:Benutzer:PDD/Greetings/HalloG|" + user + "|" + usersignature + "}}\\n','','','Willkommen!'","Hallo",'','Baustein PDD:Hallo'); w (3,"'{{subst:Benutzer:PDD/Greetings/Danke}} " + usersignature + "\\n','',''",'Danke','','Baustein PDD:Danke'); w (3,"'{{subst:Benutzer:Complex/Greetings/TestMitStopschild}} " + usersignature + "\\n','',''",'Stop','','Baustein Complex:TestMitStopschild'); // Abwandlung von [[Benutzer:LKD/V/VHinweis]] // w (3,"'{{subst:Benutzer:Blah/Vorlage:Vandale}}\\n','',''",'Vand','','Baustein Blah:Vandale'); // w (3,"'{{subst:Benutzer:Tobi B./Vorlage:Löschvandale}} " + usersignature + "\\n','',''",'LöschV','','Baustein Tobi B.:Löschvandale'); w (3,"'{{subst:Benutzer:PDD/Greetings/KinderKinder!}}\\n','',''",'Kind','','Baustein PDD:Kind'); w (3,"'{{Diskussion}}\\n','',''",'Sign!','','{{Diskussion}}'); w (3,"'{{subst:Vorschau}} " + usersignature + "\\n','',''",'Vorschau','','{{subst:Vorschau}}'); w (3,"'{{subst:Benutzer:PDD/Greetings/Linkspam}} " + usersignature + "\\n','',''",'Linkspam','','Baustein PDD:Linkspam'); // 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:Benutzer:LKD/V/ALoesch}} " + usersignature + "\\n','',''",'SLA-ex','','Autorenbenachrichtigung nach Schnelllöschung'); } function qbAdminTools() { if (!adminflag) return; if (isArticle || isCategory) { w (0,trenner,'',''); w (4,"eintragen(12);","LemmaSp+","","+Lemmasperrung"); } if (isArticleTalk && isEdit) { w (0,trenner,'',''); w (2,"'+Halbsperrung','{{Halbsperrung}}\\n',3","HSp","","Zugehöriger Artikel halbgesperrt"); w (2,"'+Vollsperrung','{{Vollsperrung}}\\n',3","VSp","","Zugehöriger Artikel vollgesperrt"); } // alt if (isUserMainpage && isEdit) { w (0,trenner,'',''); w (2,"'+Gesperrter Benutzer','{{Gesperrter Benutzer}}',1","BSp",'','Benutzer gesperrt'); } // neu //if (isUserpage || isContrib) { // w (0,trenner,'',''); // w (4,"eintragen(13);","BSp+","","+Benutzersperrung"); //} // if (delreasons && !isSpecial) { //w (0,trenner,'',''); //w (4,"del(1);","D(U)"); //w (4,"del(2);","D(T)"); //w (4,"del(3);","D(KA)"); //w (4,"del(4);","D(UR)"); //w (4,"del(12);","D(FL)"); //w (4,"del(5);","D(I)"); //w (4,"del(6);","D(FSR)"); //w (4,"del(7);","D(Fl)"); //w (4,"del(14);","D(WdB)"); //w (4,"del(9);","D(Werb)"); //w (4,"del(10);","D(Wieder)"); //w (4,"del(11);","D(Fake)"); //w (4,"del(15);","D(VDs)"); // } if (isRestore) { w (0,trenner,'',''); w (4,"checkAllDeletedVersions();","Alle Versionen?","","Alle Versionen wiederherstellen?"); } } function qbAutoTemps() { if (isSpecial && !isContrib) return; w (0,trenner,'Auto-Bausteine',''); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(1);","QS+","","+Qualitätssicherung"); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(5);","URV+","","+URV"); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(2);","LA+","","+Löschantrag"); if (( isBild) && (!isSpecial)) w (4,"eintragen(4);","BildLA+","","+Löschantrag Bild"); // if (( isBild) && (!isSpecial)) w (4,"eintragen(9);","BLU+","","+BLU"); if (( isCategory) && (!isSpecial)) w (4,"eintragen(7);","KatLA+","","+Löschantrag Kategorie"); if (( isTemplate) && (!isSpecial)) w (4,"eintragen(8);","VorLA+","","+Löschantrag Vorlage"); if ( (!isSpecial)) w (4,"eintragen(3);","SLA+","","+Schnelllöschantrag"); if (( isContrib) || ( isUserpage)) w (4,"eintragen(6);","VANDAL+","","+Vandalismusmeldung"); if (hinweis) { if (( isGeneric) && (!isSpecial)) w (4,"hinweis(1);","PH+","","+Portalhinweis"); if (( isGeneric) && (!isSpecial)) w (4,"hinweis(2);","RH+","","+Redaktionshinweis"); } if (wgPageName == "Wikipedia:Spielwiese") w (4,"eintragen(10);","SP-Reset","","Spielwiese zurücksetzen"); } /* * hier wird der Quickbar in die Seite geschrieben * (ab hier bitte nichts ändern) */ buildQuickbar(); document.write(Quickbar); if (typeof(version) == 'undefined') var version = "?"; if (!isEdit || zeigeversion || isPHP) { document.write( '<div align=right>', (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?"></input> ') : ' ', '<a href="/w/index.php?title=Spezial%3APrefixindex&from=',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>'); } document.write('<div style="font-size:',qbfontsize,'%;">',xxx,'</div></div>'); if (scrpt > '') { document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>'); scrpt=''; } // // ab hier functions // function w (was,lurl,linktext,targt,title) { if (!title) title=linktext; if (!zeigehilfe) title=''; if (!dropdown) { switch (was) { case 0 : xxx=xxx+lurl;break; case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> ';break; case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 3 : xxx=xxx+'<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a> ';break; } } //if else //todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand???? { var ltext='__________'.substr(1,ind)+linktext; switch (was) { case 0 : if (lurl==br) {xxx=xxx+'<option>'+linktext+'</option>';ind=2;} else if (lurl==trenner) newdropdown(linktext); break; case 1 : xxx=xxx+'<option value="1|'+lurl+'">'+ltext+'</option>';break; case 2 : xxx=xxx+'<option value="2|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':newtext('+lurl+');break;';scrptn++;break; case 3 : xxx=xxx+'<option value="3|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':insertTagsWrapper('+lurl+');break;';scrptn++;break; case 4 : xxx=xxx+'<option value="4|'+scrptn+'">'+ltext+'</option>'; scrpt=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; case 2 : _doopt (Number(wie)); break; case 3 : _doopt (Number(wie)); break; case 4 : _doopt (Number(wie)); break; } //switch } //dodropdown function newdropdown (oname) { closedropdown(); xxx=xxx+'<select size=1 onchange="dodropdown(this.value);" style="width:135px;font-size:9px;">'; if (oname > '') {xxx=xxx+'<option>'+oname+'</option>';} indropdown = true; ind=2; } function closedropdown () { if (indropdown) xxx=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 (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } switch (wo) { case 1 : document.editform.wpTextbox1.value=text+'\n'; break; case 2 : document.editform.wpTextbox1.value=document.editform.wpTextbox1.value+'\n'+text;break; case 3 : document.editform.wpTextbox1.value=text+'\n'+document.editform.wpTextbox1.value;break; } document.editform.wpTextbox1.focus(); } function insertTagsWrapper(tagOpen, tagClose, sampleText, subj) { if (subj > "") { if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } insertTags(tagOpen, tagClose, sampleText) } // 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 isAdmin() { var specialrights = false; if (typeof wgUserGroups != 'object') return(specialrights); if (typeof wgUserGroups[0] != 'string') return(specialrights); for (i=0;i<wgUserGroups.length;i++) { if (wgUserGroups[i] == "sysop") specialrights = true; } return(specialrights); } function quickEscape(text, esctype) { // esctype = 1 -> normal umlaut escapes // esctype = 2 -> wikisort umlaut escapes text = text.replace(/ß/g, "ss"); text = text.replace(/Á/g,"A").replace(/á/g,"a").replace(/À/g,"A").replace(/à/g,"a"); text = text.replace(/Ă/g,"A").replace(/ă/g,"a").replace(/Â/g,"A").replace(/â/g,"a"); text = text.replace(/Ć/g,"C").replace(/ć/g,"c").replace(/Č/g,"C").replace(/č/g,"c"); text = text.replace(/Ç/g,"C").replace(/ç/g,"c"); text = text.replace(/É/g,"E").replace(/é/g,"e").replace(/È/g,"e").replace(/è/g,"e"); text = text.replace(/Ğ/g,"G").replace(/ğ/g,"g"); text = text.replace(/Í/g,"I").replace(/í/g,"i").replace(/Ì/g,"I").replace(/ì/g,"i"); text = text.replace(/İ/g,"I").replace(/ı/g,"i").replace(/Î/g,"I").replace(/î/g,"i"); text = text.replace(/Ł/g,"L").replace(/ł/g,"l"); text = text.replace(/Ń/g,"N").replace(/ń/g,"n").replace(/Ñ/g,"N").replace(/ñ/g,"n"); text = text.replace(/Ó/g,"O").replace(/ó/g,"o").replace(/Ò/g,"O").replace(/ò/g,"o"); text = text.replace(/Ø/g,"O").replace(/ø/g,"o").replace(/Õ/g,"O").replace(/õ/g,"o"); text = text.replace(/Ő/g,"O").replace(/ő/g,"o"); text = text.replace(/Ř/g,"R").replace(/ř/g,"r"); text = text.replace(/Ś/g,"S").replace(/ś/g,"s").replace(/Š/g,"S").replace(/š/g,"s"); text = text.replace(/Ş/g,"S").replace(/ş/g,"s"); text = text.replace(/Ú/g,"U").replace(/ú/g,"u").replace(/Ù/g,"U").replace(/ù/g,"u"); text = text.replace(/Ű/g,"U").replace(/ű/g,"u"); text = text.replace(/Ź/g,"Z").replace(/ź/g,"z").replace(/Ž/g,"Z").replace(/ž/g,"z"); if (esctype == 1) { text = text.replace(/Ä/g, "Ae").replace(/Ö/g, "Oe").replace(/Ü/g, "Ue"); text = text.replace(/ä/g, "ae").replace(/ö/g, "oe").replace(/ü/g, "ue"); } else { text = text.replace(/Ä/g, "A").replace(/Ö/g, "O").replace(/Ü/g, "U"); text = text.replace(/ä/g, "a").replace(/ö/g, "o").replace(/ü/g, "u"); } return(text); } // Funktion: importPage() // zum Einbinden der Module 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' + wgScriptPath + '/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; // old version // document.write('<SCRIPT TYPE="text/javascript" SRC="http://' + lang // + '.wikipedia.org/w/index.php?title=' + name + seite // + '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s"><\/SCRIPT>'); } /* * 3xImport von [[Benutzer:Revvar]] * aus [[Benutzer:Revvar/wikibits.js]] und [[Benutzer:Revvar/monobook.js]] */ /** Imports a user javascript page from any wikipedia project into the actual document. @version 0.1 @date 2007/03/22 @author: based on function importPage from [[de:User:PDD]]s monobook.js, extended by [[de:User:Revvar]] @param page Name of the user page without the "user:" prefix and the ".js" appendix @param lang (optional) Language code of the corresponding wikipedia project. Default is the callers project. @return "true" on success, "false" otherwise */ function importJavascriptL(page, lang) { try { /* check the parameters and set defaults */ if(!page) throw("importJavascriptL: Missing parameter page."); if(!lang) lang = wgContentLanguage; /* create import url */ var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + '.js&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s'; /* import page */ var Head = document.getElementsByTagName('head').item(0); var Script = document.createElement('script'); Script.setAttribute('type', 'text/javascript'); Script.setAttribute('src', import_url); Script.setAttribute('charset', 'utf-8'); Head.appendChild(Script); return true; } catch(e) { alert(e.message); return false; } } /** 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 */ function importCSSL(page, lang) { try { /* check the parameters and set defaults */ if(!page) throw("importCSSL: Missing parameter page."); if(!lang) lang = wgContentLanguage; /* create import url */ var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + '.css&action=raw&ctype=text/css&smaxage=2678400&dontcountme=s'; /* import page */ var Head = document.getElementsByTagName('head').item(0); var CSS = document.createElement('style'); CSS.setAttribute('type', 'text/css'); CSS.setAttribute('charset', 'utf-8'); CSS.appendChild(document.createTextNode("@import url(" + import_url + ");")); Head.appendChild(CSS); return true; } catch(e) { alert(e.message); return false; } } /** Asynchron import of a Javascript file from the toolserver. @version 0.1 @date 2007/04/24 @author based on function importPage from [[de:User:PDD]]s monobook.js, rewritten by [[de:User:Revvar]] @param path Path to the toolserver script without the ".js" appendix */ function import_JS_from_TS(path) { try { /* check the parameter */ if(!path) throw("import_JS_from_TS: Missing parameter path."); /* create import url */ var import_url = 'http://tools.wikimedia.de/' + path + '.js'; /* import */ setTimeout(function(e) { var Head = document.getElementsByTagName('head').item(0); var Script = document.createElement('script'); Script.setAttribute('type', 'text/javascript'); Script.setAttribute('src', import_url); Script.setAttribute('charset', 'utf-8'); Head.appendChild(Script); }, 1000); } catch(e) { alert(e.message); return; } } // ***** FOOT-Block ***** // </nowiki> <- nicht löschen!!! // ausgelagerte obligatorische Funktionen importJavascriptL('PDD/helperFunctions','de'); // [[Benutzer:PDD/helperFunctions.js]] importJavascriptL('PDD/eintragen','de'); // [[Benutzer:PDD/eintragen.js]] importJavascriptL('PDD/alertOnChanges','de'); // [[Benutzer:PDD/alertOnChanges.js]] // obligatorisch nur für editpages if (isEdit) { importJavascriptL('PDD/wpTextReplace','de'); // [[Benutzer:PDD/wpTextReplace.js]] importJavascriptL('PDD/replaceQuoteSigns','de'); // [[Benutzer:PDD/replaceQuoteSigns.js]] // importJavascriptL('PDD/replaceQuoteSigns2','de'); // [[Benutzer:PDD/replaceQuoteSigns2.js]] importJavascriptL('BLueFiSH.as/JS/markup','de'); // [[Benutzer:BLueFiSH.as/JS/markup.js]] importJavascriptL('Spongo/persDaten','de'); // [[Benutzer:Spongo/persDaten.js]] } // ausgelagerte optionale Funktionen (Autoload) // revert/loglink-Funktionen: möglichst früh einbinden // Revert godmode-light if (godmodelight && !adminflag && !isEdit && !(isSpecial && !isContrib)) { importJavascriptL('PDD/godmode-light','de'); // [[Benutzer:PDD/godmode-light.js]] // importJavascriptL('Olliminatore/godmode-light','en'); // [[:en:User:Olliminatore/godmode-light.js]] } // Revert addEditAndRevertLinks if (!(!aerhistory && isHistory) && !isEdit) { if (editlinkoldversion || revertwithreason) importJavascriptL('PDD/addEditAndRevertLinks','de'); // [[Benutzer:PDD/addEditAndRevertLinks.js]] } // LogLinks addLogsLink if (addlogslink && !isSpecial) importJavascriptL('PDD/addLogsLink','de'); // [[Benutzer:PDD/addLogsLink.js]] // jetzt alles andere, was optional ist if (!isSpecial) if (addeditintro || addpurge) importJavascriptL('PDD/modifyCA','de'); // [[Benutzer:PDD/modifyCA.js]] // changeBeschriftungen *nach* modifyCA.js (!) if (beschriftungen) importJavascriptL('PDD/changeBeschriftungen','de'); // [[Benutzer:PDD/changeBeschriftungen.js]] if (changeszlig) importJavascriptL('PDD/changeSZtoSS','de'); // [[Benutzer:PDD/changeSZtoSS.js]] if (rechtschreibpruefung && !isSpecial) { DontAutorunRP = !AutorunRP; importPage('APPER/RP/js'); // [[Benutzer:APPER/RP/js]] } if (ippvandalmark && !isEdit) importPage('APPER/IP-Patrol/js'); // [[Benutzer:APPER/IP-Patrol/js]] if (showredundantlinks && !isSpecial) importJavascriptL('PDD/showRedundantLinks','de'); // [[Benutzer:PDD/showRedundantLinks.js]] // Signierfunktionen if (isEdit && !isArticle) { if (signing) importJavascriptL('Olliminatore/signing','de'); // [[Benutzer:Olliminatore/signing.js]] if (unsigning) importJavascriptL('Olliminatore/unsigned','de'); // [[Benutzer:Olliminatore/unsigned.js]] } // extended search & replace feature if (isEdit && searchbox) importJavascriptL('Zocky/SearchBox','en'); // [[:en:User:Zocky/SearchBox.js]] // Portal- und Redaktionshinweis if (hinweis) importJavascriptL('DerHexer/hinweise','de'); // [[Benutzer:DerHexer/hinweise.js]] // Kackbalken-Script if (irrenhaus) importJavascriptL('Revvar/irrenhaus','de'); // [[Benutzer:Revvar/irrenhaus.js]] // Syntax highlighter if (js_highlight) importJavascriptL('Olliminatore/shCore','en'); // [[:en:User:Olliminatore/shCore.js]] // wikiminiatlas: Atlas bei Georeferenzen if (miniatlas && !isSpecial) importJavascriptL('Dschwen/wikiminiatlas2','de'); // [[Benutzer:Dschwen/wikiminiatlas2.js]] // coordinates: Generierung der Koordinaten-Vorlage if (coordinates && isEdit) importJavascriptL('Dschwen/coordinates','de'); // [[Benutzer:Dschwen/coordinates.js]] // showreftoggle if (reftoggle && !isSpecial) importJavascriptL('Malte_Schierholz/reftoggle','de'); // [[Benutzer:Malte Schierholz/reftoggle.js]] // setGallery if (newgallery && !isSpecial) importJavascriptL('Olliminatore/newgallery','de'); // [[Benutzer:Olliminatore/newgallery.js]] // custom toolbar buttons if (customtoolbar) importJavascriptL('Olliminatore/customToolbar','de'); // [[Benutzer:Olliminatore/customToolbar.js]] // quickedit if (qeEnabled) importJavascriptL('ASM/quickedit','de'); // [[Benutzer:ASM/quickedit.js]] // RIPE tooltips if (ripe && !isEdit) importJavascriptL('PDD/tooltips','de'); // [[Benutzer:PDD/tooltips.js]] // dellinknowcommons if (dellinknowcommons && adminflag && isBild) importJavascriptL('PDD/dellink-nc','de'); // [[Benutzer:PDD/dellink-nc.js]] // Lupin's popups if (lupinpopups) importJavascriptL('Lupin/popups','en'); // [[:en:User:Lupin/popups.js]] // Markierskripte ganz zum Schluss einbinden, da sie innerHTML verändern if (!(!mawatchlist && isWatchlist) && !(!macontribs && isContrib)) { if (markadmins || markexadmins || markcomadmins) importJavascriptL('PDD/markAdmins','de'); // [[Benutzer:PDD/markAdmins.js]] } if (!(!muwatchlist && isWatchlist) && !(!mucontribs && isContrib)) { if (markutf8) importJavascriptL('PDD/markUTF8','de'); // [[Benutzer:PDD/markUTF8.js]] } // Und hier ist die monobook.js zu Ende. // [[Benutzer:Joschua/Userpage Navigation]] document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title=Benutzer:Joschua/Userpage_Navigation/js&action=raw&ctype=text/javascript"><\/SCRIPT>'); // <nowiki> // Einfaches Hinzufügen und Entfernen von Kategorien in Artikeln. // Von http://commons.wikimedia.org/wiki/MediaWiki:HotCat.js und // http://fr.wikipedia.org/wiki/MediaWiki:JSScripts/HotCats übernommen // Version: 28. 11. 2007 // Konfigurationsvariablen: // Zeit bis die Auswahlliste erscheint var hotcat_suggestion_delay = 200; // Anzahl der Zeilen in der Auswahlliste var hotcat_list_size = 10; // Anzahl der Elemente in der Auswahlliste var hotcat_list_items = 50; // Wenn true: Automatisches Speichern der Änderung ohne Bearbeitungsfenster // var hotcat_autocommit = false; // Wenn true: Auswahlliste nach unten statt nach oben ausklappen // var hotcat_list_down = false; // interne Variablen var hotcat_running = 0 ; var hotcat_last_v = "" ; var hotcat_exists_yes = "http://upload.wikimedia.org/wikipedia/commons/thumb/b/be/P_yes.svg/20px-P_yes.svg.png" ; var hotcat_exists_no = "http://upload.wikimedia.org/wikipedia/commons/thumb/4/42/P_no.svg/20px-P_no.svg.png" ; addOnloadHook ( hotcat ) ; function hotcat () { if ( hotcat_check_action() ) return ; // Edited page, reloading anyway var catlinks = document.getElementById("catlinks"); if (! catlinks && wgNamespaceNumber %2 == 0) { // all except discussion // let's create a fake one var bodyC = document.getElementById("bodyContent"); catlinks = document.createElement("div"); catlinks.id = "catlinks"; catlinks.appendChild(document.createElement("p")); catlinks.firstChild.className = "catlinks"; bodyC.appendChild(catlinks); } var catline = getElementsByClassName ( document , "p" , "catlinks" ) [0] ; if ( catline == null || typeof catline == 'undefined' ) return ; hotcat_modify_existing ( catline ) ; hotcat_append_add_span ( catline ) ; } function hotcat_append_add_span ( catline ) { var span_add = document.createElement ( "span" ) ; var span_sep = document.createTextNode ( " | " ) ; if ( catline.firstChild ) catline.appendChild ( span_sep ) ; catline.appendChild ( span_add ) ; hotcat_create_span ( span_add ) ; } String.prototype.ucFirst = function () { return this.substr(0,1).toUpperCase() + this.substr(1,this.length); } function hotcat_modify_span ( span , i ) { var cat_title = span.firstChild.getAttribute ( "title" ) ; // Removing leading Category: cat_title = cat_title.substr(cat_title.indexOf(":") + 1); var sep1 = document.createTextNode ( " " ) ; var a1 = document.createTextNode ( "(-)" ) ; var remove_link = document.createElement ( "a" ) ; remove_link.href = "javascript:hotcat_remove(\"" + cat_title + "\");" ; remove_link.appendChild ( a1 ) ; span.appendChild ( sep1 ) ; span.appendChild ( remove_link ) ; var mod_id = "hotcat_modify_" + i ; var sep2 = document.createTextNode ( " " ) ; var a2 = document.createTextNode ( "(±)" ) ; var modify_link = document.createElement ( "a" ) ; modify_link.id = mod_id ; modify_link.href = "javascript:hotcat_modify(\"" + mod_id + "\");" ; modify_link.appendChild ( a2 ) ; span.appendChild ( sep2 ) ; span.appendChild ( modify_link ) ; } function hotcat_modify_existing ( catline ) { var spans = catline.getElementsByTagName ( "span" ) ; for ( var i = 0 ; i < spans.length ; i++ ) { hotcat_modify_span ( spans[i] , i ) ; } } function hotcat_remove ( cat_title ) { var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href; if (window.confirm("Soll die Kategorie '" + cat_title + "' wirklich entfernt werden?")) { document.location = editlk + '&hotcat_removecat=' + encodeURIComponent(cat_title) ; } } function hotcatGetParamValue(paramName, h) { if (typeof h == 'undefined' ) { h = document.location.href; } var cmdRe=RegExp('[&?]'+paramName+'=([^&]*)'); var m=cmdRe.exec(h); if (m) { try { return decodeURIComponent(m[1]); } catch (someError) {} } return null; } function hotcat_check_action () { var ret = 0 ; if ( wgAction != "edit" ) return ret ; // Not an edit page, so no business... var summary = new Array () ; var t = document.editform.wpTextbox1.value ; var prevent_autocommit = 1 ; if ( typeof hotcat_autocommit != 'undefined' && hotcat_autocommit ) prevent_autocommit = 0 ; // Remove existing category? var hrc = hotcatGetParamValue('hotcat_removecat') ; // Add new category? var hnc = hotcatGetParamValue('hotcat_newcat') ; if ( typeof hrc != "undefined" && hrc != null && hrc != "" ) { var hcre = new RegExp("(\\s*)\\[\\[ *(?:Kategorie|Category) *: *" + hrc.replace(/([\\\^\$\*\+\?\.\|\{\}\[\]\(\)])/g, "\\$1") + " *(\\|[^\\]]*)?\\]\\]", "gi"); var matches = t.match(hcre); if (matches != null && matches.length == 1) { // Found one occurrence of the category - good! if ( typeof hnc != "undefined" && hnc != null && hnc != "" ) { t = t.replace(hcre, "$1[[Kategorie:" + hnc + "$2]]"); summary.push ( "[[Kategorie:" + hrc + "]] nach [[Kategorie:" + hnc + "]] geändert" ) ; } else { t = t.replace(hcre, ""); summary.push ( "[[Kategorie:" + hrc + "]] entfernt" ) ; } ret = 1 ; } else { alert ( "Kategorie \"" + hrc + "\" wurde im Text nicht gefunden. Sie wird wahrscheinlich über eine Vorlage eingebunden." ) ; prevent_autocommit = 1 ; } } else { // Only adding? if ( typeof hnc != "undefined" && hnc != null && hnc != "" ) { // Looking for last cat var re = /\[\[(?:Kategorie|Category):[^\]]+\]\]/ig ; var index = -1; while (re.exec(t) != null) index = re.lastIndex; var txt = "[[Kategorie:" + hnc + "]]" ; if (index < 0) { t = t + '\n' + txt ; } else { t = t.substring(0, index) + '\n' + txt + t.substring(index); } summary.push ( "[[Kategorie:" + hnc + "]] hinzugefügt" ) ; ret = 1 ; } } if ( ret ) { document.editform.wpTextbox1.value = t ; document.editform.wpSummary.value = summary.join( " ; " ) + " (mit [[MediaWiki:Gadget-HotCat.js|HotCat]])" ; document.editform.wpMinoredit.checked = true ; if ( !prevent_autocommit ) { document.getElementById("bodyContent").style.display = "none" ; // Hiding the entire edit section so as not to tempt the user into editing... document.editform.wpSave.click(); } } // This is the end, my friend, the end... return ret ; } function hotcat_clear_span ( span_add ) { while ( span_add.firstChild ) span_add.removeChild ( span_add.firstChild ) ; } function hotcat_create_span ( span_add ) { hotcat_clear_span ( span_add ) ; var a_add = document.createElement ( "a" ) ; var a_text = document.createTextNode ( "(+)" ) ; span_add.id = "hotcat_add" ; a_add.href = "javascript:hotcat_add_new()" ; a_add.appendChild ( a_text ) ; span_add.appendChild ( a_add ) ; } function hotcat_modify ( link_id ) { var link = document.getElementById ( link_id ) ; var span = link.parentNode ; var catname = span.firstChild.firstChild.data ; while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ; span.firstChild.style.display = "none" ; hotcat_create_new_span ( span , catname ) ; hotcat_last_v = "" ; hotcat_text_changed () ; // Update icon } function hotcat_add_new () { var span_add = document.getElementById ( "hotcat_add" ) ; hotcat_clear_span ( span_add ) ; hotcat_last_v = "" ; hotcat_create_new_span ( span_add , "" ) ; } function hotcat_create_new_span ( thespan , init_text ) { var form = document.createElement ( "form" ) ; form.method = "post" ; form.onsubmit = function () { hotcat_ok(); return false; } ; form.id = "hotcat_form" ; form.style.display = "inline" ; var list = document.createElement ( "select" ) ; list.id = "hotcat_list" ; list.onclick = function () { document.getElementById("hotcat_text").value = document.getElementById("hotcat_list").value ; hotcat_text_changed() ; } ; list.ondblclick = function () { document.getElementById("hotcat_text").value = document.getElementById("hotcat_list").value ; hotcat_text_changed() ; hotcat_ok(); } ; list.style.display = "none" ; var text = document.createElement ( "input" ) ; text.size = 40 ; text.id = "hotcat_text" ; text.type = "text" ; text.value = init_text ; text.onkeyup = function () { window.setTimeout("hotcat_text_changed();", hotcat_suggestion_delay ); } ; var exists = document.createElement ( "img" ) ; exists.id = "hotcat_exists" ; exists.src = hotcat_exists_no ; var OK = document.createElement ( "input" ) ; OK.type = "button" ; OK.value = "OK" ; OK.onclick = hotcat_ok ; var cancel = document.createElement ( "input" ) ; cancel.type = "button" ; cancel.value = "Abbrechen" ; cancel.onclick = hotcat_cancel ; form.appendChild ( list ) ; form.appendChild ( text ) ; form.appendChild ( exists ) ; form.appendChild ( OK ) ; form.appendChild ( cancel ) ; thespan.appendChild ( form ) ; text.focus () ; } function hotcat_ok () { var text = document.getElementById ( "hotcat_text" ) ; var v = text.value ; // Empty category ? if ( v == "" ) { hotcat_cancel() ; return ; } var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href; var url = editlk + '&hotcat_newcat=' + encodeURIComponent( v ) ; // Editing existing? var span = text.parentNode.parentNode ; // span.form.text if ( span.id != "hotcat_add" ) { // Not plain "addition" var cat_title = span.firstChild.getAttribute ( "title" ) ; // Removing leading Category: cat_title = cat_title.substr(cat_title.indexOf(":") + 1); url += '&hotcat_removecat=' + encodeURIComponent( cat_title ) ; } document.location = url ; } function hotcat_cancel () { var span = document.getElementById("hotcat_form").parentNode ; if ( span.id == "hotcat_add" ) { hotcat_create_span ( span ) ; } else { while ( span.firstChild.nextSibling ) span.removeChild ( span.firstChild.nextSibling ) ; span.firstChild.style.display = "" ; for ( var i = 0 ; i < span.parentNode.childNodes.length ; i++ ) { if ( span.parentNode.childNodes[i] != span ) continue ; hotcat_modify_span ( span , i ) ; break ; } } } function hotcat_text_changed () { if ( hotcat_running ) return ; var text = document.getElementById ( "hotcat_text" ) ; var v = text.value.ucFirst() ; if ( hotcat_last_v == v ) return ; // Nothing's changed... hotcat_running = 1 ; hotcat_last_v = v ; if ( v != "" ) { var url = wgServer + "/" + wgScriptPath + "/api.php?format=xml&action=query&list=allpages&apnamespace=14&apfrom=" + encodeURIComponent( v ) + "&aplimit=" + encodeURIComponent( hotcat_list_items ); if ( typeof ( hotcat_xmlhttp ) != "undefined" ) hotcat_xmlhttp.abort() ; // Just to make sure... hotcat_xmlhttp = new sajax_init_object() ; hotcat_xmlhttp.open('GET', url, true); hotcat_xmlhttp.onreadystatechange = function () { if ( typeof hotcat_xmlhttp == "undefined" ) return ; if (hotcat_xmlhttp.readyState == 4) { var xml = hotcat_xmlhttp.responseXML ; if ( xml == null ) return ; var pages = xml.getElementsByTagName( "p" ) ; var titles = new Array () ; for ( var i = 0 ; i < pages.length ; i++ ) { var s = pages[i].getAttribute("title"); // Removing leading "Category:" s = s.substr(s.indexOf(":") + 1); if ( s.substr ( 0 , hotcat_last_v.length ) != hotcat_last_v ) break ; titles.push ( s ) ; } hotcat_show_suggestions ( titles ) ; } }; hotcat_xmlhttp.send(null); } else { var titles = new Array () ; hotcat_show_suggestions ( titles ) ; } hotcat_running = 0 ; } function hotcat_show_suggestions ( titles ) { var text = document.getElementById ( "hotcat_text" ) ; var list = document.getElementById ( "hotcat_list" ) ; var icon = document.getElementById ( "hotcat_exists" ) ; if ( titles.length == 0 ) { list.style.display = "none" ; icon.src = hotcat_exists_no ; return ; } var listh = hotcat_list_size * 20 ; if (titles.length < hotcat_list_size) { listh = titles.length * 20 ; } var nl = parseInt ( text.parentNode.offsetLeft ) - 1 ; var nt = parseInt(text.offsetTop) - listh ; // Parameter to show suggestion list beneath categories instead of above if (typeof hotcat_list_down != "undefined" && hotcat_list_down) { nt = text.offsetTop + text.offsetHeight; } list.size = 5 ; list.style.align = "left" ; list.style.zIndex = 5 ; list.style.position = "absolute" ; list.style.top = nt + "px" ; list.style.width = text.offsetWidth + "px" ; list.style.height = listh + "px" ; list.style.left = nl + "px" ; while ( list.firstChild ) list.removeChild ( list.firstChild ) ; for ( var i = 0 ; i < titles.length ; i++ ) { var opt = document.createElement ( "option" ) ; var ot = document.createTextNode ( titles[i] ) ; opt.appendChild ( ot ) ; opt.setAttribute( "value", titles[i] ); list.appendChild ( opt ) ; } list.style.display = "block" ; icon.src = hotcat_exists_yes ; var first_title = titles.shift () ; if ( first_title == hotcat_last_v ) return ; var suggestion = first_title; text.value = suggestion ; if (text.createTextRange) { // IE var ra = text.createTextRange(); ra.moveStart("character", hotcat_last_v.length); ra.moveEnd("character", suggestion.length); ra.select(); } else if( is_khtml ) { text.setSelectionRange( hotcat_last_v.length, suggestion.length ); } else { text.selectionStart = hotcat_last_v.length ; text.selectionEnd = suggestion.length ; } } // </nowiki>