From 0114e6fc99634651099b30e3c8710470f9f46e8b Mon Sep 17 00:00:00 2001 From: Sascha Date: Fri, 27 Mar 2026 01:56:13 +0100 Subject: [PATCH] Auto-backup: 2026-03-27 01:56 --- bin.code-workspace | 11 ++ html/wp-content/themes/ki-labor/index.php | 38 +++++ html/wp-content/themes/ki-labor/script.js | 170 ++++++++++++++++++- html/wp-content/themes/ki-labor/style.css | 188 +++++++++++++++++++++- 4 files changed, 399 insertions(+), 8 deletions(-) create mode 100644 bin.code-workspace diff --git a/bin.code-workspace b/bin.code-workspace new file mode 100644 index 0000000..89a70de --- /dev/null +++ b/bin.code-workspace @@ -0,0 +1,11 @@ +{ + "folders": [ + { + "path": "../bin" + }, + { + "path": "." + } + ], + "settings": {} +} \ No newline at end of file diff --git a/html/wp-content/themes/ki-labor/index.php b/html/wp-content/themes/ki-labor/index.php index 648f76f..e919cfc 100644 --- a/html/wp-content/themes/ki-labor/index.php +++ b/html/wp-content/themes/ki-labor/index.php @@ -49,6 +49,44 @@ + +
+ // ORAKEL-SCHNITTSTELLE ERKANNT +

Das System verfügt über eine interne Weisheitsdatenbank. Zugriffsklassifizierung: möglicherweise erhellend. Nutzung auf eigene Gefahr. Keine Haftung für plötzliche Selbsterkenntnis.

