Files
dogfather-universe/workspace/dateien.html
T
DogFatherGitandClaude Opus 5 2dbf9fb57a Personen: eine Kategorie je Rolle, Reihenfolge wie auf der Zugangsseite
Wunsch Filipe: "ich will dass die auch immer die gleiche reihenfolge
haben, am besten sogar jeder seine eigene kategorie und die reihenfolge
genau wie in der zugangsseite."

Dabei kam ein echter Fehler ans Licht. Die Abfrage sortierte mit

    ORDER BY p.aktiv DESC, <Rolle>, p.name

Das "p.aktiv DESC" stand VOR der Rolle -- dadurch wanderte jede gesperrte
Person ans Ende der GESAMTEN Liste, quer durch alle Rollen. Im Bild vom
31.08.2026 stand der gesperrte Manager BanaStift deshalb ganz unten unter
den Creators. Die Reihenfolge DogFather-Manager-Scout-Creator, die
ueberall sonst gilt (ROLLEN_SORTIERUNG, CLAUDE.md), war ausgerechnet auf
der Personenseite aufgehoben -- und es sah nach Absicht aus.

Jetzt: Rolle zuerst, dann Gesperrtes ans Ende SEINER Rolle, dann Name.

Dazu vier Abschnitte mit Ueberschrift, Anzahl und demselben Zusatztext
wie auf der Zugangsseite ("Eigene Pipeline & Kontakte" usw.) -- wer sich
eben angemeldet hat, findet hier dieselbe Sprache wieder. Eine Rolle ohne
Personen wird weggelassen: Eine leere Ueberschrift ist kein
Ordnungsmerkmal, sondern eine Luecke.

Die Gruppen-Gestaltung kommt aus start.css und wird nur wiederverwendet
-- dieselbe Sprache wie auf der Startseite, kein zweiter Entwurf.

Nebenbei ein Eigentor: Der Kommentar zur Sortierung stand zuerst INNERHALB
der SQL-Zeichenkette und enthielt Rueckwaerts-Anfuehrungszeichen. Die
beenden ein Template-Literal -- der Server startete nicht mehr. Steht
jetzt darueber, mit einem Hinweis darauf.

30 Pruefungen. Neu darunter: dass die vier Abschnitte in genau dieser
Reihenfolge stehen, dass der gesperrte Manager bei den Managern steht und
nicht bei den Creators, und dass zugeklappt nur der DogFather-Abschnitt
da ist.

Co-Authored-By: Claude Opus 5 <[email protected]>
2026-08-31 23:05:04 +02:00

96 lines
4.1 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>Dateien · Creator Workspace</title>
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608312305" />
<link rel="stylesheet" href="assets/css/start.css?v=202608312305" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608312305" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202608312305" />
</head>
<body class="start">
<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"><a class="zurueck" href="start.html">Creator&nbsp;Workspace</a> · Dateien</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 &amp; 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=202608312305" defer></script>
<script src="assets/js/kopf.js?v=202608312305" defer></script>
<script src="assets/js/dateien.js?v=202608312305" defer></script>
</body>
</html>