- 22 Apr 2025
- 6 minute read
- Print
- DarkLight
- PDF
Portal Events Widget
- Updated 22 Apr 2025
- 6 minute read
- Print
- DarkLight
- PDF
The events widget in the portal palette lets you display events in portal views.
You can use the widget to, among other things:
Creating a new events widget
In a view, 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.
Details
Configure the following settings in the details tab.
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
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.
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.
✨ 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:
Create the spaceleft
subquery export
In the event selection tab, select subquery export.
Configure the following settings:
Name: Enter a merge-field friendly name, like
spaceleft
.Type: Dependent subquery
Output: Formula
Formula:
@limit - coalesce(@registrations, 0)
Add the limit
export
Add an export.
Select Limit from the list of direct exports.
Select Continue.
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.
Select subquery export.
Configure the following settings:
Name:
registrations
Type: Dependent subquery
Output: Aggregate
Aggregate: Sum
Select join.
Select Form Responses.
Select Continue.
Select filter.
Select Registration Status.
Select the registration statuses you want to count. These are likely Attended and Registered.
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).
Select subquery export.
Configure the following settings:
Name:
registrants
Type: Dependent subquery
Output: Formula
Formula:
@guests + 1
Select export.
Select Guests.
Select Continue.
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.
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 as a merge field.
📝 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.
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 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
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

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.
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 is List.
Event display
Select from one of three display types: list, calendar, and map.
List
Displays the events in a list:
Calendar
Displays a calendar on which users select a day to view events:
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.
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.
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.
Secure link access and form auto-fill
When using Secure Link to direct individuals to an event portal with an authentication method 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 ?key={{Record-GUID}}
is used to authenticate access permission using the record's GUID. The additional parameter &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:
https://slate-university.edu/portal/events?key={{Record-GUID}}&person={{Record-GUID}}