Calendar

Use the calendar when users need an interactive month grid with search to find events by date.

Visitors pick a day or search within the calendar view. Content authors connect event sources and labels; visual designers should leave room for the grid and search on small screens. Pair this pattern with list views when users only need a simple chronological feed without a calendar.

Behaviour

  • Search and date work together: searching can keep the current month context where the implementation allows.
  • Empty states should explain when there are no events, not show a blank region with no explanation.
  • The calendar script loads event data for the view; behaviour should stay usable when JavaScript is limited (follow template-level fallbacks where provided).

Anatomy

  1. Search region with a text field and a clear way to submit the search.
  2. Month grid showing days and any event indicators.
  3. Supporting content or list beside or below the grid, depending on the template.

Calendar with search (placeholder)

Replace with a screenshot of the calendar grid and search strip.

Content guidelines

  • Event content should use consistent titles and dates so the calendar and any list view match.
  • Keep search placeholder and helper text short and plain language.

Best practices

Do

  • Keep search and date behaviour predictable when back and forward navigation is used.
  • Test time zones and daylight saving with real content.

Don't

  • Don't rely on colour alone for “has events” days; provide text in the day detail view.

When to use

  • Events landing pages that need month navigation with listings below or beside the calendar.

When not to use

  • Simple chronological lists without a calendar grid; use List events or Featured events.

CRXDE Lite query

Use this query in CRXDE Lite to find instances of this component.

/jcr:root/content//*[@sling:resourceType = 'concordia/components/news-events/calendar/calendar.jsp']
ItemLocation
Componentapps/concordia/components/news-events/calendar/calendar.jsp
JSONapps/concordia/components/news-events/calendar/json.jsp
Clientlibapps.concordia.event-calendar

Implementation reads date and searchTerm from the query string (filtered for safety), wraps the calendar mount point, and uses a GET form for search. A hidden field can preserve the current view when searching. Event dates are bootstrapped before client scripts run.