LigaWerk

Admin Context: Initial Setup

Goal

Prepare the system so that association, central access and first master data for the demo league exist. This chapter bundles everything created in the system-admin or admin context.

Role and Permission

  • System operator for server and configuration steps.
  • System administrator for maintenance in the Admin area.

Prerequisites

  • The application is reachable.
  • You have server access to the running application.
  • The internal application directory on the target host is known.
  • Real configuration values live in deployment secrets or internal operations documentation, not in this public handbook.
  • Mail delivery or development mail redirection is prepared for login links.
  • The demo scenario is functionally fixed.

2.1Configure the Application

Goal

The application starts with a consciously selected runtime mode, database and mail delivery.

Required Configuration

AreaVariableExpectation
Runtime modeAPP_ENVprod for publicly reachable operation; dev only for protected test operation
Debug outputAPP_DEBUG0 for publicly reachable operation
Application secretAPP_SECRETlong random value; never documented in the repository or handbook
DatabaseDATABASE_URLreachable MySQL-compatible database with utf8mb4
Mail transportMAILER_DSNproduction SMTP/API transport or consciously disabled test transport
SenderMAILER_FROMtechnical sender address for login links and notifications
Development targetMAILER_DEV_RECIPIENTtarget address for redirected mail outside APP_ENV=prod
URL contextDEPLOY_DOMAINpublic domain for generated links
URL schemeDEPLOY_SCHEMEhttps for publicly reachable operation

Check Configuration

Sign in to the target host by SSH, change into the internally documented application directory and check runtime, database and migrations:

bash
php bin/console about
php bin/console doctrine:query:sql "SELECT 1"
php bin/console doctrine:migrations:migrate --no-interaction

Typical Mistakes

  • Wrong APP_ENV causes mails to be redirected unexpectedly or sent productively.
  • APP_DEBUG=1 can expose technical details on a public host.
  • Missing database or mail settings block login-link and workflow tests.

2.2Create System Access by Console

Goal

Create the first administrator account without depending on an already working Admin login.

Server Command

Run the internally documented console command for creating a system administrator. Use the target email of the first admin account.

bash
php bin/console app:admin:create demo-admin@ligawerk.de

Check Login

  1. Open /login.
  2. Request a login link for the created email address.
  3. Open the delivered link.
  4. Check that the Admin area is reachable.
  5. Confirm that the active workspace is system administration.

Verification

  • The account exists.
  • Login-link mail delivery works.
  • /admin opens without access denied.

2.3Create Association

Goal

Create the organizational frame for the demo league.

Example Data

FieldValue
NameZauberForest Spielrunde
Short nameZFS
StatusActive
Websitehttps://www.ligawerk.de/handbuch/ligabetrieb

Workflow

  1. Sign in as administrator.
  2. Open Associations.
  3. Click Create Association.
  4. Enter name, short name, status and public contact data.
  5. Save the association.
  6. Reopen the detail view and check that the association is active.

Expected Result

  • The association exists once.
  • It is active.
  • It can be selected as work context for league administration.

2.4Set Up League Administration

2.4.1Goal and Access

League administration needs a person, login-capable access and an association function that grants the association workspace.

2.4.2Example Data

ElementValue
PersonLuminara Funkelblatt
Emailliga.zauberforest@ligawerk.de
AssociationZauberForest Spielrunde
Function typeLeague administration
StatusActive

2.4.3Create Person and Function

  1. Open People.
  2. Create the person with email address and active status.
  3. Open Association functions.
  4. Create a function for the association and person.
  5. Select the function type that grants league-management access.
  6. Save.

2.4.4Check Login and Workspace

  1. Request a login link for the league-management email.
  2. Sign in with that link.
  3. Open /admin.
  4. Check that the association workspace is offered.
  5. Switch into the association workspace and check the navigation.

2.4.5Controls and Error Patterns

SituationMeaning
Workspace missingassociation function is missing, inactive or has the wrong type
Login link not deliveredcheck mail configuration and recipient address
Access denieduser exists but has no matching admin-capable function

2.5Create Club

2.5.1Goal and Access

Create the clubs that later submit teams, player lists, referees and game-day data.

2.5.2Example Data

ClubShort nameRole
Feldberg FüchseFBFcomplete home-club submission
Kinzigtal KauzeKIKfollow-up / late-submission case
Murgbach MurmeltiereMBMcancellation and rescheduling case

2.5.3Enter Club

  1. In the association workspace, open Clubs.
  2. Click Create Club.
  3. Enter name, short name, status and contact data.
  4. Assign the club to the association.
  5. Save.

2.5.4Check Public Display

Open the public master-data pages and check whether the club appears in the expected season/league context once teams and registrations exist. A club alone does not yet create a public league entry.

2.5.5Typical Mistakes

SituationMeaning
Club not visible publiclyno team or league registration exists yet
Club appears twiceduplicate master-data record was created
Club cannot be selected laterstatus or association assignment is wrong

2.6Set Up Club Access

2.6.1Goal and Access

Club access consists of person, club membership and club function. The person must be active and the function must grant the intended club workspace.

2.6.2Example Data

ElementValue
PersonFelia Fuchspfad
Emailverein.fbf@ligawerk.de
ClubFeldberg Füchse
Club functionClub administrator
Membership statusActive

2.6.3Create Person

  1. Open People.
  2. Create or find the person.
  3. Enter email address, status and public data as needed.
  4. Save.

2.6.4Create Club Membership

  1. Open Club memberships.
  2. Select person and club.
  3. Set membership status to active.
  4. Save.

2.6.5Create Club Function

  1. Open Club functions.
  2. Select club, person and function type.
  3. Use a type that grants club administration where needed.
  4. Save.

2.6.6Pre-Check Access

  1. Request a login link for the club account.
  2. Sign in.
  3. Check that /admin opens.
  4. Check that the club workspace is available.
  5. Switch into the club workspace and check club navigation.

2.6.7Typical Mistakes

SituationMeaning
Person can log in but sees no clubmembership or club function is missing
Person sees the wrong clubmembership/function points to the wrong club
Person cannot editfunction type has read-only or no admin permissions

2.7Use Audit Log as System Admin

Goal

The audit log answers who changed what, when and in which work context. It is used for support, traceability and acceptance checks.

Role and Access

  • System administrator or authorized admin role.
  • Work in the system or association workspace.
  • Use the audit log for review, not for editing business data.

Typical Support Questions

QuestionWhat to check
Who changed this object?actor, operation, object type and object ID
Was a workflow action triggered?route/path, operation and context
Was a user acting by proxy?original actor and effective actor
Which club or association was affected?work context type and ID

Workflow

  1. Open Audit log.
  2. Filter by actor, operation, object type, route or time range.
  3. Open the matching entry.
  4. Compare actor, object and work context with the support question.
  5. Document the finding outside the audit log if follow-up is required.

Expected Result

  • Mutating admin and workflow actions are traceable.
  • Support can identify actor, operation, object, route and context.
  • No business correction is performed directly in the audit log.

Outlook

After this setup, league administration continues with association context: season, leagues, registrations, schedule and review workflows.