Neun Buehnen statt einer - jede Seite hat ihre eigene Szene

Filipe hat neun Bilder geschickt, damit es VERSCHIEDENE Hintergruende
gibt. Benutzt wurde davon genau eines (das Studio), die uebrigen acht
lagen unbenutzt im Ordner -- lounge.png und skyline.png sogar schon
fertig kopiert. Zu Recht beanstandet.

Jetzt wird aus jeder Szene eine Buehne, breit und schmal, und jede Seite
bekommt die, die zu ihr passt:

  studio      Startseite            der neutrale Ort, alles beginnt hier
  showbuehne  Dashboard, Review     die grosse Buehne, alles im Blick
  garage      Aufgaben, Technik     Werkstatt, hier wird gearbeitet
  skyline     Kalender              Nacht ueber der Stadt, Zeit
  lounge      Calls, Community      Sitzecke, hier wird geredet
  arena       Dateien, Wissen       Archiv hinter dem Portal
  halle       Profil, Personen      die Halle, in der jemand steht
  wald        Start-Check, Scouting der Weg, den man erst sucht
  portal      Content, LIVE         Durchgang, hier entsteht etwas

Die Zuordnung steht in bereiche.js -- derselben Liste, aus der schon
Zeichen und Farbton kommen. Eine Seite traegt damit dreierlei aus einer
einzigen Quelle: Farbe, Zeichen und Buehne. Sie koennen nicht
auseinanderlaufen.

Alle neun bekommen dieselbe Behandlung (abgedunkelt auf 0.42, Vignette
in der Mitte, wo der Text steht, oben ausgeblendet, wo die Kopfleiste
sitzt). Sie sehen verschieden aus und verhalten sich gleich -- eine
Buehne, die je Seite anders hell waere, waere Unruhe statt Vielfalt.
Der schmale Ausschnitt ist je Szene ein anderer, weil ein auf 9:16
gequetschtes Breitbild nur noch Wand zeigt; genommen wird der Bereich,
in dem die Figuren stehen.

18 Dateien, zusammen 580 KB -- pro Seite werden davon zwei geladen
(breit ODER schmal), also 16 bis 48 KB. Die Rohbilder waren 2,4 MB je
Stueck.

Kontrast auf allen sechs geprueften Seiten an echten Bildpunkten
nachgemessen: haelt (schlechtester Wert 4,59:1).

FUND: Die Buehnenpruefung suchte nach "buehne-breit" und fand die neuen
Namen nicht mehr -- sie meldete "die Buehne liegt im Hintergrund: FEHL",
obwohl sie da war.

Die Seitenpruefung sieht jetzt nach, dass jede Seite ihre Szene hat UND
dass das Bild wirklich ankommt: Ein data-buehne ohne passende CSS-Regel
waere still wirkungslos.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-01 10:36:16 +02:00
co-authored by Claude Opus 5
parent 8647138bb4
commit 0391a91d14
51 changed files with 270 additions and 169 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 754 KiB

After

Width:  |  Height:  |  Size: 899 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 223 KiB

After

Width:  |  Height:  |  Size: 260 KiB

