Para Badminton – Kalender, Spielzeiten und Resultate
Projektübersicht · Funktionen · Datenabläufe · Installation und Ausbau Stand: 19.10.2026 · private, kostenlose Nutzung · App-Version (Cache) para-badminton-v5
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, «Turniere anzeigen»: Jahre einzeln ankreuzen (ab 2010, mit Anzahl gespeicherter Turniere; alle angehakt = «Alle verfügbaren»; laufendes und nächstes Jahr immer dabei), 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 · Podium · Resultate · Geplante Spiele · Live · 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 zum «Podium», wenn das Turnier fertig gespielt ist (keine geplanten Spiele mehr), sonst zu «Geplante Spiele». Nur hier wird das Turnier gewählt. |
| Podium | Medaillenspiegel (beim Öffnen immer zugeklappt) und Podest pro Klasse: 🥇 Finalsieger, 🥈 Finalverlierer, 🥉 Halbfinalverlierer (bzw. Sieger eines Spiels um Platz 3). Klassen im reinen Gruppenmodus (eine Gruppe, jeder gegen jeden, ohne anschliessende KO-Runde; ein als «Final» bezeichnetes letztes Gruppenspiel zählt als Gruppenspiel): Podium aus der Gruppentabelle nach BWF-Regel (Siege; bei 2 Gleichen direkte Begegnung; bei 3+ Gleichen Satz-, dann Punktdifferenz), vorläufig solange Spiele offen sind, mit aufklappbarer «Gruppentabelle». Mehrere Gruppen ohne KO-Spiele: Hinweis «Podium erst nach der KO-Runde». Alle Klassen werden gezeigt, gewählte Länder/Spieler hervorgehoben. Sortierung siehe unten. Export PDF/Excel (Blätter «Podium» und «Medaillenspiegel»). |
| 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. |
| 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. |
| Live | Laufende Spiele des gewählten Turniers mit Live-Spielstand (aktueller Satz gross, ● = Aufschlag), Status (Einspielen, Läuft, Challenge …) und Spieldauer. Aktualisierung alle 20 s, solange das Register offen ist; die Zahl im Register zeigt die Anzahl laufender Spiele. Darunter «Zuletzt beendet». |
| 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 der gewählten Jahre plus laufendes Jahr bis +180 Tage laden (Standard: «Alle verfügbaren», d. h. ab 2010, soweit die BWF Daten hat; Abfrage pro Jahr, neueste zuerst; abgeschlossene Jahre nur einmal; Jahre ohne Antwort werden übersprungen, in der Statuszeile gemeldet und beim nächsten Abgleich erneut versucht; Zeitlimit 25 s pro Abfrage).
- 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
- Ältere Turniere ohne BWF-Turniercode erscheinen in der Liste mit «keine Spieldaten bei der BWF»; Spiele lassen sich dafür nicht abrufen.
- 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: Gruppenmodus wird erkannt, wenn die Auslosung «Group» im Namen trägt oder alle genau einmal gegeneinander spielen (ohne Halb-/Viertelfinal); bei Gleichstand nach allen BWF-Kriterien entscheidet bei der BWF das Los – die App zeigt dann die gespeicherte Reihenfolge. Bei Doppeln mit Partnern aus zwei Ländern zählt die Medaille für beide Länder. Geprüft am Egypt Para Badminton International 2026 (20 Klassen, Gruppen mit KO-Runde und reine Gruppen).
- 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).