With LiveWhale you can create your own native LiveWhale events or subscribe to external events from Google, R25 and EMS, to name a few possibilities. However you do it, you can tag, geo-locate, and add images to get your events noticed and let LiveWhale handle the functional details like RSVPs, with optional online payments, and light space management.

Events Lists and Calendars

When you’re ready to insert events onto your web pages, LiveWhale offers any number of event lists as well as our stand-alone LiveWhale Calendar built in to the CMS. Either way, you can present them together in one beautiful experience— and the Calendar is built to work on desktop or mobile from the get-go.

Adding / editing an event

In LiveWhale CMS, you can manage events from the Events tab
In LiveWhale Calendar, you can manage events from Toolbox > Your Events

  1. Make sure you are in the group where your event should be created. You can choose your group from your user account settings. A drop-down menu will appear allowing you to switch the group.
  2. From the events manager, click the Add new button.
  3. Fill out the form with the relevant information for your event. A title and start date are required. See other options below.
  4. Click the Save button when you are finished.

Note: When editing repeating events, you will have the option to save changes to the entire series of events, change this and all following events in the series, or change only this event.

Attaching an image to an event

  1. From the LiveWhale interface, click the “Events” tab. (If the Events tab does not appear, the administrator has not assigned the events module to you.)
  2. Find and click on the event to edit from the list or month view.
  3. Under the section labeled “Images” you may attach images to this event. Images are taken from your group’s image library.
  4. To choose an existing image from your image library, click “Select from your image library”. This will open an interface allowing you to search for and select images to attach to this event. Enter your search terms in the text field labeled “Find images by keyword” and the resulting images will display. You may restrict results by date using the drop-down menu.
  5. Images shared from other groups will be labeled with a globe icon. If you want to filter out images shared from other groups, uncheck the box labeled “Include shared images”.
  6. Select/deselect images by clicking on them in the list. Selected images will appear in the box on the right side where you may enter an optional caption. When done, click “Done making changes”.
  7. If you want to upload a new image to attach to this event, click “Add images from your computer”. Select the images you wish to upload. When they have finished uploading, you will have the opportunity to enter a title and keywords for each image. When done, click “Add images to library”. Newly uploaded images will be added to the image library and attached to this event.
  8. If you want to attach an existing gallery to this event, click “Use an existing gallery”. Enter your search terms in the text field labeled “Find galleries by keyword” and the resulting galleries will display. Click on the gallery you wish to use and select “Select this gallery”.

Note: Once an image has been attached, you can customize the thumbnail that will be used by this event. To do so, navigate to the image that you wish to create the thumbnail from, then click the “Use this image for this event’s thumbnail” button. Select the portion of the image you want to generate the thumbnail from and click “Use This Thumbnail”.

Setting a hero image for an event

LiveWhale and LiveWhale Calendar 1.6+ allow you to use a large (“hero”) image display on a per-event basis. For instance, you might want a larger image header for a featured event like a conference, gala, or commencement.

To set a hero image, check off “Use first image as hero” when adding images. You can click-and-drag the thumbnails to rearrange your images after attaching them to the event.

Hero images will not appear in event slideshows. You may use your hero image for your event thumbnail, too, or you can choose to upload a separate thumbnail.

Restoring an earlier revision of an event

  1. From the events manager, locate and click on the event to restore.
  2. Click “Restore from earlier version” above the status menu near the upper corner of your event form.
  3. Choose the revision to restore by selecting its date and time from the drop-down menu labeled “Choose a revision…” then click the “Load revision” button.
  4. The content from the chosen revision will be loaded into the fields on this page.
  5. Click the “Save” button to save any changes.

Planning an event

Since LiveWhale 1.7, you can mark an event as “Planned” for a future date. This means that your event will stay Hidden until the indicated date/time, at which point it will be switched to Live and start appearing on the front-end calendar and widgets.

Planned Events interface

Deleting an event

  1. Go to the events manager.
  2. Locate the event(s) in the list and check the box next to it.
  3. Choose “Delete” from the drop-down menu, and click “Go”.

