A monthly round-up of fixes and updates across Tito apps. For API-specific updates see here.
Dashboard: Explain that turning on test mode won't work if you are using the widget, you need the test mode widget plugin instead
Dashboard: Don't escape negative numbers such as '-3.14' in exports
Dashboard: Simpler way of prefilling attributes
Dashboard: Let organisers decide if attendee cancelled tickets should go back on sale
Dashboard: Add VAT number to custom export for orders
Dashboard: Enable the new Customizer in dashboard
Dashboard: Fix re-inviting team members
Dashboard: Search by receipt number
Checkout: Add translation for unassigned on direct ticket pages
Dashboard: If people are using invoices or PayPal Express explain that they need to attach their card or update it if it is expired
Dashboard: Make sure to return the success message translation for the default locale too
Checkout: Make sure notes from the organiser display on the registration finished screen
Dashboard: Default new events to new homepage design
Dashboard: Improve time zone list
Dashboard: Include order address fields in the check-ins export
Dashboard: Add support for Stripe countries which don't support application fees e.g. Mexico and Malaysia
Dashboard: Remove the ability to switch to the older Customizer
Dashboard/Checkout: Add Swahili locale
Dashboard: Display a validation error instead of crashing if we can't interpret the refund amount
Dashboard: Don't delete a release if it is linked to line items
Dashboard: Remove the ability to change back to the legacy homepage
Dashboard: Make custom_heading_highlight_color
available to all
Dashboard: Make banner clickable if configured
Dashboard: Add more fields to registration custom export
Dashboard: Add opt-in custom export
Dashboard: Add unpaid income note on daily digest email
Dashboard: Bring in the stats app
Dashboard: Let people create custom check-in exports
Dashboard: Add a validation to make sure event end date is after the start date
Checkout: Accessibility updates to the checkout colours
Dashboard: The 'Pay' button should be disabled if required Italian checkout fields are not filled in too
Dashboard: Simplify and honour priority countriesEscape potentially dangerous formula characters when exporting .csv/.xlsx files
Dashboard: Add responses to ticket custom export
Dashboard: Increment class name shouldn't be on the decrement quantity button and vice versa
Dashboard: Use separate layouts for account timeline and direct ticket/order pages
Dashboard: Bring receipts up-to-date with how they work on legacy
Dashboard: Fix translation for 'free' in Czech
Dashboard: The income & expenditure by payment export shouldn't break on non EURO events
Dashboard: Fix custom continue button labels
Checkout: Don't crash if discount code only contains digits or is a number in scientific notation
Dashboard: Fix PayPal Platform fees on Income & Expenditure report
Dashboard: Updates to the design of the new EJS homepages
Dashboard: Don't show other POIs on map
Dashboard: Pass Tito registration reference and description when creating PayPal Platform orders so organisers can identify which event they belong to
Dashboard: Don't let people finish their order a long time later if the release is now sold out
Dashboard: Typography tweaks from EJS
Dashboard: Use HTML color input to provide the homepage swatch
Dashboard: Let people disable the waiting list confirmation email like they can do with other emails
Dashboard/Checkout: Add Slovak locale
Dashboard: Make sure net/gross income counter caches are updated when invoices are marked as paid/unpaid
Dashboard: The max tickets per order error in French and Chinese should reference a :maximum
parameter, not a :minimum
one
Dashboard: Adjust reports UI so it works for pending stripe payments, not just unpaid invoices
Dashboard: Add a payment#complete
attribute to the checkout API so we can indicate payment is pending for invoice and delayed stripe payments
Dashboard: Allow file answers to be downloaded
Dashboard: Use markdown in email template
Dashboard: Improved UI for bundles
Dashboard/Checkout: Add public account timeline using a <tito-events>
widget
Dashboard: Add links to allow you to search the webhook log
Dashboard: Allow alt text for banner to be configured
Dashboard: Load the event homepage in the preview for the new customizer
Dashboard: Allow vCard data to be included in custom export
Dashboard: Make sure the loading placeholder shows and the title tag is set on the edit/reassign ticket views too
Dashboard: Make sure search engines don't index direct ticket/order pages if they somehow got there
Dashboard: Allow moderators to archive events easily by showing a link in the sidebar
Checkout: Use .json
in URL for checkout API to avoid content negotiation with headers
Dashboard: Set UTM on widget if configured (and allow it to be configured — it's opt-in)
Dashboard/Checkout: Add data protection consent support at the ticket level
Dashboard: Add new setting on discount codes which lets people block registrations if the discount cannot be applied to all selected tickets
Dashboard: Style the input for the map
Dashboard: We only ned one custom CSS field now
Dashboard: Allow an interested person to be added from the blank state
Dashboard: Remove Your Name here from profile dropdown
Checkout: Check secure connection present before rendering widgets or routing
Dashboard: Use UTC for real-time metrics and breakdown fees by payment type
Checkout: Show feedback if you fail to join a waiting list
Dashboard: Hosted event homepages
Dashboard: Validate waitlisted person
Dashboard: Fix missing times method when ticket has one scheduled activity
Dashboard: Move all registration fee logic into one place
Dashboard: Make the processing of invoices more consistent with how other payment types are processed
Dashboard: Use correct translation for Apple Wallet
Dashboard: Add :sold_out
to release cache key to prevent incorrect state showing in the admin area
Dashboard
Checkout: Properly calculate whether the company name should be shown or required
Dashboard: Paginate the root events endpoint
Dashboard: As a person who joins a waiting list from checkout, I should receive a confirmation email so that I know that I have joined the waiting list successfully
Dashboard: As a person who is added to a waiting list from the event dashboard, I should receive a confirmation email so that I know that I have joined the waiting list successfully
Dashboard: Allow vCards to be exported
Dashboard: Add new unsubscribe workflow to dashboard. New messages sent will have links to the unsubscribe workflow in dashboard
Dashboard: Change German translation of free from 'Gratis' to 'Kostenfrei'
Dashboard: Better validation and feedback in discount code imports
Dashboard: Add :company_name_required
and :show_company_name_field
attributes to the checkout/tickets API
Dashboard: Use the register interest widget on event homepages instead of maintaining a second HTML/erb implementation
Checkout: I18nify the register interest widget and adjust markup for easier styling
Dashboard: Rules for whether a field or shown or required
Dashboard: Add UTM parameters as an option to the sample widget
Dashboard: Handle waiting list offer errors properly instead of displaying infinite spinner
Dashboard: Ensure registration.completed
webhook fires when last incomplete ticket in an order is completed
Dashboard: Always display releases when they're explicitly requested, even if a discount code is set to only show attached releases
Dashboard: If explicitly requested releases are present, only ever show them, even if a discount code with other releases is also present
Dashboard: Make sure the :authorized_amount
is set when payment records are created
Dashboard: Receipt#payment_received_at
should be nil if the receipt actually hasn't been paid yet
Checkout: Add a blank alt for the notches tag
Dashboard: Fix tax rules for VAT in EU countries
Checkout: Don't prefill quantity field on releases which are not on sale
Dashboard: When adding attendees manually don't send notifications when the organiser hasn't requested them
Checkout: Add deprecation warning in console for v1 widget explaining support will be removed after March 31st
Dashboard: Clarify what happens when discounts and reducing pricing are applied simultaneously
Dashboard: Required fields improvements
Dashboard: Improve script for refunding an event
Checkout: Open source v2 widget plugins (including new ga4 plugin)
Dashboard: Update sample widget for GA4
Dashboard: Add upgrade prices to the checkout/registrations/:id/available_upgrades
API endpoint
Dashboard: When issuing invoices is disabled, make sure the order confirmation email still contains a link to the order
Checkout: Display upgrade prices on the choose upgrades screen
Dashboard: Make sure the notches tracking pixel works for test mode hits, and source tracking
Checkout: Don't mistakenly set quantity in create order request params when the waiting list is enabled
Dashboard: Event page views and visitors should include visits from sources too
Dashboard: Fix order of support/personal dropdowns on dashboard
Dashboard: Foreign currency Polish invoices must also display the VAT in Polish Zloty and using exchange rate of previous working day
Dashboard: Add polish translations for 'exchange rate' and 'receipt number' on PDF receipts
Dashboard: Port over missing transaction details at bottom of PDF receipt
Dashboard: Add missing 'Event' translation in English on ticket PDF to prevent fallback to French
Dashboard: Make :shareable_image
setting public and use the standard size for the preview
Dashboard: Allow widget to be loaded in English when English is not the event's default locale
Dashboard: Let people provide a data protection consent statement in multiple languages
Dashboard: Don't attach non-existent discount codes to registrations
Dashboard/JS: Add basic Stripe Payment Element support (private beta)
Dashboard: Add an interested users API endpoint
Dashboard: When selecting upgrades during checkout make sure they are ordered by position
Checkout: Add a widget for registering interest
Dashboard
Checkout: Add the required indicator and validation to the phone number field
Dashboard: Handle event duplication errors better
Dashboard: If the phone number field is enabled it will always be required
Dashboard: Make sure we always find a unique slug when duplicating an event
Dashboard: Don't error calculating discount if release#price is nil
Dashboard: Fix cropper for banner
Dashboard: Don't linkify words that aren't links
Dashboard: Security upgrades for dalli and omniauth gems
Dashboard: When show all public tickets is set, show them, don't only show tickets attached to the discount code
Dashboard: Fetch a simple list when creating or duplicating an event
Checkout: Only fire the widget:loaded
event once per widget
Dashboard: Add callbacks option to widget sample
Checkout: Internationalise the 'Join waiting list' button
Checkout: Pass the locale into the join waiting list form
Checkout: Configure Phrase correctly for push/pull commands
Checkout: Internationalise the locked ticket warning and release statuses
Checkout: Let people set a custom tito-button label when the button is being mounted manually
Dashboard: Ensure .ics calendar file displays correct times for activities when event timezone set to UTC
Dashboard: Activity times on the ticket PDF should be displayed in 24 hour format in Finland
Dashboard: Custom exports are now a public beta
Dashboard: Set event explicitly during duplication
Dashboard: Make sure the payment method is stored on the Stripe customer record
Dashboard: Make sure free orders are given :receipt
receipt type when Italian invoice issue method is enabled
Dashboard: Only show ticket count once for termsets
Dashboard: Don't double count tax on receipts for manual orders for tax exclusive releases
The biggest news this month is that we finally moved all our remaining customers over to our “new” dashboard. This is a long time coming and a huge achievement for the team. It also means we can focus on one system rather than having to maintain two.
Kudos to Vicky as she had been working towards this for a lot of this year and we got there just before she headed off for her parental leave! Thanks also to the engineers, especially Cillian who has has done most of the heavy lifting to get this over the line.
Billing: Add a Payment Option column to make things clearer for accounts with multiple payment options of the same type
Dashboard: When reordering tickets don't include archived ones
Dashboard: Break down sale report by payment option
Dashboard: Port unsubscribing from emails from legacy to dashboard. Also build a workflow so that you confirm you want to unsubscribe.
Dashboard: Send order and ticket emails from their own higher priority queue. This should address issues we’ve had with messages taking a long time to send.
Dashboard: Fix for discount codes revealing secret tickets on widget v2.
Checkout: Show discount code field if it is set to display for a specific release rather than at event level.
Dashboard: RSVP invitations should reveal secret tickets too.
Checkout: Allow v2 widget to be loaded on the event homepage if PayPal Express is enabled.
Checkout: Don't display a striked out price when degressive pricing stops a discount from being applied.
Checkout: Make sure degressive pricing description displays correctly for all possible combinations of ‘tax exclusive’ and ‘show prices ex tax’.
Dashboard: Fix for social icon settings.
Dashboard: Fix label for custom View Ticket button.
Dashboard: Add placeholder as an option to the sample widget.
Checkout: Ensure browser focus is set correctly when the Tito button overlay opens, in both iframe/inline modes.
A bunch of performance improvements and smaller bug fixes.
Use default quantity for a release even when showing just one release in the widget
Fix for applying discount code when the widget is loaded with the JS API
Don't show reduced ticket prices on the widget if a discount code is not actually allocatable
Add locale options to widget sample page
Fix up wrapping on discount code warnings
Add support for setting ticket details and upgrades to the admin registrations API
Better styles for the "interested people" label
Don't include the current event in the Attendees from other events message recipients field
Make sure an upgrade cannot be attached to a release more than once
Fix .zip file exports for question types with file attachments
Better handling of different Stripe currencies
Update Irish translations and add missing ones
Make sure Irish last name prefixes are parsed as part of the last name
Fix wrapping issues on translated fields in checkout modal
Make sure country select menu on order form falls back to country names in English if no translations availabe for the current locale
Add the name and percent tax which was applied to the ticket webhook payload
Add experimental custom exports feature
Rework sorting ticket positions so it supports all releases, not just a max of 100
Let organisers import orders via a .csv spreadsheet (feature targeted)
Release source tracking feature for all customers
Bring back link to export check-in list no shows
Display which tickets a supercombo includes on the v2 widget ticket selection form
Fix passbook for custom logos
Fix regression where ticket counter was including voided tickets
Ensure the ticket quantity box displays for waiting list offers on the v2 widget
Don't display the "Continue" button when only waiting listing tickets visible on the v2 widget
Improve v2 widget styling when no releases are available
Ensure unsubscribed email addresses do not receive message when manually added to recipients
Clarify wording and make styles more consistent on income and expenditure report
Fix bug sending out double notification emails to organisers
Make sure markdown is rendered for the description on the upgrades show view
Remove rick roll link on sample QR code (😅)
Fix bug where ticket counters where being incorrectly copied over during the event duplication process
Send :registration.finished
and ticket.completed
webhooks for manual tickets
Ensure links in the admin area go to the correct event for attendees with cross-event combos
Various upgrades and infrastructure improvements
From 31 August, the updated Tito dashboard will become the default for all users. Read more.
Include the timezone in release :start/end_at_formatted dates in the Checkout API
Experiment: add an endpoint that generates a QR code for a vCard
Don't show upcoming tickets when the show upcoming and show past tickets settings are disabled
Display release date for upcoming tickets in widget v2
Fix bug where issue with links caused event duplication to fail
Link to help article within the Team settings section
Add id
attribute for each ticket type in widget v2 to make it easier to apply custom CSS
Add support for PayPal Express in widget v2
Improve performance for calculating release and activity capacities
Allow attendees from other events to be added as message recipients
Fix bug that caused activity to be listed twice in itinerary on event homepage
Add documentation for the page[size]
parameter
Ensure ticket name wraps so filter does not break for long ticket names
Make use of sentence case more consistent across headings and buttons
Minor UI improvements
Link to widget preview and code from Settings section within each event
Don't require users to add a card if using PayPal Platform
Display all available name, company and address information in order summary
Add pagination links to "all events" page to display 100 at a time
Specify that recovery codes can be used in 2FA field
Update attachment picker to include pagination and search
Fix issue with RSVP and waiting list offer links on v2 widget
Make sure a warning is displayed on items on the v2 widget if people are allocated less than they selected
Display shareable discount code links more prominently and add copy-to-clipboard shortcut
Fire the registration.completed
webhook when a registration is marked as complete
Show app version under Help menu for easier debugging
Mark waiting list offers for completed v2 widget registrations as redeemed correctly
Use markdown for upgrade descriptions
Allow filtering of attendees by upgrade
Fire checkin.deleted
webhook when a checkin is deleted
Fix for filtering by attendee response where the question response contains a space
Automatically copy phone numbers to the ticket when an order only has a single ticket with no required questions
Fix missing order and ticket links in lookup.tito.io
Don't refire the registration.completed
webhook if it's already complete
Ensure the past event page loads when the net income includes multi currency payments
Began work on experimental feature to allow custom exports (not yet released)
Add widget type, release and discount code to sample widget page
Fix for QR codes in test mode
Don't ask the same opt-in question twice if it's attached to more than one release
Add missing Czech plural translation variations
Enable test mode with a plugin instead of a key
Add job title field to widget v2
Show * next to Italian fiscal code field if it’s required
Make PayPal Platform the default for new events (read more here)
Connect payment options via Dashboard
Remove consent when reassigning a ticket so the assignee has to consent themselves
Add a class to be able to target widget v2 CSS based on theme
Set the widget background to white and style widget v2 depending on theme
Use markdown and styles for registration unavailable message on widget v2
Various other style tweaks for widget v2
Display payment instructions on widget v2 if set
Group event settings more clearly in Dashboard
Make ticket locking more explicit in admin and on widget v2
Better handle refunded invoices marked as unpaid
Fix issue where new item forms were not being reset after being re-opened
Ask people whether they want to refund/put tickets back on sale after cancelling an order
Fix attaching upgrades on edit attendee form
Fee calculation improvements and fix to calculator
Add Czech locale and language support (requires beta Internationalization feature) 🇨🇿
Fix updating tags on attendee tickets
Fix bug counting check-ins
Update Payment/Register form settings section
Check for consent status before marking a ticket as complete
and show reason
Update widget documentation
Include a status column in the message deliveries export
Fix sorting by attendees by name
Move to Buildkite for deploys
Various infrastructure upgrades and updates
Make sure order summary line total and savings figures are correct for every possible combination of tax inclusive/exclusive settings at ticket and event level
Fix the Changes allowed
and Changes locked
filters on attendees
Port across beta invoice features to the new UI
Ensure tickets created for invoice orders are marked as temporary
Add an option to include temporary ticket holders (e.g. from unpaid orders) on messages
Fix the flow for putting voided tickets back on sale
Add ability to filter attendees and orders by creation date
Display a helpful error message if event duplication fails
Release API v3.1 🎉
Fallback to other languages if the tax type name isn't present for receipts
Prevent premature ticket locking via activities
Ignore the 'only issue combo tickets' setting if a release is a no longer a combo ticket
Fix .csv/.xlsx statement downloads in billing app
Make it easier to understand and edit 'lock changes' settings at individual attendee level
Ensure moderators have access to an event if they have just created it
Don't fire registration.marked_as_paid
webhook for free manual registrations
Streamline flow for adding tickets to a discount code
Fix faulty condition that could allow offensive four-letter word order references
Develop API v3.1
Update marketing site to use widget V2
Don't send gifted emails to person who placed the order if setting is disabled
Ensure email banner image doesn't extend past the modal edge
Link to the public registration URL in the gifted email sent to the orderer
Add a zip code example for test mode instructions
Fix for reverting to draft mode
Prevent double-clicks from submitting the upgrade choices form twice in quick succession
Add translations for Irish dates
Prevent error when ordinalising dates in the en-GB locale
Include the slug in the release quantity column name in the orders export if there are duplicate release titles
Improve performance of sending messages
Give organisers the option to notify people when importing tickets
Update Irish translations
User role should be able to see events/past events links, just not the account settings link
Prepend amount fields on refund form with currency symbols so users know they don't need to include the currency symbol
Allow users to set release upgrade prices containing decimals
Changes to support API caching
Ensure the 'All done' dialog appears for non-simple registrations so the custom auto-redirect link works
Refactor how we show the view for API responses
Add usage information to list of discount codes
Add pagination to list of invitations for an RSVP list so people can see them all if they have more than 100
Include price_inc_tax
and price_ex_tax
in the API
Show price including tax in v2 widget summary
Make sure a TaxType :name
translation is present for all event locales to prevent orders failing while generating a receipt
Fix Opt-in export
Fix for i18n in custom email templates
Make sure the format of email addresses on waitlisted people is validated
Disable the Import and Perform Import buttons when clicked to prevent users submitting them twice
Disable Continue button after choosing upgrades to prevent form being re-submitted
Allow longer venue and link URLs
Return a 422 with validation error instead of a 500 if terms have already been accepted
Prevent new account and new event forms from being submitted twice in quick succession
Use email validator to catch validation errors Devise.email_regexp
is missing
Don't falsely show invitation as expired and don't show expires in X days if it's already expired
Internationalise cancel ticket copy and add German translations
Remove '(EU Customers)' text from 'Add VAT number' link
Fix Stripe warning
Add duplicate event button to Settings section
Fix edit ticket modal
Honour discount code and secret tickets on password protected event page
Don't scroll to the top when clicking items in the index viewer
Add aria labels to event page icons
Improve text contrast on sold out and upcoming tickets
Autofocus on overlay after clicking continue button
Reduce memory usage on exports to try prevent export failures
Allow test mode exports
When calculating the upgrades total for a ticket only count release upgrades belonging to the actual ticket's release
Styling tweaks to export dialog
Update German translations
When changing event locale don't validate title in new locale is present
Add email_address
attribute to event in API
When changing event locale don't validate title in new locale is present
Add missing API documentation for registration.filling
Validate length of free text field so users see a validation message rather than a 500 error
Add an 'Invoice' title to the top of invoices.
Expenditure report improvements
Happy Calm December from all of us at Tito.
Fix for PayPal Platform refunds
When trying to detect .csv separator in imports, first scan for separator between quotes, then without quotes
When validating event title present check a title is available in the default locale
Don't allow ticket to be updated or access to edit page if changes are locked
Update German date format to e.g. '11. November 2021'
After creating a venue make sure router path is updated to /venues
Ask for a reason when a user switches from dashboard to legacy
Use searchable references for PayPal Platform payments
Display warning on event dashboard if charges are disabled on Stripe account
Selection of small performance improvements
Don't store answers for questions which have since been detached
Make sure release and questions Vuex store is reset when switching between events
Fix up receipts with blank line descriptions
Explicitly set the locale in the widget
Further improvements to monitoring across apps
Add Opt-ins to the registration and ticket webhook payloads
Make sure to check if the registration tax amount should be updated when the VAT number changes
Fix issue occasionally stopping card declined messages from being shown.
Pass the :source
parameter from the query string in the URL to the v2 widget if present when creating an order
Don't allow multiple invitations to the same email on a single RSVP list
Don't show the 'Add VAT number' link on free registrations
Don't send the registration confirmation email when confirmation emails have been disabled
Improved monitoring across apps
Add dedicated icons for YouTube, Instagram and LinkedIn links on event homepage
Update Portuguese translations
Fix crashing issue for customers registering from Kosovo
Update available locales so downloading the wallet pass doesn't fail
Fix for sending out daily digest email twice
When an order cannot be cancelled show a Javascript alert with an explanation
Add API documentation on using PayPal Platform
Allow underscores in slugs when searching for registration and tickets in admin area
Make sure every tax type gets displayed on receipts
Validate address fields are present if required before enabling the 'Submit/go to PayPal' button
Make sure the address and city fields are highlighted in green in checkout form once filled in
Ensure release prices are displayed inclusive or exclusive of tax appropriately depending on the event setting and on whether or not the release has country specific tax rules set up
Make sure order form displays invoice fields when the event only has a pay-by-invoice option
Add API documentation for Opt-ins
Switch Tito apps to Kubernetes
Include each ticket's :opt_ins
when fetching extended view of tickets API
Add message to Webhook Monitor about data truncation
Update Portuguese translations
Make sure :opted_in
state gets set correctly on the tickets#opt_ins
API attribute
Don't display external payment id text on receipts for pay-by-invoice orders
Prevent validation error when answering *required* file field questions with a remote file URL
Show Opt-in fields at assign tickets stage when assigning a ticket to yourself
Show prices excluding tax on the release show view when event setting is enabled
Allow users to opt-in/opt-out even if ticket changes are locked
The release actions menu should show 'Archive' rather than 'Delete' even if it only has test mode tickets
Include Opt-ins summary in the Attendees section
Get secret ticket and discount code links working with v2 widget in :inline
mode
Validate max release title, event title and Opt-in name lengths so users get feedback if it's too long
Add ability to sort activity questions
Fix supercombo release suggestions for events using non-default locales
Add support for longer webhook endpoint URLs
Preserve accepted Opt-ins when assigning or updating tickets
Set the ticket/registration state to be :incomplete
if a manual ticket is created without answers to required questions
Update informal German translations
Display correct currency in degressive prices description
Don't reload the page when clicking the close order button; just close the widget
Display an error message when an email cannot be parsed due to being invalid
Don't set the max html attribute on the quantity field to the minimum tickets per person limit
Remove option to connect a Realex payment option
Don't display 'paid via Stripe' for free registrations
Prevent releases with test mode tickets from being deleted
Update duplicate event modal width to handle longer event names
Make sure validation errors display when overriding the data protection settings at event level
Prevent duplicate 月character when displaying months in Japanese
Fix links to wallet and PDF for ticket page on Safari iOS
Spacing fix for overlay when title is very long
Add support for PayPal Platform payments
Don’t show the QR code when it’s been disabled on the release
Include tracking pixel URL in checkout API so that the new hits
plugin can use it
Recover gracefully from a 422 response when checking out with widget v2
Update documentation for Google Analytics and widget v2 plugins
Rename master
to main
Fix scope of mustache variables in emails
Fix for releases and questions getting confused between events
Add fixed time zone to Dreampicker to avoid confusion with ambiguous abbreviations like CST
Order upcoming events in account section by soonest first
Update email validation to check domain includes a period and make sure event contact email address is validated
Make it easier to see what data will actually be affected when an attendee is to be anonymised
Add a notice in Settings > Money section if the event is using a payment methods that is to be deprecated
Improve ticket email validation
Ensure questions attached to releases remain in the correct order when a release is edited
Improve Irish translations
Update country list to say “Taiwan” instead of “Taiwan, Province of China”
Fix for loading Stripe elements after steps/upgrades
Don't pass empty :release_slugs
parameters to checkout-tito potentially causing incorrect registration is unavailable messages
Open ical and Google Calendar links in new frames to prevent 'refused to connect' error when v2 widget overlay is running within an iframe
When rendering links in markdown on v2 widget include a target='_top'
attribute so they open correctly when widget is running inside an iframe
Get Google calendar links working for activities on events in non-UTC timezones
Fix to display the date consistently in activities
Add support for markdown in Opt-in description field
Improvements to ticket search performance
Give the Opt-ins heading its own CSS class so it can be targeted with custom overlay css
Let users override the automatically generated Google Maps link for venues
Don't include /:locale/
in the receipt link when event is using non-default locale
If a venue has set a custom map link in dashboard, display it instead of the default maps link
Set the timezone to UTC if the user's time zone is nil to avoid unusual intermittent Sales By Day report figures
Make sure Opt-ins appear in the Opt-in index view when a non-default locale is enabled
Fix Dreampicker issue preventing filtering of reports by dates
Add the missing 'Show contact email' setting in Settings > Homepage section
In Settings > Links, use mailto:
rather than http://
protocol for email addresses