Gegliedert nach Alter: sieben Stufen, klappbar

Filipe: "ich will da unterkategorien die man auf und zu klappen kann,
so wie heute gestern, diese woche, diesen monate, über ein monat,
über 6 monate, über ein jahr."

DAS IST DIE BESSERE ANTWORT AUF DIE LANGEN LISTEN als die Zahl von
gestern. Zwoelf ist willkuerlich; eine Gliederung nach Alter
beantwortet die Frage, die man an so eine Liste wirklich stellt --
was ist neu?

DIE ERSTEN VIER STUFEN SIND KALENDERBEZOGEN, die letzten drei
altersbezogen:

  Heute, Gestern          der Kalendertag
  Diese Woche             seit MONTAG -- am Dienstag ist der Freitag
                          davor nicht "diese Woche"
  Dieser Monat            seit dem Ersten
  Ueber einen Monat       der Abstand, weil "Mai" niemandem sagt,
  Ueber sechs Monate      wie lange das her ist
  Ueber ein Jahr

Das klingt uneinheitlich und ist genau richtig.

DIE NEUESTE GRUPPE STEHT OFFEN, die aelteren zu. Wer die Seite
aufmacht, will sehen was neu ist -- und alles Aeltere ist sichtbar
VORHANDEN, ohne den Weg zu verstellen. Die eigene Wahl gewinnt und
wird gemerkt, je Gruppe und je Spalte.

EINE LEERE STUFE ERSCHEINT NICHT. Sieben leere Ueberschriften waeren
schlimmer als eine lange Liste. Und gegliedert wird erst UEBER zwoelf
Eintraegen -- darunter waeren es sieben Ueberschriften fuer fuenf
Karten.

Die Zwoelfergrenze von gestern bleibt, gilt aber jetzt JE GRUPPE: Auch
"Ueber ein Jahr" kann dreihundert Eintraege haben, und dann hilft die
Gliederung allein nicht.

GERECHNET WIRD IN ORTSZEIT (window.heuteLokal), nicht in UTC. Ein
Eintrag von gestern 23:40 waere in UTC schon heute und stuende unter
"Heute", waehrend das Datum daneben gestern sagt.

ZWEI DINGE NACHGESEHEN STATT GERATEN:

  abschnittKlappbar nimmt als vierten Wert ein BOOLEAN (zuVorgabe),
  kein Objekt. Ich hatte "{ offen: ... }" angenommen; beim Nachsehen
  in kopf.js stand etwas anderes da.

  Jede Gruppe braucht einen eigenen Merker. Ohne ihn teilten sich
  "Heute bei DogFather" und "Heute bei HasiDog" denselben Zustand,
  und wer die eine zuklappt, klappt die andere mit.

Gemessen mit Eintraegen ueber alle sieben Stufen: 10 Messungen,
0 Befunde -- Reihenfolge, Zahlen, offen/zu, Klapp-Pfeil, kein
seitlicher Ueberstand, und ein Tipp macht eine zugeklappte Gruppe
wirklich auf. pruef-highlights 31, pruef-galerie und
pruef-css-klassen in Ordnung.

NOCH OFFEN -- screen1: "Screenshots oder Kurzschnitte reinposten"
braucht eine Route, die eine Datei an einen EINTRAG haengt. Die gibt
es heute nicht: workspace-video.js legt Coverbilder beim Einlesen
eines TikTok-Links an, workspace-dateien.js laedt hoch, aber ohne
eintrag_id. Das ist ein eigener Brocken und kein Nebenbei.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-24 00:06:59 +02:00
co-authored by Claude Opus 5
parent 2bea133feb
commit 7f732cc403
41 changed files with 778 additions and 591 deletions
+16 -16
View File
@@ -12,20 +12,20 @@
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
eine Flaeche sind statt zweier. -->
<meta name="theme-color" content="#06090f" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609240000" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609240000" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609240000" />
<link rel="stylesheet" href="assets/css/start.css?v=202609240000" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609240000" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609240000" />
<link rel="stylesheet" href="assets/css/module.css?v=202609240000" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609240006" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609240006" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609240006" />
<link rel="stylesheet" href="assets/css/start.css?v=202609240006" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609240006" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609240006" />
<link rel="stylesheet" href="assets/css/module.css?v=202609240006" />
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
genau diesen Dateinamen auf crew-haus.css um, und die Seite
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
ohne Umfaerben im Browser, ohne Flackern. -->
<link rel="stylesheet" href="assets/css/haus.css?v=202609240000" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609240006" />
</head>
<body class="start">
@@ -453,14 +453,14 @@
</main>
<script src="assets/js/meldung.js?v=202609240000" defer></script>
<script src="assets/js/nachfrage.js?v=202609240000" defer></script>
<script src="assets/js/meldung.js?v=202609240006" defer></script>
<script src="assets/js/nachfrage.js?v=202609240006" defer></script>
<script src="assets/js/wahl.js?v=202609240000" defer></script>
<script src="assets/js/bereiche.js?v=202609240000" defer></script>
<script src="assets/js/installieren.js?v=202609240000" defer></script>
<script src="assets/js/kopf.js?v=202609240000" defer></script>
<script src="assets/js/glocke.js?v=202609240000" defer></script>
<script src="assets/js/personen.js?v=202609240000" defer></script>
<script src="assets/js/wahl.js?v=202609240006" defer></script>
<script src="assets/js/bereiche.js?v=202609240006" defer></script>
<script src="assets/js/installieren.js?v=202609240006" defer></script>
<script src="assets/js/kopf.js?v=202609240006" defer></script>
<script src="assets/js/glocke.js?v=202609240006" defer></script>
<script src="assets/js/personen.js?v=202609240006" defer></script>
</body>
</html>