Benutzer:Kenwilliams/monobook.js
Aus MosaPedia
Hinweis - Leere nach dem Speichern den Browser-Cache, um die Änderungen sehen zu können: Mozilla/Firefox/Safari: Shift gedrückt halten und auf Aktualisieren klicken oder alternativ entweder Strg-F5 oder Strg-R (Befehlstaste-R bei Macintosh) drücken; Konqueror: Auf Aktualisieren klicken oder F5 drücken; Opera: Cache unter Extras → Einstellungen leeren; Internet Explorer: Strg-F5 drücken oder Strg gedrückt halten und dabei Aktualisieren anklicken.
{{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>