If you have any questions about the release note, please don't hesitate to reach out to us through our support form.
The Candy Shop is open! This is your one-stop shop for installs and upgrades. To visit the Blackthorn Candy Shop page, go here.
Breaking Changes
Event Preview Page Update
The ability to switch between languages within an Event Preview page is now available. Users can switch between languages (translations) within an Event Preview by using the same method (language picklist) they use when viewing an Event Page URL.
Enhancements
Blackthorn Events now supports Products and Donations at Checkout, and our Static Translations feature for multi-language Events is now in Beta.
Front End
-
The title “Session registration” on the AttendeeLink was updated to “Session Registration”.
-
The following changes only apply to Translations using Google’s API:
- If a
Source Languageis set on the Event Settings, the Event Page URL will automatically be displayed in that language. Language can be changed by the Language Selector (if enabled). - If a
Source Languageis NOT set on the Event Setting, then the Event Page URL will automatically be displayed in the language related to the user’s browser locale setting. Language can be changed by the Language Selector (if enabled). - If a
Source Languageis set on the Event Setting related to an Event Group, then the Event Group URL will automatically be displayed in that language. Language can be changed by the Language Selector (if enabled). - If a
Source Languageis NOT set on the Event Setting related to an Event Group, then the Event Group URL will automatically be displayed in the language related to the user’s browser locale setting. Language can be changed by the Language Selector (if enabled).
- If a
Static Translations Feature
When an Attendee selects a language on the Event Page URL, all records related to that language will be queried. Each Translation Salesforce record has a lookup to the related Events’ object; for example, Event, Speaker, Event Item, Sponsor, and Form Element.
Back End
- When using the Event Item screen in the Event Wizard, the user will see that the heading “Session” has been changed to “Sessions”.
- To maintain consistency between front-end functionality and Salesforce, the following fields on Event Settings have been deprecated and replaced with Data Dictionary entries:
Attendee LabelContact Us LabelContent LabelFAQ LabelPay Later LabelSession LabelSpeaker LabelSponsor LabelVenue LabelWaitlist LabelWifi Label
Donations & Products
- Three new fields were added to Donations and Products.
Event Item Typeon the Line Item. This field shows the type of Event Item.Donatedon the Attendee. This field is a Checkbox.Purchased Productson the Attendee. This field is a Checkbox.
- Two record page tabs, titled “Donations” and “Products,” were added to the Event page layout. All Donations and Products purchased will include the following fields on these record page tabs:
Line Item Name,Attendee,Attendee Full Name,Event, andUnit Price.

