From 11eaf3f3e7a6f507460d9310cd1138d8519bfd99 Mon Sep 17 00:00:00 2001 From: DeeCee03 Date: Fri, 7 Aug 2026 18:23:15 +0200 Subject: [PATCH] Umlaute im Dateinamen, klarere Meldung bei altem Server Beim Import wurde aus "Pruefbild" ein "pr-fbild": der Namensfilter warf alles weg, was nicht ASCII ist. Umlaute werden jetzt umschrieben statt entfernt. Und /upload antwortet mit 404, solange der Python-Server noch in einer Fassung ohne den Endpunkt laeuft. Das ist die wahrscheinlichste Ursache, wenn der Import scheinbar nichts tut -- die Seite neu zu laden hilft dagegen nicht, weil serve.py nur beim Start eingelesen wird. Die Meldung sagt das jetzt. Co-Authored-By: Claude Opus 5 (1M context) --- post1.html | 4 ++++ serve.py | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/post1.html b/post1.html index 3f9144a..9aa43e4 100644 --- a/post1.html +++ b/post1.html @@ -2509,6 +2509,10 @@ }); if (!res.ok) { const w = await res.json().catch(() => ({})); + /* 404 heisst hier fast immer: der Python-Server laeuft noch in einer + Fassung ohne /upload. Die Seite neu zu laden hilft dagegen nicht -- + serve.py wird nur beim Start eingelesen. */ + if (res.status === 404) throw new Error("Server kennt /upload nicht · ./serve.sh neu starten"); throw new Error(w.error || ("HTTP " + res.status)); } const { pfad } = await res.json(); diff --git a/serve.py b/serve.py index e07988a..317827d 100755 --- a/serve.py +++ b/serve.py @@ -133,7 +133,12 @@ class Handler(http.server.SimpleHTTPRequestHandler): if endung not in BILD_ENDUNGEN: self._json(400, '{"error":"kein Bildformat"}') return - # Aus dem Stamm wird ein unverfaenglicher Dateiname, der Rest faellt weg. + # Aus dem Stamm wird ein unverfaenglicher Dateiname. Umlaute werden + # umschrieben statt weggeworfen, sonst wird aus "pruefbild" ein + # "pr-fbild" und der Name sagt nichts mehr. + for a, b in (("ä", "ae"), ("ö", "oe"), ("ü", "ue"), ("Ä", "Ae"), + ("Ö", "Oe"), ("Ü", "Ue"), ("ß", "ss")): + stamm = stamm.replace(a, b) stamm = re.sub(r"[^A-Za-z0-9._-]+", "-", stamm).strip("-.") or "bild" stamm = stamm[:80]