1. YoureCom
    1. About me
  2. YoureCom Insights
  3. Work Place
  4. Support
  5. Work Place
  6. GitHub
  • Login
  • Register
  • Search
Competitions Based System
  • Everywhere
  • Competitions Based System
  • Competitions Based System
  • Articles
  • Pages
  • Forum
  • Tasks
  • Products
  • More Options
  1. YoureCom - Plugins for the WoltLab Suite Core (WSC)
  2. Workplace
  3. Competitions Based System

FormBuilder: CompetitionAdd Migration #265

  • Marcel Beckers
  • December 19, 2025 at 11:18 PM
  • 0 Comments
  • Done
✔ Done

Migration der CompetitionAddForm von AbstractForm auf den FormBuilder-Standard der WoltLab Suite 6.2+.

Die bestehende CompetitionAddForm ist eine sehr umfangreiche AbstractForm-Implementierung mit manueller Formularverarbeitung (readFormParameters(), validate()), direkter $_POST-Nutzung, I18n-Handling, Datei-Uploads, Import-Logik sowie dynamischen Options- und Zusatzfeldern.
Ziel dieses Tasks ist die vollständige Umstellung auf AbstractFormBuilderForm, inklusive:
Abbildung aller Kerneingaben (Name, Typ, Kategorie, Teilnehmer, Kontaktpersonen, Entry-Mode, Open-Status) als FormBuilder-Felder
Integration des CompetitionOptionHandler in den FormBuilder-Lifecycle (Initialisierung, Validierung, Save)
Saubere Umsetzung der Mehrsprachigkeit (Name) über FormBuilder-kompatible I18n-Felder
Entkopplung der Import-Logik (XML-Import) vom Formular-Lifecycle, klar getrennt von regulärer Validierung
Migration der Datei-Upload-Logik (Competition-Bild, Import-Datei) in FormBuilder-konforme Upload-Felder
Verlagerung der Validierungslogik (Typ, Kategorie, Kontakte, Teilnehmer, Optionen) in feldbasierte Validatoren
Entfernung direkter $_POST-Zugriffe sowie Reduktion der zentralen validate()-Methode auf Sonderlogik
Anpassung der save()-Logik zur ausschließlichen Nutzung validierter FormBuilder-Daten
Ergebnis ist eine strukturierte, wartbare und Core-konforme Wettbewerbs-Erstellungslogik, die trotz hoher Komplexität klaren Verantwortlichkeiten folgt und für WSC 6.2+, PHP 8.2+ sowie zukünftige Erweiterungen (Import, Optionen, Runden, Pairings) vorbereitet ist.

  • Share

Bereit, deine Community smarter zu machen?

Entdecke die leistungsstarken Plugins von YoureCom und überzeuge dich selbst.

Jetzt kaufen Demo testen

⭐⭐⭐⭐⭐ Über 6.000 zufriedene Kunden • Direkter Support vom Entwickler

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login

Last completed Tasks

  1. FormBuilder: ClantagEditForm Clan Management

    Marcel Beckers December 15, 2025 at 6:41 AM
  2. FormBuilder: GroupOptionForm Clan Management

    Marcel Beckers December 15, 2025 at 6:32 AM
  3. FormBuilder: FieldAddForm Clan Management

    Marcel Beckers December 15, 2025 at 6:28 AM
  4. FormBuilder: FieldCategoryAddForm Clan Management

    Marcel Beckers December 15, 2025 at 6:30 AM
  5. PHPStan Level 6 erreichen Guestbook Guestbook: Infractions

    Marcel Beckers December 16, 2025 at 8:28 PM
  6. PHPStan Level 6 erreichen Guestbook Guestbook: Branding-Free

    Marcel Beckers December 16, 2025 at 8:28 PM
  1. Contact
  2. Privacy Policy
  3. Legal Notice
  4. Terms and Conditions (T&C)
Workplace
Powered by WoltLab Suite™
Design by DragNord.com