You may also delete the item from the event edit screen.

  1. From the events manager, locate and click on the event to delete.
  2. Click the “Delete” link on the right side of the screen.
  3. You will be prompted to confirm this action.

Note: Deleted events will remain in the trash where they can be easily restored (up to one year, depending on your configuration).

Event Types and Tags

Event types should be broad. When thinking about event types keep in mind they should be general enough to be applied to all calendar groups. For example, “Performances” would be a great type because it’s fitting to many groups, such as arts, music, theatre, student life, etc…

Tags are generally used to describe your event in more detail.Tags are different from categories because they are used to target specific characteristics of your event. A good example of a tag might be, “jazz”. This tag is a specific characteristics of the type of event “Performance”.

With the right combination of event types and tags you can target a subset of events to display throughout your website.

In LiveWhale CMS, you can manage event types from Globals > Event Types
In LiveWhale Calendar, you can manage event types under Toolbox > Event Types

Hiding Event Types and Tags

There are some special cases where you may need to categorize events but don’t want the event type (ie., category) to appear on the front end calendar “Show only” selector or the “Tags” selector. Some cases might include, “Internal Events”, “Homepage”, etc… This is when we use the star icon to make the event type appear on the front-end calendar. Unstarred types and tags won’t appear on the front-end calendar.

Default Event Types

Administrators can set a calendar group to automatically set default event types to newly added events. Follow the steps below to set default event types to a calendar group:

In LiveWhale CMS, you can set these under Groups
In LiveWhale Calendar, you can set these under Toolbox > Groups and Users

  1. Click on an existing group or Add a new group
  2. Check the default event type(s) to preset new events with these selections.
  3. Click the Save group button when you are finished
  4. Now when a publisher adds a new event for the calendar these event types will be automatically selected.

Merging Event Types

Sometimes later you might be thinking about re-organizing your events by types. Maybe you want to get rid of an event type and by doing that you want your events to swap over to another type. That’s very easy to do by merging your event types.

  1. Access your Event Types from the Toolbox or the “Globals” menu.
  2. From the manager check off the event types to merge.
  3. Then, from the drop-down menu select Merge Event Types
  4. A second drop-down menu will appear. Select the event type to merge your events to.​
  5. Click the Go button after your selections are made

Linked Calendars and Importing Events

You can use the Linked Calendars feature to sync with external calendars, or to do a one-time data transfer by adding the feed, then deleting it, but choosing to keep all events.

  1. Access Linked Calendars from your Toolbox or the Events manager.
  2. Click the Add a new calendar feed button.
  3. To add events in a feed, enter the feed url in the text field labeled Paste an iCAL link here
  4. Click the Test this feed button to make sure your feed is valid and sending information. A message will be display stating if your feed is valid with a number of items returned.
  5. You can set defaults for all imported events by editing fields on the Linked Calendar itself. So, you can easily add an image or event type to all events from a feed. Or, you can override the description for all imported events, if what’s coming in from the feed isn’t useful.
  6. Once you Save your Linked Calendar, events will appear in your event list and re-sync every hour.
  7. You can add details to your imported events individually, such as a summary, images, contact information, related content, plot the location to a map, and rsvp. Certain information from the feed cannot be overwritten, like the title and date.
  8. Note: Imported Calendars are automatically refreshed hourly!
  9. When deleting a linked calendar, a pop-up box will appear asking if you want to Delete all events or Keep all events. Imported events from a linked calendar are stored in the LiveWhale database. To remove them from the calendar database choose, Delete all events. Else, if you want to keep the events that were previously imported click on the Keep all events button.

Here are instructions for a few common calendaring / scheduling systems.

  • Google Calendar: Instructions here.
  • R25/25Live: Instructions here.
  • EMS/MasterCalendar: On the Admin menu, click Site Administration > RSS Feeds.
  • For other calendaring and scheduling systems, just look for an “RSS” or “ICAL” link. Either of those addresses should work for importing. If you’re trying to import a calendar via RSS/ICAL feed and it’s not working, email and we’ll check it out.

Custom Import Fields

If you are creating your own .ics feed to import into LiveWhale, there are a few custom fields you can use for richer event data. In addition to all the normal date, time, and repeat/recurrence arguments from the iCal specifications, you can use the following attributes:

