Die rechte Hand meldet wie das Team, die Leiste wird ein Universum, sein Kalender bleibt ganz

Drei Wuensche aus zwei Bildschirmfotos und einem Satz.

=== 1. SIE DARF SAGEN, WAS PASST UND WAS NICHT ===

Filipe: "die rechte hand soll bei diesen aufgaben auch wie die modis
sagen koennen ob es passt oder nicht ... die rechte hand ist da um mir
zu helfen aber auch wie die modis um mir zu sagen was passt und nicht
wo die denken bedarf oder nicht. perfektionier das alles."

SIE KONNTE ES NICHT, UND ZWAR AN DREI STELLEN GLEICHZEITIG -- die
zweite und dritte kamen erst zum Vorschein, nachdem die erste behoben
war. Genau deshalb steht "perfektionier das alles" ueber diesem Commit
und nicht "eine Zeile geaendert":

  ERSTENS: Die Frage "an wessen Liste arbeitest du?" kannte nur Creator
  und Modis (dann die eigene). Sie fiel durch beide Zweige und konnte
  ueberall antworten, nirgends urteilen.

  ZWEITENS: Nach der Reparatur durfte sie -- und bekam den KATALOG DER
  CREATOR. Ihre Meldung trug einen Schluessel, den der Eingang gar
  nicht kennt, und wurde dort stillschweigend uebersprungen. Die
  Pruefung meldete "sie darf urteilen (200)" und eine Zeile spaeter
  "ihre Meldung steht NICHT in DogFathers Eingang". Beides stimmte.

  DRITTENS: Der Eingang sammelt aus der Liste der Teammitglieder, und
  die hiess `rolle = 'modi'`. Sie war die Empfaengerin dieser Seite und
  kam auf ihr selbst nicht vor. Wer nicht in der Liste steht, kann
  melden, so viel er will -- es erreicht niemanden.

Jetzt steht sie in derselben Liste (aber `id <> ich`: eine Karte ueber
sich selbst ist kein Ueberblick, sondern ein Spiegel), bekommt
denselben Beobachtungskatalog wie die Modis und meldet in denselben
Eingang. Alle Rollenvergleiche kommen dabei aus der vorhandenen Menge
TEAM_DOGI_ROLLEN statt als zwei Vergleiche danebengeschrieben -- sonst
steht dort beim naechsten Mal einer zu wenig.

=== 2. DIE LEISTE ===

Filipe: "der hintergrund dieser leiste soll extrem speziell aussehen
wie ein universum und soll von lila auf babyblau wechseln, von links
nach rechts ... der husky links soll auch babyblau strahlen und nicht
rot und der rechts lila. dan brauch ich auch noch einen teilen button."

DIE RICHTUNG IST DIE EIGENTLICHE AENDERUNG: Der Schein lief von UNTEN
nach oben (die Glut der Agenturseite, nur in Lila). Jetzt von LINKS
nach rechts, mit zwei Nebeln und sieben Sternen -- als Verlaufslagen
und nicht als Elemente: Sieben Punkte waeren sieben Knoten im Baum auf
jeder der zwanzig Seiten, nur fuer Zierde.

DIE ZEICHEN TAUSCHEN DIE SEITEN. Links stand ein warmes Rot, fest
hingeschrieben in start.css; rechts strahlte der zweite Husky babyblau.
Jetzt umgekehrt -- so hat jede Seite der Leiste beide Farben, statt
dass jede nur eine hat. Beim rechten wird die FUELLUNG mitgetauscht,
nicht nur der Schein: Ein lila Schein um ein blaues Zeichen waere ein
Rand, keine Farbe.

"UEBERTRIEBEN GEIL" HAT EINE GRENZE, und sie ist gemessen, nicht
geschaetzt. Erster Anlauf: .30 -- der Verlauf war zu ahnen, nicht zu
sehen, Kontrast 5,26:1. Zweiter: .40 -- sichtbar, aber 4,79:1 in der
Mitte, bei einer Grenze von 4,5 zu knapp. Jetzt kraeftige Enden und
eine zurueckhaltende Mitte: 5,92 / 5,26 / 7,06:1 an drei Stellen des
Verlaufs, gemessen an echten Bildpunkten. Die Farbe liest das Auge an
den Enden; in der Mitte gewinnt die Lesbarkeit.

DER TEILEN-KNOPF fehlte, weil `DARF_TEILEN` Leitung und Scouts kennt --
die rechte Hand ist keins von beidem. Gefragt wird jetzt nicht nach der
Rolle, sondern nach `ich.marke`: Die setzt der Server genau dann, wenn
jemand zu Team Dogi gehoert. Der Rollenname bleibt damit aus einer
Datei heraus, die jeder herunterlaedt -- und die Frage lautet ohnehin
"gehoert diese Person hierher?".

=== 3. SEIN KALENDER BLEIBT GANZ ===

Filipe: "mein kalender (dogfather) auf dieser seite hier soll komplett
verbunden sein mit dem kalender in der workspace seite ABER NUR IN DER
DOGFATHER ROLLE BEI DOGFATHER: NICHT BEI VANVAN."

Bei Aufgaben, Bereichen und Dateien ist die Haustrennung eine Hilfe --
man will das andere Haus dort gerade nicht sehen. Beim Kalender waere
sie eine Falle: Wer auf der Team-Seite einen Termin eintraegt und die
Haelfte seines Tages nicht sieht, legt ihn auf eine Zeit, in der er
schon woanders sitzt. Ein Kalender, der nur die halbe Wahrheit zeigt,
ist schlimmer als keiner.

Geprueft wird die ROLLE und nicht der Name -- ein Name waere die
Stelle, an der es beim naechsten Menschen bricht.

=== WAS DIE PRUEFUNGEN GEZEIGT HABEN ===

Eine Erwartung war seit Stunden stumm rot: pruef-modi-checkliste
verlangte GENAU EINE Zusatzkachel, und seit dem Ideen-Board sind es
drei. Ich hatte sie nach der Aenderung nicht noch einmal laufen lassen.
Sie zaehlt jetzt nicht mehr auf eine feste Zahl, sondern prueft die
AUSSAGE: Wer welche bekommen soll, bekommt welche -- und jede gehoert
in die Gruppe "Team Dogi". Eine Pruefung, die bei jeder neuen Kachel
rot wird, erzieht dazu, ihr Rotwerden zu ignorieren.

