Benutzer:Ahnenfan/common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(107 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | /* | + | /* ┌──────────────────────────────────────────────┐ |
− | │ Tabstop zum Kopieren: " " │ | + | │ Das folgende JavaScript wird nur für mich │ |
− | + | │ (auch zum Testen) geladen. │ | |
+ | │ Für alle Benutzer gilt MediaWiki:Common.js │ | ||
+ | ├──────────────────────────────────────────────┤ | ||
+ | │ Tabstop zum Kopieren: " " │ | ||
+ | └──────────────────────────────────────────────┘ */ | ||
/* ╔═════════════════════════════╗ | /* ╔═════════════════════════════╗ | ||
║ ║ | ║ ║ | ||
Zeile 16: | Zeile 20: | ||
║ ║ | ║ ║ | ||
╚═════════════════════════════╝ */ | ╚═════════════════════════════╝ */ | ||
− | /* | + | /* ┌──────────────────────────────────────────────┐ |
− | │ [[Tagebuch-Chronik]] | + | │ [[Tagebuch-Chronik]] │ |
− | │ 1. Anzeige | + | │ 1. Anzeige der Chronik-Zeilen │ |
− | │ (~ | + | │ (~Anzahl d. Artikel d. Tag-für-Tag-Ausg.) │ |
− | │ 2. | + | │ 2. Farbmarkierung "heute" + 80 bzw. 75 Jahre │ |
− | + | │ mit Link zum Tag, zwecks Blog-post │ | |
+ | └──────────────────────────────────────────────┘ */ | ||
if (document.getElementById("anzahlzeilen")) { | if (document.getElementById("anzahlzeilen")) { | ||
− | document.getElementById("anzahlzeilen").insertBefore(document.createTextNode(document.getElementsByTagName('tr').length), document.getElementById("anzahlzeilen").lastChild); | + | document.getElementById( "anzahlzeilen" ).insertBefore( document.createTextNode( document.getElementsByTagName( 'tr' ).length ), document.getElementById( "anzahlzeilen" ).lastChild ); |
// das aktuelle Datum gem. https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Date/Einführung: | // das aktuelle Datum gem. https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Date/Einführung: | ||
− | + | heute = new Date(); | |
− | monat = ['Januar','Februar','März','April','Mai','Juni','Juli','August','September', | + | monat = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember']; |
− | + | ersteMarke = true; | |
− | + | taglink = document.getElementsByClassName("ktbchronik")[2].getElementsByTagName("a"); | |
− | + | function post(postdatum, faerbung) { | |
− | + | if (postdatum.getTime() < test00.getTime()) { | |
− | + | taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = faerbung; | |
+ | } else { | ||
+ | if (postdatum.getTime() == test00.getTime()) { | ||
+ | if (ersteMarke) { | ||
+ | taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "gold"; | ||
+ | taglink[i].id = "YA"; | ||
+ | document.getElementById("YearsAgo").style.display = "block"; | ||
+ | // falls ausnahmsweise 2 posts an einem Tag fällig werden: | ||
+ | } else { | ||
+ | taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "yellow"; | ||
+ | taglink[i].id = "YA2"; | ||
+ | document.getElementById("YearsAgo2").style.display = "block"; | ||
+ | } | ||
+ | ersteMarke = false; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | // Vorlauf für die ersten beiden Zeilen: | ||
+ | for (i=0; i<taglink.length; i++) { | ||
+ | if (taglink[i].innerHTML.startsWith("193")) { | ||
+ | taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "lightsteelblue"; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // Haupt-Durchlauf für die übrigen Zeilen: | ||
+ | for (i=0; i<taglink.length; i++) { | ||
+ | // nur zur Beschleunigung, trotzdem gibt es invalid: | ||
+ | if (taglink[i].innerHTML.startsWith("194")) { | ||
+ | datum = taglink[i].innerHTML.split("/"); | ||
+ | test80j = String(Number(datum[0]) + 80); | ||
+ | test75j = String(Number(datum[0]) + 75); | ||
+ | testmon = (datum[1]) ? monat.indexOf(datum[1]) : "0"; | ||
+ | testtag = (datum[2]) ? datum[2] : "0"; | ||
+ | test80 = new Date(test80j, testmon, testtag); | ||
+ | test75 = new Date(test75j, testmon, testtag); | ||
+ | test00 = new Date(heute.getFullYear(), heute.getMonth(), heute.getDate()); | ||
+ | post(test75, "lavender"); | ||
+ | post(test80, "lightsteelblue"); | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // zweite Zeilen (Geooc2) nachträglich auch färben: | ||
+ | // | ||
+ | nachzeilen = document.getElementsByClassName("Geooc2"); | ||
+ | for (i=0; i<nachzeilen.length; i++) { | ||
+ | // Der erste previousSibling sowie childNode[0] und [2] sind Textknoten!? Vielleicht Zeilenumbrüche?? | ||
+ | Postfarbe = nachzeilen[i].parentNode.previousSibling.previousSibling.childNodes[3].style.backgroundColor; | ||
+ | nachzeilen[i].style.borderRight = "#00b050"; | ||
+ | nachzeilen[i].nextSibling.nextSibling.style.borderRight = "#00b050"; | ||
+ | nachzeilen[i].nextSibling.nextSibling.style.borderTop = "solid 2px "+Postfarbe; | ||
+ | nachzeilen[i].nextSibling.nextSibling.style.backgroundColor = Postfarbe; | ||
+ | } | ||
} | } |
Aktuelle Version vom 23. Juni 2023, 09:37 Uhr
/* ┌──────────────────────────────────────────────┐
│ Das folgende JavaScript wird nur für mich │
│ (auch zum Testen) geladen. │
│ Für alle Benutzer gilt MediaWiki:Common.js │
├──────────────────────────────────────────────┤
│ Tabstop zum Kopieren: " " │
└──────────────────────────────────────────────┘ */
/* ╔═════════════════════════════╗
║ ║
║ TEST-ZONE ║
║ ║
╚═════════════════════════════╝ */
if (1 == 0) {
}
/* ╔═════════════════════════════╗
║ ║
║ REAL-ZONE ║
║ ║
╚═════════════════════════════╝ */
/* ┌──────────────────────────────────────────────┐
│ [[Tagebuch-Chronik]] │
│ 1. Anzeige der Chronik-Zeilen │
│ (~Anzahl d. Artikel d. Tag-für-Tag-Ausg.) │
│ 2. Farbmarkierung "heute" + 80 bzw. 75 Jahre │
│ mit Link zum Tag, zwecks Blog-post │
└──────────────────────────────────────────────┘ */
if (document.getElementById("anzahlzeilen")) {
document.getElementById( "anzahlzeilen" ).insertBefore( document.createTextNode( document.getElementsByTagName( 'tr' ).length ), document.getElementById( "anzahlzeilen" ).lastChild );
// das aktuelle Datum gem. https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Date/Einführung:
heute = new Date();
monat = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'];
ersteMarke = true;
taglink = document.getElementsByClassName("ktbchronik")[2].getElementsByTagName("a");
function post(postdatum, faerbung) {
if (postdatum.getTime() < test00.getTime()) {
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = faerbung;
} else {
if (postdatum.getTime() == test00.getTime()) {
if (ersteMarke) {
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "gold";
taglink[i].id = "YA";
document.getElementById("YearsAgo").style.display = "block";
// falls ausnahmsweise 2 posts an einem Tag fällig werden:
} else {
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "yellow";
taglink[i].id = "YA2";
document.getElementById("YearsAgo2").style.display = "block";
}
ersteMarke = false;
}
}
}
// Vorlauf für die ersten beiden Zeilen:
for (i=0; i<taglink.length; i++) {
if (taglink[i].innerHTML.startsWith("193")) {
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "lightsteelblue";
}
}
// Haupt-Durchlauf für die übrigen Zeilen:
for (i=0; i<taglink.length; i++) {
// nur zur Beschleunigung, trotzdem gibt es invalid:
if (taglink[i].innerHTML.startsWith("194")) {
datum = taglink[i].innerHTML.split("/");
test80j = String(Number(datum[0]) + 80);
test75j = String(Number(datum[0]) + 75);
testmon = (datum[1]) ? monat.indexOf(datum[1]) : "0";
testtag = (datum[2]) ? datum[2] : "0";
test80 = new Date(test80j, testmon, testtag);
test75 = new Date(test75j, testmon, testtag);
test00 = new Date(heute.getFullYear(), heute.getMonth(), heute.getDate());
post(test75, "lavender");
post(test80, "lightsteelblue");
}
}
//
// zweite Zeilen (Geooc2) nachträglich auch färben:
//
nachzeilen = document.getElementsByClassName("Geooc2");
for (i=0; i<nachzeilen.length; i++) {
// Der erste previousSibling sowie childNode[0] und [2] sind Textknoten!? Vielleicht Zeilenumbrüche??
Postfarbe = nachzeilen[i].parentNode.previousSibling.previousSibling.childNodes[3].style.backgroundColor;
nachzeilen[i].style.borderRight = "#00b050";
nachzeilen[i].nextSibling.nextSibling.style.borderRight = "#00b050";
nachzeilen[i].nextSibling.nextSibling.style.borderTop = "solid 2px "+Postfarbe;
nachzeilen[i].nextSibling.nextSibling.style.backgroundColor = Postfarbe;
}
}