Benutzer:DeXter/common.js
Zur Navigation springen
Zur Suche springen
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
- Konqueror: Aktualisieren anklicken oder F5 drücken
$(function () {
addToTopBar();
showExclusive();
panelHandler();
blingblingHandler();
});
function addToTopBar () {
const topbar = document.querySelector('#gl-topbar-left ul');
if (topbar === null) {
console.error('common.js: addToTopBar(): couldnt find topbar');
return;
}
topbar.innerHTML += '<li><a href=\"https://www.pokewiki.de/Pok%C3%A9Wiki:Attacken-Projekt\">Attacken-Projekt</a></li><li><a href=\"https://test.pokewiki.de/Benutzer:DeXter/To-do\">To-do</a></li>';
}
//auf Basis von Skript von Jones
/**Anwendung
* url/?showexcl=<Username>;<Username>[...]
*
* falls Querystring bereits andere Parameter hat, wie üblich statt ? ein & benutzen:
* url/?[..., z. B. days=90]&showexcl=[...]
*/
function showExclusive () {
if (window.location.href.indexOf("showexcl=") > 0) {
var showExcl = window.location.href.substring(window.location.href.indexOf("showexcl=")+9);
showExcl = showExcl.replace(/(\?|\&).*/, "");
showExcl = showExcl.split(';');
$(".mw-userlink").each(function() {
var title = $(this).attr("title");
title = title.replace(/Benutzer(in)?:/, "");
title = title.replace(" (Seite nicht vorhanden)", "");
title = title.replace(" ", "_");
if($.inArray(title, showExcl) < 0) {
$(this).parents(".mw-changeslist-line").hide(); // The complete line
}
});
}
}
//von feblue
function panelHandler () {
const panels = document.querySelectorAll('.panel');
panels.forEach(function (panel) {
panel.addEventListener('click', function (e) {
if (!panel.classList.contains('active')) {
e.preventDefault();
}
removeActiveClasses();
panel.classList.add('active');
});
});
function removeActiveClasses() {
panels.forEach(function (panel) {
panel.classList.remove('active');
});
}
}
//================================================================================
//fürs Blingbling von Projekthelden-Boxen
function blingblingHandler () {
const babelItems = document.getElementsByClassName('babelitem');
for (var i = 0; i < babelItems.length; i++) {
try {
var text = babelItems[i].lastChild.lastChild.lastChild.textContent;//so incredible unbelievable beautiful
var regexBronze = /.* erhält für (seine|ihre) Mitarbeit beim .*-Projekt die bronzene Projekthelden-Auszeichnung als Zeichen (seines|ihres) Engagements\./;
var regexSilver = /.* erhält für (seine|ihre) aktive Mitarbeit beim .*-Projekt die silberne Projekthelden-Auszeichnung als Zeichen (seines|ihres) anhaltenden Engagements\./;
var regexGold = /.* erhält für (seine|ihre) tadellose und regelmäßige Mitarbeit beim .*-Projekt die goldene Projekthelden-Auszeichnung als Zeichen (seines|ihres) außerordentlichen Engagements\./;
var regexOld = /.* erhält für (seine|ihre) tadellose und regelmäßige Mitarbeit beim .*-Projekt diese Auszeichnung als Zeichen (seines|ihres) besonderen Engagements\./;
if (text.search(regexBronze) !== -1) {
babelItems[i].classList += ' projecthero bronze';
} else if (text.search(regexSilver) !== -1) {
babelItems[i].classList += ' projecthero silver';
} else if (text.search(regexGold) !== -1) {
babelItems[i].classList += ' projecthero gold';
} else if (text.search(regexOld) !== -1) {
babelItems[i].classList += ' projecthero old';
}
} catch (error) {
//Gotcha! error was caught!.
}
}
}