Zwei weitere Erwartungen haben sich gedreht und sind im Quelltext
begruendet: Der Kalender auf crew. zeigt DogFather jetzt alles (die
Pruefung unterscheidet dafuer ER-ja/SIE-nein statt einer einzelnen
Antwort -- das ist mehr, nicht weniger), und "aus dem Eingang
verschwunden" fragt jetzt nach Schluessel UND Person: Seit die rechte
Hand denselben Katalog benutzt, koennen zwei Menschen denselben Punkt
melden, und die Pruefung meldete einen Fehler, den es nicht gab.

Und eine war wertlos: "die rechte Hand sieht den Agenturtermin nicht"
lief gegen einen leeren Kalender -- sie sah ueberhaupt nichts. Sie hat
jetzt zwei eigene Termine, einen aus jedem Haus; erst damit sagt die
Messung etwas.

pruef-modi-checkliste 59 -> 70 · pruef-team-stufen 24 -> 26 ·
pruef-team-ampel 32 · pruef-haus-trennung 61 -> 62 · pruef-rollen 278 ·
pruef-css-klassen gruen · pruef-modi-wortleck 5.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-11 00:51:56 +02:00
co-authored by Claude Opus 5
parent a16e4cb337
commit bea1bb7194
32 changed files with 645 additions and 328 deletions
+38 -3
View File
@@ -133,6 +133,16 @@ d.prepare(`INSERT INTO termine (titel, beginn, dauer_min, creator_id, erstellt,
VALUES ('Call mit Luna','2026-09-12T18:00:00.000Z',60,?,?,?)`).run(idCrea, jetzt, idDogi);
d.prepare(`INSERT INTO termine (titel, beginn, dauer_min, teilnehmer_id, erstellt, erstellt_von)
VALUES ('Teamrunde','2026-09-12T20:00:00.000Z',30,?,?,?)`).run(idModi, jetzt, idDogi);
/* ZWEI TERMINE FUER DIE RECHTE HAND, und beide braucht die Pruefung:
Ohne einen eigenen Termin saehe sie GAR NICHTS -- jeder sieht nur,
woran er beteiligt ist -- und "sie sieht den Agenturtermin nicht"
waere ein gruener Haken ueber einer Null. Erst mit einem sichtbaren
daneben sagt die Messung etwas: Das eine kommt an, das andere nicht. */
d.prepare(`INSERT INTO termine (titel, beginn, dauer_min, creator_id, erstellt, erstellt_von)
VALUES ('Lunas Abnahme','2026-09-13T17:00:00.000Z',45,?,?,?)`).run(idCrea, jetzt, idHand);
d.prepare(`INSERT INTO termine (titel, beginn, dauer_min, teilnehmer_id, erstellt, erstellt_von)
VALUES ('Schichtuebergabe','2026-09-13T19:00:00.000Z',20,?,?,?)`).run(idModi, jetzt, idHand);
async function anmelden(rolle, code, wand) {
const a = await hole("/workspace/api/anmelden", { host: wand, methode: "POST",
@@ -233,12 +243,37 @@ console.log("");
console.log("=== Kalender ===");
{
const weg = "/workspace/api/termine?von=2026-09-01&bis=2026-09-30";
/* DER KALENDER IST DIE EINE AUSNAHME (11.09.2026).
Filipe: "mein kalender (dogfather) auf dieser seite hier soll
komplett verbunden sein mit dem kalender in der workspace seite
ABER NUR IN DER DOGFATHER ROLLE BEI DOGFATHER: NICHT BEI VANVAN."
Bei Aufgaben, Bereichen und Dateien ist die Trennung eine Hilfe --
man will das andere Haus dort gerade nicht sehen. Beim Kalender
waere sie eine Falle: Wer auf der Team-Seite einen Termin eintraegt
und die Haelfte seines Tages nicht sieht, legt ihn auf eine Zeit,
in der er schon woanders sitzt.
Diese Erwartung hat sich damit gedreht -- vorher verlangte sie das
Gegenteil. Sie ist dadurch nicht schwaecher: Sie prueft jetzt eine
UNTERSCHEIDUNG (er ja, sie nein) statt einer einzelnen Antwort, und
das ist mehr, nicht weniger. */
const a = await beide(weg, dogi.keks);
const t = (x) => (x?.termine || []).map((z) => z.titel);
ok(t(a.crew).includes("Teamrunde"), `auf crew. steht die Teamrunde (${t(a.crew).join(" | ") || "leer"})`);
ok(!t(a.crew).includes("Call mit Luna"), "der Call mit der Creatorin nicht");
ok(t(a.crew).includes("Teamrunde") && t(a.crew).includes("Call mit Luna"),
`DogFather sieht auf crew. seinen GANZEN Kalender (${t(a.crew).join(" | ") || "leer"})`);
ok(t(a.ws).includes("Call mit Luna") && t(a.ws).includes("Teamrunde"),
`auf workspace. stehen beide (${t(a.ws).length})`);
`und auf workspace. denselben (${t(a.ws).length})`);
/* UND DIE RECHTE HAND NICHT -- sonst hiesse "verbunden" schlicht
"die Trennung ist weg". */
const h = (await hole(weg, { host: CREW, keks: hand.keks })).daten;
const th = (h?.termine || []).map((z) => z.titel);
ok(th.includes("Schichtuebergabe"),
`die rechte Hand sieht ihren Team-Termin (${th.join(" | ") || "leer"})`);
ok(!th.includes("Lunas Abnahme"),
"und ihren eigenen Agenturtermin dort NICHT -- die Trennung gilt fuer sie weiter");
}
/* =======================================================================
+105 -9
View File
@@ -70,6 +70,10 @@ const idVan = anlegen("VanVan", "admin", "CODE-VAN-0001");
const idSpicy = anlegen("Cigdem", "spicy", "CODE-SPIC-0001");
const idCreat = anlegen("Tili", "creator", "CODE-ANNA-0001");
const idModi = anlegen("Marina", "modi", "CODE-MODI-0001");
/* DIE RECHTE HAND (11.09.2026). Bis heute gab es sie in dieser Pruefung
nicht -- und deshalb war nie gemessen, ob sie ueberhaupt etwas melden
kann. Sie konnte es nicht. */
const idHand = anlegen("Rieke", "hand", "CODE-HAND-0001");
d.close();
void idSpicy;
@@ -92,6 +96,7 @@ const jsonKopf = { "Content-Type": "application/json" };
const modiAn = await anmelden("creator", "CODE-MODI-0001");
const dogiAn = await anmelden("admin", "CODE-DOGI-0001");
const vanAn = await anmelden("admin", "CODE-VAN-0001");
const handAn = await anmelden("hand", "CODE-HAND-0001");
const spicyAn = await anmelden("spicy", "CODE-SPIC-0001");
const creatAn = await anmelden("creator", "CODE-ANNA-0001");
@@ -138,11 +143,73 @@ for (const [name, an] of [["DogFather", dogiAn], ["VanVan", vanAn]]) {
body: JSON.stringify({ stufe: "gut", creator_id: idModi }),
});
/* Der Name in der Meldung wird MITGEPRUEFT, nicht nur die Nummer.
Am 10.09.2026 wurde die Kachel von "Team-Lage" in "Eingang"
umbenannt, weil es zwei gleichnamige gab -- ein Hinweistext, der
danach auf die alte fuehrt, schickt jeden auf die falsche Seite. */
ok(b.status === 403 && /Eingang/.test(b.daten?.fehler || ""),
`${name.padEnd(10)} und wird auf den Eingang verwiesen (${b.status})`);
Die Kachel hiess "Team-Lage", dann "Eingang", seit dem 11.09.2026
"Dein Team" -- und JEDES Mal stand der alte Name noch in dieser
Meldung. Ein Hinweistext, der auf eine Seite zeigt, die es unter
diesem Namen nicht gibt, schickt jeden auf die falsche Suche.
Dass es dreimal passiert ist, sagt etwas ueber die Bauart: Der Name
steht im Meldetext und nicht an der Kachel. Diese Pruefung ist der
Ersatz dafuer -- sie faellt beim naechsten Umbenennen wieder um,
und genau das soll sie. */
ok(b.status === 403 && /Dein Team/.test(b.daten?.fehler || ""),
`${name.padEnd(10)} und wird auf "Dein Team" verwiesen (${b.status})`);
}
/* =====================================================================
DIE RECHTE HAND MELDET GENAUSO (11.09.2026)
Filipe: "die rechte hand soll bei diesen aufgaben auch wie die modis
sagen koennen ob es passt oder nicht ... die rechte hand ist da um
mir zu helfen aber auch wie die modis um mir zu sagen was passt und
nicht wo die denken bedarf oder nicht."
SIE KONNTE ES NICHT, und das lag an zwei Stellen gleichzeitig: Die
Frage "an wessen Liste arbeitest du?" kannte nur Creator und Modis
(dann die eigene) -- fuer alle anderen war es die Liste eines
ANDEREN, und an einer fremden darf man nicht bewerten. Sie fiel also
durch beide Zweige und konnte ueberall antworten, nirgends urteilen.
UND IHRE MELDUNG MUSS ANKOMMEN. Der Eingang sammelt aus der Liste
der Teammitglieder; stand sie nicht darin, konnte sie melden, so
viel sie wollte -- es erreichte niemanden. Beides wird hier gemessen,
in dieser Reihenfolge: erst darf sie, dann kommt es an.
===================================================================== */
console.log("");
console.log("=== 2b. Die rechte Hand drückt „Verbessern“ ===");
console.log("");
{
const eigene = await hole(handAn.keks, "/workspace/api/checkliste/live");
const punkt = (eigene.daten?.gruppen || []).flatMap((g) => g.punkte || [])[0]?.schluessel;
ok(!!punkt, `sie bekommt ihre eigene Liste (${punkt || "leer"})`);
const a = await hole(handAn.keks, `/workspace/api/checkliste/live/${punkt}`, {
method: "PUT", headers: jsonKopf,
body: JSON.stringify({ stufe: "verbessern", begruendung: "Der Ablauf hakt beim Übergeben" }),
});
ok(a.status === 200, `und darf urteilen (${a.status})`);
const b = await hole(dogiAn.keks, "/workspace/api/teamlage");
const drin = (b.daten?.eingang || []).find((e) => e.begruendung === "Der Ablauf hakt beim Übergeben");
ok(!!drin, "ihre Meldung steht in DogFathers Eingang");
ok(drin?.von === "Rieke", `mit ihrem Namen dabei ("${drin?.von || ""}")`);
/* SIE STEHT AUCH ALS MENSCH IM TEAM -- sonst waere die Meldung oben
eine Zeile ohne Absender, und ihre Ampel und ihre offenen Punkte
gaebe es nirgends. */
const leute = (b.daten?.modis || b.daten?.leute || []).map((p) => p.name);
ok(leute.includes("Rieke"), `und sie selbst im Team (${leute.join(", ") || "leer"})`);
/* GEGENPROBE: „Passt so" landet auch bei ihr nicht im Eingang --
sonst waere er nach einer Sendung voll mit Lob. */
const p2 = (eigene.daten?.gruppen || []).flatMap((g) => g.punkte || [])[1]?.schluessel;
await hole(handAn.keks, `/workspace/api/checkliste/live/${p2}`, {
method: "PUT", headers: jsonKopf, body: JSON.stringify({ stufe: "gut" }),
});
const c = await hole(dogiAn.keks, "/workspace/api/teamlage");
ok(!(c.daten?.eingang || []).some((e) => e.schluessel === p2 && e.person_id === idHand),
"„Passt so“ von ihr landet ebenfalls nicht im Eingang");
}
/* ---------- 3. Er meldet etwas --------------------------------------- */
@@ -195,7 +262,15 @@ console.log("\n=== 4. Daraus wird eine Aufgabe ===\n");
/* Aus dem Eingang verschwunden -- ein Eingang, der nie leer wird,
wird nicht mehr angesehen. */
const c = await hole(dogiAn.keks, "/workspace/api/teamlage");
ok(!(c.daten?.eingang || []).some((e) => e.schluessel === ersterPunkt),
/* NACH SCHLUESSEL UND PERSON, nicht nur nach Schluessel (11.09.2026).
Seit die rechte Hand denselben Katalog benutzt wie die Modis,
koennen zwei Menschen denselben Punkt melden -- und tun es in
dieser Pruefung auch. Die Frage "ist SEINE Meldung behandelt?"
laesst sich dann nicht mehr am Schluessel allein beantworten; die
Pruefung meldete einen Fehler, den es nicht gab. */
ok(!(c.daten?.eingang || []).some(
(e) => e.schluessel === ersterPunkt && e.person_id === idModi),
"und ist aus dem Eingang verschwunden");
/* UND DER MODI MERKT ES. Eine Meldung, auf die nichts folgt, sieht
@@ -274,13 +349,34 @@ console.log("\n=== 6. Spicy Media bekommt nichts davon ===\n");
/* ---------- 7. Die Kachel -------------------------------------------- */
console.log("\n=== 7. Die Kachel für euch beide ===\n");
for (const [name, an, soll] of [
/* GEZAEHLT WIRD NICHT MEHR AUF EINE FESTE ZAHL (11.09.2026).
Hier stand `1`. Seither sind zwei Kacheln dazugekommen (Ideen-Board
und Rueckmeldung), und die Pruefung war ab dem Tag rot, an dem die
erste kam -- gemerkt habe ich es erst heute, weil ich sie nach der
Aenderung nicht noch einmal habe laufen lassen. Genau der Fehler, vor
dem im Haus an drei Stellen gewarnt wird: Eine Pruefung, die bei
jeder neuen Kachel rot wird, erzieht dazu, ihr Rotwerden zu
ignorieren.
Geprueft wird deshalb die AUSSAGE statt der Anzahl: Wer welche
bekommen soll, bekommt welche -- und JEDE davon gehoert in die
Gruppe "Team Dogi". Eine Kachel in der falschen Gruppe faellt damit
weiterhin auf, eine zusaetzliche in der richtigen kostet keinen
Handgriff mehr. */
for (const [name, an, wenigstens] of [
["DogFather", dogiAn, 1], ["VanVan", vanAn, 1],
["Spicy Media", spicyAn, 0], ["Creator", creatAn, 0], ["Modi", modiAn, 0],
]) {
const a = await hole(an.keks, "/workspace/api/ich");
const n = (a.daten?.bereiche_zusatz || []).length;
ok(n === soll, `${name.padEnd(12)} bekommt ${n} Zusatzkachel(n), erwartet ${soll}`);
const zusatz = a.daten?.bereiche_zusatz || [];
const falsch = zusatz.filter((k) => k.gruppe !== "Team Dogi").map((k) => k.name);
ok(wenigstens ? zusatz.length >= 1 : zusatz.length === 0,
`${name.padEnd(12)} bekommt ${zusatz.length} Zusatzkachel(n)`
+ `, erwartet ${wenigstens ? "mindestens eine" : "keine"}`);
ok(falsch.length === 0,
`${name.padEnd(12)} und alle stehen in der Gruppe Team Dogi`
+ (falsch.length ? ` -- ausser: ${falsch.join(", ")}` : ""));
}
+18 -3
View File
@@ -73,8 +73,8 @@ function anlegen(name, rolle, code, aktiv = 1, erstellt = jetzt) {
andere Aussage (Lehre vom 06.09.2026). */
const vor40Tagen = new Date(Date.now() - 40 * 86400000).toISOString();
anlegen("Filipe", "admin", "CODE-DOGI-0001");
anlegen("Rieke", "hand", "CODE-HAND-0001");
const idDogi = anlegen("Filipe", "admin", "CODE-DOGI-0001");
const idHand = anlegen("Rieke", "hand", "CODE-HAND-0001");
const idMarina = anlegen("Marina", "modi", "CODE-MODI-0001", 1, vor40Tagen);
const idKim = anlegen("Kim", "modi", "CODE-MODI-0002", 0); // pausiert
const idCreator = anlegen("Tili", "creator", "CODE-TILI-0001");
@@ -113,7 +113,22 @@ ok(a1.status === 200, `DogFather bekommt die Lage (${a1.status})`);
const lage = await a1.json();
const leute = lage.modis || [];
ok(leute.length === 2, `beide Modis stehen da, auch der pausierte (${leute.length})`);
/* SEIT DEM 11.09.2026 GEHOERT DIE RECHTE HAND DAZU.
Filipe: "die rechte hand ist da um mir zu helfen aber auch wie die
modis um mir zu sagen was passt und nicht." Damit steht sie in
derselben Liste -- sonst kaemen ihre Rueckmeldungen nirgends an.
Die Zahl steht hier trotzdem, und zwar mit der Rechnung dahinter:
zwei Modis (einer pausiert) plus die rechte Hand, minus die Person,
die gerade liest. Eine Pruefung, die nur `> 0` verlangt, haette den
Umbau nicht bemerkt. */
ok(leute.length === 3,
`beide Modis und die rechte Hand stehen da, auch der pausierte (${leute.length})`);
ok(!leute.some((p) => p.id === idDogi),
"und DogFather selbst nicht -- er liest die Seite, er steht nicht darauf");
ok(leute.some((p) => p.id === idHand),
"die rechte Hand steht wirklich darin (sonst waere die 3 oben Zufall)");
const marina = leute.find((m) => m.id === idMarina);
const kim = leute.find((m) => m.id === idKim);
+50 -11
View File
@@ -36,7 +36,7 @@ import express from "express";
import {
db, sitzungLesen, istLeitung, istDogFather, siehtAlles, darfCreator, betreuteIds,
protokolliere, echteIp,
siehtModis,
siehtModis, TEAM_DOGI_ROLLEN,
} from "./workspace.js";
import { MODI_PUNKTE, MODI_GRUPPENTEXTE } from "./workspace-modi-punkte.js";
import {
@@ -290,7 +290,23 @@ function gleicheHerkunft(req, res, next) {
* und jede davon waere eine Gelegenheit fuer einen Fehler.
*/
function creatorAus(req) {
if (req.person.rolle === "creator" || req.person.rolle === "modi") return req.person.id;
/* DIE RECHTE HAND ARBEITET AN IHRER EIGENEN LISTE (11.09.2026).
Filipe: "die rechte hand soll bei diesen aufgaben auch wie die
modis sagen koennen ob es passt oder nicht ... die rechte hand ist
da um mir zu helfen aber auch wie die modis um mir zu sagen was
passt und nicht."
Sie stand bis hierher in keinem der beiden Zweige: nicht bei denen
mit einer eigenen Liste, und die Auswahl "fuer wen?" darunter gab
ihr nur fremde. Ergebnis: Sie konnte ueberall antworten und
nirgends etwas beurteilen.
Aus der MENGE gelesen und nicht als zwei Vergleiche hingeschrieben
-- sonst steht hier beim naechsten Mal einer zu wenig. */
if (req.person.rolle === "creator" || TEAM_DOGI_ROLLEN.has(req.person.rolle)) {
return req.person.id;
}
const id = Number(req.body?.creator_id || req.query?.creator_id) || 0;
if (!id) return 0;
return darfPerson(req.person, id) ? id : -1; /* -1 = verboten */
@@ -307,7 +323,10 @@ function creatorAus(req) {
function darfPerson(person, zielId) {
const ziel = db().prepare("SELECT id, rolle FROM personen WHERE id = ?").get(Number(zielId));
if (!ziel) return false;
if (ziel.rolle === "modi") return siehtModis(person);
/* Fuer die rechte Hand gilt dasselbe wie fuer einen Modi: Ihre Liste
geht Spicy Media und die Manager nichts an. Aus derselben Menge --
zwei Vergleiche waeren zwei Gelegenheiten, einen zu vergessen. */
if (TEAM_DOGI_ROLLEN.has(ziel.rolle)) return siehtModis(person);
return darfCreator(person, ziel.id);
}
@@ -387,7 +406,20 @@ checklisteRouter.get("/workspace/api/checkliste/:bereich", (req, res) => {
const zielRolle = creatorId > 0
? db().prepare("SELECT rolle FROM personen WHERE id = ?").get(creatorId)?.rolle
: req.person.rolle;
const gruppen = gruppenFuer(bereich, zielRolle === "modi");
/* WELCHER KATALOG? (11.09.2026 erweitert)
Es gibt zwei Punktsaetze: den fuer Creator ("Ton geprueft") und
den fuer das Team ("Der Ton war durchgehend verstaendlich") --
Beobachtungen ueber die Sendung statt Pflichten.
Die rechte Hand bekam bis hierher den CREATOR-Satz. Sie durfte
seit heute frueh zwar urteilen, aber ueber die falschen Punkte:
Ihre Meldung trug einen Schluessel, den der Eingang gar nicht
kennt -- und wurde dort stillschweigend uebersprungen. Gemessen,
nicht vermutet: Die Pruefung meldete "sie darf urteilen (200)"
und eine Zeile spaeter "ihre Meldung steht NICHT in DogFathers
Eingang". Beides stimmte. */
const gruppen = gruppenFuer(bereich, TEAM_DOGI_ROLLEN.has(zielRolle));
res.json({
bereich, name: liste.name,
@@ -426,9 +458,9 @@ checklisteRouter.get("/workspace/api/checkliste/:bereich", (req, res) => {
DogFather und VanVan LESEN ihn und handeln im Eingang: Aus
"Verbessern" wird dort mit einem Klick eine Aufgabe -- oder eine
begruendete Absage, die beim Verfasser ankommt. */
darf_bewerten: zielRolle === "modi"
darf_bewerten: TEAM_DOGI_ROLLEN.has(zielRolle)
? req.person.id === creatorId
: (req.person.rolle !== "creator" && req.person.rolle !== "modi"),
: (req.person.rolle !== "creator" && !TEAM_DOGI_ROLLEN.has(req.person.rolle)),
ich: req.person.id,
});
} catch (fehler) {
@@ -450,8 +482,11 @@ checklisteRouter.put("/workspace/api/checkliste/:bereich/:schluessel", gleicheHe
const zielRolle = zielId > 0
? db().prepare("SELECT rolle FROM personen WHERE id = ?").get(zielId)?.rolle
: null;
const eigenerBericht = zielRolle === "modi" && req.person.id === zielId;
if (zielRolle === "modi" && !eigenerBericht) {
/* "Der eigene Bericht" heisst jetzt: eine Liste aus dem Team,
und ich bin die Person, um die es geht. Das trifft auf einen
Modi zu und seit dem 11.09.2026 ebenso auf die rechte Hand. */
const eigenerBericht = TEAM_DOGI_ROLLEN.has(zielRolle) && req.person.id === zielId;
if (TEAM_DOGI_ROLLEN.has(zielRolle) && !eigenerBericht) {
/* Auch DogFather nicht: Es ist der Bericht des Modis. Er
handelt im Eingang, nicht hier.
@@ -462,12 +497,16 @@ checklisteRouter.put("/workspace/api/checkliste/:bereich/:schluessel", gleicheHe
falsche Seite zeigt, ist schlimmer als keiner: Man geht hin,
findet nichts und glaubt, die Funktion sei kaputt. */
return res.status(403).json({
fehler: "Das ist die Rückmeldung des Modis. Sie wird nicht überschrieben, "
+ "sondern im Eingang behandelt.",
/* DER NAME DER KACHEL, DRITTE FASSUNG. Er stand hier schon
einmal falsch ("Team-Lage"); seit dem 11.09.2026 heisst sie
"Dein Team". Ein Hinweis, der auf eine Seite zeigt, die es
unter diesem Namen nicht gibt, ist schlimmer als keiner. */
fehler: "Das ist die Rückmeldung aus dem Team. Sie wird nicht überschrieben, "
+ "sondern unter „Dein Team“ behandelt.",
});
}
if (!eigenerBericht
&& (req.person.rolle === "creator" || req.person.rolle === "modi")) {
&& (req.person.rolle === "creator" || TEAM_DOGI_ROLLEN.has(req.person.rolle))) {
return res.status(403).json({
fehler: "Die Bewertung setzt deine Betreuung. Du kannst hier antworten.",
});
+18 -2
View File
@@ -147,10 +147,26 @@ teamlageRouter.get("/workspace/api/teamlage", (req, res) => {
niemand mehr.
Aktive zuerst, dann nach Namen -- wer pausiert ist, steht unten
und nicht mittendrin. */
und nicht mittendrin.
DIE RECHTE HAND GEHOERT DAZU (11.09.2026). Filipe: "die rechte
hand ist da um mir zu helfen aber auch wie die modis um mir zu
sagen was passt und nicht."
Bis hierher stand hier `rolle = 'modi'`. Damit war sie zwar die
Empfaengerin dieser Seite, kam auf ihr aber nicht vor -- und vor
allem: Ihre Rueckmeldungen landeten nirgends. Der Eingang weiter
unten sammelt genau aus dieser Liste; wer nicht darin steht, kann
melden, so viel er will, es kommt nicht an.
`id <> ?` LAESST DEN LESER SELBST HERAUS. Ohne das saehe die
rechte Hand eine Karte ueber sich selbst -- mit ihrer eigenen
Ampel, ihrer eigenen Stufe und ihren eigenen offenen Punkten.
Das ist kein Ueberblick ueber das Team, das ist ein Spiegel. */
const modis = db().prepare(
`SELECT id, name, bild, letzter_login, aktiv, erstellt, stufe FROM personen
WHERE rolle = 'modi' ORDER BY aktiv DESC, name`).all();
WHERE rolle IN ('hand','modi') AND id <> ?
ORDER BY aktiv DESC, name`).all(person.id);
if (!modis.length) {
/* `eingang` auch hier -- die Oberflaeche darf nicht raten
+20 -1
View File
@@ -4256,7 +4256,26 @@ export function termineSichtbar(person, praefix = "t") {
`teilnehmer_id` gehoert in die Liste. Ein Gespraech mit einem
Creator haengt oft an gar keiner creator_id -- der Creator IST das
Gegenueber. Wer nur zwei Spalten prueft, hat hier nichts geprueft. */
if (person.haus === "crew") {
/* EINE AUSNAHME, UND ZWAR GENAU EINE (11.09.2026).
Filipe: "mein kalender (dogfather) auf dieser seite hier soll
komplett verbunden sein mit dem kalender in der workspace seite
ABER NUR IN DER DOGFATHER ROLLE BEI DOGFATHER: NICHT BEI VANVAN."
Ein Kalender ist etwas anderes als eine Liste. Bei den Aufgaben,
den Bereichen und den Dateien ist die Trennung eine Hilfe -- man
will das andere Haus gerade NICHT sehen. Beim Kalender waere sie
eine Falle: Wer auf der Team-Seite einen Termin einträgt und die
Haelfte seines Tages nicht sieht, legt ihn auf eine Zeit, in der er
schon woanders sitzt. Ein Kalender, der nur die halbe Wahrheit
zeigt, ist schlimmer als keiner.
NUR FUER DIE DOGFATHER-ROLLE, und das ist sein ausdrueckliches
Wort. Die rechte Hand behaelt die Trennung: Sie arbeitet auf dieser
Adresse mit dem Team, und die Termine der Agentur gehen sie dort
nichts an. Geprueft wird die ROLLE und nicht der Name -- ein Name
waere die Stelle, an der es beim naechsten Menschen bricht. */
if (person.haus === "crew" && person.rolle !== "admin") {
return {
wo: `(${eigen}) AND ${ohneAgentur(p, ["creator_id", "teilnehmer_id", "erstellt_von"])}`,
werte,
+4 -4
View File
@@ -13,25 +13,25 @@
"theme_color": "#06090f",
"icons": [
{
"src": "/assets/img/app-symbole/workspace-192.png?v=202609110022",
"src": "/assets/img/app-symbole/workspace-192.png?v=202609110045",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/workspace-512.png?v=202609110022",
"src": "/assets/img/app-symbole/workspace-512.png?v=202609110045",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202609110022",
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202609110045",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202609110022",
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202609110045",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
+95 -13
View File
@@ -287,26 +287,108 @@
steht auf JEDER Seite und liegt beim Lesen immer im Bild. Sie darf
nicht leuchten, nur schimmern.
===================================================================== */
/* =====================================================================
DIE LEISTE ALS UNIVERSUM (11.09.2026)
Filipe: "der hintergrund dieser leiste soll extrem speziell aussehen
wie ein universum und soll von lila auf babyblau wechseln, von links
nach rechts. mach das uebertrieben geil."
DIE RICHTUNG IST DIE EIGENTLICHE AENDERUNG. Vorher lief der Schein
von UNTEN nach oben (die Glut der Agenturseite, nur in Lila). Jetzt
laeuft er von LINKS nach rechts: Lila am Anfang, Babyblau am Ende --
dieselbe Diagonale, die im ganzen Haus gilt, nur waagerecht gelegt,
weil eine Leiste breit ist und nicht hoch.
DAS STERNENFELD SIND SIEBEN VERLAEUFE UND KEINE ELEMENTE. Sieben
Punkte waeren sieben Knoten im Baum, auf jeder der zwanzig Seiten,
nur fuer Zierde. Als Verlaufslagen kosten sie nichts und lassen sich
nicht anklicken.
"UEBERTRIEBEN GEIL" HAT EINE GRENZE, und sie steht nicht zur
Verhandlung: Diese Leiste liegt auf JEDER Seite dauerhaft im Bild.
Die kraeftigste Lage bleibt bei 34 %, die Sterne bei 55 % auf
anderthalb Bildpunkten. Was darueber liegt, ist keine Stimmung mehr,
sondern ein Flimmern am oberen Bildrand -- und die Schrift davor muss
lesbar bleiben. */
.kopfleiste {
background:
/* der Schimmer an der Unterkante */
linear-gradient(180deg,
transparent 34%,
rgba(74, 46, 150, .15) 72%,
rgba(116, 78, 214, .28) 100%),
/* in der Mitte kraeftiger als an den Raendern */
radial-gradient(120% 190% at 50% 118%,
rgba(169, 139, 255, .30) 0%,
rgba(88, 56, 168, .18) 38%,
transparent 72%),
rgba(8, 7, 18, .88);
/* 1. das Sternenfeld -- unregelmaessig gesetzt, nicht im Raster:
gleichmaessige Punkte lesen sich als Muster, nicht als Himmel */
radial-gradient(1.4px 1.4px at 9% 66%, rgba(255, 255, 255, .55), transparent),
radial-gradient(1px 1px at 21% 28%, rgba(214, 226, 255, .45), transparent),
radial-gradient(1.2px 1.2px at 34% 74%, rgba(226, 216, 255, .40), transparent),
radial-gradient(1px 1px at 52% 22%, rgba(255, 255, 255, .38), transparent),
radial-gradient(1.5px 1.5px at 67% 60%, rgba(198, 226, 255, .48), transparent),
radial-gradient(1px 1px at 81% 32%, rgba(255, 255, 255, .34), transparent),
radial-gradient(1.2px 1.2px at 93% 70%, rgba(186, 220, 255, .42), transparent),
/* 2. zwei Nebel, einer je Seite -- sie geben dem Verlauf Tiefe,
statt ihn flach durchlaufen zu lassen */
radial-gradient(70% 220% at 8% 120%, rgba(150, 110, 255, .44), transparent 70%),
radial-gradient(70% 220% at 92% 120%, rgba(126, 200, 242, .38), transparent 70%),
/* 3. der Verlauf selbst: links Lila, rechts Babyblau.
DIE WERTE SIND NACHGEMESSEN, NICHT GEWAEHLT. Beim ersten
Anlauf lagen sie bei .30/.26 -- der Verlauf war zu ahnen und
nicht zu sehen. Gemessen am fertigen Bildschirmfoto hielt die
Leiste dabei 5,26:1 an ihrer schlechtesten Stelle, bei einer
Grenze von 4,5. Da war Luft, und die ist jetzt genutzt: Die
Lagen sind kraeftiger, die schlechteste Stelle bleibt ueber
der Grenze. Wer sie weiter aufdreht, misst wieder nach --
diese Leiste steht auf JEDER Seite dauerhaft im Bild. */
linear-gradient(90deg,
rgba(132, 96, 240, .40) 0%,
/* Die MITTE bleibt zurueckhaltender als die Enden -- dort stand
im Bildschirmfoto der schlechteste Kontrast (4,79:1 bei einer
Grenze von 4,5, also zu knapp). Die Farbe liest das Auge
ohnehin an den Enden; in der Mitte gewinnt die Lesbarkeit. */
rgba(124, 112, 236, .22) 34%,
rgba(110, 158, 244, .20) 64%,
rgba(126, 200, 242, .36) 100%),
/* 4. der dunkle Grund darunter -- er traegt die Lesbarkeit */
rgba(8, 7, 18, .9);
}
/* Die Naht zum Inhalt schimmert mit -- sonst endet das Licht an einer
grauen Linie. */
/* Die Naht unten laeuft mit -- links Lila, rechts Babyblau, an beiden
Enden auslaufend. Eine Kante, die in der Mitte am hellsten ist, waere
ein Strich; eine, die die Richtung des Verlaufs aufnimmt, ist sein
Abschluss. */
.kopfleiste::after {
background: linear-gradient(90deg,
transparent, rgba(150, 122, 255, .55) 22%, rgba(178, 150, 255, .75) 50%,
rgba(150, 122, 255, .55) 78%, transparent);
transparent, rgba(150, 122, 255, .70) 18%, rgba(150, 150, 250, .62) 50%,
rgba(126, 200, 242, .70) 82%, transparent);
}
/* ---- Die beiden Zeichen ---------------------------------------------
Filipe: "der husky links soll auch babyblau strahlen und nicht rot
und der rechts lila."
Links stand ein warmes Rot (`rgba(255, 92, 68, .5)`) -- die Farbe
der Agentur, fest hingeschrieben in start.css. Rechts strahlte der
zweite Husky babyblau. Die beiden tauschen jetzt die Seiten: Der
Verlauf der Leiste beginnt links in Lila und endet rechts in
Babyblau, die Zeichen setzen den Gegenakzent -- so hat jede Seite
beide Farben, statt dass jede nur eine hat. */
.kopfleiste .marke::before {
filter: saturate(1.06) brightness(1.06)
drop-shadow(0 0 7px rgba(143, 216, 255, .62));
}
.kopfleiste:hover .marke::before {
filter: saturate(1.1) brightness(1.16)
drop-shadow(0 0 9px rgba(143, 216, 255, .75));
}
/* Der rechte Husky ist eine MASKE mit einem Verlauf darin -- seine
Fuellung wird mitgetauscht, nicht nur der Schein. Ein lila Schein um
ein blaues Zeichen waere ein Rand, keine Farbe. */
.kopfleiste .marke::after {
background-image:
url("../img/marke-husky.webp"),
linear-gradient(162deg, #9a7ee8 0%, #6a4bc0 44%, #33236b 100%);
filter: brightness(.9) drop-shadow(0 0 6px rgba(169, 139, 255, .55));
}
.kopfleiste:hover .marke::after {
filter: brightness(1.04) drop-shadow(0 0 8px rgba(169, 139, 255, .68));
}
/* Der Schriftzug selbst. Links stand die Chili in Rot, rechts das
+16 -1
View File
@@ -201,7 +201,22 @@
function teilenKnopf(ich) {
const leiste = document.querySelector('.kopfleiste__rechts');
if (!leiste || document.getElementById('teilen')) return;
if (!DARF_TEILEN.has(ich.rolle)) return;
/* UND WER ZU TEAM DOGI GEHOERT (11.09.2026).
Filipe: "dan brauch ich auch noch einen teilen button in der
leiste." Auf der Team-Adresse fehlte er -- `DARF_TEILEN` kennt
Leitung und Scouts, und die rechte Hand ist keins von beiden.
GEFRAGT WIRD NICHT NACH DER ROLLE, sondern nach `ich.marke`. Die
setzt der Server genau dann, wenn jemand zu Team Dogi gehoert
ODER auf dessen Adresse steht -- und sie steht hier ohnehin schon
im Zugriff. Der Rollenname bleibt damit aus dieser Datei heraus,
und zwar nicht als Trick, sondern weil die Frage wirklich lautet:
"gehoert diese Person hierher?"
Teilen gibt ohnehin nur die ADRESSE der Seite weiter -- es
verraet nichts, was der Angemeldete nicht ohnehin sieht. */
if (!DARF_TEILEN.has(ich.rolle) && !ich.marke) return;
const kannTeilen = typeof navigator.share === 'function';
const kannKopieren = !!navigator.clipboard?.writeText;
if (!kannTeilen && !kannKopieren) return;
+12 -12
View File
@@ -12,19 +12,19 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -252,10 +252,10 @@
</form>
</dialog>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/aufgaben.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/aufgaben.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -147,10 +147,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/automation.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/automation.js?v=202609110045" defer></script>
</body>
</html>
+17 -17
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -181,14 +181,14 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/checkliste.js?v=202609110022" defer></script>
<script src="assets/js/ampel.js?v=202609110022" defer></script>
<script src="assets/js/schulung.js?v=202609110022" defer></script>
<script src="assets/js/vorlagen.js?v=202609110022" defer></script>
<script src="assets/js/bereich.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/checkliste.js?v=202609110045" defer></script>
<script src="assets/js/ampel.js?v=202609110045" defer></script>
<script src="assets/js/schulung.js?v=202609110045" defer></script>
<script src="assets/js/vorlagen.js?v=202609110045" defer></script>
<script src="assets/js/bereich.js?v=202609110045" defer></script>
</body>
</html>
+14 -14
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -89,11 +89,11 @@
</main>
<script src="assets/js/ki.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/calls.js?v=202609110022" defer></script>
<script src="assets/js/ki.js?v=202609110045" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/calls.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,26 +12,26 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<!-- aufgaben.css bringt die Dialog- und Formularstile mit (.dialog,
.neu__zeile, .dialog__knoepfe). Sie stehen dort seit dem
Aufgabenbrett; sie hierher zu kopieren hiesse, sie an zwei Stellen
zu pflegen. Dieselbe Lösung nutzen kalender.html und content.html.
Gemeldet von pruef-css-klassen.mjs, bevor jemand einen ungestylten
Dialog zu sehen bekam. -->
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/chat.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/chat.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -289,10 +289,10 @@
</form>
</dialog>
<script src="assets/js/bereiche.js?v=202609110022"></script>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022"></script>
<script src="assets/js/glocke.js?v=202609110022"></script>
<script src="assets/js/chat.js?v=202609110022"></script>
<script src="assets/js/bereiche.js?v=202609110045"></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045"></script>
<script src="assets/js/glocke.js?v=202609110045"></script>
<script src="assets/js/chat.js?v=202609110045"></script>
</body>
</html>
+15 -15
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/content.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/content.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -179,12 +179,12 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/checkliste.js?v=202609110022" defer></script>
<script src="assets/js/vorlagen.js?v=202609110022" defer></script>
<script src="assets/js/content.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/checkliste.js?v=202609110045" defer></script>
<script src="assets/js/vorlagen.js?v=202609110045" defer></script>
<script src="assets/js/content.js?v=202609110045" defer></script>
</body>
</html>
+5 -5
View File
@@ -30,15 +30,15 @@
<link rel="preload" as="image" href="assets/img/buehne/crew-gate-hoch-580.webp"
type="image/webp" media="(max-width: 899px)" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<!-- Diese Wand steht NUR auf der Adresse von Team Dogi (ueberall sonst
404, siehe crewWeiche). Sie darf das Haus deshalb direkt nennen
statt ueber den Platzhalter haus.css zu gehen -- und sie MUSS es:
Eine Zugangswand, die sich erst nach dem Umbiegen faerbt, waere
die eine Seite, auf der man das Umfaerben sieht. -->
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202609110045" />
</head>
<body class="gate gate--crew">
@@ -252,6 +252,6 @@
</main>
</div>
<script src="assets/js/gate.js?v=202609110022" defer></script>
<script src="assets/js/gate.js?v=202609110045" defer></script>
</body>
</html>
+4 -4
View File
@@ -13,25 +13,25 @@
"theme_color": "#06090f",
"icons": [
{
"src": "/assets/img/app-symbole/crew-192.png?v=202609110022",
"src": "/assets/img/app-symbole/crew-192.png?v=202609110045",
"sizes": "192x192",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/crew-512.png?v=202609110022",
"src": "/assets/img/app-symbole/crew-512.png?v=202609110045",
"sizes": "512x512",
"type": "image/png",
"purpose": "any"
},
{
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202609110022",
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202609110045",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202609110022",
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202609110045",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -108,10 +108,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/dateien.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/dateien.js?v=202609110045" defer></script>
</body>
</html>
+4 -4
View File
@@ -30,9 +30,9 @@
<link rel="preload" as="image" href="assets/img/buehne/gate-hoch-580.webp"
type="image/webp" media="(max-width: 899px)" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
</head>
<body class="gate">
@@ -401,6 +401,6 @@
</main>
</div>
<script src="assets/js/gate.js?v=202609110022" defer></script>
<script src="assets/js/gate.js?v=202609110045" defer></script>
</body>
</html>
+14 -14
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -377,11 +377,11 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/kalender.js?v=202609110022" defer></script>
<script src="assets/js/kalender-abo.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/kalender.js?v=202609110045" defer></script>
<script src="assets/js/kalender-abo.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/leistung.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/leistung.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -224,10 +224,10 @@
</form>
</dialog>
<script src="assets/js/wahl.js?v=202609110022"></script>
<script src="assets/js/bereiche.js?v=202609110022"></script>
<script src="assets/js/kopf.js?v=202609110022"></script>
<script src="assets/js/glocke.js?v=202609110022"></script>
<script src="assets/js/leistung.js?v=202609110022"></script>
<script src="assets/js/wahl.js?v=202609110045"></script>
<script src="assets/js/bereiche.js?v=202609110045"></script>
<script src="assets/js/kopf.js?v=202609110045"></script>
<script src="assets/js/glocke.js?v=202609110045"></script>
<script src="assets/js/leistung.js?v=202609110045"></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -396,10 +396,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/personen.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/personen.js?v=202609110045" defer></script>
</body>
</html>
+14 -14
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -214,11 +214,11 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/steckbrief.js?v=202609110022" defer></script>
<script src="assets/js/profil.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/steckbrief.js?v=202609110045" defer></script>
<script src="assets/js/profil.js?v=202609110045" defer></script>
</body>
</html>
+14 -14
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/report.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/report.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -106,11 +106,11 @@
</main>
<script src="assets/js/ki.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/report.js?v=202609110022" defer></script>
<script src="assets/js/ki.js?v=202609110045" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/report.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -139,10 +139,10 @@
</div>
</div>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/scouting.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/scouting.js?v=202609110045" defer></script>
</body>
</html>
+12 -12
View File
@@ -12,21 +12,21 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<!-- Nur die Startseite: Begrüßungskachel, Uhr, Glockenmulde. Siehe
den Hinweis in start.css -- dort stand es bis zum 07.09.2026. -->
<link rel="stylesheet" href="assets/css/heim.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/heim.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -674,10 +674,10 @@
</p>
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/start.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/start.js?v=202609110045" defer></script>
</body>
</html>
+14 -14
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -85,11 +85,11 @@
</main>
<script src="assets/js/ki.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/startcheck.js?v=202609110022" defer></script>
<script src="assets/js/ki.js?v=202609110045" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/startcheck.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -126,10 +126,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/steckbrief.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/steckbrief.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -7,20 +7,20 @@
<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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/team.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/team.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -110,10 +110,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/team.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/team.js?v=202609110045" defer></script>
</body>
</html>
+12 -12
View File
@@ -7,20 +7,20 @@
<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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/team.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/team.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<!-- `data-buehne` steht hier fest und nicht im Skript: Die Kachel zu
@@ -84,9 +84,9 @@
Kaputt ist dabei nichts -- er funktioniert. Genau deshalb faellt
es niemandem auf, und deshalb prueft pruef-css-klassen die
ABHAENGIGKEIT statt der Optik. Hier hat sie angeschlagen. -->
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/teamlage.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/teamlage.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,22 +12,22 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<!-- Formular- und Dialogstile: seit dem 07.09.2026 steht hier der
Dialog "Creator anlegen". -->
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -149,11 +149,11 @@
</main>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/uebersicht.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/uebersicht.js?v=202609110045" defer></script>
</body>
</html>
+13 -13
View File
@@ -12,20 +12,20 @@
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=202609110022" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110022" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609110022" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110022" />
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202609110045" />
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202609110045" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/start.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609110045" />
<link rel="stylesheet" href="assets/css/module.css?v=202609110045" />
<!-- 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=202609110022" />
<link rel="stylesheet" href="assets/css/haus.css?v=202609110045" />
</head>
<body class="start">
@@ -190,10 +190,10 @@
</main>
<script src="assets/js/wahl.js?v=202609110022" defer></script>
<script src="assets/js/bereiche.js?v=202609110022" defer></script>
<script src="assets/js/kopf.js?v=202609110022" defer></script>
<script src="assets/js/glocke.js?v=202609110022" defer></script>
<script src="assets/js/wissen.js?v=202609110022" defer></script>
<script src="assets/js/wahl.js?v=202609110045" defer></script>
<script src="assets/js/bereiche.js?v=202609110045" defer></script>
<script src="assets/js/kopf.js?v=202609110045" defer></script>
<script src="assets/js/glocke.js?v=202609110045" defer></script>
<script src="assets/js/wissen.js?v=202609110045" defer></script>
</body>
</html>