Files
dogfather-universe/workspace/personen.html
T
DogFatherGitandClaude Opus 5 535d86d3f7 Die Termine im Tagesfenster sind Karten statt Werkzeugleisten
Filipe: "die sollen viel besser aussehen und viel geiler."

WAS WIRKLICH SCHIEFLIEF, WAR KEIN GESCHMACK, SONDERN DER AUFBAU

Zeit, Titel, Art und FUENF Knoepfe standen in EINER Zeile. Der Titel
bekam damit den Rest -- "BigMatch vs. Beanii" brach auf DREI Zeilen um,
waehrend rechts daneben Platz war. Die wichtigste Angabe der Zeile war
die gequetschteste, und die Knoepfe waren genauso laut wie der Termin
selbst.

Jetzt drei Ebenen, wie bei einer Karte:

  OBEN    Zeit und Titel, gross, ueber die ganze Breite -- der Titel
          hat keinen Wettbewerb mehr
  MITTE   die Nebendaten (Dauer, Ort, Beschreibung)
  UNTEN   die Knoepfe, rechtsbuendig in einer eigenen Reihe, durch eine
          Haarlinie abgesetzt

Die Zeit steht gross am Anfang und mit gleichen Zifferbreiten: Sie ist
das, wonach man in einem Tagesfenster sucht, und mehrere Zeilen stehen
dadurch in einer Flucht. Die Zeile traegt jetzt dieselbe abgeschnittene
Ecke wie alle Module -- ein Eintrag im Tagesfenster ist ein kleines
Modul, kein Listenpunkt.

ZWEI DINGE, DIE DABEI AN DIE RICHTIGE STELLE GERUECKT SIND

  * DIE ART GEHOERT ZUM TITEL. Sie stand als erstes Element in der
    Knopfreihe und sah damit aus wie ein Knopf, der nicht reagiert. Sie
    ist aber eine ANGABE ueber den Termin, wie Uhrzeit und Titel. Jetzt
    steht sie neben dem Titel, und die Knopfreihe enthaelt nur noch
    Dinge, die etwas tun.
  * DIE NEBENDATEN VOR DIE KNOEPFE. Im Raster bestimmt die Reihenfolge
    im Dokument, welche Zeile ein Feld bekommt -- die Knopfreihe stand
    davor und landete zwischen Titel und "30 Min · TikTok". Im ersten
    Bildschirmfoto stand die Beschreibung UNTER den Knoepfen, als
    gehoerte sie zu ihnen. Geloest ueber die Reihenfolge im Dokument und
    nicht ueber `order` im Stil: Sie gilt auch fuer Vorleseprogramme und
    die Tastatur, `order` verschiebt nur das Bild.

Auf dem Handy stehen Zeit und Titel untereinander -- bei 390 px laesst
eine 1,06-rem-Uhrzeit daneben keine zwei Woerter uebrig.

Zehn Pruefungen gelaufen, alle gruen.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-09-08 00:18:06 +02:00

