LiveWhale Calendar 3.2.0

This minor release includes some updates to widgets and linked calendars, various bug fixes, and lays the groundwork for some new theming work we’re piloting.

Easier access to widgets for non-editors

LiveWhale Calendar Widgets are now visible (with their Get Code) links to all calendar managers, even if they don’t have permission to add/edit widgets. If global widgets are defined, or widgets exist in your group, you’ll be able to reach them with Toolbox > Widgets. Only users with the “Manage widgets” permission will see the add/edit links. Similarly, global widgets now appear (with &group=My Current Group automatically added to the embed code) for all managers, though you can only edit them with the “Manage globals” permission.

Example of Global Widgets appearing without being ediable but still with preview and Get Code links

More flexible date filtering for widgets

Date filters now support “previous” and “upcoming” relative dates (e.g., a widget for this academic year from “previous July 1” to “upcoming June 30”). 

new date filtering help text

Updates to Rich Data for search engines

The Google Rich Results (LD+JSON) for events now includes additional properties for tags, event types, audience, and campus information to make available to crawlers.

Laying the groundwork for a new approach to calendar theming

In late 2026 and early 2027 we’ll be introducing Universal Theming to LiveWhale. UT will give you more direct control over the parts of the calendar that define your brand — the header, footer, and general graphic standards — while standardizing the calendar interface itself. This will allow us to push updates to the front end user interface, and free your team from having to maintain the UX and accessibility of the public calendar.

Universal theming will be optional — if you’re committed to a highly customized front end calendar, you can keep the interface you have. But we think this will be a popular option for many of our customers.

We’re rolling this out gradually to a limited group first, and we’ll share more details as the pilot progresses. This release won’t change anything about your calendar theme-wise; it just puts in place some resources that will be used if your calendar eventually implements the universal theme. 


Accessibility improvements

  • Fixed an issue that prevented the front-end screen-reader announcements from giving event counts when the calendar day view is themed to display single and ongoing events separately.

Behavior adjustments

  • Registrants whose RSVPs have already been cancelled will no longer receive additional email notifications if the original event gets cancelled or deleted.
  • Added a whiteout and spinning loading indicator when changing views or updating Reporting results. Also, when a table result times out, a popup prompt now explains the issue and offers a CSV download as an alternative.
  • The “Delete group” confirmation window is now larger and includes warnings about all the group content that will also be deleted.

Verbose warning before you delete a LW group

WYSIWYG editing

  • Fixed an issue with TinyMCE 7+ that was causing certain iframes (like YouTube embeds) to give errors when added to rich content fields.

Bugs

  • Fixed an issue where two line breaks coming in from an ICAL feed via Linked Calendar were getting collapsed into one <br/> tag. Now, two soft returns in ICAL data correctly correspond to two full line breaks in event descriptions and other rich-text HTML fields.
  • Fixed several issues with the JSON-to-ICAL linked calendar converter (live/calendar_feeds): now unwraps JSON responses when the event array is under a single top-level key, falls back to the default LiveWhale timezone when a source gives an unrecognized timezone string, and flattens array-valued source fields (e.g. rich text objects) to plain text instead of erroring.
  • Fixed an issue with line breaks in 25Live Linked Calendar event types, and extended support to sync LiveWhale Event Types from both 25Live “Event Type” and “Categories” fields.
  • Fixed an issue where SAML Username Attribute configuration wasn’t correctly syncing between web nodes.
  • Fixed an issue where drafts weren’t being correctly flagged in the Manager view, which could result in erroneous draft deletion when saving a status change. Also removed the “Delete” button from live content when editing as a draft-only user.
  • Fixed an issue where Global Widgets wouldn’t necessarily appear in all groups, depending on how they were initially saved.
  • Fixed an issue where /key/val filtering on a custom calendar_feeds Linked Calendar was only applying to CSV source data. Now it also works the same for a JSON-provided data set.
  • Fixed a bug that caused the default weather to appear instead of the group’s weather on group calendar pages.
  • Fixed an issue that could cause errors when loading embedded events widget using the &filter= argument.
  • Fixed an issue where the “Import” sub-nav option was being shown to users who don’t have the Import Data permission.
  • Prevented accidental double-submission of a CSV import options page from causing competing processes to run.

Developer options

  • Added a debug mode (?lw_feed_debug=1) to the calendar_feed CSV-to-ICAL and JSON-to-ICAL tool to aid in investigating why certain data sources or events may not be translating smoothly to ICAL.
  • Added a new handler: onAfterCancelRegistration that allows for custom actions or notifications after an event RSVP has been cancelled.

Behind-the-scenes

  • Added support for mysqli_quote_string to prepare for PHP 8.6.

Release date: September 20, 2026

Other Recent Releases

View All