---
title: "Portal Events Widget"
slug: "portal-events-widget"
updated: 2025-04-22T15:25:01Z
published: 2025-04-22T15:25:01Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://knowledge.technolutions.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Portal Events Widget

The **events widget** in the portal palette lets you display events in portal views.

You can use the widget to, among other things:

User-aware eventsEvent mapMultiple calendars

Display a list of admitted student events on an admitted students portal:

[![Event Widget on Enrolling Students Portal](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/jrsifrvacuiumb95plecfqmceclip5.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/jrsifrvacuiumb95plecfqmceclip5.png)

Display a map of upcoming visits on an application status portal:

[![Public Facing View of Map](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/syb4jxaxr0auwpho09bztwmceclip2.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/syb4jxaxr0auwpho09bztwmceclip2.png)

Display multiple event calendars simultaneously:

![Public Facing Portal with Two Event Widgets](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/apvj2hhzkwyi7520ffnsamceclip0.png)

## Creating a new events widget

In a [view](/v1/docs/creating-a-custom-portal), select the **Events** widget from the palette. Select once to insert it at the bottom of your view, or select and drag to a desired location.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Events widget.png)

## Details

Configure the following settings in the **details tab**.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Configure details tab.png)

#### Name

Enter a name for the widget.

#### Status

Set to **Active.**

#### CSS class name

Add an optional CSS class name for targeting by custom CSS rules.

**📖 Further reading:**[Portal branding](/docs/portal-branding)

## Event selection

The **event selection** **tab**lets you add exports to be used in the display and filters to determine which events should appear in the widget.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Configure event selection tab.png)

### Exports

The following exports appear by default:

- `title`
- `location`
- `start_date`
- `end_date`
- `id`
- `description`

Add any additional exports you want to display as merge fields in the event format tab that follows.

### Filters

The following filters are added by default:

- Folder
- Type

Make the desired selections and/or add additional filters.

> [!TIP]
> ✨ You can edit the *Type*filter to include Scheduler slots.

### Display number of spaces available

You can create a **subquery export**that returns the number of spaces remaining in an event. This subquery export uses a formula that subtracts the number of registrants, including guests, from the event’s attendance limit.

You can then display this data in the widget:

