Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
 function add_links_talkpage()
 {
  /*
     var section = document.getElementsByName("wpSection")[0].value;

  if(!section) return;

  if(section=="new")
  {
   insert_link_before("SPAN", "wpSummaryLabel", '<a href="#" onclick="document.getElementById(\'wpTextbox1\').value=\'Hi '+wgTitle+'\'">Hi</a>');
  }*/
 }
	 
 function add_links_article()
 {
   insert_link_before("LI", "t-permalink", '<a href="http://tools.wikimedia.de/~magnus/missing_images.php?lang=' + wgContentLanguage + '&doit=Run&use_png=1&use_gif=1&use_jpg=1&use_tif=1&use_svg=1&donoevil=1&skipgood=0&titlelist=' + wgPageName + '" target="_blank">Bildercheck</a>');
   
   insert_link_before("LI", "t-recentchangeslinked", '<a target="_blank" href="http://wikipedia.ramselehof.de/contexter.php?article=' + wgPageName + '&username='+wgUserName+'">Contexter</a>');
   
   //Edit first section
  var firstheading = document.getElementsByTagName("H1")[0];
  if ((firstheading ) && (wgIsArticle))
  {
    var ins = document.createElement("div");
    ins.innerHTML=/* */'<small align="right" class="noprint" style="font-size: 8;"><a href="'+ mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + wgPageName + '&action=edit&section=0">[bearbeiten]</a>&nbsp;<a href="'+ mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' +  wgPageName + '&action=edit&section=new" class="noprint">[Neuer Absatz]</a></small>';/* */
    firstheading.parentNode.insertBefore(ins, firstheading);	
  }

 }

 function add_links_all()
 {
  insert_link_before("LI", "t-recentchangeslinked", '<a href="javascript:var i=window.prompt(\'Link zu Abschnitt\', \'[[\'+wgPageName.split("_").join(" ")+\'#\'+ window.getSelection() + \']]\');">Link zu Abschnitt</a>');

   insert_link_before("LI", "t-recentchangeslinked", '<a href="http://wikipedia.ramselehof.de/diff2me.php?project=wikipedia&lang=de&article='+encodeURIComponent(mw.config.get('wgPageName'))+'&user='+wgUserName+'">Diff zur mir</a>');

  if(wgUserName=="Flominator")
  {
	  //custom link before user name link (top right)
	  insert_link_before("LI", "pt-userpage", '<a href="http://de.wikipedia.org/w/index.php?title=Spezial:Pr%C3%A4fixindex&from='+wgUserName+'&namespace=2">..</a>');


  //custom link before logout-link (top right)
	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:Flominator/AufGeFallen&action=edit&section=' + MonthSection(2016, 23) +'&summary=*%20[['+wgPageName.replace(/_/gm, ' ')+']]%20">AufGe</a><small><a href="http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:Flominator/AufGeFallen">Fallen</a></small>')

	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:Flominator/Diskussionen&action=edit&section=' + MonthSection(2017, 11) +'&summary=*%20[['+wgPageName.replace(/_/gm, ' ')+']]%20">Diskussio</a><small><a href="http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:Flominator/Diskussionen">nen</a></small>')

	  //custom link before logout-link (top right)
	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/w/index.php?title=Benutzer:Flominator/Überbildert&action=edit&section=1&summary=*%20[['+wgTitle+']]%20">Über</a>');

	  //custom link before logout-link (top right)
	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/wiki/WP:FRB">FR</a>');

	  //custom link before logout-link (top right)
	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/wiki/Benutzer:Flominator/Breisgau-Hochschwarzwald">LK BH</a>');

	  //custom link before logout-link (top right)
	  //insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/wiki/Wikipedia:Freiburg_im_Breisgau/FReview/Aktuell">FReview</a>');

	  //insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/w/index.php?title=Spezial:%C4nderungen_an_verlinkten_Seiten&hidemyself=1&target=Benutzer%3AFlominator%2FJahr_vorbei">2010</a>');


	  //custom link before logout-link (top right)
	  insert_link_before("LI", "pt-logout", '<a href="http://de.wikipedia.org/w/index.php?title=Benutzer:Flominator/Bausteincheck&action=edit&section=1&summary=*%20[['+wgPageName.replace(/_/gm, ' ')+']]%20">Baustein</a><small><a href="http://de.wikipedia.org/wiki/Benutzer:Flominator/Bausteincheck">check</a></small>');

  }

  //Insert WikiBlame, Contexter & Auto-Review before Changes on linked pages (left)
  insert_link_before("LI", "t-recentchangeslinked", '<a href="#" onclick="PerformNekrolog(prompt(\'Bitte Sterbedatum unten einfügen\'))">Nekrolog</a>');

  insert_link_before("LI", "t-recentchangeslinked", '<a target="_blank" href="http://wikipedia.ramselehof.de/wikiblame.php?limit=500&searchmethod=int&article=' + wgPageName + '&lang=' + wgContentLanguage + '">WikiBlame</a>');
  
  if(wgCanonicalSpecialPageName=="Search")
  {
	  insert_link_before("DIV", "jump-to-nav", '<a href="http://en.wikipedia.org/wiki/' + document.getElementById('ooui-1').value + '">englische Wikipedia</a>');
	  insert_link_before("DIV", "jump-to-nav", '<a href="http://de.wikipedia.org/wiki/Special:Whatlinkshere/' + document.getElementById('ooui-1').value + '">verlinkende Artikel</a>');
  }
  
  if(wgPageName=="Benutzer_Diskussion:Flominator/AufGeFallen")
  {
	var toc = document.getElementById('firstHeading');
	var button = document.createElement("button");
	button.addEventListener("click", SelectRandomListEntry, false);

	button.innerHTML = 'Zufälliger Eintrag';
	toc.appendChild(button);
  }
  

  //normal links for images from [[Benutzer:BLueFiSH.as/monobook.js]]   
  if ( wgNamespaceNumber != 6 )
  { 
   for (var i=0; aNode = document.getElementsByTagName("a")[i]; i++)
   { 
    if ( href = aNode.getAttribute("href") )
    { 
     if ( href.search(/\?title\=Bild\:/) > 0 && href.search(/\&action\=edit/) > 0 )
     { 
      href = href.replace(/\&action\=edit/, '');
      aNode.setAttribute("href", href);
     }
     if (href.search(/wpDestFile/) > 0)
     { 
      href = href.replace(/Spezial\:Hochladen\&wpDestFile\=/, 'Bild:');
      aNode.setAttribute("href", href);
     }
    }
   }
  }
 }


 function add_links_user()
 {
	//BLU-User beforeLogout
	 insert_link_before("LI", "t-upload", '<a href="http://de.wikipedia.org/w/index.php?title=Spezial%3ALogbuch&type=upload&user=' + wgTitle + '">Dateilogbuch</a>');
	 
	 insert_link_before("LI", "t-upload", '<a href="http://tools.wikimedia.de/~magnus/userdupes.php?username=' + wgTitle + '&identicalsonly=1&language=' + wgContentLanguage + '&showdesc=de&doit=Run">User-Dupes</a>');
	 
	 insert_link_before("LI", "t-upload", '<a href="https://tools.wmflabs.org/intersect-contribs/index.php?project=dewiki&user1=' + wgTitle + '&user2=' + wgTitle + '&sort=1&wiki=dewiki_p&namespaceFilter=0">Intersect</a>');

	 insert_link_before("LI", "t-upload", '<a href="http://toolserver.org/~soxred93/pcount/index.php?name=' + wgTitle + '&wiki=wikipedia&lang=de">Editcount</a>');

 }

 function add_links_image()
 {
   if(!document.getElementById('shared-image-desc')) //is local image
   {
    insert_link_before("LI", "n-mainpage", '<b><a href="http://tools.wikimedia.de/~magnus/commonshelper.php?language=' + wgContentLanguage + '&image=' + wgTitle + '">auf Commons</a></b>');
	add_dellinks_nowcommons();
   }
   else
   {
     //Link auf Bildbeschreibung in Commons zum Bearbeiten
     insert_link_before("span", "commons_descr", '<b><a style="background-color:#f9f9f9;" href="http://commons.wikimedia.org/w/index.php?title=' + wgCanonicalNamespace + ':' + wgTitle + '&action=edit">[Bildbeschreibung in Commons bearbeiten]</a></b>');
	 insert_link_before("li", "t-specialpages", '<a href="http://toolserver.org/~luxo/cropbot/cropbot.php?img=' + wgTitle +'">Crop</a>');
	 
   }
   //check_image_usage(); 
 }

 function add_links_edit(form)
 {
//maybe replace footer-places by something common in both skins
  insert_link_before("LI", "footer-places", 'Tabellenspalte <a href="#" onclick="bulkEditTable(\'delete\')">[-]</a>&nbsp;<a href="#" onclick="bulkEditTable(\'label\')">[bla]</a>&nbsp;<a href="#" onclick="bulkEditTable(\'insert\')">[+]</a>&nbsp;&nbsp;<a href="#" onclick="invertedCommasToItalic()">Hochkommata  kursiv</a>&nbsp;<a href="#" onclick="boldToItalic()">fett->kursiv</a>&nbsp;entlinken:&nbsp;<a href="#" onclick="removeWikiLinks()">[alles]</a>&nbsp;<a href="#" onclick="removeWikiLinksToDates()">[Datum]</a>&nbsp;<a href="#" onclick="removeWikiLinksToDates()">[Datum]</a>&nbsp;<a href="#yearover" name="yearover" onclick="YearIsOver();">[Lücke Jahr vorbei]</a>');
  
  //Auto summary, marginal edit and saving for linkfixes
  if(form.elements["wpSection"].value!="new")
  {
   place_auto_summary_link('linkfix', true, 'Linkfix');
   place_auto_summary_link('Bildlink repariert', true, 'Bildfix');
   place_auto_summary_link('Kosmetik', true, 'Kosmetik');
   place_auto_summary_link('Tippfehler ausgebessert', true, 'Tippo');
   place_auto_summary_link('Stil', true, 'Stil');
   place_auto_summary_link('mindestens einen Punkt aus [[Benutzer:Asthma/ablage/Schlechter Stil]] behoben', true, 'Asthma');
   place_auto_summary_link('[[Wikipedia:Neutraler Standpunkt|NPOV]]', false, 'NPOV');
   place_auto_summary_link('Link eingefügt', true, '+Link');
   place_auto_summary_link('Link auf Galerie/Kategorie auf [[Wikimedia Commons]] eingefügt', true, '+Commons');
   place_auto_summary_link('Bild eingefügt', false, '+Bild');
   place_auto_summary_link('Bild ausgetauscht', false, 'O Bild');
   place_auto_summary_link('Satzzeichen gehören VOR [[Hilfe:Einzelnachweise|Einzelnachweise]]', true, 'EN.');
   place_auto_summary_link('\\\'sowie\\\' als Konjunktion braucht kein Komma', true, 'sowie');
   place_auto_summary_link('vor \\\'sondern\\\' gehört ein Komma', true, 'sondern');
   place_auto_summary_link('[[Firma]] ungleich [[Unternehmen]]', true, 'Firma');
   place_auto_summary_link('entlinkt', true, '-Link');
   place_auto_summary_link('[[Vorlage:Bilderwunsch]] durch Parameter in Infobox ersetzt', false, 'BW->IB');
   place_auto_summary_link('abgeschlossenes Ereignis in die Vergangenheit befördert', true, 'vorbei');
   //place_auto_summary_link('Das Jahr 2012 ist [[Wikipedia:WikiProjekt Ereignisse/Vergangenheit|vorbei]]. Bitte aktualisieren', false, '2012 done');
   place_auto_summary_link('[[Vorlage:Zukunft]] eingefügt, um Artikel zum Aktualisieren vorzumerken, wenn die Zeit gekommen ist', false, 'Zukunft');
   place_auto_summary_link('veraltete Passage mit [[Vorlage:Zukunft]] markiert', false, 'alt');
   insert_link_before("span", "wpSummaryLabel", '<input type="checkbox" title="Kombination mehrerer Zusammenfassungen ohne automatisches Speichern" id="combine_summary"/> warten&nbsp;&nbsp;');
  }

  var text = form.elements["wpTextbox1"];
  
  dontWatchRedirectsICreate(text.value);
  check_for_references_tag();

  if(wgNamespaceNumber==0)
  {
	var subOptimalParts = '';
    subOptimalParts+=LookForSuboptimalParts(/und\/oder/, "und/oder", text);
	subOptimalParts+=LookForSuboptimalParts(/<\/ref>[\.,]/, "&lt;/ref&gt.", text);
	subOptimalParts+=LookForSuboptimalParts(/, sowie/, ", sowie", text);
	subOptimalParts+=LookForSuboptimalParts(/[a-z]{1} sondern /, "sondern", text);
	subOptimalParts+=LookForSuboptimalParts(/on \d{4}-\d{4}/, "Bitte Bis-Strich nach \"von\" entfernen", text); //Minus -
	subOptimalParts+=LookForSuboptimalParts(/on \d{4}–\d{4}/, "Bitte Bis-Strich nach \"von\" entfernen", text); //Gedankenstrich –
	subOptimalParts+=LookForSuboptimalParts(/Jahren \d{4}-\d{4}/, "Bitte Bis-Strich nach \"Jahren\" entfernen", text); //Minus -
	subOptimalParts+=LookForSuboptimalParts(/Jahren \d{4}–\d{4}/, "Bitte Bis-Strich nach \"Jahren\" entfernen", text); //Gedankenstrich –
	subOptimalParts+=LookForSuboptimalParts(/Firma/, "Firma", text); 
	subOptimalParts+=LookForSuboptimalParts(/Firmen/, "Firmen", text); 
	subOptimalParts+=LookForSuboptimalParts(/ derzeit/, "derzeit", text); 
	subOptimalParts+=LookForSuboptimalParts(/bislang/, "bislang", text); 
	subOptimalParts+=LookForSuboptimalParts(/naher Zukunft/, "Bitte prüfen, ob ''naher Zukunft'' nicht schon ewig im Text steht", text); 
	subOptimalParts+=LookForSuboptimalParts(/demnächst/, "demnächst", text); 
	subOptimalParts+=LookForSuboptimalParts(/omentan/, "momentan", text); 
	subOptimalParts+=LookForSuboptimalParts(/im Moment/, "im Moment", text); 
	subOptimalParts+=LookForSuboptimalParts(/books.google.de/, "Bitte Link auf Google Books durch Vorlage ersetzen", text); 
	subOptimalParts+=LookForSuboptimalParts(/retrobib/, "Bitte Link auf Google Books durch {{Meyers Online|7|422|spezialkapitel=Gleiwitz}} ersetzen", text); 
	subOptimalParts+=LookForSuboptimalParts(/scheinbar/, "Sollte ''scheinbar'' nicht eher ''anscheinend'' heißen?", text); 
	subOptimalParts+=LookForSuboptimalParts(/letztendlich/, "Sollte ''letztendlich'' nicht eher ''letztlich'' heißen?", text); 
	subOptimalParts+=LookForSuboptimalParts(/schlußendlich/, "Sollte ''schlußendlich'' nicht eher ''schließlich'' oder ''endlich'' heißen?", text); 
	subOptimalParts+=LookForSuboptimalParts(/\[\[en\:/, "Wie wäre es mit Interwiki-Links entfernen?", text); 
	subOptimalParts+=LookForSuboptimalParts(/\{\{Waybackarchiv/, "Bitte Waybackarchiv-Vorlage ersetzen", text); 
	subOptimalParts+=LookForSuboptimalParts(/\{\{WBA/, "Bitte WBA-Vorlage ersetzen", text); 
	subOptimalParts+=LookForSuboptimalParts(/, etc/, "Bitte Komma vor etc. entfernen", text); 
	subOptimalParts+=LookForSuboptimalParts(/denkt man/, "Was ''denkt man'' denn? Kann man sicher schöner schreiben!", text); 
	subOptimalParts+=LookForSuboptimalParts(/ gewisse/, "''gewisse'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/eigentlich /, "''eigentlich'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/gezielte Maßnahme/, "''gezielte Maßnahme'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/gezielte Maßnahmen/, "''gezielte Maßnahme'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/feste Überzeugung/, "''feste Überzeugung'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/schwere Verwüstung/, "''schwere Verwüstung'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/herbe Enttäuschung/, "''herbe Enttäuschung'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/bitterer Ernst/, "''bitterer Ernst'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/vorprogrammiert/, "''vorprogrammiert'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/denkbar knapp/, "''denkbar knapp'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/Sturm der Entrüstung/, "''Sturm der Entrüstung'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/Bilder des Grauens/, "''Bilder des Grauens'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/Problemkreis/, "''Problemkreis'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/ natürlich /, "''natürlich'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/offensichtlich/, "''offensichtlich'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/nicht wirklich/, "''nicht wirklich'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/interessanterweise/, "''interessanterweise'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/bemerkenswert/, "''bemerkenswert'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/zweifellos/, "''zweifellos'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/zweifelsohne/, "''zweifelsohne'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/zweifelsohne/, "''zweifelsohne'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/muss angemerkt werden/, "''muss angemerkt werden'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/ist zu befürchten/, "''ist zu befürchten'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/ leider /, "''leider'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/traurige Prominenz/, "''traurige Prominenz'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/hierzulande/, "''hierzulande'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/öse Zungen/, "''böse Zungen'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/wiedersprechen/, "''wiedersprechen'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/nichtsdestotrotz/, "''nichtsdestotrotz'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/der bedeutendsten/, "''der bedeutendsten'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/der wichtigsten/, "''der wichtigsten'' (vgl. [[Benutzer:Asthma/ablage/Schlechter Stil]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/a.a.O./, "''a.a.O.'' (vgl. [[[[Hilfe:Einzelnachweise#Ebenda, ebd., a.a.O.]]]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/taucht/, "taucht ([[Vorlage:Tipp des Tages/58]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/uftauchen/, "auftauchen ([[Vorlage:Tipp des Tages/58]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/nichts weniger als/, "nichts weniger als ([[Vorlage:Tipp des Tages/51]])", text); 
	subOptimalParts+=LookForSuboptimalParts(/nicht selten/, "nicht selten", text); 
	subOptimalParts+=LookForSuboptimalParts(/spektakulär/, "spektakulär", text); 
	subOptimalParts+=LookForSuboptimalParts(/nteressant/, "interessant", text); 
	subOptimalParts+=LookForSuboptimalParts(/märchenhaft/, "märchenhaft", text); 
	subOptimalParts+=LookForSuboptimalParts(/gutes Beispiel/, "gutes Beispiel", text); 
	subOptimalParts+=LookForSuboptimalParts(/ besondere/, "besondere/r", text); 
	subOptimalParts+=LookForSuboptimalParts(/sogenannte/, "sogenannte", text); 
	subOptimalParts+=LookForSuboptimalParts(/zahlreich/, "zahlreich", text); 
	subOptimalParts+=LookForSuboptimalParts(/berühmtest/, "berühmtest/e", text); 
	subOptimalParts+=LookForSuboptimalParts(/bekanntest/, "bekanntest/e", text); 
	subOptimalParts+=LookForSuboptimalParts(/sogleich/, "sogleich", text); 
	subOptimalParts+=LookForSuboptimalParts(/gewaltig/, "gewaltig", text); 
	subOptimalParts+=LookForSuboptimalParts(/eindrucksvoll/, "eindrucksvoll", text); 
	subOptimalParts+=LookForSuboptimalParts(/umfangreich/, "umfangreich", text); 
	subOptimalParts+=LookForSuboptimalParts(/hochwertig/, "hochwertig", text); 
	subOptimalParts+=LookForSuboptimalParts(/vielfältig/, "vielfältig", text); 
	subOptimalParts+=LookForSuboptimalParts(/vernichtend/, "vernichtend", text); 
	subOptimalParts+=LookForSuboptimalParts(/erschütternd/, "erschütternd", text); 
	subOptimalParts+=LookForSuboptimalParts(/berüchtigt/, "berüchtigt", text); 
	subOptimalParts+=LookForSuboptimalParts(/tatkräftig/, "tatkräftig", text); 
	subOptimalParts+=LookForSuboptimalParts(/markant/, "markant", text); 
	subOptimalParts+=LookForSuboptimalParts(/sehr /, "sehr", text); 
	subOptimalParts+=LookForSuboptimalParts(/in den letzten/, "in den letzten", text); 
	subOptimalParts+=LookForSuboptimalParts(/sogar/, "sogar", text); 
	
	if(subOptimalParts!='')
	{
        var iframe = '<iframe width="150" id="suboptimalframe"></iframe>';
        insert_link_before("li", "p-tb", iframe );
        document.getElementById("suboptimalframe").contentDocument.write('<ul style="padding-left:0;">'+ subOptimalParts + '</ul>');
	}
	var wrongFormattedYears = text.value.search(/([ (])(\d{4})\-(\d{4})/);
	if((wrongFormattedYears != -1) && (wgNamespaceNumber ==0))
	{
		text.value = text.value.replace (/([ (])(\d{4})\-(\d{4})/gm, "$1$2–$3");
		alert("Falsch formatierte Zeiträume korrigiert.\n\n Bitte kontrollieren! \n\n wirklich \n\n ganz im Ernst \n\n");
	}
	
	var whereAreReferences = text.value.search(/references/);
    if(whereAreReferences!=-1)
    {
		if(text.value.search(/Einzelnachweise/)==-1 && text.value.search(/VirtualReferences/)==-1)
		{
			text.value = convertQuellenToEinzelnachweise(text.value, whereAreReferences);
		}
    }
/* only for short time actions
	//Replacing regular expressions by text
//      .replace(/\{\{Bilderwunsch\|hier\}\}\n/gm,  "")*/
   }

   //check_external_links();
 }

 /* functions called by the ones above */
 function check_image_usage()
 {
  var headline = document.getElementById("filelinks");
  var used = false;
  if(headline)
  {
   while(headline.nodeName.toUpperCase() !="UL")
   {
    headline=headline.nextSibling;
   }
   var used_list = headline.childNodes;
   var entry = '';
	 
   for(var i =0;i<used_list.length;i++)
   {
    entry = (used_list[i].textContent)
	 	 
    if(entry.length>1)
    {
     if(entry!='Bild:'+wgTitle)
     {
      //alert("drin bei "+entry);
      used=true;
	  break;
     }
    }
   }
  }
	 
   if(used==true)
   {
     //alert("drin bei true");
     var del_button = document.getElementById("bodyContent");
     if(!del_button){ alert ('kein Delbutton da') }
     //del_button.firstChild.data='!!!' + del_button.firstChild.data + '!!!';
     del_button.style.backgroundColor='#FFC1C1';
   }
 }


 //Insert any tag before any element with an id
 function insert_link_before(tagname, previous_element, linkcode)
 {
 	var vl_logout = document.getElementById(previous_element);
 	if (vl_logout) 
 	{
 		var ins_li = document.createElement(tagname);
 		ins_li.innerHTML=/* */linkcode;/* */
 		 vl_logout.parentNode.insertBefore(ins_li, vl_logout);
 	}
 }



 function check_image_usage()
 {
 	var headline = document.getElementById("filelinks");
	
	 	var used = false;
	if(headline)
	{
		

	 	while(headline.nodeName.toUpperCase() !="UL")
	 	{
	 		headline=headline.nextSibling;
	 	}
	 
	 	var used_list = headline.childNodes;
	 	var entry = '';
	 
	 	for(var i =0;i<used_list.length;i++)
	 	{
	 	 entry = (used_list[i].textContent)
	 	 
	 	 if(entry.length>1)
	 	 {
	 		
	 	 if(entry!='Bild:'+wgTitle)
	 		{
				//alert("drin bei "+entry);
	 			used=true;
	 break;
	 		}
	 	 }
	 	}
}
	 
	if(used==true)
	{
	 //alert("drin bei true");
		var del_button = document.getElementById("bodyContent");
 if(!del_button){ alert ('kein Delbutton da') }
		//del_button.firstChild.data='!!!' + del_button.firstChild.data + '!!!';
 del_button.style.backgroundColor='#FFC1C1';
	}
 }


 function auto_summary(summary, minor)
 {
  var summaryPrevious = document.forms[0].wpSummary.value.trim();
  var isOnlySectionNameSummary = summaryPrevious.search(/\*\// ) == (summaryPrevious.length-2);
  var isEmtpySummary = (summaryPrevious == "") ;

  if(!isEmtpySummary && !isOnlySectionNameSummary)
  {
    summaryPrevious = summaryPrevious +',';
  }
  document.forms[0].wpSummary.value=summaryPrevious.trim() + ' ' + summary;
  document.forms[0].wpMinoredit.checked=minor;
  
  if(document.forms[0].combine_summary.checked==false)
  {	
    document.forms[0].submit();
  }
 }

 function place_auto_summary_link(summary, minor, title)
 {
  insert_link_before("span", "wpSummaryLabel", '<a href="#" title="' + summary + '" onclick="javascript:auto_summary(\'' + summary + '\', ' + minor + ')">' + title + '</a>&nbsp;&nbsp;');
 }

 function check_for_references_tag()
 {
   var ta = document.forms[0].wpTextbox1;
   var refs_there=ta.value.search(/<ref/);
   if(refs_there > -1 )
   {
    var source = 'http://wikipedia.ramselehof.de/text_present.php?article=' + wgPageName + '&lang=' + wgContentLanguage + '&project=wikipedia&needle=references';

    insert_link_before("span", "wpMinoredit", '&lt;references&gt;<img id="ref_bild" src="' + source + '" />');
   }
 }





function invertedCommasToItalic()
{
	var ta = document.getElementById("wpTextbox1");
	var beginning = extractBeforeSelection(ta);
	var middle = extractSelection(ta);
	var ending = extractAfterSelection(ta);
	middle = middle.replace(/„/g,    "''").replace(/“/g,    "''").replace(/"/g,    "''");
	
	ta.value= beginning + middle + ending;
}


function extractBeforeSelection(ta)
{
	return ta.value.substr(0, ta.selectionStart);
}

function extractSelection(ta)
{
	return ta.value.substr(ta.selectionStart, ta.selectionEnd-ta.selectionStart);
}

function extractAfterSelection(ta)
{ 
	return ta.value.substr(ta.selectionEnd, ta.value.length);
}

function removeWikiLinks()
{
	var ta = document.getElementById("wpTextbox1");
	var beginning = extractBeforeSelection(ta);
	var middle = extractSelection(ta);
	var ending = extractAfterSelection(ta);
	middle = middle.replace(/\[\[/g,    "").replace(/\]\]/g,    "");
	ta.value= beginning + middle + ending;
}

function boldToItalic() 
{
	var ta = document.getElementById("wpTextbox1");
	var beginning = extractBeforeSelection(ta);
	var middle = extractSelection(ta);
	var ending = extractAfterSelection(ta);
	middle = middle.replace(/\'\'\'/g,    "''");
	ta.value= beginning + middle + ending;
}

function removeWikiLinksToDates()
{
	var ta = document.getElementById("wpTextbox1");
	var beginning = extractBeforeSelection(ta);
	var middle = extractSelection(ta);
	var ending = extractAfterSelection(ta);
	middle = middle.replace(/\[\[\s*(\d+(er)?( v. Chr.)?)\s*\]\]/g, "$1");
	middle = middle.replace(/\[\[\s*(\d+\. (Jahrhundert|Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember))\s*\]\]/g, "$1");
	ta.value= beginning + middle + ending;
}

function bulkEditTable(mode)
{
	/*
		available modes: label, insert, delete
	*/
	
	var ta = document.getElementById("wpTextbox1");

	var currentRow = fillArray(new Array(10), 0, 0);
	var nextRow = fillArray(new Array(10), 0, 0);
	
	
	var validMode = false;
	if(mode=="label")
	{
		
		var toWorkWith = window.prompt("Welche Spalte der Auswahl beschriften?");
		if(!toWorkWith) return
		var label = window.prompt("Mit welchem Kommentar beschriften?");
		if(!label) return
		
		var labelComment = '<!-- ' + label + ' -->';
		validMode = true;
	}
	
	if(mode=="delete")
	{
		var toWorkWith = window.prompt("Welche Spalte der Auswahl entfernen?");
		if(!toWorkWith) return;
		validMode = true;
	}
	
	if(mode=="insert")
	{
		var toWorkWith = window.prompt("Nach welcher Spalte soll eine neue eingefügt werden?");
		if(!toWorkWith) return
		var newColumnText = window.prompt("Welchen Text enthält die neue Spalte", "|");
		if(!newColumnText) return
		validMode = true;
	}

	if(!validMode)
	{
		alert("Funktion mit ungültigem Modus aufgerufen");
		return;
	}

	var beginOfTableBeginning = ta.value.indexOf("{|");
	var endOfTableBeginning = ta.value.indexOf("\n", beginOfTableBeginning)
	if (ta.value.indexOf("{|", endOfTableBeginning) != -1)
	{
		alert("mehr als eine Tabelle in aktivem Fenster, daher Abbruch");
		return;
	}
	
	var endOfTable = ta.value.indexOf("|}", endOfTableBeginning);
	beginning = ta.value.substr(0, endOfTableBeginning);
	middle = ta.value.substr(endOfTableBeginning+1, endOfTable-endOfTableBeginning-2); //+1 removes the \n
	
	//alert("middle=" + middle);
	ending = ta.value.substr(endOfTable);
	//alert("ending " + ending);


	var table = middle.split("\n");
	var i=0;
	var col = 1;
	var outputTable = beginning + "\n";
	//alert (table.length);
	alert("Gewählter/erkannter Text: \n" + middle);
	var log = "";
	while(i<table.length)
	{
		log = log + "i="+ i + " col=" + col + "Anfang: Aktuelle Zelle mit Zusatzhöhe="+ currentRow[col];// + " lautet " + table[i];
		log = log + "\n";
		
		//anfang eingefügt
		if(table[i].substr(0, 2)=="|-")
		{
			outputTable = outputTable + table[i] + "\n";
			log = log + "Zeile fertig" + col + "\n ---------------------------\n";
			if(col!=1) 
			{
				col++;				
				nextRow=fillArray(nextRow, 0, col);
				
				log = log + "   nextRow   (vorher):\t " + printArray(nextRow) + "\n";
				log = log + "currentRow   (vorher):\t " + printArray(currentRow) + "\n";
				currentRow = nextRow;
				nextRow = fillArray(new Array(10), 0,0); //eventuell 10 durch col ersetzen
				log = log + "    nextRow (nachher): \t" + printArray(nextRow) + "\n";
				log = log + "currentRow: (nachher):\t " + printArray(currentRow) + "\n";
			}
			col=0;
		}//ende eingefügt
		else
		{
			log = log + "i="+ i + " col=" + col + "Nach Zeilentrenner: Aktuelle Zelle mit Zusatzhöhe="+ currentRow[col];// + " lautet " + table[i];
			log = log + "\n";

	        
			if(currentRow[col-1]==0)
			{
				col = col + spannedCells(table[i], 'col') -1;
				
				nextRow[col-1] = spannedCells(table[i], 'row') -1;
				if (nextRow[col-1]<0) nextRow[col-1]=0;
				
				
				if(col!=toWorkWith)
				{
					log = log + "wird normal bearbeitet\n";
					outputTable = outputTable + table[i] + "\n";
				}
				else //if nothing is done here, the cell in the selected column will be removed
				{	
					log = log + "wird speziell bearbeitet\n";
					if(mode=="label")
					{
						lastPipe = table[i].lastIndexOf("|") + 1;
						firstBracket = table[i].indexOf("[");
						firstTag = table[i].indexOf("<");
						
						if((firstBracket!=-1) && (firstTag!=-1))
						{
							beginOfData = Math.min(firstBracket, firstTag);
							if(beginOfData < lastPipe)
							{
								insertAt=beginOfData-1;
							}
							else
							{
								insertAt = lastPipe;
							}
							
						}
						else
						{
							insertAt = lastPipe;
						}
						outputTable = outputTable + table[i].substr(0, insertAt) + labelComment + table[i].substr(insertAt) + "\n";
					}
					if(mode=="insert")
					{
						outputTable = outputTable + table[i] + "\n" + newColumnText + "\n" ;
					}
				}

			}
			else
			{
				log = log + "... existiert nicht\n";
				nextRow[col-1]=currentRow[col-1] - 1;
				if(nextRow[col-1]<0)
				{
					nextRow[col-1]=0;
				}
				i--;
			}
			
		}
		i++;
		col++;
	}
	outputTable = outputTable + ending;
	//alert(log);
	if(confirm("Ergebnis ok?\n" +  outputTable))
	{
		ta.value=outputTable;
	}
}

function spannedCells(line, row_or_col)
{
	//klowerCaseLine = line.;
	spanTag = "" + row_or_col + "span";
	beginSpan = line.toLowerCase().indexOf(spanTag);
	if(beginSpan==-1) return 1;

	firstInvertedComas = line.indexOf("\"", beginSpan) ;
	secondInvertedComas = line.indexOf("\"", firstInvertedComas+1) ;
	lengthSpan = secondInvertedComas - firstInvertedComas -1;
	//alert(spanTag + " begin=" + beginSpan + "\"" + firstInvertedComas + " " + secondInvertedComas + " "+ lengthSpan);
	//alert(line.substr(firstInvertedComas+1, lengthSpan));
	return parseInt(line.substr(firstInvertedComas+1, lengthSpan));
	
}

function printArray(theArray)
{
	var returnString = "";
	for(var i=0;i<theArray.length;i++)
	{
		//returnString = returnString + i + "=" + theArray[i] + ";";
		returnString = returnString + theArray[i] + " | ";
	}
	return returnString;
}

function fillArray(theArray, fillValue, fillStart)
{
	for(var i=fillStart;i<theArray.length;i++)
	{
		theArray[i]=fillValue;
	}
	return theArray;
}

function convertQuellenToEinzelnachweise(text, positionOfReferences)
{
  tkorrone = /(\n)[^\n]*(\n\<references[^\/]*\/\>)/;
  var textNeu = text.replace(tkorrone,'$1== Einzelnachweise ==$2');
  if(confirm("Quellengedöhns zu Einzelnachweis machen? \n ---------------------------\n" + textNeu.substring(positionOfReferences-40, positionOfReferences+40) + "\n---------------------------"))
  {
    return textNeu;
  }
  return text;
}

function dontWatchRedirectsICreate(text)
{
	if(text.charAt(0)=='#' && wgIsArticle == false)
	{
		document.getElementById('wpWatchthis').checked=false;
		document.getElementById('wpMinoredit').checked=true;

	}
}

function LookForSuboptimalParts(needle, message, text)
{
	var fullStopsAfterRefTags = text.value.search(needle);
	if(fullStopsAfterRefTags !=-1)
	{
		return '<li>' + message+'</li>\n';
	}
	return '';
}


function PerformNekrolog(iDatum)
{
	/*alert(iDatum);*/
	var iJahr = iDatum.substr(iDatum.lastIndexOf(' ')+1, 4);
	var strMonat = iDatum.substring(iDatum.lastIndexOf('.')+2, iDatum.lastIndexOf(' '));
	alert("jahr :_" + iJahr + "_-> monat:_" + strMonat + "_"); 
	switch (strMonat) {
	  case "Januar":
		iMonat = 1;
		break;
	  case "Februar":
		iMonat = 2;
		break;
	  case "März":
		iMonat = 3;
		break;
	  case "April":
		iMonat = 4;
		break;
	  case "Mai":
		iMonat = 5;
		break;
	  case "Juni":
		iMonat = 6;
		break;
	  case "Juli":
		iMonat = 7;
		break;
	  case "August":
		iMonat = 8;
		break;
	  case "September":
		iMonat = 9;
		break;
	  case "Oktober":
		iMonat = 10;
		break;
	  case "November":
		iMonat = 11;
		break;
	  case "Dezember":
		iMonat = 12;
		break;	
	  default:
		alert("falscher Monat");
		break;
	}

	var strUrl = "";

	if(iJahr <2006)
	{
		/* keine Quartale*/
		var iSection = iMonat; //mit umgekehrter Reihenfolge: Math.abs(13 - iMonat);
		strUrl = "http://de.wikipedia.org/w/index.php?title=Nekrolog_" + iJahr + "&action=edit&section=" + iSection;
	}
	else
	{
		/*Quartale */
		iQuartal = GetQuartal(iMonat);

		var dateNow = new Date();
		var iCurrentYear = dateNow.getFullYear();
		var iCurrentMonth = dateNow.getMonth()+1;
		if(iCurrentYear == iJahr && GetQuartal(iCurrentMonth) == iQuartal)
		{
			alert("vor kurzem verstorben");
			var iSection = iCurrentMonth - iMonat +1;
			strUrl = "http://de.wikipedia.org/w/index.php?title=Nekrolog_" + iJahr + "&action=edit&section=" + iSection;
		}
		else
		{
			var iSection = Math.abs((3* iQuartal +1)- iMonat);
			strUrl = "http://de.wikipedia.org/w/index.php?title=Nekrolog_" + iQuartal + "._Quartal_" + iJahr + "&action=edit&section=" + iSection;

		}		
	}

	window.open("http://tools.wmflabs.org/persondata/service/nekrolog/onearticle.php?article="+wgArticleId , "Nekro-Manager");
	window.location=strUrl+"&summary=%2B%20[["+wgTitle+"]]";
}


function GetQuartal(iMonat)
{
	var iRest = iMonat;
	var iQuartal = 1;
	while(iRest > 3)
	{
		iQuartal ++;
		iRest = iRest-3;
	}
	return iQuartal;
}

function insert_into_textarea(insert_text)
{
   var ta = document.forms[0].wpTextbox1;
   pos = ta.selectionStart;
   ta.value = ta.value.substr(0, pos) + insert_text + ta.value.substr(pos);
}

function YearIsOver()
{
   insert_into_textarea("{{lückenhaft|Das Jahr 2010 ist vorbei. Hat das mit dem geplanten Vorhaben geklappt? --[[Benutzer:Flominator|Flominator]] 12:50, 6. Mai 2016 (CEST)}}");
}

function MonthSection(startYear, sectionsUntilStartYear) 
{
   var today = new Date();
   var yearsSinceStart = today.getFullYear() - startYear;
   var month = today.getMonth() + 1;
   var section = sectionsUntilStartYear + (yearsSinceStart * 13) + month + 1; 
   return section;
}	  

function SelectRandomListEntry()
{
	var items = document.getElementsByTagName("li");
	var indexRandom = Math.floor((Math.random() * items.length) + 1);
	items[indexRandom].style="background-color: yellow;";

	var anchor = document.createElement("a");
	anchor.name='random'+indexRandom;
	items[indexRandom].appendChild(anchor);

	var url=window.location+'';
	var indexOfHash = url.indexOf('#');
	if(indexOfHash>-1)
	{
		url = url.substr(0, indexOfHash);
	}

	window.location=url+'#'+anchor.name;
}


$(document).trigger('loadWikiScript', ['Benutzer:Flominator/change_links.js']);