Atlas: Live-View-Feature + Submit-Bug-Fixes + Admin-Styleguide
- Neuer API-Endpoint /api/live (heartbeat / spectator) + DB-Tabelle live_sessions + class_modules.paused-Spalte - Plattform-Live-Client (assets/js/live-client.js): Heartbeat, Pause-Overlay, Spectator-Mode bei ?view=teacher - ggs_inject_live() in _scripts.php als Helper, in alle 11 Sim-Wrapper integriert - Lehrer-Cockpit: tabellarische Klassen-Live-Ansicht pro Sim, Pause-Toggle, blinkender Tab-Indikator wenn aktive Sessions - Submit-Bug erschlagen: progress.php hat jetzt submit_assessment- und reflection-Action; saves.php akzeptiert beide Key-Konventionen; alle Direkt-Pfad-API-Files mit require_once-Bootstrap - Avatar-Default: zufaelliger DALL-E-Avatar fuer neue Schueler:innen - Admin-Styleguide-Seite mit Bildstil, Farb-Tokens, Layout, iPad-Pattern - Klima 2D + 3D: GGS_LIVE_STATE-Hook, Klima 2D zusaetzlich skipResume fuer Klassenaufgaben-Reset - Test-Lehrer Jakob + 3 Schueler:innen lokal + auf Live angelegt - Rundbriefe an alle Sim-Instanzen + Submit-Briefe an sonnensystem, busfahrt, energiemanager + Glossar-Anfrage zu Grundriess - Status-Uebergabe in _inbox/zentrale/_status.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -62,7 +62,7 @@ if ($mode === 'locked') {
|
||||
http_response_code(403);
|
||||
header('Content-Type: text/html; charset=utf-8');
|
||||
$cssHref = BASE_PATH . '/assets/css/design-system.css';
|
||||
$cockpit = BASE_PATH . '/sim';
|
||||
$cockpit = BASE_PATH . '/schueler';
|
||||
echo <<<HTML
|
||||
<!DOCTYPE html><html lang="de"><head>
|
||||
<meta charset="utf-8"><title>Gesperrt · Logistik Europa</title>
|
||||
@@ -143,14 +143,18 @@ $html = strtr($html, [
|
||||
'href="../../favicon-96x96.png"' => 'href="' . BASE_PATH . '/favicon-96x96.png"',
|
||||
'src="../../assets/img/bildLogo.png"' => 'src="' . BASE_PATH . '/assets/img/bildLogo.png"',
|
||||
'src="../../assets/img/textlogo_geograsim.svg"' => 'src="' . BASE_PATH . '/assets/img/textlogo_geograsim.svg"',
|
||||
'href="../../sim"' => 'href="' . BASE_PATH . '/sim"',
|
||||
'href="../../schueler"' => 'href="' . cockpit_href() . '"',
|
||||
'href="../../"' => 'href="' . BASE_PATH . '/"',
|
||||
'src="engine.js"' => 'src="' . $base . 'engine.js"',
|
||||
'src="headless-runner.js"' => 'src="' . $base . 'headless-runner.js"',
|
||||
'src="assets/vendor/three/three.min.js"' => 'src="' . $base . 'assets/vendor/three/three.min.js"',
|
||||
'src="assets/vendor/autobahn-game/autobahn-game.js"' => 'src="' . $base . 'assets/vendor/autobahn-game/autobahn-game.js"',
|
||||
// Leaflet lokal + Tile-Proxy (DSGVO-sicher)
|
||||
'https://unpkg.com/leaflet@1.9.4/dist/leaflet.css' => BASE_PATH . '/assets/vendor/leaflet/leaflet.css',
|
||||
'https://unpkg.com/leaflet@1.9.4/dist/leaflet.js' => BASE_PATH . '/assets/vendor/leaflet/leaflet.js',
|
||||
"'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png'" => "'{$tileProxy}?z={z}&x={x}&y={y}&p=osm-de'",
|
||||
]);
|
||||
$html = str_replace('href="/schueler"', 'href="' . cockpit_href() . '"', $html);
|
||||
|
||||
if (function_exists('ggs_inject_live')) $html = ggs_inject_live($html, 'logistik');
|
||||
echo $html;
|
||||
|
||||
Reference in New Issue
Block a user