Anleitung, Etappe 2: Erste Schritte zum Abhaken -- und eine Farbe, die vier Tage falsch war
Ein Creator hakt seine fuenf Ersten Schritte ab, sieht seinen
Fortschritt im Kopf, bekommt unter „Was ist dran" den Punkt „Erste
Schritte noch offen" und ganz oben auf der Startseite eine breite
Kachel „Fang hier an". Alle drei verschwinden von selbst, sobald er
durch ist -- niemand muss etwas wegklicken oder abschalten.
EINE QUELLE, DREI ANZEIGEN.
Der Bauplan wollte einen Punkt bei „Was ist dran" UND einen eigenen
Zaehler an der Kachel. Zwei getrennt gebaute Zaehler zeigen irgendwann
zwei verschiedene Zahlen uebereinander auf einem Bildschirm. Es gibt
deshalb nur `offeneHinweise()`: Daraus kommen die Zeile, die Zahl an
der kleinen Kachel und die Zahl an der breiten. Die breite Kachel
entsteht ausserdem aus der BEREITS GEFILTERTEN Kachelliste und erbt
damit beide Schranken (Rollenliste und Rechtetafel), statt sie ein
drittes Mal zu beantworten.
Gespeichert wird nur Erledigtes: eine Zeile heisst „abgehakt", keine
Zeile heisst „offen". Kein Feld mit 0 und 1 -- sonst gaebe es zwei
Arten, „offen" zu sagen.
DIE WICHTIGSTE ENTDECKUNG WAR NICHT TEIL DIESER ETAPPE.
`pruef-kachel-universum` wurde rot. Nachgemessen gegen den Stand VOR
Etappe 1: Sie war schon rot -- seit dem 02.10., und zwar wegen Ton 47
(Manager-Ziele, #7368ff), den ich selbst eingetragen habe. Im
Kommentar daneben steht sogar meine eigene Messung: „Abstand zum
naechsten Nachbarn 0,0899 ... knapp unter der 0,090". Ich habe die
Zahl hingeschrieben und die Pruefung nie laufen lassen. Vier Tage.
#7368ff -> #7269ff. Eine Hexziffer, Abstand zum alten Wert 0,0024 --
das sieht kein Mensch --, aber der Abstand zur naechsten Kachel im
eigenen Haus steigt von 0,0899 auf 0,0918. Nicht die am weitesten
entfernte Farbe genommen (das waere ein grelles Gruen gewesen):
Manager-Ziele ist in Benutzung und violett, gesucht war die kleinste
Aenderung, die die Regel haelt.
UND DIE REGEL SELBST WAR FUER EIN HAUS GESCHRIEBEN.
Auch mit sauberem Ton 47 blieb die Pruefung rot: Sie vergleicht ALLE
48 Toene miteinander, und rechnerisch ist 0,09 fuer 48 Farben nicht zu
halten (das Werkzeug findet als besten freien Platz 0,0793). Seit dem
24.09.2026 gibt es aber zwei Haeuser, und eine Kachel des einen steht
nie neben einer des anderen -- sie liegen auf verschiedenen Adressen.
Die Messung ist jetzt haus-bewusst: 0,09 innerhalb eines Hauses
(streng, und mit rund 24 Farden je Haus zu halten -- gemessen 0,0905),
ein Boden von 0,06 ueber die Haeuser hinweg. Das ist SCHAERFER, nicht
weicher: Vorher verteilte sich die Grenze auf 48 Farben und war
unerreichbar, weshalb die Pruefung dauerhaft rot stand -- und eine
Warnung, die immer kommt, ist keine mehr. Welcher Ton zu welchem Haus
gehoert, wird aus bereiche.js abgeleitet, nicht aufgelistet. Dazu eine
Gegenprobe, dass die Einteilung ueberhaupt trennt (553 Paare im Haus,
575 darueber hinweg).
NOCH EINE FESTE ZAHL ERSETZT: `pruef-start-ansicht` verlangte „genau
drei Gruppen" fuer einen Creator. Mit „Fang hier an" sind es
zeitweilig vier, und beides ist richtig. Gezaehlt wird nicht mehr,
sondern benannt -- auch das die schaerfere Pruefung: Die alte Zeile
waere gruen geblieben, wenn eine der drei Gruppen verschwindet und
eine fremde dazukommt.
Gemessen
pruef-anleitung 70 Pruefungen, 0 Fehler (vorher 47)
pruef-rollen 402 Pruefungen, 0 Fehler (vorher 401)
pruef-kachel-universum 16 Pruefungen, 0 Fehler (vorher 13, davon 1 rot)
pruef-start-ansicht alles in Ordnung (vorher 1 rot)
pruef-kachelraster 24 Pruefungen, 0 Fehler
pruef-css-klassen alles in Ordnung, 42 Stellen unter 11,5 px
mess-anleitung mit offenen Schritten: Gruppe „Fang hier an",
breite Kachel mit Zaehler 5, Hinweiszeile.
Nach dem Abhaken: alle drei weg, ein Weg
statt drei. Kein Querschieben bei 412/1440 px.
Sicherung: ~/sicherungen/workspace-vor-anleitung-e2-20261006-1421.db
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -158,6 +158,34 @@ CREATE TABLE IF NOT EXISTS anl_rolle (
|
|||||||
geaendert_von INTEGER REFERENCES personen(id) ON DELETE SET NULL,
|
geaendert_von INTEGER REFERENCES personen(id) ON DELETE SET NULL,
|
||||||
PRIMARY KEY (haus, rolle)
|
PRIMARY KEY (haus, rolle)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* ======================================================================
|
||||||
|
DER STAND JE PERSON (Etappe 2)
|
||||||
|
|
||||||
|
NUR ERLEDIGTES WIRD GESPEICHERT. Eine Zeile heisst "abgehakt", keine
|
||||||
|
Zeile heisst "offen". Die Alternative waere, fuer jede Person jeden
|
||||||
|
Schritt mit einem Ja/Nein anzulegen -- dann muesste jemand beim
|
||||||
|
Anlegen einer Person an die Anleitung denken, und beim Hinzufuegen
|
||||||
|
eines Schrittes an alle Personen. Beides vergisst man.
|
||||||
|
|
||||||
|
zeile_id UND NICHT EIN EIGENER SCHLUESSEL. Aendert DogFather in
|
||||||
|
Etappe 4 den Text eines Schrittes, behaelt die Zeile ihre Nummer und
|
||||||
|
der Haken bleibt stehen -- richtig, es ist derselbe Schritt. Loescht
|
||||||
|
er ihn und legt einen neuen an, ist der Haken weg -- auch richtig,
|
||||||
|
es ist ein anderer Schritt. ON DELETE CASCADE sorgt dafuer, dass
|
||||||
|
keine Haken auf geloeschte Schritte zeigen.
|
||||||
|
|
||||||
|
KEINE SPALTE erledigt. Ein Haken, den man wegnimmt, loescht die
|
||||||
|
Zeile. Ein Feld mit 0 und 1 waere eine zweite Art, "offen" zu sagen,
|
||||||
|
und dann gaebe es zwei -- fehlende Zeile und Zeile mit 0.
|
||||||
|
====================================================================== */
|
||||||
|
CREATE TABLE IF NOT EXISTS anl_stand (
|
||||||
|
person_id INTEGER NOT NULL REFERENCES personen(id) ON DELETE CASCADE,
|
||||||
|
zeile_id INTEGER NOT NULL REFERENCES anl_zeile(id) ON DELETE CASCADE,
|
||||||
|
erledigt_am TEXT NOT NULL,
|
||||||
|
PRIMARY KEY (person_id, zeile_id)
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS idx_anl_stand_person ON anl_stand (person_id);
|
||||||
`;
|
`;
|
||||||
|
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
|
|||||||
@@ -66,13 +66,14 @@ anlegen("Luna", "creator", "CODE-LUNA-0001");
|
|||||||
anlegen("Filipe", "admin", "CODE-DOGI-0001");
|
anlegen("Filipe", "admin", "CODE-DOGI-0001");
|
||||||
d.close();
|
d.close();
|
||||||
|
|
||||||
function anfrage(pfad, methode, koerper) {
|
function anfrage(pfad, methode, koerper, keks) {
|
||||||
return new Promise((fertig, schief) => {
|
return new Promise((fertig, schief) => {
|
||||||
const daten = koerper ? JSON.stringify(koerper) : null;
|
const daten = koerper ? JSON.stringify(koerper) : null;
|
||||||
const a = httpAnfrage({
|
const a = httpAnfrage({
|
||||||
host: "127.0.0.1", port: PORT, path: pfad, method: methode,
|
host: "127.0.0.1", port: PORT, path: pfad, method: methode,
|
||||||
headers: {
|
headers: {
|
||||||
Origin: `http://127.0.0.1:${PORT}`,
|
Origin: `http://127.0.0.1:${PORT}`,
|
||||||
|
...(keks ? { Cookie: keks } : {}),
|
||||||
...(daten ? { "Content-Type": "application/json",
|
...(daten ? { "Content-Type": "application/json",
|
||||||
"Content-Length": Buffer.byteLength(daten) } : {}),
|
"Content-Length": Buffer.byteLength(daten) } : {}),
|
||||||
},
|
},
|
||||||
@@ -127,6 +128,11 @@ const nachmessen = () => ({
|
|||||||
fragen: document.querySelectorAll(".an-frage").length,
|
fragen: document.querySelectorAll(".an-frage").length,
|
||||||
ohne: document.getElementById("ohne-fassung")?.hidden === false
|
ohne: document.getElementById("ohne-fassung")?.hidden === false
|
||||||
? document.getElementById("ohne-fassung").textContent.slice(0, 70) : null,
|
? document.getElementById("ohne-fassung").textContent.slice(0, 70) : null,
|
||||||
|
/* Etappe 2 */
|
||||||
|
haken: document.querySelectorAll(".an-haken").length,
|
||||||
|
abgehakt: document.querySelectorAll(".an-haken__feld:checked").length,
|
||||||
|
stand: document.getElementById("stand")?.hidden === false
|
||||||
|
? document.getElementById("stand-satz").textContent : "(kein Fortschritt)",
|
||||||
});
|
});
|
||||||
|
|
||||||
async function bild(name, keks, breite, hoehe, vorher) {
|
async function bild(name, keks, breite, hoehe, vorher) {
|
||||||
@@ -162,6 +168,7 @@ async function bild(name, keks, breite, hoehe, vorher) {
|
|||||||
console.log(` ${String(s.stufe).padEnd(13)} ${String(s.zahl).padEnd(3)} `
|
console.log(` ${String(s.stufe).padEnd(13)} ${String(s.zahl).padEnd(3)} `
|
||||||
+ `${s.offen ? "offen" : "zu "} ${s.sichtbar ? "" : "(ausgeblendet)"}`);
|
+ `${s.offen ? "offen" : "zu "} ${s.sichtbar ? "" : "(ausgeblendet)"}`);
|
||||||
}
|
}
|
||||||
|
console.log(` Fortschritt: ${blick.stand} Haken: ${blick.haken} (${blick.abgehakt} gesetzt)`);
|
||||||
console.log(` Karten ohne Farbe: ${blick.ohneTon.length ? blick.ohneTon.join(", ") : "keine"}`);
|
console.log(` Karten ohne Farbe: ${blick.ohneTon.length ? blick.ohneTon.join(", ") : "keine"}`);
|
||||||
console.log(` Quer schieben: ${blick.schiebtQuer ? "JA — Befund!" : "nein"}`);
|
console.log(` Quer schieben: ${blick.schiebtQuer ? "JA — Befund!" : "nein"}`);
|
||||||
console.log(` Zu kleine Ziele: ${blick.zuKlein.length ? blick.zuKlein.join(", ") : "keine"}`);
|
console.log(` Zu kleine Ziele: ${blick.zuKlein.length ? blick.zuKlein.join(", ") : "keine"}`);
|
||||||
@@ -184,6 +191,80 @@ await bild("creator-nur-muss", keksCreator, 412, 950, async (seite) => {
|
|||||||
und nicht wie ein Fehler. */
|
und nicht wie ein Fehler. */
|
||||||
await bild("dogfather-ohne-sicht", keksDogi, 412, 950);
|
await bild("dogfather-ohne-sicht", keksDogi, 412, 950);
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
DIE BREITE KACHEL AUF DER STARTSEITE (Etappe 2)
|
||||||
|
|
||||||
|
Sie entsteht nur, solange Erste Schritte offen sind. Beide Zustaende
|
||||||
|
werden gemessen -- ein Bild von "sie ist da" allein beweist nicht,
|
||||||
|
dass sie auch wieder verschwindet, und genau das ist ihr Versprechen.
|
||||||
|
===================================================================== */
|
||||||
|
async function startBild(name, keks, breite) {
|
||||||
|
const kontext = await browser.newContext({
|
||||||
|
viewport: { width: breite, height: 1100 }, hasTouch: breite <= 860,
|
||||||
|
});
|
||||||
|
await kontext.addCookies(keks.split("; ").map((k) => {
|
||||||
|
const [n, ...r] = k.split("=");
|
||||||
|
return { name: n, value: r.join("="), domain: "127.0.0.1", path: "/" };
|
||||||
|
}));
|
||||||
|
const seite = await kontext.newPage();
|
||||||
|
const konsole = [];
|
||||||
|
seite.on("console", (e) => {
|
||||||
|
if (e.type() === "error" && !/favicon|net::ERR/i.test(e.text())) konsole.push(e.text().slice(0, 160));
|
||||||
|
});
|
||||||
|
await seite.goto(`http://127.0.0.1:${PORT}/workspace/start.html`, { waitUntil: "networkidle" });
|
||||||
|
await seite.waitForTimeout(1400);
|
||||||
|
const blick = await seite.evaluate(() => {
|
||||||
|
const gruppen = [...document.querySelectorAll(".gruppe")].map((g) =>
|
||||||
|
g.querySelector(".gruppe__name")?.textContent);
|
||||||
|
const breiteKachel = [...document.querySelectorAll('.kachel[data-gross="ja"]')]
|
||||||
|
.map((k) => k.querySelector(".kachel__name")?.textContent
|
||||||
|
+ " [" + (k.querySelector(".kachel__zahl")?.textContent || "ohne Zahl") + "]");
|
||||||
|
const dran = [...document.querySelectorAll(".dran__text")].map((e) => e.textContent);
|
||||||
|
return { gruppen, breiteKachel, dran,
|
||||||
|
anleitungKacheln: [...document.querySelectorAll('a[href="anleitung.html"]')].length };
|
||||||
|
});
|
||||||
|
/* Ganze Seite: Die breite Kachel sitzt unter der Zentrale und waere
|
||||||
|
im Ausschnitt nicht zu sehen -- also waere das Bild kein Beleg. */
|
||||||
|
await seite.screenshot({ path: `bild-anleitung-${name}.png`, fullPage: true });
|
||||||
|
console.log(`
|
||||||
|
--- ${name} (${breite}px, Startseite) ---`);
|
||||||
|
console.log(` Gruppen: ${blick.gruppen.join(" | ")}`);
|
||||||
|
console.log(` Breite Kacheln: ${blick.breiteKachel.length ? blick.breiteKachel.join(", ") : "keine"}`);
|
||||||
|
console.log(` Wege zur Anleitung: ${blick.anleitungKacheln}`);
|
||||||
|
console.log(` Was ist dran: ${blick.dran.join(" | ") || "nichts"}`);
|
||||||
|
if (konsole.length) console.log(` KONSOLE: ${konsole.join(" | ")}`);
|
||||||
|
await kontext.close();
|
||||||
|
return blick;
|
||||||
|
}
|
||||||
|
|
||||||
|
await startBild("start-mit-schritten", keksCreator, 412);
|
||||||
|
|
||||||
|
/* Jetzt alle fuenf abhaken -- ueber die Schnittstelle, wie es die
|
||||||
|
Seite auch tut -- und noch einmal hinsehen. */
|
||||||
|
const standVorher = await anfrage("/workspace/api/anleitung", "GET", null, keksCreator);
|
||||||
|
if (standVorher.code !== 200) {
|
||||||
|
console.log(`ABBRUCH: Anleitung nicht abrufbar (${standVorher.code})`);
|
||||||
|
process.exit(2);
|
||||||
|
}
|
||||||
|
const schritte = JSON.parse(standVorher.text).schritte || [];
|
||||||
|
for (const sch of schritte) {
|
||||||
|
await new Promise((fertig, schief) => {
|
||||||
|
const daten = JSON.stringify({ erledigt: true });
|
||||||
|
const a = httpAnfrage({
|
||||||
|
host: "127.0.0.1", port: PORT, path: `/workspace/api/anleitung/schritt/${sch.id}`,
|
||||||
|
method: "PUT",
|
||||||
|
headers: { Cookie: keksCreator, "Content-Type": "application/json",
|
||||||
|
"Content-Length": Buffer.byteLength(daten), Origin: `http://127.0.0.1:${PORT}` },
|
||||||
|
}, (antwort) => { antwort.on("data", () => {}); antwort.on("end", fertig); });
|
||||||
|
a.on("error", schief);
|
||||||
|
a.write(daten); a.end();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
console.log(`
|
||||||
|
(${schritte.length} Schritte abgehakt)`);
|
||||||
|
await startBild("start-ohne-schritte", keksCreator, 412);
|
||||||
|
await bild("creator-fertig", keksCreator, 412, 950);
|
||||||
|
|
||||||
await browser.close();
|
await browser.close();
|
||||||
try { rmSync(ordner, { recursive: true, force: true }); } catch { /* egal */ }
|
try { rmSync(ordner, { recursive: true, force: true }); } catch { /* egal */ }
|
||||||
console.log("\nBilder geschrieben: bild-anleitung-*.png");
|
console.log("\nBilder geschrieben: bild-anleitung-*.png");
|
||||||
|
|||||||
+136
-2
@@ -162,12 +162,12 @@ d.close();
|
|||||||
const { request } = await import("node:http");
|
const { request } = await import("node:http");
|
||||||
const CREW_HOST = "crew.dogfather-universe.com";
|
const CREW_HOST = "crew.dogfather-universe.com";
|
||||||
|
|
||||||
function roh(pfad, host, koerper, keks) {
|
function roh(pfad, host, koerper, keks, methode) {
|
||||||
return new Promise((fertig, schief) => {
|
return new Promise((fertig, schief) => {
|
||||||
const daten = koerper ? JSON.stringify(koerper) : null;
|
const daten = koerper ? JSON.stringify(koerper) : null;
|
||||||
const a = request({
|
const a = request({
|
||||||
host: "127.0.0.1", port: PORT, path: pfad,
|
host: "127.0.0.1", port: PORT, path: pfad,
|
||||||
method: daten ? "POST" : "GET",
|
method: methode || (daten ? "POST" : "GET"),
|
||||||
headers: {
|
headers: {
|
||||||
...(host ? { Host: host } : {}),
|
...(host ? { Host: host } : {}),
|
||||||
Origin: host ? `https://${host}` : BASIS,
|
Origin: host ? `https://${host}` : BASIS,
|
||||||
@@ -388,6 +388,140 @@ ok(nachher?.merke === "VON HAND GEAENDERT",
|
|||||||
`der geaenderte Text steht noch da ("${(nachher?.merke || "").slice(0, 24)}")`);
|
`der geaenderte Text steht noch da ("${(nachher?.merke || "").slice(0, 24)}")`);
|
||||||
ok(anzahlNachher === 18, `und es sind keine Karten dazugekommen (${anzahlNachher})`);
|
ok(anzahlNachher === 18, `und es sind keine Karten dazugekommen (${anzahlNachher})`);
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
ETAPPE 2 — DIE ERSTEN SCHRITTE ZUM ABHAKEN
|
||||||
|
===================================================================== */
|
||||||
|
melde("\n=== Abhaken: der Anfangszustand ===");
|
||||||
|
const schritte0 = creator.j.schritte || [];
|
||||||
|
ok(schritte0.every((s) => Number.isInteger(s.id) && s.id > 0),
|
||||||
|
"jeder Schritt hat eine Nummer");
|
||||||
|
ok(schritte0.every((s) => s.erledigt === false),
|
||||||
|
"am Anfang ist kein Schritt abgehakt");
|
||||||
|
ok(creator.j.fortschritt?.erledigt === 0 && creator.j.fortschritt?.gesamt === 5,
|
||||||
|
`Fortschritt 0 von 5 (${creator.j.fortschritt?.erledigt} von ${creator.j.fortschritt?.gesamt})`);
|
||||||
|
ok(creator.j.darf_abhaken === true, "ein Creator darf seine eigenen Schritte abhaken");
|
||||||
|
|
||||||
|
const haken = (rolle, id, erledigt, host = null) =>
|
||||||
|
roh(`/workspace/api/anleitung/schritt/${id}`, host, { erledigt }, kekse[rolle], "PUT");
|
||||||
|
|
||||||
|
melde("\n=== Abhaken: setzen, zaehlen, wegnehmen ===");
|
||||||
|
const ersterId = schritte0[0].id;
|
||||||
|
const r1 = await haken("creator", ersterId, true);
|
||||||
|
let j1 = null; try { j1 = JSON.parse(r1.text); } catch { /* bleibt null */ }
|
||||||
|
ok(r1.code === 200 && j1?.erledigt === true, `Schritt abgehakt (HTTP ${r1.code})`);
|
||||||
|
ok(j1?.fortschritt?.erledigt === 1, `Fortschritt jetzt 1 von 5 (${j1?.fortschritt?.erledigt})`);
|
||||||
|
|
||||||
|
/* ZWEIMAL DASSELBE IST DERSELBE ZUSTAND. Bei wackeligem Mobilfunk
|
||||||
|
tippt man nach, und das darf nicht doppelt zaehlen. */
|
||||||
|
const r2 = await haken("creator", ersterId, true);
|
||||||
|
let j2 = null; try { j2 = JSON.parse(r2.text); } catch { /* bleibt null */ }
|
||||||
|
ok(r2.code === 200 && j2?.fortschritt?.erledigt === 1,
|
||||||
|
`zweimal abhaken zaehlt einmal (${j2?.fortschritt?.erledigt})`);
|
||||||
|
|
||||||
|
/* Und er haelt ueber einen neuen Abruf -- sonst stuende er nur im
|
||||||
|
Arbeitsspeicher der Antwort. */
|
||||||
|
const nachHaken = await holen("creator");
|
||||||
|
ok(nachHaken.j?.fortschritt?.erledigt === 1,
|
||||||
|
`der Haken steht auch beim naechsten Laden (${nachHaken.j?.fortschritt?.erledigt} von 5)`);
|
||||||
|
ok(nachHaken.j?.schritte?.find((s) => s.id === ersterId)?.erledigt === true,
|
||||||
|
"…und zwar an genau dem Schritt, der angetippt wurde");
|
||||||
|
|
||||||
|
const r3 = await haken("creator", ersterId, false);
|
||||||
|
let j3 = null; try { j3 = JSON.parse(r3.text); } catch { /* bleibt null */ }
|
||||||
|
ok(r3.code === 200 && j3?.fortschritt?.erledigt === 0,
|
||||||
|
`der Haken laesst sich wieder wegnehmen (${j3?.fortschritt?.erledigt})`);
|
||||||
|
|
||||||
|
melde("\n=== Abhaken: wer darf das nicht ===");
|
||||||
|
/* Ein Creator darf keinen Schritt abhaken, der es gar nicht ist --
|
||||||
|
sonst meldete der Fortschritt eines Tages 7 von 5. */
|
||||||
|
const eineFrage = await (async () => {
|
||||||
|
const d3 = new DatabaseSync(process.env.WORKSPACE_DB, { readOnly: true });
|
||||||
|
const z = d3.prepare("SELECT id FROM anl_zeile WHERE art = 'frage' LIMIT 1").get();
|
||||||
|
d3.close();
|
||||||
|
return z?.id;
|
||||||
|
})();
|
||||||
|
braucht(!!eineFrage, "keine Frage-Zeile gefunden, mit der sich das pruefen liesse");
|
||||||
|
const rFrage = await haken("creator", eineFrage, true);
|
||||||
|
ok(rFrage.code === 404,
|
||||||
|
`eine Frage laesst sich nicht abhaken (HTTP ${rFrage.code}, erwartet 404)`);
|
||||||
|
|
||||||
|
/* DogFather hat keine eigene Fassung -- also auch keine Schritte. */
|
||||||
|
const rDogi = await haken("admin", ersterId, true);
|
||||||
|
ok(rDogi.code === 404,
|
||||||
|
`DogFather kann einen Creator-Schritt nicht abhaken (HTTP ${rDogi.code}, erwartet 404)`);
|
||||||
|
const rModi = await haken("modi", ersterId, true, CREW_HOST);
|
||||||
|
ok(rModi.code === 404, `ein Modi auch nicht (HTTP ${rModi.code}, erwartet 404)`);
|
||||||
|
|
||||||
|
/* Unsinn als Nummer darf nicht durchrutschen. */
|
||||||
|
const rUnsinn = await roh("/workspace/api/anleitung/schritt/abc", null,
|
||||||
|
{ erledigt: true }, kekse.creator, "PUT");
|
||||||
|
ok(rUnsinn.code === 400 || rUnsinn.code === 404,
|
||||||
|
`keine Nummer -> abgelehnt (HTTP ${rUnsinn.code})`);
|
||||||
|
|
||||||
|
/* GEGENPROBE: Die Ablehnungen oben koennten auch davon kommen, dass
|
||||||
|
der Weg gar nicht existiert. Dass er funktioniert, ist oben bewiesen
|
||||||
|
-- hier wird es noch einmal unmittelbar daneben gezeigt. */
|
||||||
|
const rEcht = await haken("creator", schritte0[1].id, true);
|
||||||
|
ok(rEcht.code === 200,
|
||||||
|
"Gegenprobe: derselbe Weg nimmt einen gueltigen Schritt an");
|
||||||
|
await haken("creator", schritte0[1].id, false);
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
DER HINWEIS „Erste Schritte noch offen"
|
||||||
|
===================================================================== */
|
||||||
|
melde("\n=== Der Hinweis ===");
|
||||||
|
async function hinweise(rolle, host = null) {
|
||||||
|
const r = await roh("/workspace/api/hinweise", host, null, kekse[rolle]);
|
||||||
|
let j = null; try { j = JSON.parse(r.text); } catch { /* bleibt null */ }
|
||||||
|
return { code: r.code, liste: j?.hinweise || [] };
|
||||||
|
}
|
||||||
|
|
||||||
|
const hCreator = await hinweise("creator");
|
||||||
|
const hSchritte = hCreator.liste.find((h) => h.art === "anl_schritte");
|
||||||
|
ok(hCreator.code === 200 && !!hSchritte,
|
||||||
|
`der Creator bekommt den Hinweis (HTTP ${hCreator.code})`);
|
||||||
|
ok(hSchritte?.anzahl === 5, `…mit allen fuenf offenen Schritten (${hSchritte?.anzahl})`);
|
||||||
|
ok(hSchritte?.ziel === "anleitung.html", `…und dem Weg zur Anleitung (${hSchritte?.ziel})`);
|
||||||
|
|
||||||
|
/* Die Crew darf den Hinweis NICHT bekommen -- die dritte Tuer, durch
|
||||||
|
die am 15.09.2026 ein Weg fuer die Community gerutscht ist. */
|
||||||
|
const hModi = await hinweise("modi", CREW_HOST);
|
||||||
|
/* DIE ANTWORT MUSS ANGEKOMMEN SEIN. Ohne `code === 200` waere diese
|
||||||
|
Zeile auch dann gruen, wenn die ganze Hinweis-Schnittstelle fuer den
|
||||||
|
Modi scheitert -- eine leere Liste sieht genauso aus wie "kein
|
||||||
|
Hinweis fuer ihn dabei". Dieselbe Falle wie am 03.09.2026 beim
|
||||||
|
Gitea-Abgleich: Eine Pruefung, die ihre Voraussetzung nicht hat,
|
||||||
|
darf nicht wie Erfolg aussehen. */
|
||||||
|
ok(hModi.code === 200 && !hModi.liste.some((h) => h.art === "anl_schritte"),
|
||||||
|
`ein Modi bekommt den Hinweis nicht (HTTP ${hModi.code}, `
|
||||||
|
+ `${hModi.liste.length} andere Hinweise)`);
|
||||||
|
const hDogi = await hinweise("admin");
|
||||||
|
ok(hDogi.code === 200 && !hDogi.liste.some((h) => h.art === "anl_schritte"),
|
||||||
|
`DogFather bekommt ihn auch nicht — er hat keine Einweisung `
|
||||||
|
+ `(HTTP ${hDogi.code}, ${hDogi.liste.length} andere Hinweise)`);
|
||||||
|
|
||||||
|
/* ---- Und er verschwindet von selbst ---- */
|
||||||
|
melde("\n=== Alles abgehakt: der Hinweis geht von allein ===");
|
||||||
|
for (const s of schritte0) await haken("creator", s.id, true);
|
||||||
|
const fertig = await holen("creator");
|
||||||
|
ok(fertig.j?.fortschritt?.erledigt === 5,
|
||||||
|
`alle fuenf abgehakt (${fertig.j?.fortschritt?.erledigt} von ${fertig.j?.fortschritt?.gesamt})`);
|
||||||
|
const hNachher = await hinweise("creator");
|
||||||
|
ok(!hNachher.liste.some((h) => h.art === "anl_schritte"),
|
||||||
|
"der Hinweis ist weg, ohne dass ihn jemand abgeschaltet hat");
|
||||||
|
|
||||||
|
/* GEGENPROBE: Er kommt wieder, wenn wieder etwas offen ist. Ohne das
|
||||||
|
waere „weg" auch dann gruen, wenn der Hinweis gar nicht mehr
|
||||||
|
entstehen KANN. */
|
||||||
|
await haken("creator", ersterId, false);
|
||||||
|
const hWieder = await hinweise("creator");
|
||||||
|
ok(hWieder.liste.some((h) => h.art === "anl_schritte" && h.anzahl === 1),
|
||||||
|
"Gegenprobe: ein wieder geoeffneter Schritt bringt ihn zurueck");
|
||||||
|
|
||||||
|
/* Aufraeumen, damit die Pruefungen darunter einen sauberen Stand
|
||||||
|
sehen -- der Haken auf Schritt 2 und die vier von eben. */
|
||||||
|
for (const s of schritte0) await haken("creator", s.id, false);
|
||||||
|
|
||||||
/* ---------- Abschluss ------------------------------------------------ */
|
/* ---------- Abschluss ------------------------------------------------ */
|
||||||
try { rmSync(ordner, { recursive: true, force: true }); } catch { /* egal */ }
|
try { rmSync(ordner, { recursive: true, force: true }); } catch { /* egal */ }
|
||||||
console.log(`\n${fehler ? "FEHLER: " + fehler : "Alles in Ordnung"} — ${geprueft} Prüfungen`);
|
console.log(`\n${fehler ? "FEHLER: " + fehler : "Alles in Ordnung"} — ${geprueft} Prüfungen`);
|
||||||
|
|||||||
@@ -111,14 +111,57 @@ ok(TOENE.size >= 20, `${TOENE.size} Farben in start.css gefunden`);
|
|||||||
: `alle ${benutzt.size} benutzten Tonnummern haben eine Farbe`);
|
: `alle ${benutzt.size} benutzten Tonnummern haben eine Farbe`);
|
||||||
}
|
}
|
||||||
|
|
||||||
const liste = [...TOENE.entries()].map(([n, hex]) => ({ n, hex }));
|
/* =======================================================================
|
||||||
|
ZWEI HAEUSER, ZWEI PALETTEN (06.10.2026)
|
||||||
|
=======================================================================
|
||||||
|
|
||||||
|
Diese Messung verglich bisher ALLE Toene miteinander. Das war
|
||||||
|
richtig, solange es ein Haus gab. Seit dem 24.09.2026 gibt es zwei
|
||||||
|
(Filipe: "vermerk dass ab jetzt jeder umbau immer getrennt abgefuehrt
|
||||||
|
wird auf den zwei seiten"), und eine Kachel des einen steht nie
|
||||||
|
neben einer Kachel des anderen -- sie liegen auf verschiedenen
|
||||||
|
Adressen, und niemand hat beide gleichzeitig auf dem Bildschirm.
|
||||||
|
|
||||||
|
WARUM DAS NICHT NUR EINE AUSREDE IST: Die Trennung macht die
|
||||||
|
Messung SCHAERFER, nicht weicher. Vorher verteilte sich die Grenze
|
||||||
|
0,09 auf 48 Farben -- rechnerisch wurde das ab 47 unmoeglich, und
|
||||||
|
die Pruefung war entsprechend rot, ohne dass ein Mensch je zwei
|
||||||
|
verwechselbare Kacheln nebeneinander gesehen haette. Jetzt gilt
|
||||||
|
0,09 je Haus mit rund 24 Farben, und das ist zu halten.
|
||||||
|
|
||||||
|
Fuer das andere Haus bleibt ein Boden (0,06). Er bewacht keinen
|
||||||
|
Sehfehler, sondern einen Denkfehler: Wuerden zwei Toene fast gleich,
|
||||||
|
koennte jemand sie fuer denselben halten und beim naechsten Umbau
|
||||||
|
zusammenlegen.
|
||||||
|
|
||||||
|
WELCHER TON ZU WELCHEM HAUS GEHOERT, wird ABGELEITET: Was in
|
||||||
|
bereiche.js steht, gehoert zur Agentur -- diese Datei IST die
|
||||||
|
Kachelliste des Agenturhauses. Alles andere kommt aus dem Server
|
||||||
|
und damit aus dem Crew-Haus. Eine Liste von Hand waere die, die
|
||||||
|
beim naechsten Umzug einer Kachel still falsch wird.
|
||||||
|
======================================================================= */
|
||||||
|
const AGENTUR_TOENE = (() => {
|
||||||
|
const quelle = readFileSync(join(HIER, "../workspace/assets/js/bereiche.js"), "utf8");
|
||||||
|
const raus = new Set();
|
||||||
|
for (const m of quelle.matchAll(/ton:\s*(\d+)/g)) raus.add(Number(m[1]));
|
||||||
|
return raus;
|
||||||
|
})();
|
||||||
|
const hausVon = (n) => (AGENTUR_TOENE.has(n) ? "agentur" : "crew");
|
||||||
|
|
||||||
|
const liste = [...TOENE.entries()].map(([n, hex]) => ({ n, hex, haus: hausVon(n) }));
|
||||||
|
ok(AGENTUR_TOENE.size > 15 && AGENTUR_TOENE.size < TOENE.size,
|
||||||
|
`${AGENTUR_TOENE.size} der ${TOENE.size} Toene gehoeren zum Agenturhaus`);
|
||||||
|
|
||||||
const paare = [];
|
const paare = [];
|
||||||
|
const fremdPaare = [];
|
||||||
for (let i = 0; i < liste.length; i++) {
|
for (let i = 0; i < liste.length; i++) {
|
||||||
for (let j = i + 1; j < liste.length; j++) {
|
for (let j = i + 1; j < liste.length; j++) {
|
||||||
paare.push({ a: liste[i], b: liste[j], d: abstand(liste[i].hex, liste[j].hex) });
|
const e = { a: liste[i], b: liste[j], d: abstand(liste[i].hex, liste[j].hex) };
|
||||||
|
(liste[i].haus === liste[j].haus ? paare : fremdPaare).push(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
paare.sort((x, y) => x.d - y.d);
|
paare.sort((x, y) => x.d - y.d);
|
||||||
|
fremdPaare.sort((x, y) => x.d - y.d);
|
||||||
|
|
||||||
/* ==== DIE GRENZE WAR FUER EINUNDZWANZIG FARBEN GESETZT (25.09.2026)
|
/* ==== DIE GRENZE WAR FUER EINUNDZWANZIG FARBEN GESETZT (25.09.2026)
|
||||||
|
|
||||||
@@ -166,10 +209,24 @@ paare.sort((x, y) => x.d - y.d);
|
|||||||
const GRENZE = 0.09;
|
const GRENZE = 0.09;
|
||||||
const HOECHSTENS = 48; // ab 49 fand die Suche nichts mehr, das GRENZE haelt
|
const HOECHSTENS = 48; // ab 49 fand die Suche nichts mehr, das GRENZE haelt
|
||||||
|
|
||||||
|
const BODEN_FREMD = 0.06;
|
||||||
|
|
||||||
ok(paare[0].d >= GRENZE,
|
ok(paare[0].d >= GRENZE,
|
||||||
`kleinster Abstand ${paare[0].d.toFixed(4)} (Grenze ${GRENZE}; `
|
`kleinster Abstand IM SELBEN HAUS ${paare[0].d.toFixed(4)} (Grenze ${GRENZE}) `
|
||||||
+ `am weitesten gefunden wurden rund 0,097 fuer ${liste.length} Farben) `
|
+ `-- Ton ${paare[0].a.n}/${paare[0].b.n} (${paare[0].a.haus}): `
|
||||||
+ `-- ${paare[0].a.hex}/${paare[0].b.hex}`);
|
+ `${paare[0].a.hex}/${paare[0].b.hex}`);
|
||||||
|
|
||||||
|
ok(fremdPaare[0].d >= BODEN_FREMD,
|
||||||
|
`ueber die Haeuser hinweg ${fremdPaare[0].d.toFixed(4)} (Boden ${BODEN_FREMD}) `
|
||||||
|
+ `-- Ton ${fremdPaare[0].a.n}/${fremdPaare[0].b.n}: `
|
||||||
|
+ `${fremdPaare[0].a.hex}/${fremdPaare[0].b.hex}`);
|
||||||
|
|
||||||
|
/* GEGENPROBE ZUR TRENNUNG. Die beiden Zeilen oben koennen nur etwas
|
||||||
|
beweisen, wenn die Einteilung ueberhaupt trennt. Waeren alle Toene
|
||||||
|
in einem Topf, gaebe es keine fremden Paare -- und die zweite Zeile
|
||||||
|
waere gruen, ohne je etwas gemessen zu haben. */
|
||||||
|
ok(paare.length > 0 && fremdPaare.length > 0,
|
||||||
|
`${paare.length} Paare im selben Haus, ${fremdPaare.length} ueber die Haeuser`);
|
||||||
|
|
||||||
ok(liste.length <= HOECHSTENS,
|
ok(liste.length <= HOECHSTENS,
|
||||||
liste.length <= HOECHSTENS
|
liste.length <= HOECHSTENS
|
||||||
|
|||||||
@@ -624,7 +624,33 @@ console.log("\n=== Creator");
|
|||||||
ok(!namen.includes("Personen & Zugänge"), "keine Personenverwaltung");
|
ok(!namen.includes("Personen & Zugänge"), "keine Personenverwaltung");
|
||||||
ok(!namen.includes("Scout-Pipeline"), "keine Scout-Pipeline");
|
ok(!namen.includes("Scout-Pipeline"), "keine Scout-Pipeline");
|
||||||
ok(!namen.includes("Automationen"), "keine Automationen");
|
ok(!namen.includes("Automationen"), "keine Automationen");
|
||||||
ok(r.gruppen.length === 3, `trotzdem drei Gruppen (${r.gruppen.length})`);
|
/* ==================================================================
|
||||||
|
EINE FESTE ZAHL WAR HIER FALSCH (06.10.2026)
|
||||||
|
|
||||||
|
Hier stand `r.gruppen.length === 3`. Seit dem 06.10. bekommt ein
|
||||||
|
Creator, solange seine Ersten Schritte offen sind, zusaetzlich die
|
||||||
|
Gruppe "Fang hier an" mit der Einweisung -- und die verschwindet
|
||||||
|
wieder, sobald er durch ist. Die Zahl ist also je nach Person 3
|
||||||
|
ODER 4, und beides ist richtig.
|
||||||
|
|
||||||
|
Gezaehlt wird deshalb nicht mehr, sondern BENANNT. Das ist auch
|
||||||
|
die schaerfere Pruefung: Die alte Zeile waere gruen geblieben,
|
||||||
|
wenn eine der drei Gruppen verschwindet und eine fremde
|
||||||
|
dazukommt. Diese hier nicht.
|
||||||
|
|
||||||
|
Dieselbe Lehre wie am 06.09.2026 in der Kopfleiste: Wo eine Zahl
|
||||||
|
steht, die jemand beim naechsten Element nachziehen muesste,
|
||||||
|
gehoert eine Regel hin. */
|
||||||
|
const FESTE_GRUPPEN = ["Täglich", "Rund um den Creator", "Wissen"];
|
||||||
|
const ZEITWEILIG = ["Fang hier an"];
|
||||||
|
const fehlend = FESTE_GRUPPEN.filter((n) => !r.gruppenNamen.includes(n));
|
||||||
|
const fremd = r.gruppenNamen.filter(
|
||||||
|
(n) => !FESTE_GRUPPEN.includes(n) && !ZEITWEILIG.includes(n));
|
||||||
|
ok(fehlend.length === 0 && fremd.length === 0,
|
||||||
|
fehlend.length || fremd.length
|
||||||
|
? `Gruppen stimmen nicht -- fehlt: ${fehlend.join(", ") || "nichts"}; `
|
||||||
|
+ `fremd: ${fremd.join(", ") || "nichts"}`
|
||||||
|
: `seine drei festen Gruppen stehen da (${r.gruppenNamen.join(" · ")})`);
|
||||||
ok(r.kacheln.every((k) => k.pfade > 0), "alle Zeichen da");
|
ok(r.kacheln.every((k) => k.pfade > 0), "alle Zeichen da");
|
||||||
/* Von "Team & System" bleibt für ihn genau eine Kachel übrig. Eine
|
/* Von "Team & System" bleibt für ihn genau eine Kachel übrig. Eine
|
||||||
Überschrift, die Team und System verspricht und nur die Bibliothek
|
Überschrift, die Team und System verspricht und nur die Bibliothek
|
||||||
|
|||||||
@@ -67,6 +67,18 @@ function fassungFuer(req) {
|
|||||||
return { person, rolle: String(person?.rolle || "") };
|
return { person, rolle: String(person?.rolle || "") };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** WESSEN Haken werden gezeigt?
|
||||||
|
*
|
||||||
|
* Die der angesehenen Person. DogFather, der die Sicht eines Creators
|
||||||
|
* einnimmt, soll sehen, wie weit DIESER Creator ist — das ist der
|
||||||
|
* Sinn der Sicht. Setzen darf er sie nicht (`darf_abhaken`).
|
||||||
|
*
|
||||||
|
* Ohne gewaehlte Sicht ist es die eigene Person, und das ist der
|
||||||
|
* Normalfall. */
|
||||||
|
function wessenStand(req) {
|
||||||
|
return (req.sicht || req.person)?.id ?? 0;
|
||||||
|
}
|
||||||
|
|
||||||
anleitungRouter.get("/workspace/api/anleitung", (req, res) => {
|
anleitungRouter.get("/workspace/api/anleitung", (req, res) => {
|
||||||
try {
|
try {
|
||||||
const { person, rolle } = fassungFuer(req);
|
const { person, rolle } = fassungFuer(req);
|
||||||
@@ -102,12 +114,21 @@ anleitungRouter.get("/workspace/api/anleitung", (req, res) => {
|
|||||||
FROM anl_karte WHERE haus = ? AND rolle = ?
|
FROM anl_karte WHERE haus = ? AND rolle = ?
|
||||||
ORDER BY reihe, id`).all(HAUS, rolle);
|
ORDER BY reihe, id`).all(HAUS, rolle);
|
||||||
|
|
||||||
|
/* `erledigt` kommt aus derselben Abfrage und nicht aus einer
|
||||||
|
zweiten: Zwei Abfragen koennten zwischen den Zeilen
|
||||||
|
auseinanderlaufen, und dann zeigte der Fortschritt eine andere
|
||||||
|
Zahl als die Haken darunter. */
|
||||||
const zeilen = d.prepare(
|
const zeilen = d.prepare(
|
||||||
`SELECT art, titel, text, ziel, reihe
|
`SELECT z.id, z.art, z.titel, z.text, z.ziel, z.reihe,
|
||||||
FROM anl_zeile WHERE haus = ? AND rolle = ?
|
(s.person_id IS NOT NULL) AS erledigt
|
||||||
ORDER BY art, reihe, id`).all(HAUS, rolle);
|
FROM anl_zeile z
|
||||||
|
LEFT JOIN anl_stand s ON s.zeile_id = z.id AND s.person_id = ?
|
||||||
|
WHERE z.haus = ? AND z.rolle = ?
|
||||||
|
ORDER BY z.art, z.reihe, z.id`).all(wessenStand(req), HAUS, rolle);
|
||||||
|
|
||||||
const nachArt = (art) => zeilen.filter((z) => z.art === art);
|
const nachArt = (art) => zeilen.filter((z) => z.art === art);
|
||||||
|
const schritte = nachArt("schritt");
|
||||||
|
const fertig = schritte.filter((z) => z.erledigt).length;
|
||||||
|
|
||||||
/* DIE ZAHL GEHOERT IN DIE ANTWORT, nicht nur in die Liste. Die
|
/* DIE ZAHL GEHOERT IN DIE ANTWORT, nicht nur in die Liste. Die
|
||||||
Seite kann damit sagen „18 Karten" — und eine Pruefung kann
|
Seite kann damit sagen „18 Karten" — und eine Pruefung kann
|
||||||
@@ -119,7 +140,19 @@ anleitungRouter.get("/workspace/api/anleitung", (req, res) => {
|
|||||||
leitgedanke: kopf?.leitgedanke || "",
|
leitgedanke: kopf?.leitgedanke || "",
|
||||||
stufen: STUFEN,
|
stufen: STUFEN,
|
||||||
saetze: nachArt("satz").map((z) => z.text),
|
saetze: nachArt("satz").map((z) => z.text),
|
||||||
schritte: nachArt("schritt").map((z) => ({ titel: z.titel, text: z.text, ziel: z.ziel })),
|
schritte: schritte.map((z) => ({
|
||||||
|
id: z.id, titel: z.titel, text: z.text, ziel: z.ziel, erledigt: !!z.erledigt,
|
||||||
|
})),
|
||||||
|
/* DER FORTSCHRITT ZAEHLT NUR DIE ERSTEN SCHRITTE -- so steht es
|
||||||
|
im Bauplan, und das ist der Grund, warum es ihn gibt: "Niemand
|
||||||
|
muss 18 Karten abhaken. Fertig ist, wer die Ersten Schritte
|
||||||
|
erledigt hat." */
|
||||||
|
fortschritt: { erledigt: fertig, gesamt: schritte.length },
|
||||||
|
/* Abhaken darf nur, wer diese Fassung auch IST. DogFather, der
|
||||||
|
sich die Sicht eines Creators ansieht, bekommt die Haken zu
|
||||||
|
sehen, kann sie aber nicht setzen -- es waere sonst sein
|
||||||
|
eigener Fortschritt an fremden Schritten. */
|
||||||
|
darf_abhaken: String(req.person?.rolle || "") === rolle,
|
||||||
karten,
|
karten,
|
||||||
nicht: nachArt("nicht").map((z) => ({ titel: z.titel, text: z.text })),
|
nicht: nachArt("nicht").map((z) => ({ titel: z.titel, text: z.text })),
|
||||||
takt: nachArt("takt").map((z) => ({ titel: z.titel, text: z.text })),
|
takt: nachArt("takt").map((z) => ({ titel: z.titel, text: z.text })),
|
||||||
@@ -131,3 +164,118 @@ anleitungRouter.get("/workspace/api/anleitung", (req, res) => {
|
|||||||
res.status(500).json({ fehler: "serverfehler" });
|
res.status(500).json({ fehler: "serverfehler" });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
EINEN ERSTEN SCHRITT ABHAKEN — ODER DEN HAKEN WEGNEHMEN
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
PUT und nicht POST: Der Aufruf setzt einen Zustand auf einen Wert.
|
||||||
|
Zweimal „erledigt" nacheinander ist derselbe Zustand wie einmal —
|
||||||
|
bei einem wackeligen Mobilfunknetz ist das der Unterschied zwischen
|
||||||
|
„nochmal tippen hilft" und „jetzt ist es doppelt".
|
||||||
|
|
||||||
|
WER DARF: nur die Person selbst, und nur an Schritten IHRER Rolle.
|
||||||
|
Beides wird hier geprueft und nicht nur in der Oberflaeche — eine
|
||||||
|
ausgeblendete Schaltflaeche hat noch nie etwas geschuetzt.
|
||||||
|
===================================================================== */
|
||||||
|
anleitungRouter.put("/workspace/api/anleitung/schritt/:id", (req, res) => {
|
||||||
|
try {
|
||||||
|
const person = req.person;
|
||||||
|
if (person?.haus === "crew") return res.status(404).json({ fehler: "nicht_hier" });
|
||||||
|
|
||||||
|
const id = Number(req.params.id);
|
||||||
|
if (!Number.isInteger(id) || id <= 0) {
|
||||||
|
return res.status(400).json({ fehler: "keine_nummer" });
|
||||||
|
}
|
||||||
|
const erledigt = req.body?.erledigt === true;
|
||||||
|
|
||||||
|
const d = db();
|
||||||
|
/* DIE ZEILE MUSS EIN SCHRITT SEIN UND DER EIGENEN ROLLE GEHOEREN.
|
||||||
|
Ohne `art = 'schritt'` liesse sich jede Zeile abhaken — auch eine
|
||||||
|
Frage oder eine Rhythmus-Zeile. Das faellt niemandem auf, bis
|
||||||
|
der Fortschritt eines Tages 7 von 5 meldet. */
|
||||||
|
const zeile = d.prepare(
|
||||||
|
`SELECT id FROM anl_zeile
|
||||||
|
WHERE id = ? AND art = 'schritt' AND haus = ? AND rolle = ?`)
|
||||||
|
.get(id, HAUS, String(person?.rolle || ""));
|
||||||
|
if (!zeile) return res.status(404).json({ fehler: "kein_schritt" });
|
||||||
|
|
||||||
|
if (erledigt) {
|
||||||
|
d.prepare(
|
||||||
|
`INSERT INTO anl_stand (person_id, zeile_id, erledigt_am) VALUES (?,?,?)
|
||||||
|
ON CONFLICT(person_id, zeile_id) DO NOTHING`)
|
||||||
|
.run(person.id, id, new Date().toISOString());
|
||||||
|
} else {
|
||||||
|
d.prepare("DELETE FROM anl_stand WHERE person_id = ? AND zeile_id = ?")
|
||||||
|
.run(person.id, id);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Der neue Stand kommt zurueck, damit die Seite ihn nicht selbst
|
||||||
|
hochrechnen muss. Eine Seite, die mitzaehlt, zaehlt irgendwann
|
||||||
|
anders als der Server. */
|
||||||
|
const stand = d.prepare(
|
||||||
|
`SELECT COUNT(*) AS gesamt,
|
||||||
|
SUM(CASE WHEN s.person_id IS NOT NULL THEN 1 ELSE 0 END) AS erledigt
|
||||||
|
FROM anl_zeile z
|
||||||
|
LEFT JOIN anl_stand s ON s.zeile_id = z.id AND s.person_id = ?
|
||||||
|
WHERE z.haus = ? AND z.rolle = ? AND z.art = 'schritt'`)
|
||||||
|
.get(person.id, HAUS, String(person.rolle));
|
||||||
|
|
||||||
|
res.json({
|
||||||
|
erledigt,
|
||||||
|
fortschritt: { erledigt: Number(stand?.erledigt || 0), gesamt: Number(stand?.gesamt || 0) },
|
||||||
|
});
|
||||||
|
} catch (fehler) {
|
||||||
|
console.error("[workspace] Anleitung abhaken:", fehler?.message);
|
||||||
|
res.status(500).json({ fehler: "serverfehler" });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
DER HINWEIS: „Erste Schritte noch offen"
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
EINE QUELLE, ZWEI ANZEIGEN. Diese Funktion speist sowohl die Zeile
|
||||||
|
unter „Was ist dran" als auch die Zahl an der Kachel — und ab dieser
|
||||||
|
Etappe zusaetzlich die breite Kachel oben auf der Startseite.
|
||||||
|
|
||||||
|
Das ist kein Nebeneffekt, sondern die Regel des Hauses: Der Bauplan
|
||||||
|
wollte einen Punkt bei „Was ist dran" UND einen eigenen Zaehler an
|
||||||
|
der Kachel. Zwei getrennt gebaute Zaehler zeigen irgendwann zwei
|
||||||
|
verschiedene Zahlen uebereinander auf einem Bildschirm, und dann
|
||||||
|
glaubt man keiner mehr.
|
||||||
|
|
||||||
|
`try` um alles: Ein Fehler hier wuerde sonst die GANZE Hinweisliste
|
||||||
|
mitnehmen — Aufgaben, Termine, Reviews. Ein kaputter Hinweis darf
|
||||||
|
nicht die zwoelf gesunden daneben loeschen.
|
||||||
|
===================================================================== */
|
||||||
|
export function offeneHinweise(person) {
|
||||||
|
try {
|
||||||
|
if (!person || person.haus === "crew") return [];
|
||||||
|
const rolle = String(person.rolle || "");
|
||||||
|
if (!FASSUNGEN.includes(rolle)) return [];
|
||||||
|
|
||||||
|
const stand = db().prepare(
|
||||||
|
`SELECT COUNT(*) AS gesamt,
|
||||||
|
SUM(CASE WHEN s.person_id IS NOT NULL THEN 1 ELSE 0 END) AS erledigt
|
||||||
|
FROM anl_zeile z
|
||||||
|
LEFT JOIN anl_stand s ON s.zeile_id = z.id AND s.person_id = ?
|
||||||
|
WHERE z.haus = ? AND z.rolle = ? AND z.art = 'schritt'`)
|
||||||
|
.get(person.id, HAUS, rolle);
|
||||||
|
|
||||||
|
const gesamt = Number(stand?.gesamt || 0);
|
||||||
|
const offen = gesamt - Number(stand?.erledigt || 0);
|
||||||
|
/* Gibt es fuer diese Rolle noch gar keine Schritte (Etappe 3 steht
|
||||||
|
aus), ist `gesamt` 0 und `offen` 0 — kein Hinweis. Richtig: Ein
|
||||||
|
„0 Schritte offen" waere eine Meldung ueber nichts. */
|
||||||
|
if (offen <= 0) return [];
|
||||||
|
|
||||||
|
return [{
|
||||||
|
art: "anl_schritte", stufe: "offen",
|
||||||
|
text: "Erste Schritte noch offen", ziel: "anleitung.html", anzahl: offen,
|
||||||
|
}];
|
||||||
|
} catch (fehler) {
|
||||||
|
console.error("[workspace] Anleitung-Hinweise:", fehler?.message);
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ import { sichtbar as sichtbarDateien } from "./workspace-dateien.js";
|
|||||||
import { sichtbar as sichtbarEintraege } from "./workspace-bereiche.js";
|
import { sichtbar as sichtbarEintraege } from "./workspace-bereiche.js";
|
||||||
import { stufenFuer } from "./workspace-checkliste.js";
|
import { stufenFuer } from "./workspace-checkliste.js";
|
||||||
import { offeneHinweise as zielHinweise } from "./workspace-manager-ziele.js";
|
import { offeneHinweise as zielHinweise } from "./workspace-manager-ziele.js";
|
||||||
|
import { offeneHinweise as anleitungHinweise } from "./workspace-anleitung.js";
|
||||||
|
|
||||||
export const hinweisRouter = express.Router();
|
export const hinweisRouter = express.Router();
|
||||||
|
|
||||||
@@ -424,6 +425,19 @@ hinweisRouter.get("/workspace/api/hinweise", (req, res) => {
|
|||||||
dazu(h.art, h.stufe, h.text, h.ziel, h.anzahl);
|
dazu(h.art, h.stufe, h.text, h.ziel, h.anzahl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ---------- Die Einweisung (06.10.2026, Etappe 2) ----------------
|
||||||
|
Dieselbe Bauart wie die Monatsziele darueber: Das Fachmodul
|
||||||
|
rechnet, diese Datei verteilt. `dazu` filtert danach noch einmal
|
||||||
|
nach Adresse und Rolle -- die dritte Tuer, durch die am
|
||||||
|
15.09.2026 ein Weg fuer die Community gerutscht ist.
|
||||||
|
|
||||||
|
Der Hinweis verschwindet von selbst: Sind alle Ersten Schritte
|
||||||
|
abgehakt, liefert das Modul eine leere Liste. Niemand muss ihn
|
||||||
|
wegklicken, und niemand muss daran denken, ihn abzuschalten. */
|
||||||
|
for (const h of anleitungHinweise(person)) {
|
||||||
|
dazu(h.art, h.stufe, h.text, h.ziel, h.anzahl);
|
||||||
|
}
|
||||||
|
|
||||||
hinweise.sort((x, y) => (RANG[x.stufe] - RANG[y.stufe]) || (y.anzahl - x.anzahl));
|
hinweise.sort((x, y) => (RANG[x.stufe] - RANG[y.stufe]) || (y.anzahl - x.anzahl));
|
||||||
res.json({ hinweise, stand: new Date().toISOString() });
|
res.json({ hinweise, stand: new Date().toISOString() });
|
||||||
} catch (fehler) {
|
} catch (fehler) {
|
||||||
|
|||||||
+31
-14
@@ -7,17 +7,17 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/anleitung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/anleitung.css?v=202610061421" />
|
||||||
<!-- module.css an VORLETZTER, haus.css an LETZTER Stelle. Die
|
<!-- module.css an VORLETZTER, haus.css an LETZTER Stelle. Die
|
||||||
Reihenfolge ist keine Geschmacksfrage: haus.css setzt nur
|
Reihenfolge ist keine Geschmacksfrage: haus.css setzt nur
|
||||||
Variablen, und bei Variablen entscheidet allein, wer zuletzt
|
Variablen, und bei Variablen entscheidet allein, wer zuletzt
|
||||||
kommt. pruef-css-klassen.mjs misst genau dieses Paar nach. -->
|
kommt. pruef-css-klassen.mjs misst genau dieses Paar nach. -->
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -51,6 +51,23 @@
|
|||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
<!-- ==================================================================
|
||||||
|
DER FORTSCHRITT
|
||||||
|
|
||||||
|
Er zählt NUR die Ersten Schritte, nicht die Karten. Wörtlich aus
|
||||||
|
dem Bauplan: „Niemand muss 18 Karten abhaken. Fertig ist, wer
|
||||||
|
die Ersten Schritte erledigt hat."
|
||||||
|
|
||||||
|
Der Balken ist ein `progress`: Damit bringt er die Ansage für
|
||||||
|
Vorleseprogramme mit, ohne dass davon eine Zeile geschrieben
|
||||||
|
werden muss. Der Satz daneben steht trotzdem da – eine Zahl,
|
||||||
|
die man nur sieht, wenn man die Maus darüberhält, ist keine.
|
||||||
|
================================================================== -->
|
||||||
|
<div class="an-stand" id="stand" hidden>
|
||||||
|
<progress class="an-stand__balken" id="stand-balken" max="1" value="0"></progress>
|
||||||
|
<p class="an-stand__satz" id="stand-satz"></p>
|
||||||
|
</div>
|
||||||
|
|
||||||
<p class="ladefehler" id="ladefehler" hidden>
|
<p class="ladefehler" id="ladefehler" hidden>
|
||||||
<span class="ladefehler__satz">Die Seite konnte nicht geladen werden.</span>
|
<span class="ladefehler__satz">Die Seite konnte nicht geladen werden.</span>
|
||||||
<span class="ladefehler__grund" id="ladefehler-grund"></span>
|
<span class="ladefehler__grund" id="ladefehler-grund"></span>
|
||||||
@@ -138,16 +155,16 @@
|
|||||||
|
|
||||||
Und anleitung.js braucht es doppelt: Symbol, Farbe, Name und
|
Und anleitung.js braucht es doppelt: Symbol, Farbe, Name und
|
||||||
Adresse jeder Karte kommen von dort, nicht vom Server. -->
|
Adresse jeder Karte kommen von dort, nicht vom Server. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<!-- wahl.js gehört zu kopf.js: Der Sicht-Umschalter baut daraus seine
|
<!-- wahl.js gehört zu kopf.js: Der Sicht-Umschalter baut daraus seine
|
||||||
Liste. pruef-css-klassen setzt das durch, und zwar auch die
|
Liste. pruef-css-klassen setzt das durch, und zwar auch die
|
||||||
Reihenfolge -- kopf.js fragt beim Aufbau nach dem fertigen
|
Reihenfolge -- kopf.js fragt beim Aufbau nach dem fertigen
|
||||||
Bedienelement. -->
|
Bedienelement. -->
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/anleitung.js?v=202610061325" defer></script>
|
<script src="assets/js/anleitung.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -16,8 +16,8 @@
|
|||||||
verdeckt. Gefunden hat es pruef-struktur.
|
verdeckt. Gefunden hat es pruef-struktur.
|
||||||
|
|
||||||
Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. -->
|
Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. -->
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
<!-- Ohne diese drei nimmt ein iPhone einen Bildschirmausschnitt als
|
<!-- Ohne diese drei nimmt ein iPhone einen Bildschirmausschnitt als
|
||||||
Symbol, Android zeichnet die Leiste weiss, und die Seite oeffnet
|
Symbol, Android zeichnet die Leiste weiss, und die Seite oeffnet
|
||||||
ausserhalb der App -- auf einer Seite, die genau erklaeren soll,
|
ausserhalb der App -- auf einer Seite, die genau erklaeren soll,
|
||||||
@@ -33,7 +33,7 @@
|
|||||||
schreibt jede Seite app.webmanifest -- auch die hier. -->
|
schreibt jede Seite app.webmanifest -- auch die hier. -->
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<style>
|
<style>
|
||||||
/* Bewusst in der Seite und nicht in einer eigenen Datei: Diese Seite
|
/* Bewusst in der Seite und nicht in einer eigenen Datei: Diese Seite
|
||||||
soll auch dann noch etwas anzeigen, wenn genau das schiefgeht,
|
soll auch dann noch etwas anzeigen, wenn genau das schiefgeht,
|
||||||
@@ -135,7 +135,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/anruf-probe.js?v=202610061325" defer></script>
|
<script src="assets/js/anruf-probe.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -23,25 +23,25 @@
|
|||||||
},
|
},
|
||||||
"icons": [
|
"icons": [
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/workspace-192.png?v=202610061325",
|
"src": "/assets/img/app-symbole/workspace-192.png?v=202610061421",
|
||||||
"sizes": "192x192",
|
"sizes": "192x192",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "any"
|
"purpose": "any"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/workspace-512.png?v=202610061325",
|
"src": "/assets/img/app-symbole/workspace-512.png?v=202610061421",
|
||||||
"sizes": "512x512",
|
"sizes": "512x512",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "any"
|
"purpose": "any"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202610061325",
|
"src": "/assets/img/app-symbole/workspace-192-maskable.png?v=202610061421",
|
||||||
"sizes": "192x192",
|
"sizes": "192x192",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "maskable"
|
"purpose": "maskable"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202610061325",
|
"src": "/assets/img/app-symbole/workspace-512-maskable.png?v=202610061421",
|
||||||
"sizes": "512x512",
|
"sizes": "512x512",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "maskable"
|
"purpose": "maskable"
|
||||||
|
|||||||
@@ -45,6 +45,70 @@
|
|||||||
max-width: 62ch;
|
max-width: 62ch;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
DER FORTSCHRITT (Etappe 2)
|
||||||
|
=====================================================================
|
||||||
|
|
||||||
|
Er zählt nur die Ersten Schritte. Der Balken ist ein echtes
|
||||||
|
`progress` -- damit bringt er die Ansage für Vorleseprogramme mit.
|
||||||
|
Browser gestalten das Element unterschiedlich, deshalb werden beide
|
||||||
|
Schreibweisen gesetzt (`::-webkit-progress-*` und `::-moz-*`); ohne
|
||||||
|
sie steht in Firefox ein graues Kästchen in der Hausfarbe von 2010.
|
||||||
|
===================================================================== */
|
||||||
|
.an-stand {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
align-items: center;
|
||||||
|
gap: 6px 14px;
|
||||||
|
margin-top: 16px;
|
||||||
|
padding: 12px 18px;
|
||||||
|
border: 1px solid var(--rand);
|
||||||
|
background: var(--flaeche);
|
||||||
|
clip-path: polygon(var(--fase, 18px) 0, 100% 0, 100% 100%, 0 100%, 0 var(--fase, 18px));
|
||||||
|
}
|
||||||
|
|
||||||
|
.an-stand__balken {
|
||||||
|
flex: 1 1 180px;
|
||||||
|
height: 8px;
|
||||||
|
min-width: 140px;
|
||||||
|
border: none;
|
||||||
|
border-radius: 999px;
|
||||||
|
background: color-mix(in srgb, var(--text-still) 22%, transparent);
|
||||||
|
appearance: none;
|
||||||
|
}
|
||||||
|
.an-stand__balken::-webkit-progress-bar {
|
||||||
|
background: color-mix(in srgb, var(--text-still) 22%, transparent);
|
||||||
|
border-radius: 999px;
|
||||||
|
}
|
||||||
|
.an-stand__balken::-webkit-progress-value {
|
||||||
|
background: var(--akzent);
|
||||||
|
border-radius: 999px;
|
||||||
|
transition: width var(--tempo, .18s);
|
||||||
|
}
|
||||||
|
.an-stand__balken::-moz-progress-bar {
|
||||||
|
background: var(--akzent);
|
||||||
|
border-radius: 999px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.an-stand__satz {
|
||||||
|
flex: 0 1 auto;
|
||||||
|
margin: 0;
|
||||||
|
font-size: .9rem;
|
||||||
|
font-weight: 650;
|
||||||
|
color: var(--text-still);
|
||||||
|
font-variant-numeric: tabular-nums;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* FERTIG IST EINE EIGENE AUSSAGE, nicht nur ein voller Balken. Der
|
||||||
|
Satz wechselt, die Farbe verstärkt ihn nur -- Farbe nie allein. */
|
||||||
|
.an-stand[data-fertig="ja"] .an-stand__satz { color: var(--k-gut, #5fc99a); }
|
||||||
|
.an-stand[data-fertig="ja"] .an-stand__balken::-webkit-progress-value {
|
||||||
|
background: var(--k-gut, #5fc99a);
|
||||||
|
}
|
||||||
|
.an-stand[data-fertig="ja"] .an-stand__balken::-moz-progress-bar {
|
||||||
|
background: var(--k-gut, #5fc99a);
|
||||||
|
}
|
||||||
|
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
BLÖCKE
|
BLÖCKE
|
||||||
=====================================================================
|
=====================================================================
|
||||||
@@ -123,7 +187,83 @@
|
|||||||
gap: 9px;
|
gap: 9px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.an-schritt { max-width: 68ch; }
|
/* DIE ZEILE IST ZWEIGETEILT: links der Haken, rechts der Weg. Zwei
|
||||||
|
Dinge, zwei Flächen -- wer auf den Namen tippt, will zur Kachel und
|
||||||
|
nicht abhaken. */
|
||||||
|
.an-schritt {
|
||||||
|
max-width: 68ch;
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ---------------------------------------------------------------------
|
||||||
|
DER HAKEN
|
||||||
|
|
||||||
|
Das echte Kästchen bleibt da (Tastatur, Vorleseprogramme, der
|
||||||
|
Zustand), wird aber unsichtbar über das gezeichnete gelegt: So
|
||||||
|
trifft ein Daumen 44 Pixel, und die Zeichnung lässt sich färben.
|
||||||
|
`opacity: 0` statt `display: none` -- ein ausgeblendetes Feld ist
|
||||||
|
für die Tastatur nicht erreichbar. */
|
||||||
|
.an-haken {
|
||||||
|
flex: none;
|
||||||
|
position: relative;
|
||||||
|
display: grid;
|
||||||
|
place-items: center;
|
||||||
|
width: 44px; height: 44px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.an-haken__feld {
|
||||||
|
position: absolute;
|
||||||
|
inset: 0;
|
||||||
|
width: 100%; height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
opacity: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.an-haken__zeichen {
|
||||||
|
width: 22px; height: 22px;
|
||||||
|
border: 2px solid var(--rand-hell, var(--rand));
|
||||||
|
border-radius: 6px;
|
||||||
|
background: color-mix(in srgb, var(--text-still) 8%, transparent);
|
||||||
|
transition: background var(--tempo, .18s), border-color var(--tempo, .18s);
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
/* Der Haken selbst: zwei Striche, gedreht. Kein Zeichen aus einer
|
||||||
|
Schrift -- das sieht auf jedem Gerät anders aus und fehlt manchmal. */
|
||||||
|
.an-haken__zeichen::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
left: 6px; top: 2px;
|
||||||
|
width: 6px; height: 11px;
|
||||||
|
/* #0a121e fest und nicht ueber eine Variable: `--grund` gibt es im
|
||||||
|
Haus nicht (nachgesehen), und eine Variable, die nirgends gesetzt
|
||||||
|
wird, liest sich wie eine Zusage, die es nicht gibt. Es ist der
|
||||||
|
dunkle Grund, gegen den alle Toene gemessen werden. */
|
||||||
|
border-right: 2.5px solid #0a121e;
|
||||||
|
border-bottom: 2.5px solid #0a121e;
|
||||||
|
transform: rotate(42deg) scale(.4);
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity var(--tempo, .18s), transform var(--tempo, .18s);
|
||||||
|
}
|
||||||
|
.an-haken__feld:checked + .an-haken__zeichen {
|
||||||
|
background: var(--k-gut, #5fc99a);
|
||||||
|
border-color: var(--k-gut, #5fc99a);
|
||||||
|
}
|
||||||
|
.an-haken__feld:checked + .an-haken__zeichen::after {
|
||||||
|
opacity: 1;
|
||||||
|
transform: rotate(42deg) scale(1);
|
||||||
|
}
|
||||||
|
.an-haken__feld:focus-visible + .an-haken__zeichen {
|
||||||
|
outline: 2px solid var(--akzent);
|
||||||
|
outline-offset: 3px;
|
||||||
|
}
|
||||||
|
.an-haken__feld:disabled + .an-haken__zeichen { opacity: .5; }
|
||||||
|
|
||||||
|
/* ERLEDIGT WIRD LEISER, NICHT DURCHGESTRICHEN. Durchgestrichener Text
|
||||||
|
ist schlecht lesbar, und man will nachher noch nachsehen können, was
|
||||||
|
man schon gemacht hat. */
|
||||||
|
.an-schritt[data-erledigt="ja"] .an-schritt__rumpf { opacity: .62; }
|
||||||
|
|
||||||
/* DIE GANZE ZEILE IST DAS ZIEL, nicht nur das Stichwort.
|
/* DIE GANZE ZEILE IST DAS ZIEL, nicht nur das Stichwort.
|
||||||
Gemessen am 06.10.2026: Der Verweis war 20 px hoch -- die halbe
|
Gemessen am 06.10.2026: Der Verweis war 20 px hoch -- die halbe
|
||||||
@@ -470,5 +610,8 @@ a.an-schritt__rumpf:hover .an-schritt__name { text-decoration: underline; }
|
|||||||
.an-filter__knopf,
|
.an-filter__knopf,
|
||||||
.an-schritt__rumpf,
|
.an-schritt__rumpf,
|
||||||
.an-stufe__griff::before,
|
.an-stufe__griff::before,
|
||||||
|
.an-haken__zeichen,
|
||||||
|
.an-haken__zeichen::after,
|
||||||
|
.an-stand__balken::-webkit-progress-value,
|
||||||
.an-karte__weg { transition: none; }
|
.an-karte__weg { transition: none; }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1197,7 +1197,32 @@ body.start > main { position: relative; z-index: 1; }
|
|||||||
Absenkung: Das Werkzeug prueft ERST Kontrast und Buntheit und
|
Absenkung: Das Werkzeug prueft ERST Kontrast und Buntheit und
|
||||||
maximiert DANN den Abstand. Wer den 48. hinzufuegt, sollte wissen,
|
maximiert DANN den Abstand. Wer den 48. hinzufuegt, sollte wissen,
|
||||||
dass es eng wird, und notfalls einen alten verschieben. */
|
dass es eng wird, und notfalls einen alten verschieben. */
|
||||||
[data-ton="47"] { --ton: #7368ff; } /* Manager-Ziele (gerechnet 02.10.2026) */
|
/* EINE HEXZIFFER, DIE VIER TAGE GEFEHLT HAT (berichtigt 06.10.2026)
|
||||||
|
|
||||||
|
Hier stand #7368ff. Im Kommentar darueber habe ich am 02.10.
|
||||||
|
selbst notiert: "Abstand zum naechsten Nachbarn 0,0899 ... Er liegt
|
||||||
|
knapp unter der 0,090, die im Kommentar bei Ton 39 als Wunschgrenze
|
||||||
|
steht." Ich habe es hingeschrieben und `pruef-kachel-universum`
|
||||||
|
trotzdem nicht laufen lassen. Die Pruefung war seither rot, vier
|
||||||
|
Tage lang, und zwar WEGEN DIESER ZEILE -- nicht wegen Ton 48, der
|
||||||
|
erst heute dazukam.
|
||||||
|
|
||||||
|
0,090 ist keine Wunschgrenze, sie steht als GRENZE in der Pruefung.
|
||||||
|
Der Nachbar ist Ton 43 (#007bff, Calls & Protokolle), und beide
|
||||||
|
stehen auf derselben Startseite untereinander.
|
||||||
|
|
||||||
|
#7269ff liegt vom alten Wert 0,0024 entfernt -- das sieht kein
|
||||||
|
Mensch, es ist eine Hexziffer -- und vom naechsten Nachbarn im
|
||||||
|
eigenen Haus 0,0918. Damit haelt das Agenturhaus die Grenze:
|
||||||
|
kleinster Abstand dort jetzt 0,0906 (Ton 12 gegen Ton 19), und
|
||||||
|
enger kann es ohne diese Farbe ohnehin nicht werden.
|
||||||
|
|
||||||
|
NICHT die am weitesten entfernte Farbe genommen: Die waere ein
|
||||||
|
grelles Gruen gewesen (#00ec00, Abstand 0,1224). Manager-Ziele ist
|
||||||
|
seit vier Tagen in Benutzung und violett; gesucht war die
|
||||||
|
kleinstmoegliche Aenderung, die die Regel haelt, nicht die
|
||||||
|
groesstmoegliche Verbesserung. */
|
||||||
|
[data-ton="47"] { --ton: #7269ff; } /* Manager-Ziele (nachgezogen 06.10.2026) */
|
||||||
/* ======================================================================
|
/* ======================================================================
|
||||||
TON 48 -- UND WARUM ER NICHT VOM HAUSWERKZEUG STAMMT (06.10.2026)
|
TON 48 -- UND WARUM ER NICHT VOM HAUSWERKZEUG STAMMT (06.10.2026)
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,80 @@
|
|||||||
return a;
|
return a;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
DER FORTSCHRITT
|
||||||
|
|
||||||
|
Er kommt vom Server und wird hier NICHT nachgerechnet. Eine Seite,
|
||||||
|
die selbst mitzählt, zählt irgendwann anders als der Server — und
|
||||||
|
dann stehen zwei Zahlen auf einem Bildschirm, von denen eine falsch
|
||||||
|
ist, ohne dass man ihr das ansieht.
|
||||||
|
===================================================================== */
|
||||||
|
function standSetzen(f) {
|
||||||
|
const kasten = $('stand');
|
||||||
|
if (!f || !f.gesamt) { kasten.hidden = true; return; }
|
||||||
|
kasten.hidden = false;
|
||||||
|
const balken = $('stand-balken');
|
||||||
|
balken.max = f.gesamt;
|
||||||
|
balken.value = f.erledigt;
|
||||||
|
const fertig = f.erledigt >= f.gesamt;
|
||||||
|
kasten.dataset.fertig = fertig ? 'ja' : 'nein';
|
||||||
|
$('stand-satz').textContent = fertig
|
||||||
|
? 'Alle Ersten Schritte erledigt. Den Rest holst du dir, wenn du ihn brauchst.'
|
||||||
|
: `${f.erledigt} von ${f.gesamt} Schritten erledigt`;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* =====================================================================
|
||||||
|
EIN HAKEN
|
||||||
|
|
||||||
|
Ein echtes `input type="checkbox"`: Tastatur, Vorleseprogramme und
|
||||||
|
der Zustand „gedrückt" kommen damit mit. Ein nachgebauter Knopf
|
||||||
|
vergisst davon immer mindestens eines.
|
||||||
|
|
||||||
|
ES WIRD SOFORT GESCHICKT UND NICHT GESAMMELT. Ein „Speichern"-Knopf
|
||||||
|
unter fünf Haken wäre die Stelle, an der jemand die Seite verlässt
|
||||||
|
und sein Fortschritt weg ist.
|
||||||
|
|
||||||
|
GEHT ES SCHIEF, GEHT DER HAKEN ZURÜCK. Ein Haken, der steht,
|
||||||
|
obwohl der Server ihn nicht hat, ist schlimmer als keiner: Beim
|
||||||
|
nächsten Laden ist er weg, und niemand weiß warum.
|
||||||
|
===================================================================== */
|
||||||
|
function hakenBauen(s, li) {
|
||||||
|
const schild = el('label', 'an-haken');
|
||||||
|
const feld = document.createElement('input');
|
||||||
|
feld.type = 'checkbox';
|
||||||
|
feld.className = 'an-haken__feld';
|
||||||
|
feld.checked = !!s.erledigt;
|
||||||
|
/* Der Name des Schrittes steht im Verweis daneben; das Kästchen
|
||||||
|
selbst braucht trotzdem eine eigene Ansage. */
|
||||||
|
feld.setAttribute('aria-label', `„${s.titel}“ erledigt`);
|
||||||
|
schild.append(feld);
|
||||||
|
schild.append(el('span', 'an-haken__zeichen'));
|
||||||
|
|
||||||
|
feld.addEventListener('change', async () => {
|
||||||
|
const willErledigt = feld.checked;
|
||||||
|
feld.disabled = true;
|
||||||
|
try {
|
||||||
|
const a = await hole(`${BASIS}/schritt/${s.id}`, {
|
||||||
|
method: 'PUT',
|
||||||
|
headers: { 'Content-Type': 'application/json' },
|
||||||
|
body: JSON.stringify({ erledigt: willErledigt }),
|
||||||
|
});
|
||||||
|
if (!a.ok) throw new Error('abgelehnt');
|
||||||
|
const r = await a.json();
|
||||||
|
s.erledigt = r.erledigt;
|
||||||
|
if (r.erledigt) li.dataset.erledigt = 'ja';
|
||||||
|
else li.removeAttribute('data-erledigt');
|
||||||
|
standSetzen(r.fortschritt);
|
||||||
|
} catch {
|
||||||
|
feld.checked = !willErledigt;
|
||||||
|
melde('Der Haken ließ sich nicht speichern. Noch einmal versuchen?');
|
||||||
|
} finally {
|
||||||
|
feld.disabled = false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return schild;
|
||||||
|
}
|
||||||
|
|
||||||
/* =====================================================================
|
/* =====================================================================
|
||||||
DIE KACHELN DIESER ROLLE — abgeleitet, nicht abgeschrieben
|
DIE KACHELN DIESER ROLLE — abgeleitet, nicht abgeschrieben
|
||||||
===================================================================== */
|
===================================================================== */
|
||||||
@@ -203,10 +277,19 @@
|
|||||||
Ohne Ziel bleibt es ein `div` — „Installieren“ ist ein Knopf in
|
Ohne Ziel bleibt es ein `div` — „Installieren“ ist ein Knopf in
|
||||||
der Kopfleiste, keine Seite. Ein Verweis ohne Ziel wäre genau
|
der Kopfleiste, keine Seite. Ein Verweis ohne Ziel wäre genau
|
||||||
der tote Knopf, den der Rollen-Rundgang sucht.
|
der tote Knopf, den der Rollen-Rundgang sucht.
|
||||||
|
|
||||||
|
DER HAKEN STEHT DANEBEN UND NICHT DRUMHERUM (Etappe 2). Ein
|
||||||
|
Verweis in einem Kontrollkästchen-Label wäre eine Falle: Wer
|
||||||
|
auf den Namen tippt, um zur Kachel zu springen, hätte den
|
||||||
|
Schritt abgehakt. Zwei Dinge, zwei Flächen.
|
||||||
================================================================== */
|
================================================================== */
|
||||||
$('schritte').replaceChildren(
|
$('schritte').replaceChildren(
|
||||||
...(d.schritte || []).map((s) => {
|
...(d.schritte || []).map((s) => {
|
||||||
const li = el('li', 'an-schritt');
|
const li = el('li', 'an-schritt');
|
||||||
|
if (s.erledigt) li.dataset.erledigt = 'ja';
|
||||||
|
|
||||||
|
if (d.darf_abhaken) li.append(hakenBauen(s, li));
|
||||||
|
|
||||||
const rumpf = s.ziel ? el('a', 'an-schritt__rumpf') : el('div', 'an-schritt__rumpf');
|
const rumpf = s.ziel ? el('a', 'an-schritt__rumpf') : el('div', 'an-schritt__rumpf');
|
||||||
if (s.ziel) rumpf.href = s.ziel;
|
if (s.ziel) rumpf.href = s.ziel;
|
||||||
rumpf.append(el('span', 'an-schritt__name', s.titel));
|
rumpf.append(el('span', 'an-schritt__name', s.titel));
|
||||||
@@ -214,6 +297,7 @@
|
|||||||
li.append(rumpf);
|
li.append(rumpf);
|
||||||
return li;
|
return li;
|
||||||
}));
|
}));
|
||||||
|
standSetzen(d.fortschritt);
|
||||||
|
|
||||||
const kacheln = kachelnFuer(d.rolle);
|
const kacheln = kachelnFuer(d.rolle);
|
||||||
const stufen = $('stufen');
|
const stufen = $('stufen');
|
||||||
@@ -252,6 +336,10 @@
|
|||||||
|
|
||||||
function ohneFassung(d) {
|
function ohneFassung(d) {
|
||||||
$('fassung').hidden = true;
|
$('fassung').hidden = true;
|
||||||
|
/* Kein Fortschritt ohne Schritte. Er steht in der HTML schon auf
|
||||||
|
`hidden`; hier noch einmal, weil diese Seite spaeter (Etappe 4)
|
||||||
|
die Rolle wechseln koennen soll, ohne neu zu laden. */
|
||||||
|
$('stand').hidden = true;
|
||||||
const p = $('ohne-fassung');
|
const p = $('ohne-fassung');
|
||||||
p.textContent = d.satz || 'Für diese Rolle gibt es keine Einweisung.';
|
p.textContent = d.satz || 'Für diese Rolle gibt es keine Einweisung.';
|
||||||
p.hidden = false;
|
p.hidden = false;
|
||||||
|
|||||||
@@ -100,6 +100,12 @@
|
|||||||
die naechste koennte es anders sein. */
|
die naechste koennte es anders sein. */
|
||||||
mz_dringend: 'manager-ziele.html',
|
mz_dringend: 'manager-ziele.html',
|
||||||
mz_offen: 'manager-ziele.html',
|
mz_offen: 'manager-ziele.html',
|
||||||
|
/* DIE EINWEISUNG (06.10.2026). Ueber das Ziel, aus demselben Grund
|
||||||
|
wie die beiden darueber. Der Hinweis verschwindet von selbst,
|
||||||
|
sobald die Ersten Schritte abgehakt sind -- und mit ihm die Zahl
|
||||||
|
an der Kachel und die breite Kachel oben. Eine Quelle, drei
|
||||||
|
Anzeigen. */
|
||||||
|
anl_schritte: 'anleitung.html',
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Diese Hinweise bekommen zusätzlich das Merkzeichen auf die Kachel.
|
/* Diese Hinweise bekommen zusätzlich das Merkzeichen auf die Kachel.
|
||||||
@@ -379,7 +385,44 @@
|
|||||||
Antwort des Live-Dienstes erst nach dem Aufbau der Wand da ist
|
Antwort des Live-Dienstes erst nach dem Aufbau der Wand da ist
|
||||||
(ein Netzabruf, die Wand steht in Millisekunden). */
|
(ein Netzabruf, die Wand steht in Millisekunden). */
|
||||||
const liveKacheln = [];
|
const liveKacheln = [];
|
||||||
for (const gruppe of eigeneGruppen(zeigt)) {
|
|
||||||
|
/* =================================================================
|
||||||
|
„FANG HIER AN" — die Einweisung als breite Kachel (06.10.2026)
|
||||||
|
|
||||||
|
Bauplan: „Solange die Ersten Schritte offen sind: zusaetzlich
|
||||||
|
als breite Kachel ganz oben ueber Taeglich, mit Zaehler der
|
||||||
|
offenen Schritte."
|
||||||
|
|
||||||
|
SIE KOMMT AUS DER BEREITS GEFILTERTEN LISTE und nicht aus
|
||||||
|
GRUPPEN. Das ist der ganze Trick: Damit erbt sie beide
|
||||||
|
Schranken, die oben schon beantwortet wurden -- die Rollenliste
|
||||||
|
an der Kachel UND die Rechtetafel vom Server (`seiteOffen`).
|
||||||
|
Haette ich die Kachel hier frisch gesucht, waere das eine dritte
|
||||||
|
Stelle, an der entschieden wird, wer sie sieht, und die erste,
|
||||||
|
die beim naechsten Umbau danebenliegt.
|
||||||
|
|
||||||
|
DER ZAEHLER IST KEIN ZWEITER. Er kommt aus `zahlen`, also aus
|
||||||
|
denselben Hinweisen wie die Zeile unter „Was ist dran" und die
|
||||||
|
Zahl an der kleinen Kachel weiter unten. Drei Anzeigen, eine
|
||||||
|
Rechnung -- sonst stuenden eines Tages zwei verschiedene Zahlen
|
||||||
|
uebereinander auf einem Bildschirm.
|
||||||
|
|
||||||
|
SIE VERSCHWINDET VON SELBST. Kein Hinweis mehr heisst keine
|
||||||
|
Gruppe mehr; niemand muss sie wegklicken oder abschalten.
|
||||||
|
================================================================= */
|
||||||
|
const gruppenListe = eigeneGruppen(zeigt);
|
||||||
|
const alleKacheln = gruppenListe.flatMap((g) => g.bereiche);
|
||||||
|
const anleitung = alleKacheln.find((b) => b.ziel === 'anleitung.html');
|
||||||
|
const schritteOffen = zahlen.get('anleitung.html')?.n || 0;
|
||||||
|
const vorneWeg = (anleitung && schritteOffen > 0)
|
||||||
|
? [{
|
||||||
|
name: 'Fang hier an',
|
||||||
|
unter: 'Deine Einweisung – verschwindet, sobald du durch bist',
|
||||||
|
bereiche: [{ ...anleitung, gross: true }],
|
||||||
|
}]
|
||||||
|
: [];
|
||||||
|
|
||||||
|
for (const gruppe of [...vorneWeg, ...gruppenListe]) {
|
||||||
const meine = gruppe.bereiche;
|
const meine = gruppe.bereiche;
|
||||||
if (!meine.length) continue;
|
if (!meine.length) continue;
|
||||||
|
|
||||||
@@ -1545,6 +1588,7 @@
|
|||||||
Satz, der anders anfängt ("Deine Betreuung hat 3 …"), stünde
|
Satz, der anders anfängt ("Deine Betreuung hat 3 …"), stünde
|
||||||
hinter der Marke ein zweites Mal mit der 3 -- kein Fehler, den ein
|
hinter der Marke ein zweites Mal mit der 3 -- kein Fehler, den ein
|
||||||
Programm meldet, aber einer, den jeder sieht. */
|
Programm meldet, aber einer, den jeder sieht. */
|
||||||
|
anl_schritte: (n) => `${n} Erste${n === 1 ? 'r Schritt ist' : ' Schritte sind'} noch offen`,
|
||||||
markiert_live: (n) => `${n} markierte${n === 1 ? 'r Punkt' : ' Punkte'} in der LIVE-Analyse`,
|
markiert_live: (n) => `${n} markierte${n === 1 ? 'r Punkt' : ' Punkte'} in der LIVE-Analyse`,
|
||||||
markiert_content: (n) => `${n} markierte ${n === 1 ? 'Content-Idee' : 'Content-Ideen'}`,
|
markiert_content: (n) => `${n} markierte ${n === 1 ? 'Content-Idee' : 'Content-Ideen'}`,
|
||||||
markiert_community: (n) => `${n} markierte${n === 1 ? 'r Punkt' : ' Punkte'} bei Community`,
|
markiert_community: (n) => `${n} markierte${n === 1 ? 'r Punkt' : ' Punkte'} bei Community`,
|
||||||
|
|||||||
+19
-19
@@ -12,19 +12,19 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -430,22 +430,22 @@
|
|||||||
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
|
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
|
||||||
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
|
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
|
||||||
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
|
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
|
||||||
<script src="assets/js/textform.js?v=202610061325"></script>
|
<script src="assets/js/textform.js?v=202610061421"></script>
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/zuteilung.js?v=202610061325" defer></script>
|
<script src="assets/js/zuteilung.js?v=202610061421" defer></script>
|
||||||
<!-- Der Vorlagenkatalog stand bis zum 23.09.2026 mitten in
|
<!-- Der Vorlagenkatalog stand bis zum 23.09.2026 mitten in
|
||||||
aufgaben.js. Er bedient jetzt zwei Seiten und hat deshalb eine
|
aufgaben.js. Er bedient jetzt zwei Seiten und hat deshalb eine
|
||||||
eigene Datei; hier zeigt er den Creator-Katalog.
|
eigene Datei; hier zeigt er den Creator-Katalog.
|
||||||
Vor aufgaben.js, weil die Seite ihn beim Start einrichtet. -->
|
Vor aufgaben.js, weil die Seite ihn beim Start einrichtet. -->
|
||||||
<script src="assets/js/vorlagenbrett.js?v=202610061325" defer></script>
|
<script src="assets/js/vorlagenbrett.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/aufgaben.js?v=202610061325" defer></script>
|
<script src="assets/js/aufgaben.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/automation.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/automation.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -168,15 +168,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/automation.js?v=202610061325" defer></script>
|
<script src="assets/js/automation.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -7,14 +7,14 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -197,16 +197,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/befinden.js?v=202610061325" defer></script>
|
<script src="assets/js/befinden.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+22
-22
@@ -12,24 +12,24 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061421" />
|
||||||
<!-- Wegen des Blocks „Willst du dazugehoeren?" auf dem Brett
|
<!-- Wegen des Blocks „Willst du dazugehoeren?" auf dem Brett
|
||||||
„Mitmachen". Eine eigene Kopie der Regel hier waere die zweite
|
„Mitmachen". Eine eigene Kopie der Regel hier waere die zweite
|
||||||
Stelle, an der dieselbe Sache anders aussieht. -->
|
Stelle, an der dieselbe Sache anders aussieht. -->
|
||||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -318,19 +318,19 @@
|
|||||||
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
|
<!-- TEXTFORM ZUERST (21.09.2026): Die Seite fragt beim Zeichnen nach
|
||||||
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
|
`window.Textform`. Kaeme sie spaeter, waere der erste Eintrag ohne
|
||||||
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
|
Gestaltung. Kein `defer`, damit sie wirklich vorher dasteht. -->
|
||||||
<script src="assets/js/textform.js?v=202610061325"></script>
|
<script src="assets/js/textform.js?v=202610061421"></script>
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/checkliste.js?v=202610061325" defer></script>
|
<script src="assets/js/checkliste.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/ampel.js?v=202610061325" defer></script>
|
<script src="assets/js/ampel.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/schulung.js?v=202610061325" defer></script>
|
<script src="assets/js/schulung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereich.js?v=202610061325" defer></script>
|
<script src="assets/js/bereich.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+19
-19
@@ -7,17 +7,17 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/treff.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/treff.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -108,15 +108,15 @@
|
|||||||
</main>
|
</main>
|
||||||
|
|
||||||
<!-- Der Fuß gehört zu jeder Seite - siehe pruef-css-klassen. -->
|
<!-- Der Fuß gehört zu jeder Seite - siehe pruef-css-klassen. -->
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/auskunft.js?v=202610061325" defer></script>
|
<script src="assets/js/auskunft.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bewerben.js?v=202610061325" defer></script>
|
<script src="assets/js/bewerben.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -7,16 +7,16 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
<!-- haus.css MUSS die letzte Stilvorlage sein - siehe treff-regeln.html. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -80,16 +80,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/auskunft.js?v=202610061325" defer></script>
|
<script src="assets/js/auskunft.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bewerbungen.js?v=202610061325" defer></script>
|
<script src="assets/js/bewerbungen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -59,11 +59,11 @@
|
|||||||
<!-- DIE WERBEEINBLENDUNG. Dieselbe Datei wie in der Reaction-Seite:
|
<!-- DIE WERBEEINBLENDUNG. Dieselbe Datei wie in der Reaction-Seite:
|
||||||
Zwei Fassungen altern unterschiedlich, und dann sieht der Stream
|
Zwei Fassungen altern unterschiedlich, und dann sieht der Stream
|
||||||
anders aus als das, worueber geredet wird. -->
|
anders aus als das, worueber geredet wird. -->
|
||||||
<link rel="stylesheet" href="assets/css/werbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/werbung.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
<body class="obs-buehne">
|
<body class="obs-buehne">
|
||||||
<div id="platz"></div>
|
<div id="platz"></div>
|
||||||
<script src="assets/js/werbung.js?v=202610061325" defer></script>
|
<script src="assets/js/werbung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/buehne.js?v=202610061325" defer></script>
|
<script src="assets/js/buehne.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/calls.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/calls.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -89,15 +89,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/ki.js?v=202610061325" defer></script>
|
<script src="assets/js/ki.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/calls.js?v=202610061325" defer></script>
|
<script src="assets/js/calls.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+20
-20
@@ -12,26 +12,26 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<!-- aufgaben.css bringt die Dialog- und Formularstile mit (.dialog,
|
<!-- aufgaben.css bringt die Dialog- und Formularstile mit (.dialog,
|
||||||
.neu__zeile, .dialog__knoepfe). Sie stehen dort seit dem
|
.neu__zeile, .dialog__knoepfe). Sie stehen dort seit dem
|
||||||
Aufgabenbrett; sie hierher zu kopieren hiesse, sie an zwei Stellen
|
Aufgabenbrett; sie hierher zu kopieren hiesse, sie an zwei Stellen
|
||||||
zu pflegen. Dieselbe Lösung nutzen kalender.html und content.html.
|
zu pflegen. Dieselbe Lösung nutzen kalender.html und content.html.
|
||||||
Gemeldet von pruef-css-klassen.mjs, bevor jemand einen ungestylten
|
Gemeldet von pruef-css-klassen.mjs, bevor jemand einen ungestylten
|
||||||
Dialog zu sehen bekam. -->
|
Dialog zu sehen bekam. -->
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/chat.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/chat.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -739,24 +739,24 @@
|
|||||||
</form>
|
</form>
|
||||||
</dialog>
|
</dialog>
|
||||||
|
|
||||||
<script src="assets/js/bereiche.js?v=202610061325"></script>
|
<script src="assets/js/bereiche.js?v=202610061421"></script>
|
||||||
<!-- TEXTFORM VOR ALLEM ANDEREN (21.09.2026): chat.js und bereich.js
|
<!-- TEXTFORM VOR ALLEM ANDEREN (21.09.2026): chat.js und bereich.js
|
||||||
fragen beim Zeichnen nach `window.Textform`. Kaeme sie spaeter,
|
fragen beim Zeichnen nach `window.Textform`. Kaeme sie spaeter,
|
||||||
waere die erste gezeichnete Nachricht ohne Gestaltung -- und das
|
waere die erste gezeichnete Nachricht ohne Gestaltung -- und das
|
||||||
faellt nur dem auf, der genau hinsieht. KEIN `defer`, damit sie
|
faellt nur dem auf, der genau hinsieht. KEIN `defer`, damit sie
|
||||||
wirklich vor den anderen dasteht. -->
|
wirklich vor den anderen dasteht. -->
|
||||||
<script src="assets/js/textform.js?v=202610061325"></script>
|
<script src="assets/js/textform.js?v=202610061421"></script>
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325"></script>
|
<script src="assets/js/kopf.js?v=202610061421"></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325"></script>
|
<script src="assets/js/glocke.js?v=202610061421"></script>
|
||||||
<!-- ANRUF VOR CHAT (18.09.2026): anruf.js stellt `window.anrufStarten`
|
<!-- ANRUF VOR CHAT (18.09.2026): anruf.js stellt `window.anrufStarten`
|
||||||
bereit, und chat.js baut die Knoepfe nur, wenn es das gibt.
|
bereit, und chat.js baut die Knoepfe nur, wenn es das gibt.
|
||||||
Andersherum waere die Reihenfolge eine stille Abhaengigkeit --
|
Andersherum waere die Reihenfolge eine stille Abhaengigkeit --
|
||||||
die Knoepfe fehlten, und niemand wuesste warum. -->
|
die Knoepfe fehlten, und niemand wuesste warum. -->
|
||||||
<script src="assets/js/anruf.js?v=202610061325"></script>
|
<script src="assets/js/anruf.js?v=202610061421"></script>
|
||||||
<!-- DIE BILDSCHAU (25.09.2026). Eigene Datei, weil sie nichts vom
|
<!-- DIE BILDSCHAU (25.09.2026). Eigene Datei, weil sie nichts vom
|
||||||
Chat weiss: Sie bekommt einen Weg und einen Namen und zeigt ein
|
Chat weiss: Sie bekommt einen Weg und einen Namen und zeigt ein
|
||||||
Bild. Jede andere Seite mit Fotos kann sie ebenso benutzen, ohne
|
Bild. Jede andere Seite mit Fotos kann sie ebenso benutzen, ohne
|
||||||
@@ -767,8 +767,8 @@
|
|||||||
sie beim ersten Foto noch nicht da -- und der erste Klick ginge
|
sie beim ersten Foto noch nicht da -- und der erste Klick ginge
|
||||||
wie frueher in den Tab. Ein Fehler, der nur beim ERSTEN Mal
|
wie frueher in den Tab. Ein Fehler, der nur beim ERSTEN Mal
|
||||||
auftritt, ist der, den man nie nachstellen kann. -->
|
auftritt, ist der, den man nie nachstellen kann. -->
|
||||||
<script src="assets/js/bildschau.js?v=202610061325"></script>
|
<script src="assets/js/bildschau.js?v=202610061421"></script>
|
||||||
<script src="assets/js/chat.js?v=202610061325"></script>
|
<script src="assets/js/chat.js?v=202610061421"></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/content.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/content.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -179,15 +179,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/checkliste.js?v=202610061325" defer></script>
|
<script src="assets/js/checkliste.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/content.js?v=202610061325" defer></script>
|
<script src="assets/js/content.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -36,15 +36,15 @@
|
|||||||
<link rel="preload" as="image" href="assets/img/buehne/crew-gate-hoch-580.webp"
|
<link rel="preload" as="image" href="assets/img/buehne/crew-gate-hoch-580.webp"
|
||||||
type="image/webp" media="(max-width: 899px)" />
|
type="image/webp" media="(max-width: 899px)" />
|
||||||
|
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/crew-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/crew-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<!-- Diese Wand steht NUR auf der Adresse von Team Dogi (ueberall sonst
|
<!-- Diese Wand steht NUR auf der Adresse von Team Dogi (ueberall sonst
|
||||||
404, siehe crewWeiche). Sie darf das Haus deshalb direkt nennen
|
404, siehe crewWeiche). Sie darf das Haus deshalb direkt nennen
|
||||||
statt ueber den Platzhalter haus.css zu gehen -- und sie MUSS es:
|
statt ueber den Platzhalter haus.css zu gehen -- und sie MUSS es:
|
||||||
Eine Zugangswand, die sich erst nach dem Umbiegen faerbt, waere
|
Eine Zugangswand, die sich erst nach dem Umbiegen faerbt, waere
|
||||||
die eine Seite, auf der man das Umfaerben sieht. -->
|
die eine Seite, auf der man das Umfaerben sieht. -->
|
||||||
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/crew-haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="gate gate--crew">
|
<body class="gate gate--crew">
|
||||||
@@ -459,7 +459,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/gate.js?v=202610061325" defer></script>
|
<script src="assets/js/gate.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -23,25 +23,25 @@
|
|||||||
},
|
},
|
||||||
"icons": [
|
"icons": [
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/crew-192.png?v=202610061325",
|
"src": "/assets/img/app-symbole/crew-192.png?v=202610061421",
|
||||||
"sizes": "192x192",
|
"sizes": "192x192",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "any"
|
"purpose": "any"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/crew-512.png?v=202610061325",
|
"src": "/assets/img/app-symbole/crew-512.png?v=202610061421",
|
||||||
"sizes": "512x512",
|
"sizes": "512x512",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "any"
|
"purpose": "any"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202610061325",
|
"src": "/assets/img/app-symbole/crew-192-maskable.png?v=202610061421",
|
||||||
"sizes": "192x192",
|
"sizes": "192x192",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "maskable"
|
"purpose": "maskable"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202610061325",
|
"src": "/assets/img/app-symbole/crew-512-maskable.png?v=202610061421",
|
||||||
"sizes": "512x512",
|
"sizes": "512x512",
|
||||||
"type": "image/png",
|
"type": "image/png",
|
||||||
"purpose": "maskable"
|
"purpose": "maskable"
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/dateien.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/dateien.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -108,15 +108,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/dateien.js?v=202610061325" defer></script>
|
<script src="assets/js/dateien.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -7,14 +7,14 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -306,20 +306,20 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<!-- VOR entwicklung.js: Die Seite richtet den Katalog beim Start ein,
|
<!-- VOR entwicklung.js: Die Seite richtet den Katalog beim Start ein,
|
||||||
also muss es ihn zu dem Zeitpunkt geben. Mit "defer" laufen beide
|
also muss es ihn zu dem Zeitpunkt geben. Mit "defer" laufen beide
|
||||||
in Dokumentreihenfolge. -->
|
in Dokumentreihenfolge. -->
|
||||||
<script src="assets/js/vorlagenbrett.js?v=202610061325" defer></script>
|
<script src="assets/js/vorlagenbrett.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/entwicklung.js?v=202610061325" defer></script>
|
<script src="assets/js/entwicklung.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+15
-15
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/hilfe.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/hilfe.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -146,14 +146,14 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hilfe.js?v=202610061325" defer></script>
|
<script src="assets/js/hilfe.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -30,9 +30,9 @@
|
|||||||
<link rel="preload" as="image" href="assets/img/buehne/gate-hoch-580.webp"
|
<link rel="preload" as="image" href="assets/img/buehne/gate-hoch-580.webp"
|
||||||
type="image/webp" media="(max-width: 899px)" />
|
type="image/webp" media="(max-width: 899px)" />
|
||||||
|
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="gate">
|
<body class="gate">
|
||||||
@@ -427,7 +427,7 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/gate.js?v=202610061325" defer></script>
|
<script src="assets/js/gate.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/kalender.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/kalender.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -383,15 +383,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kalender.js?v=202610061325" defer></script>
|
<script src="assets/js/kalender.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kalender-abo.js?v=202610061325" defer></script>
|
<script src="assets/js/kalender-abo.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/leistung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/leistung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -444,13 +444,13 @@
|
|||||||
</form>
|
</form>
|
||||||
</dialog>
|
</dialog>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325"></script>
|
<script src="assets/js/meldung.js?v=202610061421"></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325"></script>
|
<script src="assets/js/nachfrage.js?v=202610061421"></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325"></script>
|
<script src="assets/js/wahl.js?v=202610061421"></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325"></script>
|
<script src="assets/js/bereiche.js?v=202610061421"></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325"></script>
|
<script src="assets/js/kopf.js?v=202610061421"></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325"></script>
|
<script src="assets/js/glocke.js?v=202610061421"></script>
|
||||||
<script src="assets/js/leistung.js?v=202610061325"></script>
|
<script src="assets/js/leistung.js?v=202610061421"></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -7,17 +7,17 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/manager-ziele.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/manager-ziele.css?v=202610061421" />
|
||||||
<!-- module.css an VORLETZTER, haus.css an LETZTER Stelle. Die
|
<!-- module.css an VORLETZTER, haus.css an LETZTER Stelle. Die
|
||||||
Reihenfolge ist keine Geschmacksfrage: haus.css setzt nur
|
Reihenfolge ist keine Geschmacksfrage: haus.css setzt nur
|
||||||
Variablen, und bei Variablen entscheidet allein, wer zuletzt
|
Variablen, und bei Variablen entscheidet allein, wer zuletzt
|
||||||
kommt. pruef-css-klassen.mjs misst genau dieses Paar nach. -->
|
kommt. pruef-css-klassen.mjs misst genau dieses Paar nach. -->
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -218,16 +218,16 @@
|
|||||||
kopf.js liest daraus die Leitungsrollen. Ohne sie stürzt jede
|
kopf.js liest daraus die Leitungsrollen. Ohne sie stürzt jede
|
||||||
Seite ab, und zwar nur in der Browserkonsole -- die Kopfleiste
|
Seite ab, und zwar nur in der Browserkonsole -- die Kopfleiste
|
||||||
kommt trotzdem. -->
|
kommt trotzdem. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<!-- wahl.js gehört zu kopf.js: Der Sicht-Umschalter baut daraus seine
|
<!-- wahl.js gehört zu kopf.js: Der Sicht-Umschalter baut daraus seine
|
||||||
Liste. pruef-css-klassen setzt das durch, und zwar auch die
|
Liste. pruef-css-klassen setzt das durch, und zwar auch die
|
||||||
Reihenfolge -- kopf.js fragt beim Aufbau nach dem fertigen
|
Reihenfolge -- kopf.js fragt beim Aufbau nach dem fertigen
|
||||||
Bedienelement. -->
|
Bedienelement. -->
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/manager-ziele.js?v=202610061325" defer></script>
|
<script src="assets/js/manager-ziele.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,13 +12,13 @@
|
|||||||
vergessen wird. -->
|
vergessen wird. -->
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/material.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/material.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
<body class="start" data-ton="42" data-buehne="studio">
|
<body class="start" data-ton="42" data-buehne="studio">
|
||||||
|
|
||||||
@@ -138,14 +138,14 @@
|
|||||||
<p class="m-laedt" id="laedt">Einen Moment …</p>
|
<p class="m-laedt" id="laedt">Einen Moment …</p>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/material.js?v=202610061325" defer></script>
|
<script src="assets/js/material.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+14
-14
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/notizen.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/notizen.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start" data-ton="46">
|
<body class="start" data-ton="46">
|
||||||
@@ -181,12 +181,12 @@
|
|||||||
|
|
||||||
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
||||||
liest daraus die Leitungsrollen. -->
|
liest daraus die Leitungsrollen. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/notizen.js?v=202610061325" defer></script>
|
<script src="assets/js/notizen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/personen.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/personen.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -453,14 +453,14 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/personen.js?v=202610061325" defer></script>
|
<script src="assets/js/personen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/profil.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/profil.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -214,16 +214,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/steckbrief.js?v=202610061325" defer></script>
|
<script src="assets/js/steckbrief.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/profil.js?v=202610061325" defer></script>
|
<script src="assets/js/profil.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+19
-19
@@ -7,15 +7,15 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/reaktion.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/reaktion.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/spendenkarte.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/spendenkarte.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/werbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/werbung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start reaktion-seite" data-stand="laedt">
|
<body class="start reaktion-seite" data-stand="laedt">
|
||||||
@@ -905,15 +905,15 @@
|
|||||||
|
|
||||||
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
||||||
liest daraus die Leitungsrollen. -->
|
liest daraus die Leitungsrollen. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/spendenkarte.js?v=202610061325" defer></script>
|
<script src="assets/js/spendenkarte.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/werbung.js?v=202610061325" defer></script>
|
<script src="assets/js/werbung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/reaktion.js?v=202610061325" defer></script>
|
<script src="assets/js/reaktion.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -7,14 +7,14 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/treff.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/treff.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -134,14 +134,14 @@
|
|||||||
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
|
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
|
||||||
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
|
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
|
||||||
die seit dem 07.09. jede Seite danach absucht. -->
|
die seit dem 07.09. jede Seite danach absucht. -->
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/rechte.js?v=202610061325" defer></script>
|
<script src="assets/js/rechte.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/report.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/report.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -106,17 +106,17 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/ki.js?v=202610061325" defer></script>
|
<script src="assets/js/ki.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/report.js?v=202610061325" defer></script>
|
<script src="assets/js/report.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/scouting.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/scouting.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -173,14 +173,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/scouting.js?v=202610061325" defer></script>
|
<script src="assets/js/scouting.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,21 +12,21 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<!-- Nur die Startseite: Begrüßungskachel, Uhr, Glockenmulde. Siehe
|
<!-- Nur die Startseite: Begrüßungskachel, Uhr, Glockenmulde. Siehe
|
||||||
den Hinweis in start.css -- dort stand es bis zum 07.09.2026. -->
|
den Hinweis in start.css -- dort stand es bis zum 07.09.2026. -->
|
||||||
<link rel="stylesheet" href="assets/css/heim.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/heim.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -751,16 +751,16 @@
|
|||||||
</p>
|
</p>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/live.js?v=202610061325" defer></script>
|
<script src="assets/js/live.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/start.js?v=202610061325" defer></script>
|
<script src="assets/js/start.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/startcheck.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/startcheck.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -85,16 +85,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/ki.js?v=202610061325" defer></script>
|
<script src="assets/js/ki.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/startcheck.js?v=202610061325" defer></script>
|
<script src="assets/js/startcheck.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/profil.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/profil.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -150,16 +150,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/auskunft.js?v=202610061325" defer></script>
|
<script src="assets/js/auskunft.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/steckbrief.js?v=202610061325" defer></script>
|
<script src="assets/js/steckbrief.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+14
-14
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/support.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/support.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -154,16 +154,16 @@
|
|||||||
(reading 'LEITUNG')" ab -- gemessen am 24.09.2026, als diese
|
(reading 'LEITUNG')" ab -- gemessen am 24.09.2026, als diese
|
||||||
Zeile beim Anlegen der Seite fehlte. Die Kopfleiste kam
|
Zeile beim Anlegen der Seite fehlte. Die Kopfleiste kam
|
||||||
trotzdem, deshalb sah man es nur in der Browserkonsole. -->
|
trotzdem, deshalb sah man es nur in der Browserkonsole. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<!-- wahl.js gehoert zu kopf.js: Der Sicht-Umschalter in der
|
<!-- wahl.js gehoert zu kopf.js: Der Sicht-Umschalter in der
|
||||||
Kopfleiste baut daraus seine Liste. pruef-css-klassen setzt das
|
Kopfleiste baut daraus seine Liste. pruef-css-klassen setzt das
|
||||||
seit dem 07.09.2026 durch -- damals fehlte es auf chat.html und
|
seit dem 07.09.2026 durch -- damals fehlte es auf chat.html und
|
||||||
uebersicht.html, und heute hier. -->
|
uebersicht.html, und heute hier. -->
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/support.js?v=202610061325" defer></script>
|
<script src="assets/js/support.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
„Eigenes CSS" leer lassen (der Grund ist schon
|
„Eigenes CSS" leer lassen (der Grund ist schon
|
||||||
durchsichtig).
|
durchsichtig).
|
||||||
====================================================================== -->
|
====================================================================== -->
|
||||||
<link rel="stylesheet" href="assets/css/spendenkarte.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/spendenkarte.css?v=202610061421" />
|
||||||
<style>
|
<style>
|
||||||
/* DURCHSICHTIG BIS AUF DIE KARTEN. OBS legt die Quelle über das
|
/* DURCHSICHTIG BIS AUF DIE KARTEN. OBS legt die Quelle über das
|
||||||
Bild; jede Fläche, die hier steht, deckt dort etwas zu. */
|
Bild; jede Fläche, die hier steht, deckt dort etwas zu. */
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
<body>
|
<body>
|
||||||
<div class="obs-tafel spendentafel" id="tafel" aria-live="polite"></div>
|
<div class="obs-tafel spendentafel" id="tafel" aria-live="polite"></div>
|
||||||
|
|
||||||
<script src="assets/js/spendenkarte.js?v=202610061325" defer></script>
|
<script src="assets/js/spendenkarte.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/tafel.js?v=202610061325" defer></script>
|
<script src="assets/js/tafel.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+18
-18
@@ -7,18 +7,18 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061421" />
|
||||||
<!-- Wegen des Kastens „Anfragen“ ueber der Liste. Eine eigene Kopie
|
<!-- Wegen des Kastens „Anfragen“ ueber der Liste. Eine eigene Kopie
|
||||||
der Regel hier waere die zweite Stelle, an der dieselbe Sache
|
der Regel hier waere die zweite Stelle, an der dieselbe Sache
|
||||||
anders aussieht. -->
|
anders aussieht. -->
|
||||||
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bewerbung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -111,15 +111,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/talente.js?v=202610061325" defer></script>
|
<script src="assets/js/talente.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -7,20 +7,20 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/team.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/team.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -110,15 +110,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/team.js?v=202610061325" defer></script>
|
<script src="assets/js/team.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -7,20 +7,20 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/team.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/team.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<!-- `data-buehne` steht hier fest und nicht im Skript: Die Kachel zu
|
<!-- `data-buehne` steht hier fest und nicht im Skript: Die Kachel zu
|
||||||
@@ -84,15 +84,15 @@
|
|||||||
Kaputt ist dabei nichts -- er funktioniert. Genau deshalb faellt
|
Kaputt ist dabei nichts -- er funktioniert. Genau deshalb faellt
|
||||||
es niemandem auf, und deshalb prueft pruef-css-klassen die
|
es niemandem auf, und deshalb prueft pruef-css-klassen die
|
||||||
ABHAENGIGKEIT statt der Optik. Hier hat sie angeschlagen. -->
|
ABHAENGIGKEIT statt der Optik. Hier hat sie angeschlagen. -->
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/teamlage.js?v=202610061325" defer></script>
|
<script src="assets/js/teamlage.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+15
-15
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/bereich.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -112,15 +112,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/teilen.js?v=202610061325" defer></script>
|
<script src="assets/js/teilen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -7,14 +7,14 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/treff.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/treff.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -126,14 +126,14 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/treff-moderation.js?v=202610061325" defer></script>
|
<script src="assets/js/treff-moderation.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -7,18 +7,18 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/treff.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/treff.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein. Auf der Adresse des
|
<!-- haus.css MUSS die letzte Stilvorlage sein. Auf der Adresse des
|
||||||
Rudels biegt der Server genau diesen Dateinamen auf crew-haus.css
|
Rudels biegt der Server genau diesen Dateinamen auf crew-haus.css
|
||||||
um, und die Seite kommt schon beim ERSTEN Abruf in Lila und
|
um, und die Seite kommt schon beim ERSTEN Abruf in Lila und
|
||||||
Babyblau an -- ohne Umfaerben im Browser, ohne Flackern. -->
|
Babyblau an -- ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -248,14 +248,14 @@
|
|||||||
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
|
Beim ersten Anlauf fehlte die Zeile auf genau diesen beiden neuen
|
||||||
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
|
Seiten. Gefunden hat das nicht das Auge, sondern pruef-css-klassen,
|
||||||
die seit dem 07.09. jede Seite danach absucht. -->
|
die seit dem 07.09. jede Seite danach absucht. -->
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/auskunft.js?v=202610061325" defer></script>
|
<script src="assets/js/auskunft.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/treff-regeln.js?v=202610061325" defer></script>
|
<script src="assets/js/treff-regeln.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -12,22 +12,22 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<!-- Formular- und Dialogstile: seit dem 07.09.2026 steht hier der
|
<!-- Formular- und Dialogstile: seit dem 07.09.2026 steht hier der
|
||||||
Dialog "Creator anlegen". -->
|
Dialog "Creator anlegen". -->
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/uebersicht.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -149,16 +149,16 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/uebersicht.js?v=202610061325" defer></script>
|
<script src="assets/js/uebersicht.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/unsere-seiten.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/unsere-seiten.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -335,14 +335,14 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/live.js?v=202610061325" defer></script>
|
<script src="assets/js/live.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/unsere-seiten.js?v=202610061325" defer></script>
|
<script src="assets/js/unsere-seiten.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -7,13 +7,13 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/unterstuetzen.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/unterstuetzen.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -106,17 +106,17 @@
|
|||||||
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
<!-- bereiche.js VOR kopf.js: Dort steht `window.Bereiche`, und kopf.js
|
||||||
liest daraus die Leitungsrollen. Ohne sie stürzt jede Seite mit
|
liest daraus die Leitungsrollen. Ohne sie stürzt jede Seite mit
|
||||||
„Cannot read properties of undefined (reading 'LEITUNG')" ab. -->
|
„Cannot read properties of undefined (reading 'LEITUNG')" ab. -->
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/holen.js?v=202610061325" defer></script>
|
<script src="assets/js/holen.js?v=202610061421" defer></script>
|
||||||
<!-- Die Satz-Tafel. Ohne sie stand auf dieser Seite das Maschinenwort
|
<!-- Die Satz-Tafel. Ohne sie stand auf dieser Seite das Maschinenwort
|
||||||
des Servers (z.B. "nicht_gefunden") statt eines Satzes -- gemeldet
|
des Servers (z.B. "nicht_gefunden") statt eines Satzes -- gemeldet
|
||||||
von pruef-meldungen, nicht beim Ansehen. -->
|
von pruef-meldungen, nicht beim Ansehen. -->
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/unterstuetzen.js?v=202610061325" defer></script>
|
<script src="assets/js/unterstuetzen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+16
-16
@@ -7,15 +7,15 @@
|
|||||||
<meta name="robots" content="noindex, nofollow" />
|
<meta name="robots" content="noindex, nofollow" />
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/entwicklung.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/werdegang.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/werdegang.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -144,14 +144,14 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/werdegang.js?v=202610061325" defer></script>
|
<script src="assets/js/werdegang.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+15
-15
@@ -12,13 +12,13 @@
|
|||||||
vergessen wird. -->
|
vergessen wird. -->
|
||||||
<link rel="manifest" href="/workspace/app.webmanifest" />
|
<link rel="manifest" href="/workspace/app.webmanifest" />
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/willkommen.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/willkommen.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
<!-- KOERPERKLASSE "start", NICHT "gate" (berichtigt 21.09.2026).
|
<!-- KOERPERKLASSE "start", NICHT "gate" (berichtigt 21.09.2026).
|
||||||
`body.gate` ist die Anmeldewand: `display:flex; align-items:center`,
|
`body.gate` ist die Anmeldewand: `display:flex; align-items:center`,
|
||||||
@@ -75,13 +75,13 @@
|
|||||||
<p class="fehler" id="fehler" hidden></p>
|
<p class="fehler" id="fehler" hidden></p>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/willkommen.js?v=202610061325" defer></script>
|
<script src="assets/js/willkommen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+17
-17
@@ -12,20 +12,20 @@
|
|||||||
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
Ton wie die Kopfleiste darunter (#06090f), damit Leiste und Seite
|
||||||
eine Flaeche sind statt zweier. -->
|
eine Flaeche sind statt zweier. -->
|
||||||
<meta name="theme-color" content="#06090f" />
|
<meta name="theme-color" content="#06090f" />
|
||||||
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061325" />
|
<link rel="icon" type="image/png" href="/assets/img/app-symbole/workspace-32.png?v=202610061421" />
|
||||||
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061325" />
|
<link rel="apple-touch-icon" href="/assets/img/app-symbole/workspace-180.png?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/gate.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/gate.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/start.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/start.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/wissen.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/wissen.css?v=202610061421" />
|
||||||
<link rel="stylesheet" href="assets/css/module.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/module.css?v=202610061421" />
|
||||||
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
<!-- haus.css MUSS die letzte Stilvorlage sein (10.09.2026).
|
||||||
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
Auf der Agenturadresse ist sie leer -- das Haus hier IST der
|
||||||
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
Grundzustand. Auf der Adresse von Team Dogi biegt der Server
|
||||||
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
genau diesen Dateinamen auf crew-haus.css um, und die Seite
|
||||||
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
kommt schon beim ERSTEN Abruf in Lila und Babyblau an --
|
||||||
ohne Umfaerben im Browser, ohne Flackern. -->
|
ohne Umfaerben im Browser, ohne Flackern. -->
|
||||||
<link rel="stylesheet" href="assets/css/haus.css?v=202610061325" />
|
<link rel="stylesheet" href="assets/css/haus.css?v=202610061421" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="start">
|
<body class="start">
|
||||||
@@ -190,15 +190,15 @@
|
|||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<script src="assets/js/meldung.js?v=202610061325" defer></script>
|
<script src="assets/js/meldung.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/hochladen.js?v=202610061325" defer></script>
|
<script src="assets/js/hochladen.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/nachfrage.js?v=202610061325" defer></script>
|
<script src="assets/js/nachfrage.js?v=202610061421" defer></script>
|
||||||
|
|
||||||
<script src="assets/js/wahl.js?v=202610061325" defer></script>
|
<script src="assets/js/wahl.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/bereiche.js?v=202610061325" defer></script>
|
<script src="assets/js/bereiche.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/installieren.js?v=202610061325" defer></script>
|
<script src="assets/js/installieren.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/kopf.js?v=202610061325" defer></script>
|
<script src="assets/js/kopf.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/glocke.js?v=202610061325" defer></script>
|
<script src="assets/js/glocke.js?v=202610061421" defer></script>
|
||||||
<script src="assets/js/wissen.js?v=202610061325" defer></script>
|
<script src="assets/js/wissen.js?v=202610061421" defer></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user