Feedback & Bugs
Help me improve the website and Wiedisync
Logged into Wiedisync? Give feedback there
What's New v3.2.3
News
- External links are no longer shown in the public news view — ticket and action links are reserved for Wiedisync (members area). Articles with links now display a CTA pointing members to the Wiedisync login
- Justified alignment with automatic hyphenation is now the default. Admin per-paragraph overrides are honored
- Fixed empty news view — a redundant filter caused 403 errors from Directus (homepage, news list, RSS feed)
Legal
- Privacy Policy & Imprint: Added Hetzner hosting section (Nuremberg datacenter)
- Notifications auto-deleted after 3 days
Registration Form
- Nationality: Searchable dropdown with favorites (CH, DE, FR, AT, IT) + all countries
- Phone: Country code selector with all countries (default +41 CH)
- Basketball fees: Active Adults, Juniors U18, Passive, Family
- Basketball licence: OTR 1, OTR 2, OTN dropdown
- Swiss Basketball PDF documents with auto pre-fill from form data
- Salutation auto-derived from gender selection
Security
- Self-hosted pdf-lib (was unpkg CDN without SRI)
- Client-side file type + size validation before upload (JPG/PNG/WebP/PDF, max 10 MB)
- Turnstile CAPTCHA token reset on failed submission
Registration System
- Unified registration form for Volleyball, Basketball and Passive memberships — replaces ClubDesk form + Google Forms
- Admin "Registrations" tab with status filters, detail modal, approve/reject workflow
- ClubDesk CSV export from admin panel
- Basketball PDF pre-fill (licence application, Player's Self Declaration, National Team Declaration)
- File uploads for ID copies with download + auto-delete from admin
- Sport-specific confirmation emails on registration
- Admin notification email on each new registration
- Privacy notice with consent checkbox (90-day auto-deletion)
- Auto-deletion Flow in Directus — daily cron deletes registrations + files after 90 days
Backend Migration
- Complete migration from PocketBase to Directus API backend
- New modular data fetching — each page loads only what it needs
- Admin panel now uses Directus REST instead of PocketBase SDK
- 60 files (team photos, news images, sponsor logos) migrated to Directus
Testing
- Comprehensive test suite: Vitest (unit) + Playwright (E2E), 170 tests
- GitHub Actions CI pipeline on push to dev/prod
Bug Fixes
- Feedback form Turnstile validation fixed
- Missing EN translation keys added
- Calendar grid and Leaflet map: overflow issues fixed
- Theme toggle and sponsor carousel: working across all pages
Website
- Astro 6 static site with custom CSS design system, bilingual (DE/EN)
- Directus API backend, Hetzner hosting (Nuremberg datacenter)
Teams, Games & Calendar
- Dynamic team pages with live data (games, rankings, roster, training, photos)
- Promotion/relegation color bands on volleyball rankings, accordion navigation (Women/Men/Youth)
- Game modal with sets, referees, venue. Scoreboard with Absolute/Per-Game toggle
- Calendar grid with event tooltips
Feedback & Admin
- Feedback form (Bug/Feature/Feedback) with Turnstile CAPTCHA, screenshot upload, automatic GitHub issue creation
- Admin area with glassmorphism login, password visibility toggle, dark/light mode
Content
- History page with Leaflet map, scorer course resources, regulations with SVRZ embeds
- Imprint, Privacy Policy, Sponsors page