Benutzer:Ahnenfan/common.js: Unterschied zwischen den Versionen

Aus Westmärker Wiki
Zur Navigation springen Zur Suche springen
 
(44 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 11: Zeile 11:
 
   ║                            ║
 
   ║                            ║
 
   ╚═════════════════════════════╝ */
 
   ╚═════════════════════════════╝ */
if (1 == 1) {
+
if (1 == 0) {
if (document.getElementById("anzahlzeilen")) { // identifiziert die Chronik-Seite
 
tabelle = document.getElementsByClassName("ktbchronik"); // davon gibt es zzt. 2; Kalendernavigation soll so ausgeschlossen werden
 
for (t=0; t<tabelle.length; t++) {
 
taglink = tabelle[t].getElementsByTagName("a");
 
for (i=0; i<taglink.length; i++) {
 
if (taglink[i].innerText.startsWith('1938') || taglink[i].innerText.startsWith('1942') || taglink[i].innerText.startsWith('1946')) { taglink[i].parentNode.style.backgroundImage = "repeating-linear-gradient(0deg, white, white 4px, #eaf1dd 4px, #eaf1dd 5px" }
 
if (taglink[i].innerText.startsWith('1939') || taglink[i].innerText.startsWith('1943') || taglink[i].innerText.startsWith('1947')) { taglink[i].parentNode.style.backgroundImage = "repeating-linear-gradient(45deg, white, white 4px, #eaf1dd 4px, #eaf1dd 5px" }
 
if (taglink[i].innerText.startsWith('1940') || taglink[i].innerText.startsWith('1944') || taglink[i].innerText.startsWith('1948')) { taglink[i].parentNode.style.backgroundImage = "repeating-linear-gradient(90deg, white, white 4px, #eaf1dd 4px, #eaf1dd 5px" }
 
if (taglink[i].innerText.startsWith('1941') || taglink[i].innerText.startsWith('1945') || taglink[i].innerText.startsWith('1949')) { taglink[i].parentNode.style.backgroundImage = "repeating-linear-gradient(135deg, white, white 4px, #eaf1dd 4px, #eaf1dd 5px" }
 
}
 
}
 
// zweite Zeilen (Geooc2) nachträglich auch färben:
 
nachzeilen = document.getElementsByClassName("Geooc2");
 
for (i=0; i<nachzeilen.length; i++) {
 
nachzeilen[i].style.backgroundImage = nachzeilen[i].parentNode.previousSibling.previousSibling.childNodes[1].style.backgroundImage;
 
// ...        parentNode.previousSibling  und ...        firstChild undefined!! (Zeilenumbruch?!)
 
}
 
}
 
  
 
}
 
}
Zeile 52: Zeile 34:
 
  monat = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'];
 
  monat = ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'];
 
ersteMarke = true;
 
ersteMarke = true;
taglink = document.getElementsByTagName("a");
+
taglink = document.getElementsByClassName("ktbchronik")[2].getElementsByTagName("a");
 
function post(postdatum, faerbung) {
 
function post(postdatum, faerbung) {
 
if (postdatum.getTime() < test00.getTime()) {
 
if (postdatum.getTime() < test00.getTime()) {
taglink[i].parentNode.style.backgroundColor = faerbung;
+
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = faerbung;
 
} else {
 
} else {
 
if (postdatum.getTime() == test00.getTime()) {
 
if (postdatum.getTime() == test00.getTime()) {
 
if (ersteMarke) {
 
if (ersteMarke) {
taglink[i].parentNode.style.backgroundColor = "gold";
+
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "gold";
 
taglink[i].id = "YA";
 
taglink[i].id = "YA";
 
document.getElementById("YearsAgo").style.display = "block";
 
document.getElementById("YearsAgo").style.display = "block";
 
// falls ausnahmsweise 2 posts an einem Tag fällig werden:
 
// falls ausnahmsweise 2 posts an einem Tag fällig werden:
 
} else {
 
} else {
taglink[i].parentNode.style.backgroundColor = "yellow";
+
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "yellow";
 
taglink[i].id = "YA2";
 
taglink[i].id = "YA2";
 
document.getElementById("YearsAgo2").style.display = "block";
 
document.getElementById("YearsAgo2").style.display = "block";
Zeile 74: Zeile 56:
  
 
// Vorlauf für die ersten beiden Zeilen:
 
// Vorlauf für die ersten beiden Zeilen:
/* for (i=0; i<taglink.length; i++) {
+
for (i=0; i<taglink.length; i++) {
if (taglink[i].innerHTML.indexOf("193") == 0) {  
+
if (taglink[i].innerHTML.startsWith("193")) {  
taglink[i].parentNode.style.backgroundColor = "lightsteelblue";
+
taglink[i].parentNode.nextSibling.nextSibling.style.backgroundColor = "lightsteelblue";
 
}
 
}
 
}
 
}
Zeile 83: Zeile 65:
 
for (i=0; i<taglink.length; i++) {
 
for (i=0; i<taglink.length; i++) {
 
// nur zur Beschleunigung, trotzdem gibt es invalid:
 
// nur zur Beschleunigung, trotzdem gibt es invalid:
if (taglink[i].innerHTML.indexOf("194") == 0) {  
+
if (taglink[i].innerHTML.startsWith("194")) {  
 
datum = taglink[i].innerHTML.split("/");
 
datum = taglink[i].innerHTML.split("/");
 
test80j = String(Number(datum[0]) + 80);
 
test80j = String(Number(datum[0]) + 80);
Zeile 96: Zeile 78:
 
}
 
}
 
}
 
}
*/
+
 
 +
//
 
// zweite Zeilen (Geooc2) nachträglich auch färben:
 
// zweite Zeilen (Geooc2) nachträglich auch färben:
 +
//
 
nachzeilen = document.getElementsByClassName("Geooc2");
 
nachzeilen = document.getElementsByClassName("Geooc2");
 
for (i=0; i<nachzeilen.length; i++) {
 
for (i=0; i<nachzeilen.length; i++) {
nachzeilenfarbe = nachzeilen[i].parentNode.previousSibling.previousSibling.childNodes[1].style.backgroundColor;
+
// Der erste previousSibling sowie childNode[0] und [2] sind Textknoten!? Vielleicht Zeilenumbrüche??
// ...        parentNode.previousSibling  und ...       firstChild undefined!! (Zeilenumbruch?!)
+
Postfarbe = nachzeilen[i].parentNode.previousSibling.previousSibling.childNodes[3].style.backgroundColor;
if (!nachzeilenfarbe) { nachzeilenfarbe = "white"; }
+
nachzeilen[i].style.borderRight                            = "#00b050";
nachzeilen[i].style.backgroundColor  = nachzeilenfarbe;
+
nachzeilen[i].nextSibling.nextSibling.style.borderRight    = "#00b050";
nachzeilen[i].style.borderTopColor  = nachzeilenfarbe;
+
nachzeilen[i].nextSibling.nextSibling.style.borderTop      = "solid 2px "+Postfarbe;
nachzeilen[i].style.borderRightColor = "#00b050";
+
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;
	}
}