The “Donations” and “Products” sections will be updated automatically when Events is install and/or upgraded. The new fields on the Attendee (Donated field and Purchased Products field) need to be added manually as they are not added by default to page layout.
Donations
- If an Event includes a free Event Item (Ticket) and a Donation Event Item, a Payment Gateway is required in order to publish the Event.
- If a Donation is added on the Event Item, it will be carried to the Line Item on the Invoice.
- The following updates have been made to the checkout process for Donations.
- The Event Item
Typefor a Donation is “Donation”. - Registrants can either choose from a list of pre-selected amounts or enter a unique amount for a Donation.
- Images are now supported during checkout.
- A Donation’s information is added to a selected Attendee when the Donation is added to the cart.
- If a Donations’s information has not been added to an Attendee, the Donation’s Information will be added to the first Attendee.
- Donation data will be added to the checkout payload.
- Custom Forms are supported for Donations (they are not supported for Products).
- The Event Item
- A new field was added to Event Settings. The picklist field is
Create Opportunities For Donations(create_opportunities_for_donations_c), and the default setting is “No”. - If
Create Opportunities For Donationsis set to “Yes” in the Event Settings, an Opportunity record will be created for each Event Item whereType= “Donation”. - Each new Opportunity will include the following information:
Account Name= Attendee or Donor full nameClose Date= date the Donation was madeAmount= amount of the DonationOpportunity Owner
Products
- If a Product is added on the Event Item, it will be carried to the Line Item on the Invoice.
- The following updates have been made to the checkout process for Products.
- The Event Item
Typefor a Product is “Other”. - Images are now supported during checkout.
- A Product’s information is added to a selected Attendee when the Product is added to the cart.
- If a Product’s information has not been added to an Attendee, the Product’s Information will be added to the first Attendee.
- The Event Item
Static Translations Feature
- The following sections are available on the Translations object:
- Event Translation Fields
- Event Item Translation Fields
- Session Translation Fields
- Form Translation Fields
- Form Element Translation Fields
- Form Element Condition Translation Fields
- Form Big List Option Translation Fields
- Speaker Translation Fields
- Sponsor Translation Fields
- Track Translation Fields
- Custom Event Tab Translation Fields
- Event Content Translation Fields
- Event FAQ Translation Fields
- FAQ Category Translation Fields
- FAQ Question Translation Fields
- Keywords Translation Fields
- If an Event Admin tries to create a duplicate Translation record from a related record with the same Language, they will be unable to save the record and will receive the following error message. “Only one Translation record can be created per parent record and language, such as one Translation per Session’s or Event Item’s language.”
- The
Languagefield is a required field on the Translation record. - When an Event Admin creates a Translation record from a record related to an Event, both the Event lookup and the parent record lookup record are set automatically.
- After creating a Translation record from a record related to an Event, the user will be blocked from setting more than one lookup on that Translation record.
- Forms, Form Elements, Form Element Condition, Form Big list Option, and Keywords cannot have the Event lookup since each of the items listed can be used by multiple Events.
- If there are no
Trackvalues available, the Track filter will not be visible. - If there are no
Topicvalues, the Topic filter will not be visible. - The Search Bar will be visible only if there are 20 or more Sessions to choose from.
- The "Clear Filter" option will only be available when a value is selected for that filter.
Bug Fixes
Front End
- To prevent an Attendee from registering for an Event that occurred in the past, the ticket selector on the ticket selection page will be disabled if the Event has expired.
- Registrants will no longer be able to try to register for an Event with a GoToWebinar when the Event and webinar are in the past.
- If an Attendee registered for a Session that is now Sold Out and later navigates to their AttendeeLink, the button next to the Session will now say Registered. The Attendee can click the Registered button to cancel the registration.
- Attendees will now be able to register for an Event when the Event Item has a custom value for
Type. - After an Attendee registers for the last ticket for a Session, the
Quantity Remainingfor that Session will update correctly to “0” in Salesforce, and future registrants will see that the Session is “Sold Out”. - If the UI Experience set to “Full-Width“, and a potential Attendee first clicks the AttendeeLink and then clicks No in the banner to decline the invitation, the Attendee’s prefilled information will be deleted from checkout. The Checkout Form is now ready for a new individual to register for the Event.
- The “Waitlist Only” label will now only appear when the
Maximum Quantityof tickets is equal to thePurchased Quantityof tickets and theWaitlist Enabledbox has been checked. - A deleted Event that is part of an Event Group will no longer appear on the Event Group page.
- Conditional Form Elements/Conditional Questions that were added to an Event will appear in the pre-determined order when an Attendee completes the checkout process.
- Community Users with the relevant permissions can now upload an Event Banner (image) via the Event Wizard.
- When using Spreedly to register for an Event on an Apple mobile device, the registrant will now be able to input their credit card and CSV numbers.
- Discount Codes applied to unpaid Event Registration Invoices will now correctly apply only to the applicable Events Items based on the related Code Eligibilities.
The look and feel of the checkout experience has changed, including the removal of any reference to cost and dollar amounts. For only Free Events, the following changes were made to the checkout experience:
- Changed **Checkout **button to Register
- Changed the header “Order Summary” to “Summary”
- Removed individual ticket prices
- Removed the Subtotal line
- Removed the Total line
UI Experience
- When a user opens an Event Group’s calendar, where the
Event Group UIis set to “Calendar”, the calendar will default to the current date/month instead of a previously used date/month. - When the
UI Experienceis set to “Full-Width”, theEvent End Datewill be added to the Event Page URL if theEvent End Dateis different from theEvent Start Date. - For Events with the
UI Experienceset to “Full-Width” and an Event Item that has aSales End Datein the past, the Event Page URL will now include a “Sale endedSales End Date” message. - The page title in the browser tab for an Event with the
UI Experienceset to “Full-Width” will now be ”Overview ⋮ (name of the event) ⋮ Blackthorn ⋮ Events” to match the format of the Simple UI and Tabbed UI. - In the Full-Width UI, when an Attendee starts the check-out process for an Event Item that is not on sale yet, the warning, "Event Item not available for checkout" will now be displayed.
- If a user creates an Event Item with a
Public Item Namein the Simple UI and then deletes thePublic Item Name, the accompanying star symbol will also be removed. - If the
UI Experienceis set to “Simple” and an Event has an Event Item with theSales Start DateandSales End Dateset in the future, theSales Start Datewill be visible on the Event Page URL. - If the
UI Experienceis set to “Simple” and an Event has an Event Item with theSales Start DateandSales End Dateset in the past, theSales End Datewill be visible on the Event Page URL. - To ensure ERS records process correctly when the
UI Experienceis set to “Simple” and a field on an Event Item is set to required, Attendees will be unable to complete the checkout process until all required fields are filled. - When the
UI Experienceis set to “Aspen” and the registrant clicks on an Event Group URL, they can now select any number of the available keywords. - An
Image URLadded to an Event record will now display correctly within the margins when theUI Experienceis set to “Simple”.
Back End
- The
Post Event Questionsfield on the Attendee record will be updated automatically when thePost Event Questionsfield is changed on the Event record. - Timezone mapping from
MSTtoMTwas removed from Event records using GMT -7 (Arizona/Phoenix) since Arizona does not switch to MDT. - The
Date FormatandShow 24 Hour Time Formatoptions chosen for the Event Settings will be applied to both the Event and the Event’s Sessions. - If an Event’s
Capacityis set to “0” and theWaitlistis also set to “0”, a user will not be able to register for the Event. When theCapacityis set to “0”, the Event will be treated as sold out. - Form Elements will no longer reorder themselves after their
Sort Orderhas been set by an Admin.
Note: If two Questions on a Form Element have the sameSort Orderposition, the Question added first will be shown first.
Known Bug: On the “Form Preview“ section, if a Question’s card is dragged to the right, it will disappear. Until the page is reloaded, the custom sort order can not be saved and the Question’s card can not be recovered. - After an Attendee registers for a paid Event, the
Customerfield on the Invoice will now be populated with the name entered in theName on Cardfield of the Payment Information section during checkout. - Turning off the Payment Gateway Customer Matching/Duplicate Rules in Payments will prevent errors from occurring and ensure the Contact’s
Primary Emailis defined on the Attendee record and Invoice. - Users can now register an Attendee from either a Lead or Contact object via the Attendee Registration Lightning component.
- A Failed ERS record will no longer occur when an Attendee registers for an Event and the Attendee’s
Full Nameis marked as “Required” on the Event Item. - When changing the selected font in the
Fontfield on the Event Setting to a new font in the Font dropdown, the Event Page URL will now reflect the new font. - The Country Code will now appear on the
Phonedropdown list on the Attendee Registration Component like it does on the registration form during checkout. - If an Event is added to an Event Group, the Error: 2006 will no longer appear when the Event is viewed on the staging domain.
- Clicking the Send Email button on an Event will now allow users to create an email template and send it en masse to the Event’s Attendees.
- If an
Image URLfor an Event is invalid, theEvent Namewill no longer appear in the Image Section.
Permission Sets
- Users with the Blackthorn | Events (Limited Access) permission set now have Read/Edit access on All Event Object Fields (except formula fields).
- When a user with either the Blackthorn | Events Admin or Blackthorn | Events (Organizer) permission set, the Events preview tab will open successfully.
Event Wizard
- After adding the first Speaker to an Event in the Event Wizard and using the “+” sign in the top right corner to add additional new Speakers, the
Search for Contactsfield will be blank.
Donations and Products
- Ticket
Type= “Main event ticket” must be included in the Event Items in order to publish an Event with either a Donation Event Item and/or a Product Event Item.
Field, Object, and Layout Changes
New
- Three new fields were added to Donations and Products.
Event Item Typeon the Line Item. This field shows the type of Event Item.Donatedon the Attendee. This field is a Checkbox.Purchased Productson the Attendee. This field is a Checkbox.
- The following sections are available on the Translations object:
- Event Translation Fields
- Event Item Translation Fields
- Session Translation Fields
- Form Translation Fields
- Form Element Translation Fields
- Form Element Condition Translation Fields
- Form Big List Option Translation Fields
- Speaker Translation Fields
- Sponsor Translation Fields
- Track Translation Fields
- Custom Event Tab Translation Fields
- Event Content Translation Fields
- Event FAQ Translation Fields
- FAQ Category Translation Fields
- FAQ Question Translation Fields
- Keywords Translation Fields
Deprecated
- The Event Item Purchase object and its related fields have been deprecated.
- To maintain consistency between front-end functionality and Salesforce, the following fields on Event Settings have been deprecated and replaced with Data Dictionary entries:
- Attendee Label
- Contact Us Label
- Content Label
- FAQ Label
- Pay Later Label
- Session Label
- Speaker Label
- Sponsor Label
- Venue Label
- Waitlist Label
- Wifi Label
Mobile Check-In App
Enhancements
- Users can log out of the Mobile Check-in app by returning to the Events menu screen, swiping from left to right to bring up the main Menu, and then tapping Log Out. A new user can then log in to the app. This process will also re-authenticate a user when the OAuth has expired.
Bug Fixes
- After a photo is added to the Attendee Badge in the Mobile Check-in app, the Print button will now work correctly.
- An Attendee’s Title and Company will now be visible on the individual’s Mobile Check-in App badge if the toggle is turned on in the Badge Settings.
- To ensure a Mobile Check-in badge’s information scales correctly and the paper’s width and height measurements change the badge size, the following updates were made.
- The
html2canvaspackage was upgraded. - The
divelement was replaced with theimgelement for displaying the profile photo. - An invisible border was added to specify the exact printable area.
- The
- When there are multiple Events in an Event Group with the same start date and the
UI Experienceis set to “Calendar”, the Events will now be aligned to the left. - To prevent timeout errors when large amounts of data are being processed on force-refresh requests, the following update has been made. If the API request takes longer than 25 seconds, it will send a response to the user containing the data that has been cached so far, and it will continue to process the remainder of the data in the background. For requests that take less than 25 seconds, the data will be returned as soon as the process is complete.
- When viewing an Event Group URL on a mobile browser, Events with very long names will be displayed with ellipses at the end of the available space if the name is too long.
- Indentation changes made to the text in the
Descriptionfield of an Event will now display correctly when viewing the Event Page URL. - Only published Events in a recurring Event series will be visible on the Event Page URL. Unpublished Events in the recurring Event series will not be visible.
- When registering for an Event with
Create Opportunity From Checkoutenabled on the Event Setting record, theOpportunity Lookupfield on the Transaction record will now be populated, and the Transaction record will be linked to the Opportunity record. - When the
UI Experienceis set to “Tabbed”, previously added Sponsors with aStatusset to “Confirmed” will be visible on the Event Page URL’s Sponsors tab whether or not there is an image. - When an Event is in an Event Group with the
UI Experienceset to “Aspen”, theEvent Namewill now appear directly under the Event image on the Event Group page. - The positioning of the Profile Image and QR Code on a badge is now adjustable when the badge is printed on an iOS device.
We’ve added a new Apex class to avoid a common cause of confusion around Event authorization in a newly refreshed partial or full sandbox. This class will reset the authorization components in the newly refreshed sandbox so users are aware that authorization has not yet been completed. Users will need to add the BTEventsPostSandboxRefresh class to the sandbox refresh process for this reset capability.
Admin Upgrade Instructions
To upgrade Events to the newest version, go to the Blackthorn Candy Shop.
Blackthorn has adopted Salesforce’s managed package installer to simplify the installation process.
Since Payments is already installed, the installer will install Base Package and make sure the correct version of Payments is installed before installing Events.
For step-by-step instructions, click here.
Testing
From now until 05/24/22, the directions below will teach you how to test the new front-end features, enhancements, and bug fixes until they are automatically pushed.
To Do
You will need to replace the Event Page and AttendeeLink URLs 'events.blackthorn.io' domain to a test domain.
TEST DOMAIN: https://preview.events.blackthorn.io/
For example, when you create your attendee, an AttendeeLink URL is generated with the "events.blackthorn.io" domain like this one:
https://events.blackthorn.io/2E12oua7/attendee/ty2W6t9awokrDMaLWi8Mf4sLMedhdrWSBHw6HS7kqVnJ0kKmCK63yl0IxWpbAUBo
You'll then click on the attendee URL so it opens in a new page. Remove "events.blackthorn.io" and replace it with "preview.events.blackthorn.io" so it looks like this:
https://preview.events.blackthorn.io/2E12oua7/attendee/ty2W6t9awokrDMaLWi8Mf4sLMedhdrWSBHw6HS7kqVnJ0kKmCK63yl0IxWpbAUBo
If you have any questions about this or need help with testing, please don't hesitate to reach out to us through our support form.