Field Imported as Format
SUMMARY Title Text
DESCRIPTION Description Text
X-ALT-DESC;FMTTYPE=text/html Description (with HTML tags) HTML
LOCATION Location Name (and, if it matches a saved location in LiveWhale, that will be used) Text
GEO Used to associate a map with your location latitude;longitude
Contact Info Email address
X-LIVEWHALE-CONTACT-INFO Contact Info (if not already set from ORGANIZER or CONTACT) HTML
CATEGORIES Event Types (if they match saved event types in LiveWhale) |-separated or comma-separated list
ATTACH External image, if it’s a valid imaged URL URL
X-LIVEWHALE-IMAGE-CAPTION Caption to use for image from ATTACH Text
X-LIVEWHALE-TAGS Tags |-separated list
STATUS If status is “CANCELLED,” event is marked as cancelled Text
X-LIVEWHALE-HIDDEN If present, import event as hidden Text
X-LIVEWHALE-VISIBILITY If present, visibility will be set when item is created (LiveWhale 1.7.1+) 1 = Everyone
2 = This group only
3 = Any logged-in user
4 = Only with link
X-LIVEWHALE-SKIP-SYNC If present, item will be skipped Text
X-LIVEWHALE-CUSTOM-MY-VARIABLE Value saved to event as a custom field called “my_variable” — note hyphens converted to underscores in the variable name (LiveWhale 1.7+) Text

Online Event iCal Fields

These fields can be used to import and export online events via iCal in LiveWhale 1.7.1+.

Field Imported as Format
X-LIVEWHALE-IS-ONLINE When value is 1, event is online 1
X-LIVEWHALE-ONLINE-TYPE 1=Online only, 2=Hybrid 1 or 2
X-LIVEWHALE-ONLINE-URL The URL to join the event URL
X-LIVEWHALE-ONLINE-BUTTON-LABEL The button text to join the event Text

CampusGroups iCal Fields

If you’re importing a feed from CampusGroups, the following CampusGroups-specific feed variables are supported in LiveWhale 2.10.3+.

Field Automatically maps to Imported as
CATEGORIES;X-CG-CATEGORY=event_type CATEGORIES Event Types (if they match saved event types in LiveWhale)
CATEGORIES;X-CG-CATEGORY=club_acronym X-LIVEWHALE-CAMPUSGROUPS-CLUB Not automatically imported to any event field, could be tracked or manipulated via a custom module if desired.

Example event:

DESCRIPTION:This is our event!
X-ALT-DESC;FMTTYPE=text/html:<p>This is our <strong>event!</strong></p>
LOCATION:My Event Location
CATEGORIES:Student Life|Athletics|Arts & Performance
X-LIVEWHALE-TAGS:Alumni Reunion|Homecoming
X-LIVEWHALE-COST:Suggested Donation

To see an example of these fields in action, check out a sample iCal export from your own site at

Advanced: if you have your own custom fields attached to LiveWhale events, you can import iCal data into those custom fields using the X-LIVEWHALE-CUSTOM- prefix (LiveWhale 1.7+) or with a custom module using the onAfterSync handler. Contact support for assistance.

Importing Online Events (1.7.1+)

LiveWhale 1.7.1+ supports the following fields in iCal imports and exports, if you want to use online events.

Field Imported as Format
X-LIVEWHALE-IS-ONLINE This is an online event Any value, “1” recommended
X-LIVEWHALE-ONLINE-TYPE Online Only or Hybrid? 1=Online Only, 2=Hybrid
X-LIVEWHALE-ONLINE-INSTRUCTIONS Special instructions? HTML (supports bold, italics, underlines, links)

Note: these fields will only be read into LiveWhale when an event is first created/imported, so if you want to add them to an existing Linked Calendar event, you’ll need to delete and re-import that event (or add them manually by logging in and using the LiveWhale “Edit Event” page).


X-LIVEWHALE-ONLINE-INSTRUCTIONS:Sign up for an <a href="#">account</a> and join the meeting.

Managing archived events

