MediaWiki:Gadget-Zusammenfassung.js

aus Stargate Wiki, dem deutschsprachigen Stargate-Lexikon
Wechseln zu: Navigation, Suche

Hinweis: Leere nach dem Speichern 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: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Extras → Internetspuren löschen … → Individuelle Auswahl → Den kompletten Cache löschen
$(function()
{
  if (wgAction != "edit" && wgAction != "submit") return;
  if ($(".noSummary").length > 0) return;
  var label = document.createElement("label");
  label.htmlFor = "stdSummaries";
  label.appendChild(document.createTextNode("Standard-Zusammenfassungen:"));
 
  var sel = document.createElement("select");
  sel.id = "stdSummaries";
  sel.name = "stdSummaries";
  sel.onchange = function()
  {
    var sel = document.getElementById("stdSummaries");
    var value = sel.options[sel.selectedIndex].value;
    if (value != "")
      var z = document.getElementById("wpSummary").value;
      if (z != "")
        if (z.substring((z.length - 3)) == "*/ ")
          var c = "";
        else
          var c = ", ";
      else
        var c = "";
      document.getElementById("wpSummary").value += c+value;
  };
 
  var eo = document.getElementById("wpSummaryLabel").parentNode;
  eo.insertBefore(document.createElement("br"), eo.firstChild);
  eo.insertBefore(sel, eo.firstChild);
  eo.insertBefore(label, sel);
 
  $.get(wgScript+"?title=Vorlage:Stdsummaries&action=raw&ctype=text/plain", function(text)
  {
    var sel = document.getElementById("stdSummaries");
    var lines = text.split("\n");
 
    for (var i=0; i<lines.length; i++)
    {
      if (lines[i].indexOf("<!--") == 0) continue;
      var value = lines[i].indexOf("-- ") == 0 ? lines[i].substring(3) : "";
      var opt = document.createElement("option");
      opt.value = value;
      if (value == "" && i)
        opt.disabled = "disabled";
      opt.appendChild(document.createTextNode(lines[i]));
      sel.appendChild(opt);
    }
    sel.selectedIndex = 0;
  }, "text");
});