- event detail pages: <title> is "Title – 03.12.2026" (multi-day ranges
supported) so recurring events with the same name stay distinguishable;
H1 and lists keep the editor's title
- meta description fallback for events without teaser/description (date,
time, location); a teaser that is only an insert tag (shared series
text) also falls back, so a series does not share one description
- EventOpenGraphProvider for numero2/contao-opengraph3 (registered only
when the bundle is installed, priority above its CalendarEventsProvider):
og:title with date, og:description from teaser, event image as og:image
- FrontendCacheInvalidator: frontend event/organization edits write via
DBAL, so invalidate the same cache tags the backend uses; tag the map
and organization listing, invalidate the generic organization tag on
backend saves
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>