By default, your calendar, widgets, search, and back-end manager will always show upcoming (future) events, unless you have navigated to view past dates. This means, there’s typically no reason to archive events, since past events won’t be immediately visible to visitors anyways. However, you may want to have some events (future or past) excluded from those views or search results, and that’s where the Archive tool comes in.

  • You can move an event to the archive from the event editor by changing “Not archived” to “Archived” in the sidebar, or from the manager list by checking events off and choosing “Move to Archive” from the dropdown.

  • To view currently archived events, choose “Archive” from the back-end Events menu. Note, this menu item will only be shown if your group has one or more archived events.

  • If you want to show archived events on the front-end—say, in a special widget of past archived events—you can use the show_archived widget setting. That setting also has a “both” option, if you want to show archived and non-archived events together.

Note: The details of an archived event will still be visible if someone visits its calendar event URL directly. If you want to hide an event altogether, change it from “Live” to “Hidden.”

Managing RSVPs

Individual events can be flagged as allowing registration. When this is done, users viewing the event details on your web site will be presented with an event registration form. The form allows them to enter their first and last name, e-mail address, phone number, number of people attending, and any additional comments they may have.

Registrations are collected and become manageable within LiveWhale.

  1. From your event’s edit screen, check the box labeled “Let visitors RSVP for this event”.
  2. If you want the registration to automatically close after a specific number of attendees have registered, enter the number in the field provided.
  3. If you want to specify additional requests to users registering for the event, use the text field provided to do so. At the time of registration, users will be given a text field with which to respond to those requests.
  4. Check the box, “Notify by email when RSVPs are submitted” to receive notifications.
  5. Click “Save”.

Your event will appear with a rsvp form below the details, and the registrant will receive a notification of the registration with a downloadable link to add to their calendar.

RSVP Waitlists

You can choose to accept RSVPs to a waitlist if your maximum number of RSVPs has been reached. The next person on the waitlist will automatically be registered (and receive a confirmation email saying “Your registration has been confirmed and you are now off the waitlist.”) in the following cases:

  • You (or another editor) edit the event, increasing the number of available slots or removing the registration maximum.
  • You (or another editor) cancel another reservation, opening up an available slot.

RSVP Custom Fields

When you allow events to include an RSVP a set of default form fields are included in the registration form.

The default fields include the following:

  • Attendees (required)
  • First name (required)
  • Last name (required)
  • E-mail address (required)
  • Phone
  • Comments

The following instructions describe how to include additional fields:

  • Access the LiveWhale filesystem through SFTP
  • Locate your global.config.php file. This file is found outside your webroot at /livewhale/client/
  • Adjust the $_LW->CONFIG['RSVP_FIELDS'] configuration setting to include the name, type, and requirement of the field
  • Custom fields can be applied to all calendars using ‘global’ or indicate the group id as shown below (ex., ‘3’) to add custom fields to a specific calendar group
  • Each field is configured as an associative array where a value can be set to a key
    • header: This is the label of your form field
    • instruction: Include instructions if necessary by entering a brief description
    • is_required: Make the field required by setting to “true” else set to “false” if optional
    • type: Indicate whether this field is ‘select’,’radio’,’checkbox’, or ‘text’ input field. If not indicated, a text field will be used by default.
    • options: If a ‘select’,’radio’, or ‘checkbox’ is used create an array of options for field values.

Below is an example configuration of custom RSVP form fields with selection lists, radio, checkbox options.


