Para Badminton – Kalender, Spielzeiten und Resultate
Projektübersicht · Funktionen · Datenabläufe · Installation und Ausbau Stand: 18.10.2026 · private, kostenlose Nutzung · App-Version (Cache) para-badminton-v26
1. Ziel des Projekts
Die Web-App (PWA) liest die Daten des BWF-Kalenders (bwfbadminton.com/calendar) aus und zeigt sie übersichtlich auf Handy und Desktop an. Schwerpunkt:
- Sportart: Para Badminton
- Turnier: wird im Register «Turniere» gewählt
- Länder und Spieler: frei wählbar (mehrere Länder, einzelne Spieler), Standard-Wunschland Switzerland (SUI)
- Resultate, Podium mit Medaillenspiegel, geplante Spiele, Suche
- Exporte: Kalender (.ics), PDF, Excel
- Offline: geladene Daten bleiben auf dem Gerät gespeichert
2. Bedienung und Funktionen
Titelzeile
| Element | Funktion |
| ⟳ | Daten aktualisieren (Tooltip: Maus darüber bzw. am Handy lange drücken) |
| ⚙ | Einstellungen: Worker-URL, Zeitraum «Turniere anzeigen» (ab 1.1. eines Jahres), Demodaten, lokale Daten löschen |
| ? | Hilfe: öffnet diese Beschreibung (schliessen mit ✕ oder Tipp neben das Fenster) |
| Statuszeile | Stand der Daten, «Offline – gespeicherte Daten», Fehlermeldungen |
Register (Reihenfolge)
Turniere · Resultate · Podium · Geplante Spiele · Suche – die App startet immer im Register Turniere. Auf dem Handy werden die Register ohne Symbole angezeigt.
| Register | Inhalt |
| Turniere | Para-Turniere gruppiert nach Laufend / Demnächst / Vergangen, je mit Datum, Ort, Kategorie und Kennzahlen (Spiele · Länder · Spieler). Antippen wählt das Turnier und springt zu «Resultate». Nur hier wird das Turnier gewählt. |
| Resultate | Beendete Spiele (erscheinen erst nach Spielende), neueste zuerst, mit Satzresultaten und Sieg/Niederlage aus Sicht der Auswahl, Bilanz. Dropdown «Runden» mit Häkchen (mehrere wählbar, keine Auswahl = alle), sortiert: Final · Halbfinal · Viertelfinal · Achtelfinal · R32 · R64 · R128 · Runde 5 … Runde 1. Export PDF/Excel. |
| Podium | Medaillenspiegel (beim Öffnen immer zugeklappt) und Podest pro Klasse: 🥇 Finalsieger, 🥈 Finalverlierer, 🥉 Halbfinalverlierer (bzw. Sieger eines Spiels um Platz 3). Alle Klassen werden gezeigt, gewählte Länder/Spieler hervorgehoben. Sortierung siehe unten. Export PDF/Excel (Blätter «Podium» und «Medaillenspiegel»). |
| Geplante Spiele | Noch nicht beendete Spiele, nach Tag gruppiert, Zeit in Schweizer Zeit plus Ortszeit, «ca.» bei «Followed by/Not before», «TBA» ohne Zeit. Pro Paarung Knopf «📅 Kalender» (nur dieses Spiel), oben «📅 Alle (…)» für alle Spiele der Auswahl. Export PDF/Excel. |
| Suche | Volltext über alle gespeicherten Spiele (alle Turniere und Länder). Alle Namensteile müssen beim selben Spieler und am Wortanfang passen (Reihenfolge egal, Akzente egal). Klassen als Knöpfe (z. B. «WH 1», «SL 4»), kombinierbar mit Namen. Turniertreffer führen ins Register Turniere. |
Filter oben (in Resultate, Podium, Geplante Spiele)
| Feld | Funktion |
| Turnier | Zeigt das gewählte Turnier mit Spiele · Länder · Spieler; Antippen öffnet das Register Turniere. |
| Land | Dropdown mit Häkchen; nur Länder, die im gewählten Turnier vertreten sind (mit Anzahl Spiele). ▸ klappt die Spieler eines Landes auf: Land angehakt = alle Spieler, Teilstrich = nur gewählte Spieler. Länder und Einzelspieler kombinierbar. Keine Auswahl = alle Länder. Nicht vertretene Wunschländer/-spieler bleiben gespeichert («SUI nicht vertreten»). Gewählte Spieler sind in den Spielkarten fett unterstrichen. |
Sortierung Podium (Klassen)
- WH 1: MS, WS
- WH 2: MS, WS
- Doppel WH 1–WH 2: MD, WD, XD
- SL 3: MS, WS
- SL 4: MS, WS
- SU 5: MS, WS
- Doppel kombiniert: MD SL 3–SL 4, WD SL 3–SU 5, XD SL 3–SU 5
- SH 6: MS, WS, MD, WD, XD
Regel: Doppel mit zwei Klassen im Namen folgen nach den Einzelklassen ihrer Gruppe (Rollstuhl WH bzw. stehend SL/SU); Doppel mit nur einer Klasse stehen bei dieser Klasse; Unbekanntes am Schluss.
Exporte
| Export | Inhalt |
| PDF / Excel (Resultate, Geplante Spiele) | Spalten: Datum · Ortszeit · Turnier · Klasse · Runde · Court · Spieler 1 · Spieler 2 · Resultat · Sieger. Datum und Zeit am Austragungsort. Nur die aktuell gefilterten Spiele/Runden. |
| PDF / Excel (Podium) | Medaillenspiegel (Kürzel, Land, Gold, Silber, Bronze, Total) und Podestliste (Klasse, Medaille, Spieler, Land). |
| Kalender (.ics) | Einzelne Paarung oder alle geplanten Spiele der Auswahl, 45 Min. pro Termin, TBA-Spiele ausgenommen. Termine ändern sich nicht automatisch, wenn die BWF Zeiten verschiebt. |
3. Datenabläufe
Handy/Desktop (PWA) ──► Cloudflare Worker (bwf-proxy) ──► extranet-lv.bwfbadminton.com/api
│ CORS, nur BWF-Hosts erlaubt + Cache (Listen 15 Min., Spiele 1 Min.)
└─► IndexedDB (Turniere, Spiele, Abrufzeitpunkte) + localStorage (Einstellungen, Auswahl Turnier/Länder/Spieler/Runden)
Abgleich (⟳ oder automatisch beim Öffnen, höchstens alle 2 Min.)
- Para-Turnierliste ab 1.1. des eingestellten Jahres (Standard: Vorjahr) bis +180 Tage laden.
- Spiele automatisch laden für Turniere, die vor höchstens 30 Tagen endeten oder in spätestens 21 Tagen beginnen.
- Ältere Turniere: Spiele werden beim Auswählen geladen und danach dauerhaft gespeichert.
- Inkrementell: abgeschlossene Tage werden nicht mehr geladen, künftige Tage höchstens alle 6 h, gestern/heute/morgen jedes Mal.
- Spiele eines Tages werden ersetzt; verschobene oder gestrichene Spiele verschwinden.
BWF-Endpunkte
4. Bekannte Grenzen
- Die BWF-Schnittstelle ist inoffiziell und kann sich ohne Ankündigung ändern; Anpassungen betreffen dann vor allem adapter.js.
- Spielpläne erscheinen erst nach der Auslosung (meist wenige Tage vor Turnierbeginn), Resultate erst nach Spielende.
- Podium: Klassen ohne Final (reine Gruppen) werden als «Kein Final» angezeigt. Bei Doppeln mit Partnern aus zwei Ländern zählt die Medaille für beide Länder. Noch nicht an einem abgeschlossenen echten Turnier geprüft.
- Rundenbezeichnungen R16/R32/R64/R128 sind angenommen; unbekannte Bezeichnungen erscheinen unverändert am Schluss.
- PDF/Excel benötigen beim ersten Export Internet (Bibliotheken von cdnjs), danach offline.
- Gewählte Länder/Spieler und Einstellungen sind pro Gerät gespeichert (kein Abgleich zwischen Handy und Desktop).