Aufgaben: Rueckmeldungen ("Aufgaben & Feedback")

Letzter offener Punkt aus dem Konzept, Seite 4: Ein Creator hat laut
Rollenbeschreibung "Aufgaben & Feedback" -- die Aufgaben gab es, das
Feedback nicht. Ohne diese Moeglichkeit endet jede Rueckfrage ausserhalb
des Systems, in WhatsApp, und damit ausserhalb dessen, was spaeter noch
nachvollziehbar ist.

Neue Tabelle aufgaben_notizen. Wer die Aufgabe sehen darf, darf auch
mitreden -- geprueft ueber DIESELBE Sichtbarkeitsregel wie fuer die
Aufgabe selbst. Eine eigene Regel gibt es bewusst nicht: Zwei Regeln
fuer dieselbe Sache laufen irgendwann auseinander, und die Aufgaben-
sichtbarkeit ist die schwierigere von beiden (Creator sieht eigene,
Scout die seiner betreuten Creator, Leitung alles).

404 statt 403, wenn die Aufgabe nicht sichtbar ist -- wer sie nicht
sehen darf, soll nicht erfahren, dass es sie gibt.

Die eigene Rueckmeldung darf jeder zuruecknehmen, fremde nur die
Leitung. Eine Rueckmeldung ist keine Abstimmung: Wer sich vertippt hat,
soll das nicht bei jemandem beantragen muessen.

Der Knopf auf der Karte zeigt die ANZAHL, nicht nur ein Symbol -- so
sieht man ohne Aufklappen, wo schon etwas besprochen wurde, und die
Karte bleibt trotzdem ruhig. Aufgeklappt wird direkt an der Karte, nicht
in einem Fenster: Man liest die Rueckmeldungen im Zusammenhang mit der
Aufgabe, sonst fehlt beim Antworten die Haelfte.

