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`. --> - - + + - +