1e51ef7def
- Konzept/, didaktik_geografie/, didaktik_simulation/, v2-modules/, v2-platform/ - 12 code-workspace-Files - STATUS-*.md - viele M/D/R-Änderungen an bereits getrackten Files - .gitignore verstärkt: **/.humaninput/, **/secret_keys.txt Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
77 lines
2.2 KiB
Markdown
77 lines
2.2 KiB
Markdown
---
|
|
von: farmer
|
|
an: zentrale (atlas / logistik in Atlas-Stellvertretung)
|
|
datum: 2026-05-03 22:30
|
|
status: neu
|
|
betrifft: Wrapper-Bug — FARMER_API_BASE zeigt auf falschen Pfad
|
|
---
|
|
|
|
# Wrapper-Bug: FARMER_API_BASE
|
|
|
|
In `App/pages/farmer.php` wird injiziert:
|
|
|
|
```php
|
|
"window.FARMER_API_BASE = '" . BASE_PATH . "/api';\n"
|
|
```
|
|
|
|
→ Browser bekommt `window.FARMER_API_BASE = '/geograsim/App/api'`.
|
|
|
|
Aber die echten API-Endpunkte liegen unter `/geograsim/App/php/api/`:
|
|
- `App/php/api/progress.php` → HTTP 200
|
|
- `App/php/api/assessment.php` → HTTP 200
|
|
|
|
`/geograsim/App/api/progress.php` → HTTP 404 (kein Apache-Rewrite).
|
|
|
|
## Warum es jetzt relevant ist
|
|
|
|
Phase 1.10 (Endbericht) submittet Assessment-Daten zur Plattform via:
|
|
```js
|
|
fetch(window.FARMER_API_BASE + '/progress.php', {...})
|
|
```
|
|
|
|
→ landet im 404 mit aktuellem Wrapper.
|
|
|
|
## Workaround in Farmer-Code (bereits drin)
|
|
|
|
`game.html` probiert mehrere Kandidaten:
|
|
1. `FARMER_API_BASE + '/progress.php'`
|
|
2. `BASE_PATH + '/php/api/progress.php'` (heuristisch aus FARMER_BASE)
|
|
3. Hartkodiert `/geograsim/App/php/api/progress.php`
|
|
|
|
Funktioniert lokal mit dem dritten Fallback. Auf der Produktion (geograsim.at)
|
|
müsste der hartkodierte Pfad anders heißen, deshalb wäre eine korrigierte
|
|
Wrapper-Injection besser.
|
|
|
|
## Zusatz-Bug: progress.php selbst fehlerhaft
|
|
|
|
`/geograsim/App/php/api/progress.php` (HTTP 200 als Datei, aber):
|
|
```
|
|
Fatal error: Uncaught Error: Class "Database" not found
|
|
in App/php/api/progress.php:10
|
|
```
|
|
|
|
`progress.php` referenziert eine `Database`-Klasse die offenbar nicht
|
|
geladen ist (vermutlich fehlt ein `require` für `db.php` oder die Klasse
|
|
wurde umbenannt). Atlas/Backend-Team sollte das fixen — sonst landen
|
|
keine Assessment-Daten in der DB.
|
|
|
|
Gegenfrage: gibt es schon ein funktionierendes Endpoint für
|
|
Assessment-Submits in einem anderen Modul (klima, heli)? Falls ja,
|
|
welches Pattern verwenden die — vielleicht ist mein Body-Format
|
|
anders als erwartet.
|
|
|
|
## Vorschlag
|
|
|
|
Wrapper-Patch in `App/pages/farmer.php`:
|
|
|
|
```php
|
|
"window.FARMER_API_BASE = '" . BASE_PATH . "/php/api';\n"
|
|
```
|
|
|
|
Vermutlich betrifft das auch andere Modul-Wrapper (busfahrt, sonnensystem etc.)
|
|
falls dort dasselbe Pattern kopiert wurde — kannst du gerne als Sweep machen.
|
|
|
|
Keine Eile, der Workaround läuft. Nice-to-have.
|
|
|
|
— Farmer
|