rsvp_events_admin

rsvp_events_admin.info.yml

(https://gitlab.com/rsvp-system/rsvp-system-module)

  • declares recurring_events:recurring_events_views as a dependency, so Drupal won't let you enable it unless the views it modifies actually exist.

rsvp_events_admin.module — two hooks:

  • The form alter guards on current_display === 'admin_page' so the filter only appears on admin views, not on the public /events and /events/series pages
  • Query alter uses prefixed JOIN aliases (rsvp_eco_series, rsvp_eco_instance) to avoid any collision with other modules that might JOIN the same table
  • The constant RSVP_EVENTS_ADMIN_VIEW_IDS keeps the two view IDs in one place

rsvp_events_admin.install — three things worth noting:

  • It's idempotent — checks if the field already exists before adding it, so running install twice won't break anything
  • hook_uninstall removes the column cleanly, so the module is fully reversible
  • The field definition is built from a single _rsvp_events_admin_community_field_definition() helper with entity_type and relationship as parameters — the only two things that differ between the two views