diff --git a/server/mess-reaktion.mjs b/server/mess-reaktion.mjs
index 18fa380e..2399e3e1 100644
--- a/server/mess-reaktion.mjs
+++ b/server/mess-reaktion.mjs
@@ -2839,6 +2839,68 @@ console.log("=== Die Werbeeinblendung ===");
"das Laufband fuer das Bildschirmfoto");
await bild(zuschauer.seite, "24-werbung");
+ /* ---- 5b. Zeigt die Eckenwahl, wo die Kameras stehen? ----
+ Offener Punkt vom 29.09.: „Unten rechts" liegt im Layout „Kino"
+ genau dort, wo die Kamerakacheln sitzen. Die Regie sagt es jetzt
+ vorher -- gezeigt, nicht verboten.
+
+ DIE GEGENPROBE IST DER HALBE SINN. Eine Markierung, die immer da
+ ist, ist keine. Sie muss auch verschwinden koennen, und zwar
+ genau dann, wenn es nichts zu bedenken gibt. */
+ {
+ const lies = () => host.seite.evaluate(() => {
+ const g = document.querySelector("#eckenwahl-dogi .eckenwahl__gitter");
+ return [...(g?.children || [])]
+ .filter((k) => k.dataset.kameras === "ja")
+ .map((k) => `${k.dataset.platz}:${k.title.includes("Kameras") ? "benannt" : "STUMM"}`);
+ });
+
+ const stelle = (koerper) => host.seite.evaluate(async (b) => {
+ const a = await fetch("/workspace/api/reaktion/layout", {
+ method: "POST", credentials: "same-origin",
+ headers: { "Content-Type": "application/json" },
+ body: JSON.stringify(b),
+ });
+ return a.status;
+ }, koerper);
+
+ await stelle({ layout: "kino", kamera_ecke: "ur" });
+ await warte(host.seite,
+ () => document.querySelector('#eckenwahl-dogi .eckenwahl__knopf[data-kameras="ja"]'),
+ "der Kamerahinweis in der Eckenwahl");
+ const imKino = await lies();
+ console.log(` Eckenwahl im Kino (Kameras unten rechts): ${imKino.join(", ") || "KEINER"}`);
+ if (imKino.length !== 1 || !imKino[0].startsWith("ur:")) {
+ console.log(" ACHTUNG: Der Hinweis steht nicht genau an der Kameraecke.");
+ ausgang = 1;
+ }
+ if (imKino.some((x) => x.endsWith("STUMM"))) {
+ console.log(" ACHTUNG: Der Hinweis ist nur eine Farbe -- wer vorlesen "
+ + "laesst, bekommt ihn nicht.");
+ ausgang = 1;
+ }
+
+ /* GEGENPROBE: Bei „nur Video" gibt es keine Kameras -- dann darf
+ auch kein Hinweis stehen. Eine Warnung vor etwas, das nicht
+ passieren kann, gewoehnt man sich ab. */
+ await stelle({ layout: "nur_video" });
+ await host.seite.waitForFunction(
+ () => document.body.dataset.stand !== undefined, null, { timeout: 5000 })
+ .catch(() => {});
+ let ohne = await lies();
+ for (let i = 0; i < 12 && ohne.length; i++) {
+ await host.seite.waitForTimeout(250);
+ ohne = await lies();
+ }
+ console.log(` Gegenprobe bei „nur Video": ${ohne.length} Hinweis(e)`);
+ if (ohne.length) {
+ console.log(" ACHTUNG: Der Hinweis steht auch dort, wo es gar keine "
+ + "Kameras gibt.");
+ ausgang = 1;
+ }
+ await stelle({ layout: "kino" });
+ }
+
/* ---- 6. Wieder aus ---- */
const aus = await setz({ art: "aus", ecke_dogi: "aus", ecke_hase: "aus" });
await warte(zuschauer.seite,
diff --git a/workspace/anruf-probe.html b/workspace/anruf-probe.html
index e5545dd9..2755f431 100644
--- a/workspace/anruf-probe.html
+++ b/workspace/anruf-probe.html
@@ -16,8 +16,8 @@
verdeckt. Gefunden hat es pruef-struktur.
Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. -->
-
-
+
+
-
+