[![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/inline-1179440304.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/inline-1179440304.png)

#### Create the `spaceleft` subquery export

1. In the event selection tab, select **subquery export.**
2. Configure the following settings:
  - **Name**: Enter a merge-field friendly name, like `spaceleft`.
  - **Type:**Dependent subquery
  - **Output:**Formula
  - **Formula:**`@limit - coalesce(@registrations, 0)` ![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Space left - Subquery export.png)

#### Add the `limit` export

1. Add an **export**.
2. Select **Limit**from the list of direct exports.
3. Select **Continue.**
4. Rename the export `limit` (all lowercase)

#### Add the `registrations` nested subquery export

This nested subquery export returns the number of registrations as an aggregate output.

1. Select **subquery export**.
2. Configure the following settings:
  - **Name**: `registrations`
  - **Type:**Dependent subquery
  - **Output:** Aggregate
  - **Aggregate:**Sum
3. Select **join**.
4. Select **Form Responses**.
5. Select **Continue.**
6. Select **filter.**
7. Select **Registration Status.**
8. Select the registration statuses you want to count. These are likely **Attended** and **Registered.**
9. Select **Save.**

#### Add the `registrants` nested subquery export

Decide what you want to sum. We’ll create a formua subquery export to add 1 to the number of guests to represent each form response (that is, the registrant themselves).

1. Select **subquery export.**
2. Configure the following settings:
  - Name: `registrants`
  - **Type:**Dependent subquery
  - **Output:**Formula
  - **Formula:** `@guests + 1`
3. Select **export**.
4. Select **Guests.**
5. Select **Continue.**
6. Select **Save.**

#### Save the subquery export

Save all of these layers to have 2 exports to subtract in the top layer formula export. The coalesce SQL function we entered in the first layer accounts for `NULL` values.

[![mceclip3.png](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/ks9fnnolzecqnejkqgfspamceclip3.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/ks9fnnolzecqnejkqgfspamceclip3.png)

#### Add `spaceleft` to the event summary display

With our `spaceleft` export in hand, we can add it to the event format tab’s [event summary display](/v1/docs/portal-events-widget#event-summary-display) as a merge field.

[![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/inline1358025981.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/inline1358025981.png)

> [!WARNING]
> **📝 Note**: Prefix the merge field name with `event.` to properly loop through each event and insert the respective space left value.

## Event format

The **event format** **tab**lets you configure the display of event information.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Confnigure event format tab.png)

### Event summary display

The exports in the event selection tab appear here as merge fields. The merge fields follow the naming convention: `event.export_label` (for example, `event.start_date`).

The event’s **title**, **date**, and **location** (either online or physical location) are included by default. Add, remove, and rearrange these merge fields as needed.

The default event summary display uses **Liquid looping**to conditionally display either a physical location, if there is one, or else the text *Online Event*.

#### Merge fields

By default, the `{{event.title}}` merge field links to the event’s registration form.

In the source code, the link is `{{event._event_link}}`. This merge field is always available and does not need to be added as an export.

If a user has a personalized URL (for example, a person ID or a UTM code), that value is carried through to the event registration if you use the `_event_link` merge field.

#### The `event.` prefix

The Event Summary Display leverages [Liquid looping](/v1/docs/display-data-tables-in-a-portal) to generate a list of events based on the filter criteria. `event` is the prefix for this loop.

Additional exports that you add must include this prefix. For example, if you added an export called "user," the syntax in the Event Summary Display would be `{{event.user}}`.

**📖 Further reading:**[Liquid looping](/v1/docs/liquid-markup-looping)

### Reset event summary display to default

Select *Reset*to return to the default configuration.

### Event headers

Select the desired grouping and header for events.

- **No headers:**Remove headers from the event groupings
- **Date, Date/Time:**Group events by date
- **Location:**Group events by their address
- **Country/Region:**Group events by country/region

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Different types of event headers.png)

The different event grouping types as they appear on the same event

### Show availability

Renders or hides the colored *Availability* box next to the event.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Show or hide colored availability box.png)

### Items listed per page

This setting has no limit by default.

Changing this setting will create pagination if more results are returned than the limit.

### Default text

If there are no available events, the widget will display the text *There are no upcoming events to display.*

Enter your own message to override this default.

Only available if the [display type](/v1/docs/portal-events-widget#event-display) is *List*.

## Event display

Select from one of three display types: **list**, **calendar**, and **map**.

### List

Displays the events in a list:

[![Public Facing View of List](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/leqwtauff0c7w4qyk2smmamceclip3.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/leqwtauff0c7w4qyk2smmamceclip3.png)

### Calendar

Displays a calendar on which users select a day to view events:

[![Public Facing View of Calendar](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/p5g6jicrewkcqh8o5qggmceclip1.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/p5g6jicrewkcqh8o5qggmceclip1.png)

#### Display target

Events for the selected day can appear either below the calendar or at the bottom of any specific Static Content portal view part. Select the desired location.

#### Calendar start

Select the desired start, either the current month or the first month with events.

#### Calendar Legend Text

- **Days with available events:**The legend will default display "Available." A custom label can be added if desired. The color picker on the right allows users to customize the default green color.
- **Days with unavailable/filled events:**The legend will default display "Unavailable / Filled." A custom label can be added if desired. The color picker on the right allows users to customize the default grey color.
- **Days with no events:**The legend will default display "Not Scheduled." A custom label can be added if desired. The color picker on the right allows users to customize the default white color.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Event display tab - Calendar.png)

When customizing colors, check with your web designer or institutional style guides to ensure the selected colors work well with your existing website color scheme—test how the colors display for all settings (available, unavailable, and no events).

### Map

A display type of map will display event markers on either the United States or the world map.

[![Public Facing View of Map](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/syb4jxaxr0auwpho09bztwmceclip2.png)](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/syb4jxaxr0auwpho09bztwmceclip2.png)

#### Display target

Events for the selected day can appear either below the map, at the bottom of a specific Static Content portal view part, or replace the map display with the list of events. Select the desired setting.

#### Display map

Select either the United States map or the world map.

#### Map color marker

If desired, select custom colors for event map markers.

#### Show ZIP code search

Show or hide the ability to search via ZIP code. ZIP code search is available for events in the United States.

Hide if most or all events for the widget will be outside of the United States.

#### Include online events

Show or hide an option for the user to include or exclude online events.

#### Adjust initial zoom and location

Drag the map and use the **+** and **-**icons to set the initial map location.

Select **Save Initial Zoom and Location** when complete.

If most of your events are in a certain region, you may wish to initially show the map zoomed in to that region.

![](https://cdn.us.document360.io/cd8ea7a6-07f3-4846-a554-627ac016d3e3/Images/Documentation/Event display tab - Map.png)

## **Secure link access and form auto-fill**

When using Secure Link to direct individuals to an event portal with an [authentication method](/v1/docs/portal-authentication-methods) other than Anonymous/Guest access, the default Secure Link will authenticate the user but not pass through information from their record into event registration pages selected with the events widget.

With Secure Link, the [query string parameter](/v1/docs/prepopulating-or-prefilling-forms-using-query-string-parameters) `?key={{Record-GUID}}` is used to authenticate access permission using the record's GUID. The additional parameter `&amp;person={{Record-GUID}}` is needed for auto-fill-in forms. When appended to a portal URL together, the full URL will be similar to this one:

```plainText
https://slate-university.edu/portal/events?key={{Record-GUID}}&person={{Record-GUID}}
```
