Skip to main content
Petanque Life

Tournament Setup

F04.02 28 features Planned

At a glance

A tournament setup wizard that lets organizers configure every dimension of a competition — discipline, game format, classes, levels, sanction workflow, fees, and constraints — using per-tenant configuration so each federation models its own rules without code changes. Templates and cloning eliminate repetitive setup season after season.

How it works

The wizard walks an organizer through type, format, rules, venue, and dates, but every dropdown is fed by per-tenant configuration. Disciplines (pétanque, jeu provençal, sport-boules) are toggled per tenant. Game formats are tenant-defined records carrying players-per-team and boules-per-player — Sweden enables tête-à-tête/doublette/triplette/mixed variants while France adds its own; the wizard picks from whatever the tenant declared.

Competition classes (spelklasser) are equally configurable: each federation defines codes, age limits, gender, and ranking eligibility (Sweden: M/YJ/J/Ö/D/V55/V65; France: Poussin to Vétéran; Germany: Minimes to Senioren; Spain: Benjamín to Veterano + Sub-23). The atomic unit is the combination class+format — "Ös" or "V65d" — and one event can host several such draws side by side (multi-discipline event). Competition levels are tenant-defined too, each carrying who can sanction it, ranking eligibility, ranking coefficient, required referee grade, venue requirements, and default match/throw time limits that auto-populate the competition.

The sanction application workflow then routes the request: club or district applies, the relevant authority (federation for national+, district for local) reviews, district provides a statement on regional applications, the authority approves or rejects, the sanction fee is charged, and the event is listed in the calendar. Sanction quotas cap the number of events per level per year and enforce blackout periods (no parallel events during SM). Specialised setups are first-class: ranking-capped competitions (concours promotionnel) restrict entry below a threshold, the club-bound flag forces every player on a team to share a club with configurable penalties, propaganda events run license-free for recruitment, and sanction revocation lets authorities pull a tournament with mandatory category and reason.

Templates and cloning let organizers save a setup or copy last year's tournament with new dates, so a recurring open is reborn in seconds.

Key capabilities

  • Wizard-driven setup covering type, format, rules, venue, dates, fees, and limits
  • Per-tenant disciplines, game formats, competition classes, and levels
  • Multi-discipline events hosting several class+format draws as parallel sub-tournaments
  • Sanction application, approval, fees, deadlines, quotas, and blackout windows
  • Specialised flags: ranking-capped, club-bound, propaganda, disability categories
  • Configurable match-time and throw-time limits inherited from competition level
  • Templates, cloning, and sanction revocation with mandatory reason and category

In practice

A French ligue admin clones last year's championnat doublette, shifts the dates by 51 weeks, and changes the venue. The wizard inherits France's championship class catalog, applies the level's 75-minute match limit, and prompts him to mark it as concours promotionnel restricted to ranking level 4 and below. He attaches the regulation PDF, sets the entry fee, and submits for sanction.

The federation reviews and approves within the August 1 deadline; the sanction fee is debited from the ligue's account, the event lands on the public calendar, and registration opens automatically when the configured window starts.

Features in this subsystem