'color' => [
'instruction'=>'Enter your favorite color',

'word' => [
'instruction'=>'Enter your favorite word',

'letters' => [
'instruction'=>'Choose a letter',
'options'=>['A', 'B', 'C'],

'number' => [
'instruction'=>'Choose a number',
'options'=>[2, 4, 5],

'animals' => [
'instruction'=>'Choose animal(s)',
'options'=>['lion', 'tiger', 'bear'],

'number' => [
'header'=>'Longer text field',
'instruction'=>'You can type more here',

After the configuration is saved the rsvp form will include the additional fields after the defaults.

The event editor will include a section indicating to the publishers that these fields will be included in their rsvp form. Changes to the form fields will require an administrator who has stfp access to the filesystem.

RSVP Custom Validation

You may want to add validation to some of the above custom RSVP fields, and in LiveWhale 1.7.1+ you can. The process involves creating a function named livewhale.custom_rsvp_validation that returns an array of error messages when your validation criteria aren’t met.

We recommend adapting the following to your needs and adding to calendar-custom.js, or another .js file in your theme:

(function($, LW) {
$('body').bind('paymentFormLoad.lw', function() { // when RSVP form loads

livewhale.custom_rsvp_validation = function() { // add custom validation
var errors = [];

// Replace the below with whatever RegExp or other validation code you want,
// and push any error messages onto the end of the errors array.
if ($("#lw_payments_field_custom_1").val() == 'Bad value') {
errors.push('Please enter another value.');

return errors;
}(livewhale.jQuery, livewhale));

Adding a LiveWhale Form to your RSVP

In LiveWhale CMS 1.6+, you can attach a custom form to an Event RSVP, allowing you to gather additional information besides the default fields.

  1. Create a form with additional form fields to append to the existing information collected in the RSVP form (Number of Attendees, First name, Last name, Email, Phone)
  2. Create your event.
  3. Under the RSVP section, use the drop-down list along side “Require RSVPs to submit additional form:” to choose your form from step 1 to append to your event.

Configuration Options

Option Description
Title Required: Enter the title of your event.
Star Content If this content is especially important and you wish to flag it as such, click the star in the section labeled “Star content” in order to highlight it.
Share Content By default, content will be shared. Click the globe labeled “Share content” to un-highlight it to make the content not shared.
Start Date & Time Required: Select the start and end times, where applicable. If this is an all-day event, check the box labeled “All Day”. If this event should repeat on a schedule, select the schedule from the drop-down labeled “Repeat this event”.
Summary Enter a brief summary describing the event. This will also appear in the meta description tag when viewing an event’s details.
Event Description If the event should contain a full description text, enter it in the text field labeled “Event description”. If your event should link to an external event resource, click “link to another page” and then enter the event url and source (for example: Event Calendar). External urls will be validated upon save.
Event Cost
Location Enter the event’s location
Plot this event on map? If your event has a location, you may plot it on a map. If your LiveWhale installation already has preset locations, you may begin typing into the space provided and locations will be suggested to you. If you cannot find an appropriate location, you may click “add a new Place”. When adding a new place, you must provide a title and address. (For more information on managing places, please read “Managing Places”.)
RSVP If this event requires registration, check the box labeled “Allow site visitors to register for this event”.
Suggest this event to the following group(s): Suggest this content to other groups by selecting those groups under the section called “Suggest this item to the following groups”. For more information about sharing, see “Sharing your content with other groups”.
Post event as Scroll back up and find the status menu at the top righthand corner of the screen. Choose the status for this event. “Live” will publish the event immediately. “Hidden” will hide it from the web site until you are ready to publish it.
Cancel Event Check “This event is canceled” to cancel an event. This event will remain visible to the public but will inform that the event has been canceled.
Event type Check off any relevant categories that the event belongs to. Categories broadly define what type of event this is
Tags Tag the event with any relevant tags. Tags help sort and classify events so that they can be directed to the proper location on your web site. You can click in the field labeled “Tags” and type a keyword; tags will be suggested to you. If you are unsure what tags are available in your group, click “Show all tags” to display them all and select the relevant ones.
Images Under the section labeled “Images” you may attach images to this event. Images are taken from your group’s image library. To choose an existing image from your image library, click “Select from your image library”. If you want to upload a new image to attach to this event, click “Add images from your computer”. Newly uploaded images will be added to the image library and attached to this event. Alternatively, you may attach an existing gallery to this event by clicking “Use an existing gallery”. (See “Attaching an image to an event” for more information.)
Related Content Under the section labeled “Related content”, use the search box provided to attach any relevant related content to this event. What kinds of content can be added depends on what modules are installed on your system and what kinds of content are available.
Contact Info Specify any relevant contact info for this event. If default contact info is specified for your group, this info will be suggested by default. If you enter an e-mail address but do not make it a “mailto” link, this will be done automatically for you.