Skip to content

event_groups ECA model

Source: eca.eca.event_groups.yml

Purpose: Lifecycle reactions on event group entities — form preparation, local-task / operation rendering around events, and the event-clone flow (clone an existing event into another org).

Events the model listens to

Plugin Label
content_entity:prepareform Prepare event form
form:form_build Build event form
eca_render:local_tasks Alter local task
eca_render:entity_operations Operation links
form:form_build Build event clone form
content_entity:prepareform Prepare group event form
eca_endpoint:access Access clone event
eca_endpoint:response Response clone event
form:form_build Build form: select org clone event
form:form_submit Submit form: select org clone event

Entities & contexts touched

  • group (bundle event)
  • fedms_event (content entity)
  • The entity-clone endpoint exposed via eca_endpoint

Why it exists

The FedMS UX needs to:

  1. Inject FedMS-specific defaults / tokens into event creation forms.
  2. Surface "Clone this event" as a local task or operation link, with a destination-org picker if the user has access to multiple orgs.
  3. Wire up the clone endpoint so it returns the right response type.

Editing notes / gotchas

  • Clone logic is split between this model and session_groups. If you add or remove a clone-related step here, check the symmetry there.
  • The clone endpoint is exposed via eca_endpoint. Changing the URL or access rules here can break Playwright tests in tests/playwright/ that exercise event creation. Run the tests before pushing.
  • Local-task alteration depends on the active theme (Gin admin / Olivero front). Validate visually after edits.

See also