Community: der Chat-Knopf fuehrte auf JEDER Seite ins Leere
ERST DIE METHODE, DANN DER FUND. An einem Tag habe ich in der Community elf Dinge gefunden, die dort nicht hingehoerten -- jedes einzelne, weil ich zufaellig hingesehen habe. Das ist keine Methode. Der Workspace ist fuer die Agentur gebaut worden, und die Community hat ihn geerbt; solche Reste findet man nicht durch Nachdenken, sondern indem man ALLE Seiten durchgeht, die ein Mitglied erreichen kann. server/pruef-community-sicht.mjs tut genau das. Sie leitet aus rechte.js ab, welche Seiten offenstehen (4) und welche nicht (27) -- von Hand aufgezaehlt waere das eine Liste, die bei der naechsten Seite niemand nachzieht --, oeffnet jede davon als Mitglied und fragt zweierlei: Fuehrt ein sichtbarer Weg auf eine verbotene Seite? Steht dort die Sprache eines Arbeitsplatzes? BEIM ERSTEN LAUF: 27 sichtbare Wege, davon ZEHN ins Leere -- und alle zehn derselbe Knopf. Der Chat steht oben rechts in der Kopfleiste, auf jeder einzelnen Seite, mit Zaehler. `chat.html` steht einem Mitglied aber nicht offen: Der Klick landet wieder auf der Startseite. Keine Meldung, kein Grund, nichts passiert -- an der Stelle, die man am ehesten drueckt. Der Knopf haengt jetzt an `darf_chat` aus /api/ich, und das kommt aus derselben Rechtetabelle wie die Schranke dahinter. Die Oberflaeche vergleicht keine Rollennamen -- das waere eine zweite Wahrheit, die bei der naechsten Rechteaenderung auseinanderlaeuft. Dieselbe Ueberlegung steht zwei Zeilen weiter oben schon einmal. UND DIE PRUEFUNG HAT GLEICH MEINEN EIGENEN FEHLER GEFUNDEN: Die erste Fassung stand in `aufbauChat`, wo es die Person gar nicht gibt -- ReferenceError auf allen zehn Seiten. Ohne den Skriptfehler-Abschnitt waere der Knopf verschwunden UND die Seite kaputt gewesen, und das haette wie ein Erfolg ausgesehen. Jetzt haengt es dort, wo die Person ankommt (`werZeigen`) -- ein vorhandener Knopf laesst sich immer entfernen, auf die Reihenfolge des Ladens zu bauen waere eine Annahme. GEGENPROBE: DogFather hat seinen Chat-Knopf weiterhin und 24 Wege auf andere Seiten. Ohne diesen Abschnitt saehe eine abgeschaffte Funktion genauso aus wie eine, die richtig entscheidet. 7 Pruefungen, 0 Fehler. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
+14
-14
@@ -7,16 +7,16 @@
|
||||
<meta name="robots" content="noindex, nofollow" />
|
||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||
<meta name="theme-color" content="#06090f" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609182128" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/module.css?v=202609182128" />
|
||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609182158" />
|
||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/gate.css?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/start.css?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202609182158" />
|
||||
<link rel="stylesheet" href="assets/css/module.css?v=202609182158" />
|
||||
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
||||
<link rel="stylesheet" href="assets/css/haus.css?v=202609182128" />
|
||||
<link rel="stylesheet" href="assets/css/haus.css?v=202609182158" />
|
||||
</head>
|
||||
|
||||
<body class="start">
|
||||
@@ -80,10 +80,10 @@
|
||||
|
||||
</main>
|
||||
|
||||
<script src="assets/js/wahl.js?v=202609182128" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609182128" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609182128" defer></script>
|
||||
<script src="assets/js/auskunft.js?v=202609182128" defer></script>
|
||||
<script src="assets/js/bewerbungen.js?v=202609182128" defer></script>
|
||||
<script src="assets/js/wahl.js?v=202609182158" defer></script>
|
||||
<script src="assets/js/bereiche.js?v=202609182158" defer></script>
|
||||
<script src="assets/js/kopf.js?v=202609182158" defer></script>
|
||||
<script src="assets/js/auskunft.js?v=202609182158" defer></script>
|
||||
<script src="assets/js/bewerbungen.js?v=202609182158" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user