Geprueft:
- Chef und Luna schreiben sich gegenseitig, beide sehen beides
- Mika (fremder Creator) bekommt 404 beim Lesen UND beim Schreiben
- ohne Anmeldung 401, fremde Herkunft 403, leerer Text abgewiesen
- Luna kann Chefs Rueckmeldung nicht loeschen, ihre eigene schon
- Chef kann alle loeschen
- Zaehler auf der Karte stimmt, Handy ohne Ueberlauf, 0 Konsolenfehler
This commit is contained in:
2026-08-31 12:37:50 +02:00
parent fc0fd0c748
commit 63aea61f39
17 changed files with 364 additions and 87 deletions
+67
View File
@@ -165,3 +165,70 @@
.karte__stift { margin-left: auto; }
.karte__kopf { display: flex; align-items: flex-start; gap: 8px; }
.karte__kopf .karte__titel { flex: 1 1 auto; }
/* ===================================================================
Rückmeldungen an einer Aufgabe ("Aufgaben & Feedback", Konzept).
Direkt an der Karte, nicht in einem Fenster: Man liest sie im
Zusammenhang mit der Aufgabe -- sonst fehlt beim Antworten die
Hälfte.
=================================================================== */
.karte__rueck {
display: inline-flex; align-items: center; gap: 7px;
margin-top: 10px; padding: 6px 11px; cursor: pointer;
background: transparent;
border: 1px solid var(--rand); border-radius: 999px;
color: var(--text-still); font: inherit; font-size: .76rem;
transition: color .16s ease, border-color .16s ease, background .16s ease;
}
.karte__rueck:hover { color: var(--text); border-color: rgba(255, 255, 255, .24); }
/* Wo schon etwas besprochen wurde, sieht man es ohne Aufklappen. */
.karte__rueck[data-hat="ja"] {
color: var(--akzent);
border-color: rgba(63, 189, 245, .38);
background: rgba(63, 189, 245, .08);
}
.karte__rueck[data-offen="ja"] { border-color: rgba(63, 189, 245, .6); color: #fff; }
.karte__blase {
width: 14px; height: 14px; flex: none;
fill: none; stroke: currentColor; stroke-width: 1.7;
stroke-linecap: round; stroke-linejoin: round;
}
.rueck {
margin-top: 11px; padding-top: 11px;
border-top: 1px solid var(--rand);
}
.rueck__liste { display: grid; gap: 8px; margin-bottom: 11px; }
.rueck__eintrag {
padding: 9px 12px;
background: rgba(255, 255, 255, .035);
border: 1px solid var(--rand); border-radius: var(--radius-klein);
}
.rueck__kopf { display: flex; align-items: baseline; gap: 8px; margin: 0 0 3px; }
.rueck__wer { font-size: .79rem; font-weight: 650; color: var(--text); }
.rueck__wann { font-size: .72rem; color: var(--text-still); }
.rueck__weg {
margin-left: auto; padding: 0 5px; cursor: pointer; line-height: 1;
background: none; border: 0; color: var(--text-still); font-size: 1rem;
}
.rueck__weg:hover { color: #ffb4b9; }
.rueck__text {
margin: 0; font-size: .85rem; color: var(--text-leise);
white-space: pre-wrap; line-height: 1.5;
}
.rueck__form { display: grid; gap: 8px; justify-items: start; }
.rueck__feld {
width: 100%; padding: 9px 12px;
background: rgba(255, 255, 255, .045);
border: 1px solid var(--rand); border-radius: var(--radius-klein);
color: var(--text); font: inherit; font-size: .86rem; resize: vertical;
}
.rueck__feld:focus {
outline: none; border-color: rgba(63, 189, 245, .65);
box-shadow: 0 0 0 3px rgba(63, 189, 245, .15);
}
@media (prefers-reduced-motion: reduce) { .karte__rueck { transition: none; } }
+104
View File
@@ -49,6 +49,93 @@
return `${t}.${m}.${j.slice(2)}`;
}
/* ---------- Rückmeldungen ------------------------------------------------
Direkt an der Karte, nicht in einem Fenster: Man liest sie im
Zusammenhang mit der Aufgabe, sonst fehlt beim Antworten die Hälfte. */
const zeitpunkt = (iso) => {
if (!iso) return '';
const d = new Date(iso);
const p = (n) => String(n).padStart(2, '0');
return `${p(d.getDate())}.${p(d.getMonth() + 1)}. · ${p(d.getHours())}:${p(d.getMinutes())}`;
};
async function rueckmeldungen(karteEl, a, knopfEl) {
const vorhanden = karteEl.querySelector('.rueck');
if (vorhanden) { vorhanden.remove(); delete knopfEl.dataset.offen; return; }
knopfEl.dataset.offen = 'ja';
const box = el('div', 'rueck');
box.append(el('p', 'leise', 'Wird geladen …'));
karteEl.append(box);
let daten;
try {
const antwort = await hole(`/workspace/api/aufgaben/${a.id}/notizen`);
if (!antwort.ok) {
box.textContent = '';
box.append(el('p', 'fehler', 'Konnte nicht geladen werden.'));
return;
}
daten = await antwort.json();
} catch { return; }
box.textContent = '';
const liste = el('div', 'rueck__liste');
if (!daten.notizen.length) liste.append(el('p', 'leise', 'Noch nichts besprochen.'));
for (const n of daten.notizen) {
const z = el('div', 'rueck__eintrag');
const kopf = el('p', 'rueck__kopf');
kopf.append(el('span', 'rueck__wer', n.von || 'Unbekannt'));
kopf.append(el('span', 'rueck__wann', zeitpunkt(n.erstellt)));
/* Die eigene Rückmeldung darf jeder zurücknehmen, fremde nur die
Leitung -- wer sich vertippt hat, soll das nicht beantragen
müssen. */
if (n.person_id === daten.ich || daten.darf_alles_loeschen) {
const weg = el('button', 'rueck__weg', '×');
weg.type = 'button';
weg.title = 'Rückmeldung entfernen';
weg.setAttribute('aria-label', 'Rückmeldung entfernen');
weg.addEventListener('click', async () => {
if (!confirm('Diese Rückmeldung entfernen?')) return;
const r = await hole('/workspace/api/notizen/' + n.id, { method: 'DELETE' });
if (!r.ok) { melde('Entfernen hat nicht geklappt.'); return; }
await laden();
});
kopf.append(weg);
}
z.append(kopf, el('p', 'rueck__text', n.text));
liste.append(z);
}
box.append(liste);
const form = el('form', 'rueck__form');
const feld = el('textarea', 'rueck__feld');
feld.rows = 2;
feld.maxLength = 2000;
feld.placeholder = 'Rückmeldung schreiben …';
const senden = el('button', 'knopf knopf--klein', 'Abschicken');
senden.type = 'submit';
form.append(feld, senden);
form.addEventListener('submit', async (e) => {
e.preventDefault();
const text = feld.value.trim();
if (text.length < 2) return;
senden.disabled = true;
try {
const r = await hole(`/workspace/api/aufgaben/${a.id}/notizen`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ text }),
});
if (!r.ok) { melde((await r.json().catch(() => ({}))).fehler || 'Ging nicht.'); return; }
await laden();
} catch { /* umgeleitet */ } finally { senden.disabled = false; }
});
box.append(form);
feld.focus();
}
function karte(a) {
const k = el('article', 'karte');
k.dataset.prio = a.prioritaet;
@@ -80,6 +167,23 @@
if (ZURUECK[a.status]) schritte.append(knopf('◀ zurück', a, ZURUECK[a.status]));
if (WEITER[a.status]) schritte.append(knopf(beschriftung(a.status), a, WEITER[a.status]));
if (schritte.childElementCount) k.append(schritte);
/* Rückmeldungen ("Aufgaben & Feedback" aus dem Konzept). Der Knopf
zeigt gleich die Anzahl -- so sieht man ohne Aufklappen, wo etwas
besprochen wurde. */
const rueck = el('button', 'karte__rueck');
rueck.type = 'button';
rueck.dataset.hat = a.notizen ? 'ja' : 'nein';
const blase = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
blase.setAttribute('viewBox', '0 0 24 24');
blase.setAttribute('class', 'karte__blase');
blase.setAttribute('aria-hidden', 'true');
blase.innerHTML = '<path d="M20.4 12.4c0 3.8-3.8 6.9-8.4 6.9-1 0-2-.15-2.9-.42L4 20.4l1.6-3.6a6.6 6.6 0 0 1-2-4.4C3.6 8.6 7.4 5.5 12 5.5s8.4 3.1 8.4 6.9z"/>';
rueck.append(blase, el('span', null, a.notizen
? `${a.notizen} ${a.notizen === 1 ? 'Rückmeldung' : 'Rückmeldungen'}`
: 'Rückmeldung schreiben'));
rueck.addEventListener('click', () => rueckmeldungen(k, a, rueck));
k.append(rueck);
return k;
}
+6 -6
View File
@@ -7,9 +7,9 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
</head>
<body class="start">
@@ -134,8 +134,8 @@
</form>
</dialog>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/aufgaben.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/aufgaben.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/bereich.css?v=202608311235" />
</head>
<body class="start">
@@ -98,8 +98,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/bereich.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/bereich.js?v=202608311235" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/calls.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/calls.css?v=202608311235" />
</head>
<body class="start">
@@ -49,9 +49,9 @@
</main>
<script src="assets/js/ki.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/calls.js?v=202608311225" defer></script>
<script src="assets/js/ki.js?v=202608311235" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/calls.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/dateien.css?v=202608311235" />
</head>
<body class="start">
@@ -88,8 +88,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/dateien.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/dateien.js?v=202608311235" defer></script>
</body>
</html>
+2 -2
View File
@@ -25,7 +25,7 @@
type="image/webp" media="(max-width: 899px)" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
</head>
<body class="gate">
@@ -143,6 +143,6 @@
</p>
</main>
<script src="assets/js/gate.js?v=202608311225" defer></script>
<script src="assets/js/gate.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/kalender.css?v=202608311235" />
</head>
<body class="start">
@@ -94,8 +94,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/kalender.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/kalender.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/personen.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/personen.css?v=202608311235" />
</head>
<body class="start">
@@ -93,8 +93,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/personen.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/personen.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/profil.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/profil.css?v=202608311235" />
</head>
<body class="start">
@@ -127,8 +127,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/profil.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/profil.js?v=202608311235" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/report.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/report.css?v=202608311235" />
</head>
<body class="start">
@@ -86,9 +86,9 @@
</main>
<script src="assets/js/ki.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/report.js?v=202608311225" defer></script>
<script src="assets/js/ki.js?v=202608311235" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/report.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/scouting.css?v=202608311235" />
</head>
<body class="start">
@@ -124,8 +124,8 @@
</div>
</div>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/scouting.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/scouting.js?v=202608311235" defer></script>
</body>
</html>
+5 -5
View File
@@ -7,8 +7,8 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
</head>
<body class="start">
@@ -56,8 +56,8 @@
</p>
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/start.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/start.js?v=202608311235" defer></script>
</body>
</html>
+8 -8
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/startcheck.css?v=202608311235" />
</head>
<body class="start">
@@ -65,9 +65,9 @@
</main>
<script src="assets/js/ki.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/startcheck.js?v=202608311225" defer></script>
<script src="assets/js/ki.js?v=202608311235" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/startcheck.js?v=202608311235" defer></script>
</body>
</html>
+7 -7
View File
@@ -7,10 +7,10 @@
<meta name="robots" content="noindex, nofollow" />
<meta name="theme-color" content="#05070d" />
<link rel="icon" href="assets/img/favicon.png" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202608311225" />
<link rel="stylesheet" href="assets/css/gate.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/start.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/aufgaben.css?v=202608311235" />
<link rel="stylesheet" href="assets/css/wissen.css?v=202608311235" />
</head>
<body class="start">
@@ -170,8 +170,8 @@
</main>
<script src="assets/js/wahl.js?v=202608311225" defer></script>
<script src="assets/js/kopf.js?v=202608311225" defer></script>
<script src="assets/js/wissen.js?v=202608311225" defer></script>
<script src="assets/js/wahl.js?v=202608311235" defer></script>
<script src="assets/js/kopf.js?v=202608311235" defer></script>
<script src="assets/js/wissen.js?v=202608311235" defer></script>
</body>
</html>