167 lines
8.6 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
<title>Personen &amp; Zugänge · Creator Workspace</title>
<meta name="robots" content="noindex, nofollow" />
<link rel="manifest" href="/workspace/app.webmanifest" />
<meta name="theme-color" content="#0674b9" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609080007" />
<link rel="stylesheet" href="assets/css/start.css?v=202609080007" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609080007" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609080007" />
<link rel="stylesheet" href="assets/css/module.css?v=202609080007" />
</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&nbsp;Workspace</a> · Personen</span></p>
<div class="kopfleiste__rechts">
<span class="wer" id="wer">…</span>
<button type="button" class="abmelden" id="abmelden">Abmelden</button>
</div>
</header>
<svg style="display:none" aria-hidden="true"><defs>
<!-- Chili fuer Spicy Media -- dasselbe Zeichen wie auf der
Anmeldeseite. Zwei Rollen mit derselben Krone waeren genau der
Fehler, den die Kacheln schon einmal hatten: Man klickt zweimal
falsch, bevor man merkt, dass es zwei verschiedene sind. -->
<g id="r-chili"><path class="fuell" d="M13.4 4.6c-.6 1.4-.3 2.6.6 3.4 3 .3 5 2.6 5 5.4 0 3.4-3 6-6.8 6-4.6 0-8.2-2.9-9.7-6.7 3.7.9 6.6-.4 8-3.1.6-1.2.4-2.4-.4-3.1"/><path class="linie" d="M13.4 4.6c1.5-.6 2.8.1 3 1.4"/><path class="linie" d="M13.4 4.6c-.6 1.4-.3 2.6.6 3.4 3 .3 5 2.6 5 5.4 0 3.4-3 6-6.8 6-4.6 0-8.2-2.9-9.7-6.7 3.7.9 6.6-.4 8-3.1.6-1.2.4-2.4-.4-3.1"/></g>
<!-- DER HUSKY FUER DOGFATHER (07.09.2026). Filipe: "die krone bei
dogfather durch einen husky ersetzen, wie mein logo."
Bei 22 Pixeln entscheidet die SILHOUETTE, nicht das Detail. Ein
Husky erkennt man an dreierlei, und mehr passt auch nicht hinein:
den spitzen, aufrecht stehenden Ohren, dem breiten Kopf, der
nach unten schmal zulaeuft, und der Gesichtsmaske. Fell, Zunge
oder ein zweiter Ton wuerden bei dieser Groesse zu Matsch --
genau deshalb hat die Krone davor auch funktioniert.
`fuell` traegt die Flaeche, `linie` die Zeichnung darauf; beides
getrennt, damit die Farbe im CSS unabhaengig vom Umriss gesetzt
werden kann. -->
<g id="r-husky">
<path class="fuell" d="M6.3 4.2 9.6 8.9h4.8l3.3-4.7 1.1 6.2c.5 2.6-.4 5.1-2.4 6.8L12 21.2l-4.4-4c-2-1.7-2.9-4.2-2.4-6.8z"/>
<path class="linie" d="M6.3 4.2 9.6 8.9h4.8l3.3-4.7 1.1 6.2c.5 2.6-.4 5.1-2.4 6.8L12 21.2l-4.4-4c-2-1.7-2.9-4.2-2.4-6.8z"/>
<path class="linie" d="M9.6 8.9c-.9 1.4-1.4 2.6-1.5 4.1M14.4 8.9c.9 1.4 1.4 2.6 1.5 4.1"/>
<circle class="auge" cx="9.5" cy="13.1" r="1.05"/>
<circle class="auge" cx="14.5" cy="13.1" r="1.05"/>
<path class="nase" d="M12 15.4l1.5 1.1-1.5 1.4-1.5-1.4z"/>
</g>
<g id="r-stern"><path class="fuell" d="m12 3.4 2.6 5.6 6 .8-4.4 4.2 1.1 6-5.3-2.9-5.3 2.9 1.1-6L3.4 9.8l6-.8z"/><path class="linie" d="m12 3.4 2.6 5.6 6 .8-4.4 4.2 1.1 6-5.3-2.9-5.3 2.9 1.1-6L3.4 9.8l6-.8z"/></g>
<g id="r-schutz"><path class="fuell" d="M12 3.4 5.8 5.9v5c0 3.5 2.5 6.7 6.2 8 3.7-1.3 6.2-4.5 6.2-8v-5z"/><path class="linie" d="M12 3.4 5.8 5.9v5c0 3.5 2.5 6.7 6.2 8 3.7-1.3 6.2-4.5 6.2-8v-5z"/><path class="linie hell" d="m9.5 11.8 1.8 1.8 3.3-3.5"/></g>
<g id="r-person"><circle class="fuell" cx="12" cy="8.4" r="3.6"/><path class="fuell" d="M5 20c0-3.9 3.1-7 7-7s7 3.1 7 7z"/><circle class="linie" cx="12" cy="8.4" r="3.6"/><path class="linie" d="M5 20c0-3.9 3.1-7 7-7s7 3.1 7 7"/></g>
</defs></svg>
<main class="inhalt inhalt--breit">
<section class="kopf-zeile">
<div>
<p class="marke">Zugänge</p>
<h1 class="titel">Personen &amp; Zugangscodes</h1>
<!-- Der Satz gilt nur für Manager und Spicy Media: Sie sehen hier
allein das Anlegen. personen.js blendet ihn dafür ein.
Er stand vorher nur im Skript (`$('unterzeile')`), und dieses
Element gab es nie -- der Aufruf war mit `&&` abgesichert und
tat deshalb schweigend nichts. Eine abgesicherte Zeile, die
ins Leere greift, sieht auf Dauer aus wie eine, die
funktioniert. -->
<p class="leise" id="unterzeile" hidden></p>
</div>
<div class="kopf-knoepfe">
<!-- Standardmäßig steht hier nur DogFather. Alle anderen kommen auf
Knopfdruck dazu – und der Knopf sagt immer, wie viele das sind,
damit niemand vergisst, dass da noch welche sind. -->
<button type="button" class="knopf-still" id="rest-schalter"
aria-expanded="false" aria-controls="liste" hidden>
<span id="rest-schalter-text">weitere zeigen</span>
<svg class="klapp-pfeil" viewBox="0 0 24 24" aria-hidden="true">
<path d="m6 9.5 6 6 6-6" />
</svg>
</button>
<button type="button" class="knopf knopf--klein" id="neu-oeffnen">Person anlegen</button>
</div>
</section>
<form class="neu" id="neu" hidden>
<div class="neu__raster">
<div>
<label class="feld-schild" for="f-name">Name</label>
<input id="f-name" name="name" maxlength="60" placeholder="z. B. Luna" required />
</div>
<div class="rollenwahl-block">
<span class="feld-schild">Rolle</span>
<!-- Kein Auswahlmenü: Bei vier Möglichkeiten ist eine sichtbare
Wahl schneller und zeigt gleich, was die Rolle bedeutet. Das
Systemmenü ließ sich ausserdem nicht gestalten. -->
<div class="rollenwahl" id="f-rolle" role="radiogroup" aria-label="Rolle"></div>
</div>
</div>
<p class="fehler" id="neu-fehler" role="alert" aria-live="polite"></p>
<div class="neu__knoepfe">
<button type="submit" class="knopf knopf--klein" id="neu-speichern">Anlegen</button>
<button type="button" class="abmelden" id="neu-abbrechen">Abbrechen</button>
</div>
</form>
<!-- Anzeige des frisch erzeugten Codes. Bewusst auffällig und mit klarem
Hinweis, dass er nur jetzt zu sehen ist. -->
<div class="code-kasten" id="code-kasten" hidden role="status" aria-live="polite">
<p class="code-kasten__schild">Zugangscode für <span id="code-name"></span></p>
<p class="code-kasten__code" id="code-wert"></p>
<p class="code-kasten__hinweis">
Dieser Code wird <strong>nur jetzt</strong> angezeigt und ist danach nicht mehr
abrufbar. Sicher weitergeben und in Bitwarden ablegen.
</p>
<div class="neu__knoepfe">
<button type="button" class="knopf knopf--klein" id="code-kopieren">Kopieren</button>
<button type="button" class="abmelden" id="code-schliessen">Verstanden, schließen</button>
</div>
</div>
<p class="fehler" id="fehler" role="alert" aria-live="polite"></p>
<div id="liste" aria-busy="true"><p class="leise">Personen werden geladen …</p></div>
<!-- Das Protokoll ist Nachschlagewerk, nicht Startbild: Standardmäßig
stehen nur die letzten vier Zeilen da, alles Weitere auf Knopfdruck. -->
<section class="protokoll-block">
<div class="klapp-kopf">
<p class="feldschild">Letzte Ereignisse</p>
<button type="button" class="knopf-still" id="protokoll-schalter"
aria-expanded="false" aria-controls="protokoll" hidden>
<span id="protokoll-schalter-text">Alle zeigen</span>
<svg class="klapp-pfeil" viewBox="0 0 24 24" aria-hidden="true">
<path d="m6 9.5 6 6 6-6" />
</svg>
</button>
</div>
<div id="protokoll" data-klapp="zu"><p class="leise">…</p></div>
</section>
</main>
<script src="assets/js/wahl.js?v=202609080007" defer></script>
<script src="assets/js/bereiche.js?v=202609080007" defer></script>
<script src="assets/js/kopf.js?v=202609080007" defer></script>
<script src="assets/js/glocke.js?v=202609080007" defer></script>
<script src="assets/js/personen.js?v=202609080007" defer></script>
</body>
</html>