"Review" heisst jetzt "Zur Freigabe" -- und Datumsfelder sind so hoch wie alle anderen
Im Code stand die Begruendung selbst: "«Review» allein sagt einem Neuen nichts." Das Wort ist englisch, ein Hauptwort ohne Handlung, und es verraet nicht, WER jetzt dran ist. "Zur Freigabe" sagt beides: fertig von mir, wartet auf jemanden. Geaendert wurde nur, was ein Mensch LIEST -- der Zustandsschluessel bleibt `review`, der gehoert der Datenbank. Betroffen: Spalte und Weiterknopf im Aufgabenbrett, Dateien-Filter, Startseiten-Zaehler, Kachel-Unterzeile, Hinweis "Datei wartet auf Freigabe", Report. NICHT geaendert: der Kalender. Dort ist `review` eine TERMINART (ein Gespraech, in dem man zurueckschaut), kein Zustand. Ich hatte das beim Umbenennen selbst verwechselt und wieder zurueckgenommen -- ein Kommentar an der Stelle haelt die zwei Bedeutungen jetzt auseinander. pruef-sprung hing an der Wortwahl (`/review/i` auf der Beschriftung) und wurde rot, obwohl der Filter richtig stand. Sie prueft jetzt `data-status` -- den Schluessel, der sich nicht mit der Sprache aendert. DAZU, unabhaengig gefunden: Datumsfelder waren 48 px hoch, alle anderen Felder 44. Gemessen auf drei Seiten bei 390 px. Alle liegen auf dem 44-px-Beruehrziel -- nur das Datumsfeld drueckte sich darueber, weil Chromium in `::-webkit-datetime-edit` eine eigene Innenpolsterung setzt, die sogar ein gesetztes `height: 44px` ueberstimmt. Zwei Anteile, einzeln nachgemessen (jeder allein 48->46, erst beide zusammen 48->44): 1 px Polsterung oben und unten im Feldkasten, und eine Zeilenhoehe von 24 statt 22. Keine feste Hoehe gesetzt -- die Zeilenhoehe wird aus Beruehrziel und Polsterung gerechnet, damit sie mitwandert, wenn sich eines davon aendert. Geprueft: pruef-formulare 19/0 (war 16 mit 3 Fehlern), pruef-sprung 43/0, pruef-start-ansicht 151/0, pruef-aufgabenbrett 49/0, pruef-uebersicht 35/0, pruef-uebersicht-browser 20/0, pruef-deutsche-texte, pruef-css-klassen. Ausserdem: vorlagen.js geloescht (8,2 KB). `vorlagenBlock(` wurde inca104799eingebaut und in9267797dwieder ausgebaut -- seither laedt die Datei auf zwei Seiten, ohne dass jemand sie aufruft. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
+16
-4
@@ -191,7 +191,9 @@ const soll = [
|
||||
["Aufgaben erledigt", "aufgaben.html?zeigen=erledigt"],
|
||||
["Aufgaben offen", "aufgaben.html?zeigen=offen"],
|
||||
["überfällig", "aufgaben.html?zeigen=ueberfaellig"],
|
||||
["Dateien im Review", "dateien.html?zeigen=review"],
|
||||
/* Heisst seit dem 20.09.2026 so -- der Schluessel bleibt `review`,
|
||||
das Wort auf dem Bildschirm nicht. */
|
||||
["Dateien warten auf Freigabe", "dateien.html?zeigen=review"],
|
||||
["Dateien freigegeben", "dateien.html?zeigen=frei"],
|
||||
["Termine gewesen", "kalender.html?zeigen=vergangen"],
|
||||
["Termine stehen an", "kalender.html?zeigen=kommend"],
|
||||
@@ -311,8 +313,11 @@ await seite.waitForTimeout(1200);
|
||||
const da = await seite.evaluate(() => ({
|
||||
leiste: !!document.querySelector(".ziel-leiste"),
|
||||
text: document.querySelector(".ziel-leiste__text")?.textContent || "",
|
||||
gedrueckt: [...document.querySelectorAll("#filter .schritt")]
|
||||
.find((b) => b.getAttribute("aria-pressed") === "true")?.textContent?.trim(),
|
||||
gedrueckt: (() => {
|
||||
const b = [...document.querySelectorAll("#filter .schritt")]
|
||||
.find((x) => x.getAttribute("aria-pressed") === "true");
|
||||
return b ? { schluessel: b.dataset.status || "", wort: b.textContent.trim() } : null;
|
||||
})(),
|
||||
}));
|
||||
/* Es liegt keine Datei da -- und genau dieser Fall ist der wichtige:
|
||||
Wer auf eine Zahl klickt und auf einer leeren Seite landet, glaubt,
|
||||
@@ -320,7 +325,14 @@ const da = await seite.evaluate(() => ({
|
||||
ist und die Sache erledigt. */
|
||||
ok(da.leiste, "auch ohne Treffer erscheint die Leiste");
|
||||
ok(/nichts davon da/.test(da.text), ` und sagt, dass hier nichts liegt ("${da.text}")`);
|
||||
ok(/review/i.test(da.gedrueckt || ""), ` der Filter steht auf "${da.gedrueckt}"`);
|
||||
/* AM SCHLUESSEL PRUEFEN, NICHT AM WORT (20.09.2026). Hier stand
|
||||
`/review/i` auf der Beschriftung. Als aus "Review" das deutsche
|
||||
"Zur Freigabe" wurde, wurde diese Pruefung rot -- obwohl der Filter
|
||||
genau richtig stand. Eine Pruefung, die an der Wortwahl haengt,
|
||||
bestraft jede Textverbesserung. `data-status` ist der Schluessel,
|
||||
den der Server kennt; der aendert sich nicht mit der Sprache. */
|
||||
ok(da.gedrueckt?.schluessel === "review" && (da.gedrueckt?.wort || "").length > 2,
|
||||
` der Filter steht auf "${da.gedrueckt?.wort}" (Schluessel: ${da.gedrueckt?.schluessel})`);
|
||||
|
||||
/* ================================================================
|
||||
5. Kalender: schaltet auf die Liste um
|
||||
|
||||
@@ -181,7 +181,7 @@ hinweisRouter.get("/workspace/api/hinweise", (req, res) => {
|
||||
const d = sichtbarDateien(person);
|
||||
if (d) {
|
||||
dazu("dateien_review", istLeitung(person) ? "warnung" : "offen",
|
||||
"Datei im Review", "dateien.html",
|
||||
"Datei wartet auf Freigabe", "dateien.html",
|
||||
zaehle(`SELECT COUNT(*) n FROM dateien d
|
||||
WHERE ${d.wo} AND d.status = 'review'`, d.werte));
|
||||
}
|
||||
|
||||
+1
-1
@@ -588,7 +588,7 @@ export const ROLLEN_GRUPPE = {
|
||||
===================================================================== */
|
||||
const MODI_BEREICHE = [
|
||||
{ gruppe: "Täglich", gruppeUnter: "Was du sowieso jeden Tag aufmachst",
|
||||
name: "Aufgaben", unter: "Offen, in Arbeit, Review", zeichen: "aufgaben",
|
||||
name: "Aufgaben", unter: "Offen, in Arbeit, zur Freigabe", zeichen: "aufgaben",
|
||||
ton: 13, gross: true, ziel: "aufgaben.html", szene: "garage" },
|
||||
{ gruppe: "Täglich", gruppeUnter: "Was du sowieso jeden Tag aufmachst",
|
||||
name: "Chat", unter: "Nachrichten mit dem Team", zeichen: "chat",
|
||||
|
||||
Reference in New Issue
Block a user