query("SELECT wp_key, name, lat, lon, wp_type, info FROM geo_waypoints")->fetchAll(PDO::FETCH_ASSOC); $wpJs = "{\n"; foreach ($rows as $w) { $key = $w['wp_key']; $name = addslashes($w['name']); $wpJs .= " '$key':{lat:{$w['lat']},lon:{$w['lon']},name:'$name'},\n"; } $wpJs .= "}"; // POIs für die Karte (nur Basen, Städte, Gipfel) $poisJs = "[\n"; foreach ($rows as $w) { if (in_array($w['wp_type'], ['base','city','peak'])) { $name = addslashes($w['name']); $info = addslashes($w['info'] ?? ''); $poisJs .= " {key:'{$w['wp_key']}',name:'$name',lat:{$w['lat']},lon:{$w['lon']},type:'{$w['wp_type']}',info:'$info'},\n"; } } $poisJs .= "]"; // game.html laden $html = file_get_contents(__DIR__ . '/../sims/heli/game.html'); // Placeholder ersetzen — HELI_BASE aus BASE_PATH ableiten (funktioniert lokal + produktiv) $base = BASE_PATH . '/sims/heli/'; $html = str_replace('/*__DB_WAYPOINTS__*/', "window.HELI_BASE = '$base';\nvar WP = $wpJs;\nvar wpLoaded = true;\nvar DB_POIS = $poisJs;", $html); // Head-Asset-Pfade auf BASE_PATH umbiegen (relative ../../ greift unter /heli-game-Route falsch) $html = str_replace('href="../../favicon-96x96.png"', 'href="' . BASE_PATH . '/favicon-96x96.png"', $html); $html = str_replace('href="../../assets/fonts/inter.css"', 'href="' . BASE_PATH . '/assets/fonts/inter.css"', $html); echo $html;