+6 -1
View File
@@ -86,7 +86,12 @@ for (const [breite, hoehe, wie] of [[1440, 950, "Computer"], [390, 780, "Handy"]
await seite.waitForTimeout(800);
const da = await seite.evaluate(() => ({
buehne: /buehne-(breit|schmal)/.test(getComputedStyle(document.body, "::before").backgroundImage),
/* Seit dem 01.09.2026 gibt es neun Bühnen statt einer, benannt
nach ihrer Szene (buehne-garage-breit.webp). Der alte Ausdruck
suchte nach "buehne-breit" und fand nichts mehr -- gemeldet als
"die Bühne liegt im Hintergrund: FEHL", obwohl sie da war. */
buehne: /buehne-[a-z]+-(breit|schmal)\.webp/
.test(getComputedStyle(document.body, "::before").backgroundImage),
schleier: !!document.querySelector(".schleier"),
durchlaessig: getComputedStyle(document.querySelector(".schleier") || document.body).pointerEvents,
}));
+13 -1
View File
@@ -103,6 +103,13 @@ for (const [breite, hoehe, wie] of [[1440, 1000, "Computer"], [390, 844, "Handy"
eins davon, ist die Zuordnung gerissen und die Seite sieht
wieder aus wie jede andere. */
ton: document.body.dataset.ton || null,
/* Jede Seite hat ihre eigene Bühne aus Filipes Bildern. Geprüft
wird nicht das Merkmal, sondern das TATSÄCHLICH geladene Bild --
ein data-buehne ohne passende CSS-Regel wäre still wirkungslos
und niemand würde es merken. */
buehne: document.body.dataset.buehne || null,
buehneBild: (getComputedStyle(document.body, "::before").backgroundImage
.match(/buehne-([a-z]+)-(breit|schmal)/) || [])[1] || null,
kopfZeichen: document.querySelectorAll(".kopf-zeichen__svg path").length,
kopfZeichenFarbe: document.querySelector(".kopf-zeichen__svg")
? getComputedStyle(document.querySelector(".kopf-zeichen__svg")).stroke : null,
@@ -115,8 +122,12 @@ for (const [breite, hoehe, wie] of [[1440, 1000, "Computer"], [390, 844, "Handy"
Kacheln selbst der Kopf. Überall sonst ist er Pflicht. */
const kopfGut = istStart
|| (r.ton !== null && r.kopfZeichen > 0 && r.wasserzeichen > 0);
/* Die Bühne muss gesetzt sein UND als Bild wirklich ankommen. */
const buehneGut = istStart
? r.buehneBild === "studio"
: (r.buehne !== null && r.buehneBild === r.buehne);
const gut = r.ueber <= 0 && konsole.length === 0 && r.abmelden !== false
&& markeGut && kopfGut
&& markeGut && kopfGut && buehneGut
&& (r.breit === null || r.breit === "1240px")
&& (r.kopfzeile === null || r.kopfzeile === "flex");
if (!gut) fehler++;
@@ -125,6 +136,7 @@ for (const [breite, hoehe, wie] of [[1440, 1000, "Computer"], [390, 844, "Handy"
+ ` marke=${r.markeHaupt ? `"${r.markeHaupt}"◆"${r.markeLeise}"` : "FEHLT"}`
+ `${istStart ? "" : ` zurück=${r.rueckweg || "FEHLT"}`}`
+ `${istStart ? "" : ` ton=${r.ton || "FEHLT"} zeichen=${r.kopfZeichen}/${r.wasserzeichen}`}`
+ ` bühne=${r.buehneBild || "FEHLT"}${r.buehne && r.buehneBild !== r.buehne ? ` (gewollt: ${r.buehne})` : ""}`
+ ` breit=${r.breit}`
+ (konsole.length ? " KONSOLE: " + konsole.join(" | ") : "")
+ (r.schuld.length ? " -> " + r.schuld.join(" | ") : ""));
+69 -27
View File
@@ -40,34 +40,76 @@ const QUELLE = join(WURZEL, "assets", "img", "marke");
const ZIEL = join(WURZEL, "workspace", "assets", "img");
if (!existsSync(ZIEL)) mkdirSync(ZIEL, { recursive: true });
/* ---------------------------------------------------------------------
NEUN SZENEN, NICHT EINE.
Bis zum 01.09.2026 wurde aus den Bildern, die Filipe geschickt hat,
genau eines benutzt (das Studio) -- die uebrigen acht lagen unbenutzt
im Ordner. Zu Recht beanstandet: Er hatte sie ausdruecklich geschickt,
damit es VERSCHIEDENE Hintergruende gibt.
Jetzt wird aus jeder Szene eine Buehne, breit und schmal, und jede
Seite bekommt die, die zu ihr passt (Zuordnung in bereiche.js):
studio Startseite -- der neutrale Ort, alles beginnt hier
showbuehne Dashboard -- die grosse Buehne, alles im Blick
garage Aufgaben -- Werkstatt, hier wird gearbeitet
skyline Kalender -- Nacht ueber der Stadt, Zeit
lounge Calls -- Sitzecke, hier wird geredet
arena Dateien/Wissen -- Archiv hinter dem Portal
halle Profil/Personen -- die Halle, in der jemand steht
wald Start-Check/Scouting -- der Weg, den man erst sucht
portal Content/Reports -- Durchgang, hier entsteht etwas
Alle bekommen dieselbe Behandlung: abgedunkelt, Vignette in der Mitte
(dort steht der Text), oben ausgeblendet (dort sitzt die Kopfleiste).
Dadurch sehen sie verschieden aus und verhalten sich doch gleich --
was der eigentliche Punkt ist. Eine Buehne, die je Seite anders hell
ist, waere Unruhe statt Vielfalt.
--------------------------------------------------------------------- */
const SZENEN = [
/* [Name, Ausschnitt breit, Ausschnitt schmal]
Der schmale Ausschnitt ist je Szene ein anderer: Ein auf 9:16
gequetschtes Breitbild zeigt nur noch Wand. Gewaehlt wird jeweils
der Bereich, in dem die Figuren stehen. */
["studio", [0, 0, 1, 1], [0.17, 0, 0.66, 1]],
["showbuehne", [0, 0, 1, 1], [0.20, 0, 0.62, 1]],
["garage", [0, 0, 1, 1], [0.02, 0, 0.60, 1]],
["skyline", [0, 0, 1, 1], [0.00, 0, 0.58, 1]],
["lounge", [0, 0, 1, 1], [0.15, 0, 0.68, 1]],
["arena", [0, 0, 1, 1], [0.20, 0, 0.62, 1]],
["halle", [0, 0, 1, 1], [0.24, 0, 0.60, 1]],
["wald", [0, 0, 1, 1], [0.30, 0, 0.62, 1]],
["portal", [0, 0, 1, 1], [0.20, 0, 0.62, 1]],
];
const AUFTRAEGE = [
{
/* Die Buehne fuer breite Schirme. Studio, beide Figuren aussen,
dunkle Mitte. */
quelle: "studio.png",
ziel: "buehne-breit.webp",
breite: 1800, hoehe: 1013,
ausschnitt: [0, 0, 1, 1],
helligkeit: 0.42, saettigung: 0.95, kontrast: 1.02,
/* Die Vignette macht genau den Streifen dunkel, in dem der Inhalt
steht -- ohne sie waere Text ueber dem Logo unlesbar. */
vignette: { x: 0.5, y: 0.42, rx: 0.46, ry: 0.62, staerke: 0.72 },
/* Oben ausblenden: dort sitzt die Kopfleiste. */
verlauf: [{ von: [0, 0], nach: [0, 0.14], stopps: [[0, 0.55], [1, 0]] }],
guete: 0.72,
},
{
/* Fuer schmale Schirme ein hochkant-Ausschnitt aus derselben Szene --
ein auf 9:16 gequetschtes Breitbild zeigt nur noch Wand. */
quelle: "studio.png",
ziel: "buehne-schmal.webp",
breite: 800, hoehe: 1400,
ausschnitt: [0.17, 0, 0.66, 1],
helligkeit: 0.34, saettigung: 0.9, kontrast: 1.02,
vignette: { x: 0.5, y: 0.45, rx: 0.7, ry: 0.6, staerke: 0.78 },
verlauf: [{ von: [0, 0], nach: [0, 0.12], stopps: [[0, 0.55], [1, 0]] }],
guete: 0.68,
},
...SZENEN.flatMap(([name, breitA, schmalA]) => [
{
quelle: `szene-${name}.png`,
ziel: `buehne-${name}-breit.webp`,
breite: 1800, hoehe: 1013,
ausschnitt: breitA,
helligkeit: 0.42, saettigung: 0.95, kontrast: 1.02,
/* Die Vignette macht genau den Streifen dunkel, in dem der Inhalt
steht -- ohne sie waere Text ueber dem Logo unlesbar. */
vignette: { x: 0.5, y: 0.42, rx: 0.46, ry: 0.62, staerke: 0.72 },
/* Oben ausblenden: dort sitzt die Kopfleiste. */
verlauf: [{ von: [0, 0], nach: [0, 0.14], stopps: [[0, 0.55], [1, 0]] }],
guete: 0.72,
},
{
quelle: `szene-${name}.png`,
ziel: `buehne-${name}-schmal.webp`,
breite: 800, hoehe: 1400,
ausschnitt: schmalA,
helligkeit: 0.34, saettigung: 0.9, kontrast: 1.02,
vignette: { x: 0.5, y: 0.45, rx: 0.7, ry: 0.6, staerke: 0.78 },
verlauf: [{ von: [0, 0], nach: [0, 0.12], stopps: [[0, 0.55], [1, 0]] }],
guete: 0.68,
},
]),
{
/* DogFather selbst -- der RICHTIGE Husky, im blauen Hoodie. Steht
unten rechts. */
+37 -2
View File
@@ -49,12 +49,38 @@ body.start::before {
content: "";
position: fixed; inset: 0; z-index: 0;
pointer-events: none;
background-image: url("../img/buehne-breit.webp");
background-repeat: no-repeat;
background-position: center bottom;
background-size: 138% auto;
/* Rueckfall, falls eine Seite keine eigene Szene hat. */
background-image: url("../img/buehne-studio-breit.webp");
}
/* ---------- Neun Buehnen, nicht eine ------------------------------------
Filipe hat neun Bilder geschickt, damit es VERSCHIEDENE Hintergruende
gibt -- benutzt wurde davon lange nur das Studio. Jetzt hat jede Seite
ihre eigene Szene, ausgewaehlt ueber data-buehne am body (gesetzt von
kopf.js aus bereiche.js):
Aufgaben Werkstatt Kalender Nachtstadt Calls Sitzecke
Dateien Portal-Archiv Profil Halle Scout Wald
Dashboard grosse Buehne Content Durchgang Start Studio
Alle sind gleich abgedunkelt und tragen dieselbe Vignette -- sie sehen
verschieden aus und verhalten sich gleich. Eine Buehne, die je Seite
anders hell waere, waere Unruhe statt Vielfalt. */
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-studio-breit.webp"); }
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-showbuehne-breit.webp"); }
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-garage-breit.webp"); }
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-skyline-breit.webp"); }
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-lounge-breit.webp"); }
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-arena-breit.webp"); }
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-halle-breit.webp"); }
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-wald-breit.webp"); }
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-portal-breit.webp"); }
/* Der Schleier. Er ist der Grund, warum Text über einem Foto unverändert
lesbar bleibt -- oben dicht für die Kopfleiste, in der Mitte dicht für
den Inhalt, an den Rändern offen, damit die beiden sichtbar bleiben.
@@ -90,9 +116,18 @@ body.start > main { position: relative; z-index: 1; }
auf 9:16 gequetschtes Breitbild zeigt nur noch Wand. */
@media (max-width: 760px) {
body.start::before {
background-image: url("../img/buehne-schmal.webp");
background-image: url("../img/buehne-studio-schmal.webp");
background-size: cover;
}
body.start[data-buehne="studio"]::before { background-image: url("../img/buehne-studio-schmal.webp"); }
body.start[data-buehne="showbuehne"]::before { background-image: url("../img/buehne-showbuehne-schmal.webp"); }
body.start[data-buehne="garage"]::before { background-image: url("../img/buehne-garage-schmal.webp"); }
body.start[data-buehne="skyline"]::before { background-image: url("../img/buehne-skyline-schmal.webp"); }
body.start[data-buehne="lounge"]::before { background-image: url("../img/buehne-lounge-schmal.webp"); }
body.start[data-buehne="arena"]::before { background-image: url("../img/buehne-arena-schmal.webp"); }
body.start[data-buehne="halle"]::before { background-image: url("../img/buehne-halle-schmal.webp"); }
body.start[data-buehne="wald"]::before { background-image: url("../img/buehne-wald-schmal.webp"); }
body.start[data-buehne="portal"]::before { background-image: url("../img/buehne-portal-schmal.webp"); }
body.start > .schleier {
background:
linear-gradient(180deg, rgba(5, 7, 13, .92) 0%, rgba(5, 7, 13, .74) 15%,
Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

+18 -18
View File
@@ -77,15 +77,15 @@
unter: 'Was du sowieso jeden Tag aufmachst',
bereiche: [
{ name: 'Dashboard', unter: 'Alle Creator auf einen Blick', zeichen: 'dashboard', ton: 3,
gross: true, rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'uebersicht.html' },
gross: true, rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'uebersicht.html', szene: 'showbuehne' },
{ name: 'Aufgaben', unter: 'Offen, in Arbeit, Review', zeichen: 'aufgaben', ton: 9,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'aufgaben.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'aufgaben.html', szene: 'garage' },
{ name: 'Kalender', unter: 'Termine und Calls', zeichen: 'kalender', ton: 15,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'kalender.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'kalender.html', szene: 'skyline' },
{ name: 'Calls & Protokolle', unter: 'Gespräche mit To-dos', zeichen: 'calls', ton: 8,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'calls.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'calls.html', szene: 'lounge' },
{ name: 'Dateien', unter: 'Ablage und Freigaben', zeichen: 'dateien', ton: 16,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'dateien.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'dateien.html', szene: 'arena' },
],
},
{
@@ -93,23 +93,23 @@
unter: 'Die Betreuungsakte – Stand, Zahlen, Verlauf',
bereiche: [
{ name: 'Creator-Profile', unter: 'Ziele und 90-Tage-Plan', zeichen: 'profil', ton: 4,
rollen: ['admin', 'manager', 'scout'], ziel: 'profil.html' },
rollen: ['admin', 'manager', 'scout'], ziel: 'profil.html', szene: 'halle' },
{ name: 'Mein Profil', unter: 'Deine Ziele und Pläne', zeichen: 'profil', ton: 4,
rollen: ['creator'], ziel: 'profil.html' },
rollen: ['creator'], ziel: 'profil.html', szene: 'halle' },
{ name: 'Start-Check', unter: 'Erstanalyse, 16 Punkte', zeichen: 'startcheck', ton: 14,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'startcheck.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'startcheck.html', szene: 'wald' },
{ name: 'LIVE-Analyse', unter: 'Vorher, während, danach', zeichen: 'live', ton: 6,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=live' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=live', szene: 'portal' },
{ name: 'Content-Planung', unter: 'Idee bis Upload', zeichen: 'content', ton: 10,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'content.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'content.html', szene: 'portal' },
{ name: 'Community', unter: 'Moderation und Konflikte', zeichen: 'community', ton: 5,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=community' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=community', szene: 'lounge' },
{ name: 'Technik', unter: 'Setup, Fehler, Lösungen', zeichen: 'technik', ton: 11,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=technik' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=technik', szene: 'garage' },
{ name: 'Schutz & Regeln', unter: 'Richtlinien und Vorfälle', zeichen: 'schutz', ton: 1,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=schutz' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'bereich.html?b=schutz', szene: 'halle' },
{ name: 'Reports & Review', unter: 'Woche und Entscheidung', zeichen: 'reports', ton: 13,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'report.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'report.html', szene: 'showbuehne' },
],
},
{
@@ -125,13 +125,13 @@
unterCreator: 'Nachschlagen, wenn du etwas brauchst',
bereiche: [
{ name: 'Personen & Zugänge', unter: 'Rollen und Codes', zeichen: 'personen', ton: 7,
rollen: ['admin', 'manager'], ziel: 'personen.html' },
rollen: ['admin', 'manager'], ziel: 'personen.html', szene: 'halle' },
{ name: 'Scout-Pipeline', unter: 'Entdeckt bis übergeben', zeichen: 'scouting', ton: 12,
rollen: ['admin', 'manager', 'scout'], ziel: 'scouting.html' },
rollen: ['admin', 'manager', 'scout'], ziel: 'scouting.html', szene: 'wald' },
{ name: 'Wissens-Bibliothek', unter: 'Anleitungen und PDFs', zeichen: 'wissen', ton: 2,
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'wissen.html' },
rollen: ['admin', 'manager', 'creator', 'scout'], ziel: 'wissen.html', szene: 'arena' },
{ name: 'Automationen', unter: 'Was von allein passiert', zeichen: 'automation', ton: 17,
rollen: ['admin', 'manager'], ziel: 'automation.html' },
rollen: ['admin', 'manager'], ziel: 'automation.html', szene: 'garage' },
],
},
];
+7
View File
@@ -151,6 +151,13 @@
Merkmal data-ton, nicht an einer Klasse. */
document.body.dataset.ton = String(bereich.ton);
/* Und ihre eigene Bühne. Neun Szenen aus Filipes Bildern, jede Seite
bekommt die, die zu ihr passt -- die Werkstatt bei den Aufgaben,
die Nachtstadt beim Kalender, die Sitzecke bei den Calls, der Wald
beim Scouting. Welche wohin gehört, steht in bereiche.js; das Bild
selbst wählt start.css über dieses Merkmal aus. */
if (bereich.szene) document.body.dataset.buehne = bereich.szene;
/* Der Kopf ist bisher ein <div> mit Text. Er bekommt links eine
Plakette mit dem Zeichen -- eingefügt VOR dem vorhandenen Text,
ohne ihn anzufassen. Dadurch funktioniert das auf allen dreizehn
+7 -7
View File
@@ -7,9 +7,9 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
</head>
<body class="start">
@@ -139,9 +139,9 @@
</form>
</dialog>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/aufgaben.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/aufgaben.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/automation.css?v=202609011035" />
</head>
<body class="start">
@@ -132,9 +132,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/automation.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/automation.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202609011035" />
</head>
<body class="start">
@@ -107,9 +107,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/bereich.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/bereich.js?v=202609011035" defer></script>
</body>
</html>
+9 -9
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/calls.css?v=202609011035" />
</head>
<body class="start">
@@ -54,10 +54,10 @@
</main>
<script src="assets/js/ki.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/calls.js?v=202609011028" defer></script>
<script src="assets/js/ki.js?v=202609011035" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/calls.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/content.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/content.css?v=202609011035" />
</head>
<body class="start">
@@ -158,9 +158,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/content.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/content.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202609011035" />
</head>
<body class="start">
@@ -93,9 +93,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/dateien.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/dateien.js?v=202609011035" defer></script>
</body>
</html>
+2 -2
View File
@@ -25,7 +25,7 @@
type="image/webp" media="(max-width: 899px)" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
</head>
<body class="gate">
@@ -143,6 +143,6 @@
</p>
</main>
<script src="assets/js/gate.js?v=202609011028" defer></script>
<script src="assets/js/gate.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202609011035" />
</head>
<body class="start">
@@ -147,9 +147,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/kalender.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/kalender.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/personen.css?v=202609011035" />
</head>
<body class="start">
@@ -121,9 +121,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/personen.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/personen.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/profil.css?v=202609011035" />
</head>
<body class="start">
@@ -132,9 +132,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/profil.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/profil.js?v=202609011035" defer></script>
</body>
</html>
+9 -9
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/report.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/report.css?v=202609011035" />
</head>
<body class="start">
@@ -91,10 +91,10 @@
</main>
<script src="assets/js/ki.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/report.js?v=202609011028" defer></script>
<script src="assets/js/ki.js?v=202609011035" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/report.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202609011035" />
</head>
<body class="start">
@@ -124,9 +124,9 @@
</div>
</div>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/scouting.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/scouting.js?v=202609011035" defer></script>
</body>
</html>
+6 -6
View File
@@ -7,8 +7,8 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
</head>
<body class="start">
@@ -99,9 +99,9 @@
</p>
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/start.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/start.js?v=202609011035" defer></script>
</body>
</html>
+9 -9
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202609011035" />
</head>
<body class="start">
@@ -70,10 +70,10 @@
</main>
<script src="assets/js/ki.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/startcheck.js?v=202609011028" defer></script>
<script src="assets/js/ki.js?v=202609011035" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/startcheck.js?v=202609011035" defer></script>
</body>
</html>
+6 -6
View File
@@ -7,9 +7,9 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202609011035" />
</head>
<body class="start">
@@ -57,9 +57,9 @@
</main>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/uebersicht.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/uebersicht.js?v=202609011035" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<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=202609011028" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609011028" />
<link rel="stylesheet" href="assets/css/gate.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/start.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202609011035" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202609011035" />
</head>
<body class="start">
@@ -175,9 +175,9 @@
</main>
<script src="assets/js/wahl.js?v=202609011028" defer></script>
<script src="assets/js/bereiche.js?v=202609011028" defer></script>
<script src="assets/js/kopf.js?v=202609011028" defer></script>
<script src="assets/js/wissen.js?v=202609011028" defer></script>
<script src="assets/js/wahl.js?v=202609011035" defer></script>
<script src="assets/js/bereiche.js?v=202609011035" defer></script>
<script src="assets/js/kopf.js?v=202609011035" defer></script>
<script src="assets/js/wissen.js?v=202609011035" defer></script>
</body>
</html>