28
ID Status Features
F04.02.01 Shipped Tournament creation wizard (type, format, rules, venue, dates) — PL-F0402a ✅ PL-F0402a
F04.02.02 Shipped Competition formats (see F04.10 for full format catalog) — PL-F0402a ✅ PL-F0402a
F04.02.03 Shipped Disciplines: pétanque, jeu provençal, sport-boules — configurable per tenant — PL-F0402a ✅ PL-F0402a
F04.02.04 Shipped Configurable game formats per tenant — tête-à-tête, doublette, triplette, mixed doublette, mixed triplette + tenant-specific variants. Includes players per team, boules per player. — PL-F0402a ✅ PL-F0402a
F04.02.05 Shipped Configurable competition classes (spelklasser) per tenant — each federation defines its own age/gender classes with codes, age limits, and ranking eligibility. Examples: Sweden (M/YJ/J/Ö/D/V55/V65), France (Poussin→Vétéran), Germany (Minimes→Senioren), Spain (Benjamín→Veterano+Sub-23). Class is always age OR gender, never both combined. — PL-F0402a ✅ PL-F0402a
F04.02.06 Shipped Competition class = competition class + game format — the atomic unit is the combination, e.g., "Ös" (Open singles), "V65d" (Veteran 65 doubles). A competition event can have multiple competition classes. — PL-F0402a ✅ PL-F0402a
F04.02.07 Shipped Disability categories and adaptive rules — PL-F0402b ✅ PL-F0402b
F04.02.08 Shipped Points system configuration (per competition type) — PL-F0402b ✅ PL-F0402b
F04.02.09 Shipped Entry fee configuration — PL-F0402b ✅ PL-F0402b
F04.02.10 Shipped Maximum participants / team limits — PL-F0402b ✅ PL-F0402b
F04.02.11 Shipped Qualification criteria (ranking threshold, regional qualification) — PL-F0402b ✅ PL-F0402b
F04.02.12 Shipped Multi-day tournament scheduling — PL-F0402b ✅ PL-F0402b
F04.02.13 Shipped Competition regulation document attachment — PL-F0402c ✅ PL-F0402c
F04.02.14 Shipped Configurable competition levels per tenant — each federation defines its own levels (e.g., Sweden: internationell/nationell/regional/lokal/propaganda; France: international/national/régional/départemental/local/animation; Germany: A/B/C/D). Each level has: who can sanction it, ranking eligibility, ranking coefficient, required referee grade, venue requirements. — PL-F0402c ✅ PL-F0402c
F04.02.15 Shipped Competition type classification — configurable per tenant: championship (SM/DM/VM), cup, open/concours, league, friendly, mêlée, propaganda/recruitment (license-free), inbjudningstävling, extern tävling — PL-F0402c ✅ PL-F0402c
F04.02.16 Shipped Multi-discipline event (same event hosts multiple competition classes as separate draws) — PL-F0402c ✅ PL-F0402c
F04.02.17 Shipped Multi-day scheduling with sessions (morning/afternoon) — PL-F0402c ✅ PL-F0402c
F04.02.18 Shipped Competition templates (save and reuse common setups) — PL-F0402c ✅ PL-F0402c
F04.02.19 Shipped Competition cloning (copy last year's tournament with new dates) — PL-F0402d ✅ PL-F0402d
F04.02.20 Shipped Sanction application workflow — club/district applies for sanction → relevant authority reviews (federation for national+, district for local) → district provides statement on regional applications → authority approves/rejects → sanction fee charged → competition listed in calendar. Configurable per level per tenant. — PL-F0402d ✅ PL-F0402d
F04.02.21 Shipped Sanction deadlines per level — configurable per tenant (e.g., Sweden: Aug 1 for int/nat, Sep 30 for regional, district decides for local) — PL-F0402d ✅ PL-F0402d
F04.02.22 Shipped Sanction quotas — configurable max per level per year (e.g., Sweden: ~7 int/nat, ~48 regional, max 4 parallel regionals). Blackout periods (e.g., no other events during SM). — PL-F0402d ✅ PL-F0402d
F04.02.23 Shipped Sanction fee per competition class — configurable per tenant (e.g., Sweden: 300 SEK/class, no fee for youth classes). Payable to district or federation. — PL-F0402d ✅ PL-F0402d
F04.02.24 Shipped Promotion/recruitment competition (propaganda) — license-free events for recruitment. Configurable: who can sanction (federation and/or district with quota), no ranking points, open to unlicensed players. — PL-F0402d ✅ PL-F0402d
F04.02.25 Shipped Ranking-capped competitions (concours promotionnel) — France: events restricted to players below a certain ranking level. Configurable ranking threshold per competition. Per-tenant RankingCapConfig med default/min/max cap och level-koppling. — PL-F0402e ✅ PL-F0402e
F04.02.26 Shipped Club-bound flag — if enabled, all players in a team must hold license in the same club. Violation = configurable penalty (disqualification, forfeit score, fine). club_bound_violation_penalty och club_bound_fine_amount på Competition. — PL-F0402e ✅ PL-F0402e
F04.02.27 Shipped Match time limit — configurable per tenant/level (e.g., Spain: 60 min, CEP: 75 min). Optional. CompetitionLevel.default_match_time_limit_minutes och default_throw_time_limit_seconds auto-populeras vid skapande. — PL-F0402e ✅ PL-F0402e
F04.02.28 Shipped Sanction revocation — authority can revoke sanction with mandatory reason, category, revoked_by. Auto-suspenderar tävling. Giltiga kategorier: rule_violation, safety_concern, venue_issue, federation_interest, organizer_misconduct, other. — PL-F0402e ✅ PL-F0402e