Jeder hat einen Steckbrief -- und die Kacheln stehen in der richtigen Reihenfolge
Filipe: "jeder soll ein steckbrief haben, jeder der ein account hat, rechte hand, modis und community, jeder soll genau wie ich foto und so hinzufuegen koennen." Und: "ich will das oben die sachen fuer dogfather sind, dan die sachen fuer modis und dan community bereich." 1. JEDER HAT EINEN STECKBRIEF. In rechte.js fehlte "gast" -- und damit ausgerechnet die groesste Gruppe. Die Seite selbst konnte es die ganze Zeit: `/mein` fragt nach der eigenen Nummer und kennt gar keine Rolle. Es fehlte nur die Tuer und die Kachel. DABEI EIN ZWEITER FUND, der schon laenger da war: In assets/js/steckbrief.js stand eine Liste aus drei Gruppen (Management, Scouting, Creator). Wer in keine passte, verschwand LAUTLOS aus der Uebersicht -- betroffen waren die rechte Hand und die Modis. Ein Modi, der die Seite oeffnete, sah seine eigenen Leute nicht. Kein Fehler, keine leere Liste, sie waren einfach nicht da. Die Zuordnung kommt jetzt vom Server (`abschnittFuer`). Damit kann sie nicht mehr veralten, und in der ausgelieferten Datei steht keine Liste von Rollennamen mehr -- was ohnehin Hausregel ist. Wer kuenftig vergessen wird, landet sichtbar unter "Weitere" statt zu verschwinden; die Gegenprobe dafuer steht in der Pruefung. "Wer hier mitarbeitet" heisst jetzt "Wer hier dabei ist" -- ein Mitglied arbeitet nicht mit, es schaut zu. 2. DIE REIHENFOLGE. Die Moderationskachel trug dieselbe Gruppe wie die sieben Bretter und landete deshalb HINTER ihnen: Wer moderiert, musste an der ganzen Community vorbeiscrollen. Sie hat jetzt eine eigene Gruppe und steht davor. ERST ZU VIEL GEMACHT, DANN KORRIGIERT: Mein erster Entwurf schrieb auch die Reihenfolge der Arbeitsgruppen fest. Die ist an mehreren Stellen bewusst gewaehlt und begruendet -- pruef-start-ansicht hat es sofort gemeldet, zu Recht. Jetzt wandern nur noch Moderation, Community und "Fuer dich" ans Ende; alles andere bleibt, wo es war. 3. ZWEI PRUEFUNGEN, DIE ZUFAELLIG GRUEN WAREN. pruef-kachelraster zaehlte Reihen ueber die Y-Koordinate und wartete feste 500 ms. Die Kacheln laufen aber gestaffelt ein -- mit einer Gruppe mehr war die Messung zu frueh und meldete vier Reihen, wo drei sind. Das Bildschirmfoto derselben Seite zeigte ein makelloses Raster. Jetzt misst sie mit `reducedMotion: reduce`, also den Endzustand. pruef-start-ansicht scrollte 600 px und nahm an, danach liege keine Kachel mehr unter dem Zeiger. Dieselbe Falle wie eine feste Umbruchschwelle: eine Rechnung von gestern. Sie fragt jetzt, was gemeint ist -- leuchtet die ALTE Kachel noch? GEMESSEN: pruef-jeder-hat-eine-seite (neu) 65 Pruefungen 0 Fehler, pruef-steckbrief, pruef-start-ansicht, pruef-kachelraster, pruef-community-sicht alle gruen. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -255,8 +255,27 @@ for (const [breite, wie] of [[1440, "Computer"], [390, "Handy"]]) {
|
||||
|
||||
Sie hat deshalb ausdruecklich KEIN `gruppeNach` -- eine Gruppe ohne
|
||||
Angabe haengt hinten an, und das ist hier die richtige Stelle. */
|
||||
/* ACHT SEIT DEM 19.09.2026 -- "Moderation" kam dazu.
|
||||
|
||||
Filipe: "ich will das oben die sachen fuer dogfather sind, dan die
|
||||
sachen fuer modis und dan community bereich."
|
||||
|
||||
Die Moderationskachel trug bis dahin dieselbe Gruppe wie die
|
||||
sieben Bretter und verschwand deshalb HINTER ihnen. Jetzt hat sie
|
||||
eine eigene Gruppe und steht davor -- wer moderiert, muss nicht an
|
||||
der ganzen Community vorbeiscrollen, um an seine Arbeit zu kommen.
|
||||
|
||||
DIE BEGRUENDUNG OBEN GILT WEITER: Die Community steht trotzdem
|
||||
ganz unten, denn dort stehen Namen und Saetze von Zuschauern. Die
|
||||
Moderation davor ist kein Widerspruch dazu -- sie zeigt Vorgaenge,
|
||||
keine Beitraege.
|
||||
|
||||
Und die Arbeitsgruppen behalten ihre gewachsene Reihenfolge: Die
|
||||
Sortierregel in start.js schiebt ausdruecklich NUR die drei
|
||||
hinteren ans Ende. Ein erster Versuch schrieb auch die vorderen
|
||||
fest und hat diese Prueflinie sofort rot gemacht -- zu Recht. */
|
||||
const ERWARTETE_GRUPPEN = ["Rund um das Team", "Täglich", "Rund um den Creator",
|
||||
"Team & System", "Team Dogi", "Entwicklung & Nachwuchs", "Community"];
|
||||
"Team & System", "Team Dogi", "Entwicklung & Nachwuchs", "Moderation", "Community"];
|
||||
ok(JSON.stringify(r.gruppen.map((g) => g.name)) === JSON.stringify(ERWARTETE_GRUPPEN),
|
||||
`${ERWARTETE_GRUPPEN.length} Gruppen in dieser Reihenfolge (${r.gruppen.map((g) => g.name).join(" · ")})`);
|
||||
/* WIE VIELE KACHELN? Nicht abgeschrieben, sondern aus bereiche.js
|
||||
@@ -696,7 +715,40 @@ console.log("\n=== Das Licht folgt dem Zeiger");
|
||||
der haeufigste Fall. */
|
||||
await seite.mouse.wheel(0, 600);
|
||||
await seite.waitForTimeout(450);
|
||||
ok(await anzahlAn() === 0, `nach dem Scrollen ist es aus (${await anzahlAn()})`);
|
||||
/* GEFRAGT WIRD, WAS GEMEINT IST -- nicht, was bei einer bestimmten
|
||||
Kachelzahl herauskam (19.09.2026).
|
||||
|
||||
Hier stand `anzahlAn() === 0`, mit der stillen Annahme: nach 600
|
||||
px liegt unter dem Zeiger keine Kachel mehr. Das galt, solange
|
||||
die Seite so lang war wie an dem Tag, an dem die Zeile
|
||||
geschrieben wurde. Am 19.09. kam eine Gruppe dazu -- danach lag
|
||||
dort eine ANDERE Kachel, sie leuchtete zu Recht, und die
|
||||
Pruefung meldete einen Fehler am Licht, obwohl das Licht genau
|
||||
das tat, was es soll.
|
||||
|
||||
Dieselbe Falle wie die feste Umbruchschwelle in der Kopfleiste:
|
||||
eine Zahl, die eine Rechnung von gestern festhaelt. Also wird
|
||||
jetzt gefragt, was wirklich gemeint ist: Die Kachel, die VORHER
|
||||
unter dem Zeiger lag, darf danach nicht mehr leuchten -- und
|
||||
wenn dort gar keine mehr liegt, darf ueberhaupt nichts leuchten. */
|
||||
const unterZeiger = await seite.evaluate(([x, y]) => {
|
||||
const e = document.elementFromPoint(x, y);
|
||||
return !!(e && e.closest(".kachel"));
|
||||
}, [k2.x + k2.width / 2, k2.y + k2.height / 2]);
|
||||
|
||||
/* Das Merkmal heisst `data-licht="an"` -- nachgesehen bei
|
||||
`anzahlAn` ein paar Zeilen weiter oben, nicht geraten. */
|
||||
const alteLeuchtet = await seite.evaluate(() =>
|
||||
[...document.querySelectorAll(".kachel")][2]?.dataset.licht === "an");
|
||||
|
||||
if (unterZeiger) {
|
||||
ok(!alteLeuchtet,
|
||||
"nach dem Scrollen leuchtet die alte Kachel nicht mehr"
|
||||
+ " (unter dem Zeiger liegt jetzt eine andere)");
|
||||
} else {
|
||||
ok(await anzahlAn() === 0,
|
||||
`nach dem Scrollen ist es aus (${await anzahlAn()}, keine Kachel unter dem Zeiger)`);
|
||||
}
|
||||
/* WIEDER HOCH. Ohne das lagen die Kacheln fuer alle folgenden
|
||||
Pruefungen 600 px weiter oben -- die naechste Pruefung bewegte den
|
||||
Zeiger dann ins Leere und meldete einen Fehler, den es nicht gab. */
|
||||
|
||||
Reference in New Issue
Block a user