Benutzer:SpielefreakJ/common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
K (Kleinere änderungen in der aktualisierungsrate der LÄ) |
K (testweise einen link anders) |
||
Zeile 130: | Zeile 130: | ||
// Top Bar (Rechts) | // Top Bar (Rechts) | ||
// Beobachtete Seiten -> LÄ | // Beobachtete Seiten -> LÄ | ||
$("#pt-watchlist"). | |||
$("#pt-watchlist").after('<li><a id="rc" href="/Spezial:Letzte Änderungen?hidebots=0" title="Letzte Änderungen">Letzte Änderungen</a></li>') | |||
// Änderungen an der LÄ Seite (Rest im CSS) | // Änderungen an der LÄ Seite (Rest im CSS) |
Version vom 20. Februar 2017, 22:24 Uhr
// Die Skripte stammen allesamt von Jones, der sie von Shadowtweaker hat, sie wurden jedoch angepasst und personalisiert: Vielen Dank an der Stelle!
/*
####################################### Shortlinks für den SearchInput #######################################
# Beim Suchfeld in der Sidebar kann es nervig sein, andauernd "PokéWiki:" oder "Benutzer:" tippen zu müssen. #
# Mit diesem Code muss nicht mehr der ganze Text eingegeben werden, sondern es reichen Shortlinks: #
# "B:" wird umgewandelt in "Benutzer:" #
# "BD:" wird umgewandelt in "Benutzer Diskussion:" #
# "D:" wird umgewandelt in "Datei:" #
# "DD:" wird umgewandelt in "Datei Diskussion:" #
# "H:" wird umgewandelt in "Hilfe:" #
# "HD:" wird umgewandelt in "Hilfe Diskussion:" #
# "K:" wird umgewandelt in "Kategorie:" #
# "KD:" wird umgewandelt in "Kategorie Diskussion:" #
# "M:" wird umgewandelt in "MediaWiki:" #
# "MD:" wird umgewandelt in "MediaWiki Diskussion:" #
# "P:" wird umgewandelt in "PokéWiki:" #
# "PD:" wird umgewandelt in "PokéWiki Diskussion:" #
# "S:" wird umgewandelt in "Spezial:" #
# "T:" wird umgewandelt in "Diskussion:" #
# "V:" wird umgewandelt in "Vorlage:" #
# "VD:" wird umgewandelt in "Vorlage Diskussion:" #
# Der Code überprüft das Suchfeld jede Sekunde und ersetzt ggf. den Text. #
# Dabei wird Groß- und Kleinschreibung ignoriert und der Shortlink muss am Anfang stehen. #
############################################################################################################## */
var shortlinks = window.setInterval("replaceshortlinks()", 1000);
function replaceshortlinks()
{
if (Math.floor(($("#searchInput").val().indexOf(":")+1)/2) == 1) {
var text = $("#searchInput").val();
text = text.replace(/^[BbUu]:/, "Benutzer:");
text = text.replace(/^[BbUu][DdTt]:/, "Benutzer Diskussion:");
text = text.replace(/^[Dd]:/, "Datei:");
text = text.replace(/^[Dd][DdTt]:/, "Datei Diskussion:");
text = text.replace(/^[Hh]:/, "Hilfe:");
text = text.replace(/^[Hh][DdTt]:/, "Hilfe Diskussion:");
text = text.replace(/^[Kk]:/, "Kategorie:");
text = text.replace(/^[Kk][DdTt]:/, "Kategorie Diskussion:");
text = text.replace(/^[Mm]:/, "MediaWiki:");
text = text.replace(/^[Mm][DdTt]:/, "MediaWiki Diskussion:");
text = text.replace(/^[Pp]:/, "PokéWiki:");
text = text.replace(/^[Pp][DdTt]:/, "PokéWiki Diskussion:");
text = text.replace(/^[Ss]:/, "Spezial:");
text = text.replace(/^[Tt]:/, "Diskussion:");
text = text.replace(/^[Vv]:/, "Vorlage:");
text = text.replace(/^[Vv][DdTt]:/, "Vorlage Diskussion:");
$("#searchInput").val(text);
}
}
/*
################################ Find & Replace inkl. RegExp beim Bearbeiten von Seiten ###################################
# Wenn mal beim Bearbeiten einer Seite derselbe Fehler mehrmals vorkommt, kann dieser Code eine große Zeitersparnis sein. #
# Drückt man Strg + I, öffnen sich zwei Dialogfenster, in die man zwei Zeichenketten eingibt: #
# Eine zu ersetzende Zeichenkette und eine einzusetzende Zeichenkette. #
# Sofort werden im Quelltext der Seite alle Vorkommnisse der ersten Zeichenkette durch die zweite ersetzt. #
# Es werden auch reguläre Ausdrücke unterstützt, z. B. steht [0-9] für eine beliebige Ziffer. #
# Auch das Speichern in Variablen wie $1 ist möglich. #
# Groß- und Kleinschreibung wird beachtet.
# Code stammt von shadowtweaker!
########################################################################################################################### */
var regexpcountdown = window.setInterval("regexpkeydown()", 1000);
function regexpkeydown() {
if (mw.config.get("wgAction") == "submit" || mw.config.get("wgAction") == "edit")
{
document.onkeydown=regexpwindow;
}
}
function regexpwindow(e) {
if (!e) e=window.event;
if (e.keyCode==73 && e.ctrlKey) {
if (mw.config.get("wgAction") == "submit" || mw.config.get("wgAction") == "edit" || mw.config.get("wgPageName") == "Spezial:Vorlagen_expandieren") {
var findtext = /null/;
findtext.compile(prompt('Zu suchender Text:'), "g");
var replacetext = prompt('Zu ersetzender Text:');
replacetext = replacetext.replace(/\\n/g, "\n");
if (findtext != /null/ && replacetext != null) {
if (mw.config.get("wgPageName") == "Spezial:Vorlagen_expandieren") {
document.getElementById("input").value = document.getElementById("input").value.replace(findtext, replacetext);
}
else {
document.getElementById("wpTextbox1").value = document.getElementById("wpTextbox1").value.replace(findtext, replacetext);
}
}
}
else {
alert("Du musst erst auf „Bearbeiten“ klicken!");
}
}
}
/*
#################### Automatische Aktualisierung der letzten Änderungen ####################
# Untenstehender Code bewirkt, dass die Letzten Änderungen regelmäßig aktualisiert werden. #
# Die Aktualisierung erfolgt alle 30 Sekunden. #
############################################################################################ */
if (mw.config.get("wgPageName") == "Spezial:Letzte_Änderungen") {
var sekunden = 30;
var count = window.setInterval("countdown()", 1000);
var loading = false;
}
function countdown()
{
sekunden--;
if (sekunden <= 0 && $("#searchInput").val() == "" && !loading) { loading = true; location.reload(); }
}
/*
####################### Einzelnen Benutzer in den letzten Änderungen ausblenden ############################
# Wenn ein einzelner Benutzer sehr viele Bearbeitungen in kurzer Zeit tätigt, kann es nützlich sein, #
# wenn man die Möglichkeit hat, diesen Benutzer in den Letzten Änderungen vorübergehend auszublenden. #
# In MediaWiki kann man nur sich selbst ausblenden, mit diesem Code aber jeden beliebigen Benutzer. #
# Dazu muss in den Letzten Änderungen einfach "?hideuser=<Benutzername>" hinten an die URL gehängt werden. #
############################################################################################################ */
if (mw.config.get("wgPageName") == "Spezial:Letzte_Änderungen") {
if (window.location.href.indexOf("hideuser=") > 0) {
var hideuser = window.location.href.substring(window.location.href.indexOf("hideuser=")+9);
hideuser = hideuser.replace(/(\?|\&).*/, "");
var listofcontribs = $(".mw-userlink");
for (var i=0;i<listofcontribs.length;i++) {
if (listofcontribs[i].innerHTML.replace(" ","_") == hideuser) { listofcontribs[i].parentNode.style.display = "none"; }
}
}
}
// Top Bar (Links)
// Filb in neuem Tab
$("#gl-topbar-f").find("a").attr("target", "_blank");
// Top Bar (Rechts)
// Beobachtete Seiten -> LÄ
$("#pt-watchlist").after('<li><a id="rc" href="/Spezial:Letzte Änderungen?hidebots=0" title="Letzte Änderungen">Letzte Änderungen</a></li>')
// Änderungen an der LÄ Seite (Rest im CSS)
// Kommentar und Benutzer eine Zeile tiefer
$(".mw-special-Recentchanges .comment, .mw-special-Recentchanges .mw-userlink").before("<br />");
// Aktuelles über Tabelle
$(".rcoptions").after("<div id=\"rc-aktuelles\" class=\"center\">"+$("#recentchanges-news").html()+"</div>");
// Test
$(function() {
toggleInit();
});