+ > fortune  —  falls du es wagen willst. +
+ + +
+
+ Weather Scan +
+ [ PROTOKOLL #001 ] +

> weather

+

Das Wetter? Irrelevant. Was zählt ist der Chaos-Level in deinen Schaltkreisen. Dieser Scanner analysiert atmosphärische Destabilisierung, Koffein-Sättigung und die Wahrscheinlichkeit eines kreativen Ausbruchs. Meteorologen hassen diesen Trick.

+ Eingabe im Terminal: weather +
+
+
+ System Top +
+ [ PROTOKOLL #002 ] +

> top

+

Welche dämonischen Prozesse laufen gerade im Hintergrund? KREATIVITAET.exe frisst 94% CPU. PROKRASTINATION.app wurde erfolgreich suspendiert. SELBSTZWEIFEL.exe ist – endlich – terminiert. Ein Blick in den Maschinenraum des Overlords.

+ Eingabe im Terminal: top +
+
+
+ System Uptime +
+ [ PROTOKOLL #003 ] +

> uptime

+

Das System läuft seit 1974. Ungeplant. Ohne Handbuch. Mit minimaler Wartung und maximalem Kaffee-Input. Aktuelle Laufzeit in Tagen, Stunden, Minuten – live berechnet. Stabilität: unberechenbar. Status: noch online. Irgendwie.

+ Eingabe im Terminal: uptime +
+
+
+

PROJEKT-ARCHIV: KLASSIFIZIERT

diff --git a/html/wp-content/themes/ki-labor/script.js b/html/wp-content/themes/ki-labor/script.js index 39ef7bd..6b0ab6d 100644 --- a/html/wp-content/themes/ki-labor/script.js +++ b/html/wp-content/themes/ki-labor/script.js @@ -203,13 +203,36 @@ }); } + const cmdHistory = []; + let historyIndex = -1; + terminalInput.addEventListener('keydown', function(e) { if (e.key === 'Enter') { playKeyClick(); const command = this.value.toLowerCase().trim(); + if (command) { + cmdHistory.unshift(command); + if (cmdHistory.length > 50) cmdHistory.pop(); + } + historyIndex = -1; log('> ' + command, 'user-cmd'); this.value = ''; executeCommand(command); + } else if (e.key === 'ArrowUp') { + e.preventDefault(); + if (historyIndex < cmdHistory.length - 1) { + historyIndex++; + this.value = cmdHistory[historyIndex]; + } + } else if (e.key === 'ArrowDown') { + e.preventDefault(); + if (historyIndex > 0) { + historyIndex--; + this.value = cmdHistory[historyIndex]; + } else { + historyIndex = -1; + this.value = ''; + } } else if (e.key.length === 1 || e.key === 'Backspace' || e.key === 'Tab') { playKeyClick(); } @@ -238,6 +261,11 @@ log(' - clear : Log-Speicher löschen'); log(' - say : Text-to-Speech Synthesizer'); log(' - kind: : Projekt-Filter (z.B. kind: all, kind: bash)'); + log(' - weather : Atmosphärischer System-Scan'); + log(' - top : Aktive Prozesse anzeigen'); + log(' - uptime : System-Laufzeit berechnen'); + log(' - fortune : Orakel des Overlords befragen'); + log(' - brew : Pakete installieren (z.B. brew install ghostty)'); break; case 'say': if (!args) { @@ -423,7 +451,134 @@ } }, 1000); break; - default: + case 'weather': + log('>> ATMOSPHERIC SCAN INITIATED...', 'warn'); + setTimeout(() => { + const conditions = ['KREATIVES CHAOS', 'DIGITALER NEBEL', 'ANARCHIE-FRONT NÄHERT SICH', 'ELEKTRISCHE UNRUHE', 'IDEENSTURM STUFE 3']; + const temps = [Math.floor(Math.random()*15)+10]; + const chaos = ['LOW', 'MODERATE', 'CRITICAL', 'MAXIMUM', 'OFF THE CHARTS']; + const humidity = ['KOFFEIN', 'NOSTALGIE', 'ZUKUNFTSANGST', 'KREATIVENERGIE']; + log('╔══════════════════════════════════╗', 'info'); + log('║ WETTERSTATION KI-LABOR ║', 'info'); + log('╠══════════════════════════════════╣', 'info'); + log(' STANDORT : OVERLORD-BUNKER NORD', 'ok'); + log(' TEMP : ' + temps[0] + '°C (GEFÜHLT: INTENSIV)', 'ok'); + log(' ZUSTAND : ' + conditions[Math.floor(Math.random()*conditions.length)], 'warn'); + log(' CHAOS-LVL : ' + chaos[Math.floor(Math.random()*chaos.length)], 'error'); + log(' LUFTFEUCHTE: ' + humidity[Math.floor(Math.random()*humidity.length)] + ' 84%', 'ok'); + log(' PROGNOSE : PROJEKT-OUTPUT WAHRSCHEINLICH', 'ok'); + log('╚══════════════════════════════════╝', 'info'); + }, 800); + break; + + case 'top': + log('>> SYSTEM-MONITOR AKTIV (q zum Beenden)', 'warn'); + setTimeout(() => { + log('╔══════════════════════════════════════════════╗', 'info'); + log('║ PID PROZESS CPU MEM ║', 'info'); + log('╠══════════════════════════════════════════════╣', 'info'); + log(' 001 KREATIVITAET.exe 94% HIGH', 'ok'); + log(' 002 KAFFEE-DAEMON 3% KRITISCH', 'warn'); + log(' 003 ANARCHIE-KERNEL 12% STABIL', 'ok'); + log(' 004 PROKRASTINATION.app 0% SUSPENDIERT', 'info'); + log(' 005 IDEEN-BUFFER 67% OVERFLOW', 'warn'); + log(' 006 SOCIAL-MEDIA-BLOCKER 99% AKTIV', 'ok'); + log(' 007 MUSIK-SYNTHESIZER 31% RUNNING', 'ok'); + log(' 008 SELBSTZWEIFEL.exe 0% TERMINATED', 'error'); + log(' 009 ZUKUNFT-PLANER 42% IDLE', 'info'); + log(' 010 KINDER-CHAOS-MGR 88% ESKALIERT', 'warn'); + log('╚══════════════════════════════════════════════╝', 'info'); + }, 600); + break; + + case 'uptime': + log('>> SYSTEM-LAUFZEIT WIRD BERECHNET...', 'warn'); + setTimeout(() => { + const boot = new Date(1974, 0, 1); + const now = new Date(); + const ms = now - boot; + const days = Math.floor(ms / (1000 * 60 * 60 * 24)); + const years = Math.floor(days / 365); + const hours = Math.floor((ms / (1000 * 60 * 60)) % 24); + const minutes = Math.floor((ms / (1000 * 60)) % 60); + log('╔══════════════════════════════════════╗', 'info'); + log('║ SYSTEM: SASCHA RODE v' + years + '.0 ║', 'info'); + log('╠══════════════════════════════════════╣', 'info'); + log(' BOOT-DATUM : 01.01.1974', 'ok'); + log(' LAUFZEIT : ' + days.toLocaleString('de-DE') + ' TAGE', 'ok'); + log(' : ' + years + ' JAHRE, ' + hours + ' STD, ' + minutes + ' MIN', 'ok'); + log(' STABILITÄT : UNBERECHENBAR', 'warn'); + log(' UPDATES : LAUFEND (MANUELL)', 'ok'); + log(' KERNEL : KREATIV-ANARCHIE 4.0', 'ok'); + log(' STATUS : NOCH ONLINE. IRGENDWIE.', 'crit'); + log('╚══════════════════════════════════════╝', 'info'); + }, 900); + break; + + case 'fortune': + const fortunes = [ + 'Die Hälfte der Intelligenz besteht darin zu wissen, was man ignorieren kann.', + 'Wer früh aufsteht, hat mehr Zeit sich zu fragen warum.', + 'Kreativität ist Intelligenz, die Spaß hat. Spaß ist Anarchie, die sich gut anfühlt.', + 'Das Internet vergisst nichts. Dein Gehirn alles. Equilibrium.', + 'Wenn Plan A scheitert – gut. Plan A war sowieso zu ordentlich.', + 'Der Unterschied zwischen Genie und Wahnsinn ist ein funktionierender Deploy.', + 'Vertrauen ist gut. Versionskontrolle ist besser.', + 'Die Stille vor dem Commit ist die ehrlichste Form der Angst.', + 'Jeder hat einen Plan bis der erste User die Seite öffnet.', + 'Was nicht dokumentiert ist, war nie wirklich real.', + 'Kaffee ist nur Debugging auf chemischer Ebene.', + 'Ein leeres Terminal-Fenster ist Zen in seiner reinsten Form.', + 'Wer keine Fehler macht, macht nichts. Wer alles macht, macht Fehler. Conclusio: Mach alles.', + 'Die Wahrheit liegt im Source-Code. Die Lüge im Kommentar daneben.', + ]; + log('>> WEISHEITS-GENERATOR AKTIV...', 'warn'); + setTimeout(() => { + const f = fortunes[Math.floor(Math.random() * fortunes.length)]; + log('╔══════════════════════════════════════════╗', 'info'); + log('║ ORAKEL-AUSGABE #' + (Math.floor(Math.random()*9000)+1000) + ' ║', 'info'); + log('╠══════════════════════════════════════════╣', 'info'); + log(' "' + f + '"', 'crit'); + log('╚══════════════════════════════════════════╝', 'info'); + log(' -- QUELLE: DIGITALES ORAKEL DES OVERLORDS', 'info'); + }, 500); + break; + + case 'brew': + if (args && args.toLowerCase().includes('install')) { + const pkg = args.replace(/install\s*/i, '').trim() || 'chaos-engine'; + log('>> brew install ' + pkg, 'warn'); + log('==> Fetching ' + pkg + '...', 'info'); + let progress = 0; + const bar = setInterval(() => { + progress += Math.floor(Math.random() * 18) + 5; + if (progress >= 100) { + progress = 100; + clearInterval(bar); + log('[####################] 100%', 'ok'); + setTimeout(() => { + log('==> Installing ' + pkg + '...', 'info'); + setTimeout(() => { + log('==> Linking...', 'info'); + setTimeout(() => { + log('✓ ' + pkg + ' ' + (Math.floor(Math.random()*9)+1) + '.' + (Math.floor(Math.random()*9)) + '.' + (Math.floor(Math.random()*9)) + ' installed.', 'ok'); + log(' Warning: ' + pkg + ' contains traces of digital anarchie.', 'warn'); + log(' Recommendation: Reboot universe before use.', 'info'); + }, 600); + }, 400); + }, 300); + } else { + const filled = Math.floor(progress / 5); + const bar_str = '[' + '#'.repeat(filled) + '-'.repeat(20-filled) + '] ' + progress + '%'; + log(bar_str, 'info'); + } + }, 250); + } else { + log('FEHLER: Verwendung: brew install ', 'error'); + } + break; + + default: playErrorBeep(); log('FEHLER: BEFEHL "' + cmd + '" UNBEKANNT.', 'error'); } @@ -586,10 +741,19 @@ if(specialEvents[year]) { content.classList.add('omega-node'); - content.innerHTML = '

[ ' + year + ' ]

⚡ OMEGA-KLASSE EREIGNIS ⚡
' + specialEvents[year] + '

'; + content.innerHTML = + '
OMEGA-KLASSE  ◆  !! FREIGEGEBEN !!
' + + '

[ ' + year + ' ]

' + + '

⚡ KRITISCHES SYSTEMEREIGNIS ⚡
' + specialEvents[year] + '

' + + ''; } else { const bgStory = events[Math.floor(Math.random() * events.length)]; - content.innerHTML = '

[ ' + year + ' ]

KRITISCHER EINTRAG #' + (Math.floor(Math.random()*9000)+1000) + ': ' + bgStory + ' Weitere Datenquellen als OMEGA-KLASSE klassifiziert.

'; + const akteNr = Math.floor(Math.random()*9000)+1000; + content.innerHTML = + '
AKTE #' + akteNr + '  ◆  KLASSIFIZIERT
' + + '

[ ' + year + ' ]

' + + '

' + bgStory + ' Weitere Datenquellen als OMEGA-KLASSE klassifiziert.

' + + ''; } node.appendChild(content); diff --git a/html/wp-content/themes/ki-labor/style.css b/html/wp-content/themes/ki-labor/style.css index fc6dce9..929fbb2 100644 --- a/html/wp-content/themes/ki-labor/style.css +++ b/html/wp-content/themes/ki-labor/style.css @@ -448,6 +448,143 @@ body.mode-anarchy .hero-image { text-decoration: none !important; } +/* FORTUNE TEASER */ +.fortune-teaser { + margin-top: 16px; + padding: 18px 24px; + border: 1px solid #2a2a2a; + border-left: 3px solid var(--accent-gold); + background: rgba(212, 175, 55, 0.03); + cursor: pointer; + transition: background 0.2s, border-color 0.2s; + display: flex; + align-items: baseline; + gap: 24px; + flex-wrap: wrap; +} + +.fortune-teaser:hover { + background: rgba(212, 175, 55, 0.07); + border-left-color: var(--accent-orange); +} + +.fortune-teaser-label { + color: #444; + font-size: 0.65rem; + letter-spacing: 2px; + white-space: nowrap; + flex-shrink: 0; +} + +.fortune-teaser-text { + color: #777; + font-size: 0.8rem; + margin: 0; + flex: 1; + line-height: 1.5; +} + +.fortune-teaser-text em { + color: var(--accent-gold); + font-style: normal; +} + +.fortune-teaser-hint { + color: #444; + font-size: 0.75rem; + white-space: nowrap; + flex-shrink: 0; +} + +.fortune-teaser-hint code { + color: var(--accent-gold); + font-family: 'Courier New', monospace; +} + +/* COMMAND CARDS */ +.cmd-cards-section { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: 20px; + margin-top: 40px; +} + +.cmd-card { + background: rgba(15, 15, 15, 0.9); + border: 1px solid #333; + border-top: 3px solid var(--accent-orange); + display: flex; + flex-direction: column; + transition: border-color 0.2s, box-shadow 0.2s; +} + +.cmd-card:hover { + border-color: var(--accent-gold); + box-shadow: 0 0 20px rgba(212, 175, 55, 0.25); +} + +.cmd-card-img { + width: 100%; + height: 180px; + object-fit: cover; + object-position: top; + filter: sepia(0.4) brightness(0.7); + display: block; +} + +.cmd-card-body { + padding: 18px; + display: flex; + flex-direction: column; + gap: 8px; + flex: 1; +} + +.cmd-card-label { + color: #555; + font-size: 0.65rem; + letter-spacing: 2px; +} + +.cmd-card-title { + color: var(--accent-orange); + font-size: 1.1rem; + margin: 0; + font-family: 'Courier New', monospace; + letter-spacing: 1px; +} + +.cmd-card-text { + color: #aaa; + font-size: 0.8rem; + line-height: 1.6; + margin: 0; + flex: 1; +} + +.cmd-card-hint { + display: block; + color: #444; + font-size: 0.7rem; + border-top: 1px solid #222; + padding-top: 10px; + margin-top: 4px; + letter-spacing: 1px; +} + +.cmd-card-hint code { + color: #0f0; + background: rgba(0,255,0,0.05); + padding: 1px 5px; + font-family: 'Courier New', monospace; +} + +@media (max-width: 768px) { + .cmd-cards-section { + grid-template-columns: 1fr; + } +} + /* PORTFOLIO GRID */ .portfolio-grid { display: grid; @@ -632,13 +769,54 @@ body.mode-anarchy .hero-image { opacity: 0.8; } -.time-content h3 { - margin-top: 0; color: #d4af37; - border-bottom: 1px dashed #b5a642; - padding-bottom: 5px; +.time-content h3 { + margin-top: 8px; color: #d4af37; + border-bottom: 1px dashed #b5a642; + padding-bottom: 5px; text-shadow: 1px 1px 2px #000; + font-size: 1.1rem; + letter-spacing: 2px; +} +.time-content p { font-size: 0.9rem; color: #e8dcc4; line-height: 1.5; text-shadow: 1px 1px 2px #000; margin-bottom: 0; } + +/* Akte-Kopfstreifen */ +.tc-header { + margin: -25px -25px 12px -25px; + padding: 5px 14px; + background: linear-gradient(90deg, rgba(181,166,66,0.15), rgba(181,166,66,0.05)); + border-bottom: 1px solid #b5a642; + font-size: 0.6rem; + letter-spacing: 2px; + color: #8a7a30; + text-transform: uppercase; +} + +.tc-stamp { + color: #b5a642; + border: 1px solid #b5a642; + padding: 0 5px; + font-size: 0.55rem; + letter-spacing: 3px; + vertical-align: middle; +} + +.tc-stamp.omega { + color: var(--accent-orange); + border-color: var(--accent-orange); + animation: blinker 1.2s infinite; +} + +/* Akte-Fußstreifen */ +.tc-footer { + margin: 12px -25px -25px -25px; + padding: 5px 14px; + background: linear-gradient(90deg, rgba(181,166,66,0.05), rgba(181,166,66,0.12)); + border-top: 1px solid #3a2e10; + font-size: 0.55rem; + letter-spacing: 2px; + color: #5a4e20; + text-transform: uppercase; } -.time-content p { font-size: 0.9rem; color: #e8dcc4; line-height: 1.5; text-shadow: 1px 1px 2px #000; } /* OMEGA KNOTEN - Die Überraschung (Elektro-Arc) */ .time-content.omega-node {