Unter jeder Kategorie stand eine Erklaerung ohne Umlaute: "Was im Livechat passiert, waehrend gesendet wird. Loeschen, stummschalten, begruessen, deeskalieren." Elf der vierzehn Kategorien und alle drei Stufen waren betroffen, dazu vier Stellen mit zwei Bindestrichen statt eines Gedankenstrichs. Entstanden ist es beim Schreiben ueber Hilfsskripte, die an Umlauten scheitern -- fuer einen Kommentar gleichgueltig, fuer einen Satz, den ein Mensch liest, ein Fehler. Gesehen hat es keine Pruefung: Der Text war inhaltlich richtig, der Katalog vollstaendig, alles gruen. Aufgefallen ist es auf einem Bildschirmfoto. NEU: pruef-deutsche-texte (9 Pruefungen) Sieht 174 Katalogtexte und 28 ausgelieferte Seiten durch. Bewusst eine Liste von Wortstuecken statt eines Musters aus Buchstabenfolgen: "ue" ist in "Feuer" und "neue" richtig, "ss" in jedem zweiten Wort. Die Liste ist ein Netz, kein Beweis, und der Kopf der Datei sagt das. Die Skripte bleiben absichtlich aussen vor. Ausprobiert: Dieselbe Liste schlaegt dort 71 Mal an und kein einziges Mal zu Recht -- es sind Feldnamen, Stilklassen und Adressen, die ASCII sein MUESSEN. Eine Warnung, die immer kommt, ist keine Warnung mehr. Ihr sichtbarer Text wird deshalb am fertigen Bildschirm geprueft, ueber innerText. AUSSERDEM, auf demselben Bildschirmfoto gefunden: Die Fusszeile der Vorlagenkarten war eine starre Flex-Zeile. Bei einer schon uebernommenen Aufgabe stehen dort drei Dinge statt zwei, und "Frist: in 2 Tagen" brach mitten im Wort auf drei Zeilen um. Keine neue feste Breite dagegen, sondern flex-wrap plus nowrap -- eine Regel, die misst, statt einer Zahl, die beim naechsten Element wieder faellig waere. UND EINE LEHRE ZUM MESSEN: Die erste Fassung dieser Pruefung zaehlte element.getClientRects(). Sie blieb gruen, auch mit dem Fehler wieder eingebaut -- ein Flex-Kind wird zum Block und liefert immer genau ein Rechteck. Gefunden hat das nur die Gegenprobe. Gemessen wird jetzt ueber einen Bereich um den Textknoten. Das Bildschirmfoto landet ausserdem dort, wo die Zeile darunter es ansagt (server/), nicht im Arbeitsverzeichnis. pruef-modi-katalog 49 (vorher 45), pruef-deutsche-texte 9, pruef-css-klassen, pruef-struktur, pruef-vorlagen, pruef-aufgaben-vorlagen: alle ohne Fehler. Co-Authored-By: Claude Opus 5 <[email protected]>
118 lines
5.5 KiB
HTML
118 lines
5.5 KiB
HTML
<!doctype html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
|
||
<title>Dateien · Spicy & Dogi</title>
|
||
<meta name="robots" content="noindex, nofollow" />
|
||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||
<!-- Die Farbe der Fensterleiste, wenn der Workspace als App laeuft.
|
||
Stand auf #0674b9 (kraeftiges Blau) und stach damit als einziger
|
||
heller Balken ueber einer durchweg dunklen Seite. Jetzt derselbe
|
||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||
eine Flaeche sind statt zweier. -->
|
||
<meta name="theme-color" content="#06090f" />
|
||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609162320" />
|
||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609162320" />
|
||
<link rel="stylesheet" href="assets/css/gate.css?v=202609162320" />
|
||
<link rel="stylesheet" href="assets/css/start.css?v=202609162320" />
|
||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609162320" />
|
||
<link rel="stylesheet" href="assets/css/dateien.css?v=202609162320" />
|
||
<link rel="stylesheet" href="assets/css/module.css?v=202609162320" />
|
||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||
ohne Umfaerben im Browser, ohne Flackern. -->
|
||
<link rel="stylesheet" href="assets/css/haus.css?v=202609162320" />
|
||
</head>
|
||
|
||
<body class="start">
|
||
|
||
<!-- Der Schleier ueber der Buehne (Casper und HasiDog in den unteren
|
||
Ecken, siehe start.css). Ein eigenes Element statt eines dritten
|
||
Pseudo-Elements -- body hat nur ::before und ::after. -->
|
||
<div class="schleier" aria-hidden="true"></div>
|
||
|
||
<header class="kopfleiste">
|
||
<button type="button" class="zurueck-knopf" id="zurueck" hidden>
|
||
<svg class="zurueck-knopf__pfeil" viewBox="0 0 24 24" aria-hidden="true">
|
||
<path d="M14.5 5.5 8 12l6.5 6.5" />
|
||
</svg>
|
||
<span class="zurueck-knopf__text">Zurück</span>
|
||
</button>
|
||
<p class="marke"><span class="marke__text"><a class="zurueck" href="start.html">Creator Workspace</a> · Dateien</span></p>
|
||
<div class="kopfleiste__rechts">
|
||
<span class="wer" id="wer">…</span>
|
||
<button type="button" class="abmelden" id="abmelden">Abmelden</button>
|
||
</div>
|
||
</header>
|
||
|
||
<main class="inhalt inhalt--breit">
|
||
|
||
<section class="kopf-zeile">
|
||
<div>
|
||
<p class="marke">Ablage</p>
|
||
<h1 class="titel">Dateien & Freigaben</h1>
|
||
<p class="unterzeile">Entwurf → Review → Freigabe. Die aktuelle Version ist immer klar erkennbar.</p>
|
||
</div>
|
||
</section>
|
||
|
||
<!-- Hinweis für alle, die nicht ablegen dürfen (Creator). Steht statt
|
||
des Ablegefeldes, damit klar ist warum -- ein einfach fehlendes
|
||
Feld wirkt wie ein Fehler. -->
|
||
<p class="nur-lesen" id="nur-lesen" hidden>
|
||
Hier siehst du die Dateien deines Bereichs. <strong>Abgelegt werden sie
|
||
von DogFather oder von Scouts</strong> – du kannst sie öffnen, aber nichts hochladen.
|
||
</p>
|
||
|
||
<!-- Ablegefeld. Klick öffnet die Dateiauswahl, Ziehen funktioniert
|
||
ebenso -- beides landet im selben Ablauf. -->
|
||
<div class="ablage" id="ablage" tabindex="0" role="button"
|
||
aria-label="Datei auswählen oder hierher ziehen">
|
||
<svg class="ablage__zeichen" viewBox="0 0 24 24" aria-hidden="true">
|
||
<path d="M12 16V4m0 0L7.5 8.5M12 4l4.5 4.5" />
|
||
<path d="M4 15v3.5A1.5 1.5 0 0 0 5.5 20h13a1.5 1.5 0 0 0 1.5-1.5V15" />
|
||
</svg>
|
||
<p class="ablage__text">Datei hierher ziehen oder <strong>auswählen</strong></p>
|
||
<p class="ablage__klein" id="ablage-grenze">bis 25 MB</p>
|
||
<input type="file" id="feld-datei" hidden />
|
||
</div>
|
||
|
||
<div class="hochlade-zeile" id="zuordnung" hidden>
|
||
<div class="feld feld--breit">
|
||
<label class="feld-schild" for="f-creator">Ablegen im Bereich von <span class="leise">(optional)</span></label>
|
||
<select id="f-creator"><option value="">— kein Bereich —</option></select>
|
||
</div>
|
||
<!-- Wer die Datei sehen darf. Mehrfachauswahl: dieselbe Datei kann
|
||
an mehrere Personen gehen, ohne sie mehrfach hochzuladen. -->
|
||
<div class="feld feld--breit">
|
||
<label class="feld-schild">Wer darf sie sehen?</label>
|
||
<p class="leise" id="wahl-hinweis">Niemand ausgewählt – dann sieht sie nur DogFather.</p>
|
||
<div class="wahl" id="wahl"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<p class="fortschritt" id="fortschritt" hidden><span id="fortschritt-text"></span></p>
|
||
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
|
||
|
||
<div class="filter" id="filter">
|
||
<button type="button" class="schritt" data-status="" aria-pressed="true">Alle</button>
|
||
<button type="button" class="schritt" data-status="entwurf" aria-pressed="false">Entwurf</button>
|
||
<button type="button" class="schritt" data-status="review" aria-pressed="false">Review</button>
|
||
<button type="button" class="schritt" data-status="freigegeben" aria-pressed="false">Freigegeben</button>
|
||
</div>
|
||
|
||
<div id="liste" aria-busy="true"><p class="leise">Dateien werden geladen …</p></div>
|
||
|
||
</main>
|
||
|
||
<script src="assets/js/wahl.js?v=202609162320" defer></script>
|
||
<script src="assets/js/bereiche.js?v=202609162320" defer></script>
|
||
<script src="assets/js/kopf.js?v=202609162320" defer></script>
|
||
<script src="assets/js/glocke.js?v=202609162320" defer></script>
|
||
<script src="assets/js/dateien.js?v=202609162320" defer></script>
|
||
</body>
|
||
</html>
|