https://www.gpldownloads.com/downloads/gravity-perks-bookings/changelog/
Latest Updates
Back to Gravity Perks – Bookings

Gravity Perks – Bookings changelog

Release notes for every version we have on record, newest first.

Latest 1.0.9 · 28 Oct 2026 40 versions Since Jan 2026

2026 12 versions

1.0.9 Latest 28 Oct 2026 3 new1 fixed
New
  • Added gpb_booking_field_price filter to customize the Booking field's price when a form is submitted.
  • Added support for Simple display mode when rescheduling on the [gpb_manage] booking management page.
  • Added "spots left" support for Full Day services, showing the lowest capacity across the selected date range.
Fixed
  • Fixed issue where deleting a Resource Type left its resources hidden from the admin but still offered in Resource fields; they now move to the Trash with the type.
1.0.8 21 Oct 2026 2 fixed
Fixed
  • Fixed an issue where the Availability Preview ignored the Recurring yearly option and showed availability the booking form did not offer.
  • Fixed an issue where a service's capacity did not limit bookings that use a resource.
1.0.7 15 Oct 2026 1 new2 improved4 fixed
New
  • Added links for approving or denying a pending booking from a notification email, available via the new {gpb_approve_booking} and {gpb_deny_booking} merge tags.
Improved
  • Updated filters gpb_min_duration and gpb_max_duration to include the $date parameter.
  • Improved the Booking Time calendar's first load by showing a loading skeleton instead of the current month until its starting month is ready.
Fixed
  • Fixed an incorrect total validation error when an untouched booking field has no selected time.
  • Fixed the Booking ID column in the entries list showing a View Booking link instead of the booking ID.
  • Fixed an issue where hidden preselected Service fields could be saved with a service ID instead of an empty value.
  • Fixed an issue where some aria labels were not translatable.
1.0.6 30 Sep 2026 5 new3 fixed
New
  • Added support for routing notifications by the Service, Resource, Occupancy and Booking Time fields.
  • Added a reason field when staff deny or cancel a booking, available in notifications via the new {gpb_denial_reason} merge tag.
  • Added a Denied booking status for requests turned down before they are approved, along with a Booking Denied notification event.
  • Added support for collecting a reason when a booking is cancelled, available in notifications via the new {gpb_cancellation_reason} merge tag.
  • Added gpb_booking_operation_restrictions filter for customizing reschedule/cancel restrictions.
Fixed
  • Fixed occupancy pricing and validation with service changes on multi-page forms.
  • Fixed issue where a Service field with a preselected service showed that service on entries where conditional logic had hidden the field.
  • Fixed issue where rescheduling a booking on a form with several Booking fields wrote the new time into the first Booking Time field instead of the one the booking belongs to.
1.0.5 17 Sep 2026 12 fixed
Fixed
  • Fixed duplicate Booking Confirmed notifications after payment.
  • Fixed issue where a booking's occupancy was dropped when a multi-page form changed page, pricing the booking without it and leaving the Total short.
  • Fixed issue where superseded price requests could overwrite the latest booking price.
  • Fixed issue where one Booking field's price calculation cancelled another's on the same form, leaving that booking's price at zero and the Total short.
  • Fixed issue where the Next button on a multi-page form stayed clickable while a booking's price was being calculated, carrying a stale total to the following page.
  • Fixed issue where the Booking field's calculated price was dropped when a form was re-rendered, leaving the Total short and failing its validation on submit.
  • Fixed issue where a Resource field lost its selection when a form was re-rendered after a page change or a validation error.
  • Fixed issue where a manually selected resource was dropped from the Booking Time calendar's availability check when an automatic Resource field preceded it.
  • Fixed issue where a Resource field filtered by Resource Type did not apply its resource's unavailability windows to the Booking Time calendar.
  • Fixed issue where all-day services with resources did not correctly gray out dates in the Booking Time field when confirmed bookings existed.
  • Fixed issue where deleted calendar connections and trashed or deleted services and resources left scheduled calendar sync actions running indefinitely.
  • Fixed issue where the available booking times kept the previous service's duration after changing the selected service.
1.0.4 9 Sep 2026 1 fixed
Fixed
  • Fixed issue where auto-selected availability dates could open the previous day in western timezones.
1.0.3 3 Sep 2026 1 new2 fixed
New
  • Added "Allow Resource Rescheduling" setting to prevent customers from changing the resource assigned to their booking when rescheduling.
Fixed
  • Fixed issue where resource types were missing from form exports, causing imported resources to have no resource type.
  • Fixed issue where the Booking field's price was excluded from Gravity Forms 3.0's Total calculation whenever another product field changed.
1.0.2 27 Aug 2026 6 new3 improved10 fixed
New
  • Added gpb_resource_field_resources JavaScript filter hook to customize resources displayed in individual Resource fields.
  • Added an "Include all GP Bookings data" option to the form export screen, allowing services, resources, and resource types to be exported whether or not the selected forms use them.
  • Added gpb_min_duration and gpb_max_duration filters to allow customizing booking duration limits by role or request context.
  • Added support for the gpb_show_unavailable_slots filter to Simple display mode, enabling unavailable slots to show as disabled choices.
  • Added gpb_min_block_size filter to allow customizing the minimum Service block size.
  • Added support for styling partially booked and partially unavailable dates in the Booking Time field calendar via new gpb-day--partially-booked and gpb-day--partially-unavailable classes.
Improved
  • Improved accessibility of available time slots in GP Bookings for keyboard users.
  • Updated "Event Description" Google Calendar sync setting to be shown by default rather than hidden behind the gpb_event_settings_fields filter hook.
  • Improved how yearly recurring availability windows display their date range so it reflects the month and day pattern actually used.
Fixed
  • Fixed a PHP 8.4 deprecation notice in stress-test seed generation.
  • Fixed an issue where manually marking a booking as completed did not trigger the Booking Completed notification.
  • Fixed issue where multi-night bookings were blocked while capacity was still available.
  • Fixed issue where the booking total could get stuck at $0 after changing booking details quickly.
  • Fixed issue where Availability Window action buttons overlapped the window details.
  • Fixed issue where the Google event map table failed to be created on hosts with a lower maximum index key length, causing duplicated Google Calendar events.
  • Fixed issue where GP Bookings product options triggered PHP warnings when used with GS Product Configurator.
  • Fixed issue where all-day events from synced calendars were not shown as unavailable in the availability preview when editing Services/Resources.
  • Fixed issue where imported Google Calendar blocks made a resource that inherits its service's availability unavailable on all dates instead of only their own date ranges.
  • Fixed issue where two Google Calendar events were created for the same booking when using the GC Google Calendar integration alongside GF Stripe add-on.
1.0.1 19 Aug 2026 1 fixed
Fixed
  • Fixed issue where AM/PM text in the Booking Time field could wrap onto a new line in some viewports.
1.0 4 Aug 2026 1 new
New
  • Added user assignments that let WordPress users manage bookings and settings for assigned services and resources.
1.0-beta-2 31 Mar 2026 1 new1 fixed
New
  • Added integration with GC Google Calendar to automatically sync bookings to and from Google Calendar.
Fixed
  • Fixed an issue where booking pricing was lost on AJAX page transitions when a Resource field used conditional logic.
1.0-beta-1 20 Jan 2026 1 improved
Improved
  • Updated date picker in the Booking Time field to allow booking from the current year onwards.

Undated 28 versions

1.0-beta 1 fixed
Fixed
  • Fixed issue where GP Bookings data could not be included when exporting or importing forms in Gravity Forms 3.0.
1.0-beta 1 new2 fixed
New
  • Added Carbon 3 compatibility for fixed-duration bookings to handle signed duration values more reliably in validation and duration pricing.
Fixed
  • Fixed issue where time slots showed "Invalid Date" in Safari for iPad.
  • Fixed issue where frontend reschedules did not update mapped Google Calendar events.
1.0-beta 1 new6 fixed
New
  • Added gpb_service_pricing_rules and gpb_resource_pricing_rules filters to allow pricing rules to be modified at calculation time.
Fixed
  • Fixed an issue where editing an entry via GP Entry Blocks would not correctly update Booking entry metadata.
  • Fixed issue where editing a Booking via GP Entry Blocks would create a new booking instead of updating the existing one.
  • Fixed issue where using GP Entry Blocks to edit entries with a booking would fail form validation.
  • Fixed issue where resource-backed bookings were counted twice against union-mode capacity.
  • Fixed an issue where some admin UI strings were not translatable.
  • Fixed issue where nightly buffer periods were not reflected in calendar availability.
1.0-beta 1 improved2 fixed
Improved
  • Improved "+X more" interaction in the Month Dashboard view: clicking now enables scrollable mode with full drag-and-drop support, instead of navigating to the Day view.
Fixed
  • Fixed issue where time slots with at least one available resource were not always bookable/auto-assigned, and slots with no available resources were not consistently disabled.
  • Fixed an issue where the month and year navigation buttons in the date picker could still be used to view months/years without any available dates, even when availability was restricted by the gpb_availability_end hook.
1.0-beta 1 new
New
  • Added gpb_ics_calendar_props filter hook to customize ICS calendar properties.
1.0-beta 1 improved4 fixed
Improved
  • Updated {gpb_booking} to display all bookings on a form, if multiple are available.
Fixed
  • Fixed issue where duration day pricing rules did not apply to resources.
  • Fixed issue where clicking a date outside the max range required a second click to update the start date.
  • Fixed issue where selecting only a date in the Booking Time field would update the Total to the service base price before a time slot was chosen, and the Total would not reset when the selection was cleared.
  • Fixed issue where toggling an Option mapped to a Booking field didn't update the Total, causing a state-validation error on submit.
1.0-beta 2 new
New
  • Added {gpb_conferencing_link} merge tag for the GC Google Calendar integration.
  • Added gpb_google_calendar_event_block_data filter for per-event control over synced Google Calendar availability blocks.
1.0-beta 4 new2 improved5 fixed
New
  • Added per-field entry meta gpb_booking_status_{FIELD_ID} synced from Booking record for GPPA filtering.
  • Added "Show two months" setting to the Booking Time field for displaying two months side-by-side.
  • Added gpb_availability_block_added hook which fires when a new Availability or Unavailability block is defined.
  • Added 45 minutes and 1 hour 30 minutes options to Booking Time field Flexible Interval choices.
Improved
  • Improved resource selection UX by automatically checking a newly created resource in the service's Resources tab.
  • Improved multiplier field step validation to allow precise decimal values upto 2 digits after decimal.
Fixed
  • Fixed issue where long service names hid the remove button in manual Service field settings.
  • Fixed issue where "Spots left" ignored existing service bookings when using automatic resource allocation.
  • Fixed issue where Availability Window summaries always displayed dates in mm/dd/yyyy format.
  • Fixed an issue where some admin UI strings were not translatable.
  • Fixed an issue where trashed services would still appear as selectable options in the Service field when set to Manual Selection.
1.0-beta 1 new4 fixed
New
  • Added per-field booking status entry meta.
Fixed
  • Fixed issue where a date appeared selectable in the calendar even when every time slot on that date fell within the lead-time cutoff.
  • Fixed booking creation failing for manual selection fields during form submission.
  • Fixed issue where nightly bookings with capacity greater than 1 incorrectly blocked dates after a single booking.
  • Fixed a fatal error that occurred when a booking merge tag was used on the form either as a default value or within an HTML field.
1.0-beta 3 new1 improved4 fixed
New
  • Added new gpb_availability_blocks filter for injecting virtual availability blocks at read time.
  • Added the ability to reorder manually selected services in the Service field settings.
  • Added gp_bookings_bookable_name filter to enable customizing service or resource names. (#190)
Improved
  • Improved resource field UX by automatically selecting the resource when only one option is available for the chosen service.
Fixed
  • Fixed a regression with Full Day Availability not working with Resources in some scenarios.
  • Fixed issue where Service field live merge tags resolved to an empty value on page load when the field was dynamically populated by service name.
  • Fixed issue where non-string values could cause a fatal error during merge tag replacement.
  • Fixed issue where empty optional booking groups failed validation.
1.0-beta 1 new2 fixed
New
  • Added event settings (conferencing, event title, event description) to Google Calendar sync.
Fixed
  • Fixed issue where checkout-only dates were incorrectly shown as unavailable on initial calendar load, causing misleading availability display.
  • Fixed an issue where no time slots appeared when a service had a narrower availability window than its resource and used large block sizes.
1.0-beta 4 new2 improved3 fixed
New
  • Added support for using dynamic population with Service fields.
  • Added "Rescheduled Booking Status" setting to control status of rescheduled bookings.
  • Added gpb_block_size filter hook enabling dynamic block sizes depending on dates.
  • Added support for using Occupancy fields as GP Auto List Field Trigger Fields.
Improved
  • Updated entry detail Booking Information metabox with new design and action buttons.
  • Improved booking history to show date ranges for multi-day bookings instead of only the start dates.
Fixed
  • Fixed issue with unsaved changes warnings showing too frequently when editing Services and Resources.
  • Fixed the Default Value setting for Resource field not working as expected.
  • Fixed issue where Google Calendar Working Location events blocked availability.
1.0-beta 2 fixed
Fixed
  • Fixed an issue where the Service field select input referenced an undefined placeholder variable.
  • Fixed an issue where the setup wizard redirected to the main site wp-admin URL on multisite installations instead of the current subsite admin URL.
1.0-beta 2 new7 fixed
New
  • Added support for setting the end time of Availability Windows to midnight.
  • Added "Display Mode" setting to the Booking Time field and added new "Simple" display mode that will show radio choices for time slots.
Fixed
  • Fixed PHP notice about loading of text domain too early.
  • Fixed an issue where selecting a date range spanning multiple months was not possible.
  • Fixed an issue where non-flexible bookings had a zero-duration range in the booking time hidden input prior to submission, causing booking time merge tag modifiers to output incorrect values.
  • Fixed an issue where the resource select placeholder was not translatable in frontend field updates.
  • Fixed an issue where booking child fields did not explicitly support conditional logic.
  • Fixed an issue where rescheduling allowed fully booked slots when capacity was already reached.
  • Fixed an issue where the Perks tab for GP Inventory settings did not appear on Product fields set to Radio Buttons or Dropdown when GP Bookings was active.
1.0-beta 21 new7 improved25 fixed
New
  • Added Default Value setting to Resource and Service fields.
  • Added service/resource names to calendar sync failure and retry-failure email subjects and messages.
  • Added support for using the Placeholder field setting with Resource fields.
  • Added gpb_allow_booking_current_time_slot JavaScript filter hook to allow booking the current time slot. For example, if it's 4:15 PM and you have a time slot from 4:00 PM-6:00 PM, this would not be bookable by default. This hook enables modifying this behavior.
  • Added entry meta for booking details (service, resource, dates, times, quantity, and occupancy).
  • Added gpb_ics_feed_statuses filter for ICS feed booking statuses.
  • Added frontend calendar status CSS classes for available, unavailable, outside availability, and booked days.
  • Added support for custom PHP date formats in Booking Time field merge tags. Example: {:5:startDate,format[F j, Y]}
  • Added new gpb_auto_select_single_date filter to enable auto-selection of single available dates in Booking Time field calendar.
  • Added $bookable and $entry params to gpb_default_status.
  • Added support for default and prepopulated values with Booking Time fields.
  • Added support for changing the resources when rescheduling on the customer-facing Booking Management page. Only resource fields set to "Manual Selection" are supported in this flow.
  • Added support for showing Booking Time field times in visitor timezones. Enable using the new "Show times in user's timezone" setting under Appearance for Booking Time fields.
  • Added new "Booking Completed" notification event that automatically sends thank you notifications when confirmed bookings end.
  • Added detailed deletion preview to "Clear Sample Data" confirmation.
  • Added gpb_admin_calendar_event filter hook for customizing admin calendar events.
  • Added cancel booking confirmation and updated button labels in the frontend booking management UI.
  • Added new "Lead Time" setting for Services and Resources to prevent new bookings within X amount of time.
  • Added placeholder field setting to Resource, Service, and Occupancy fields to enable customization and consistency with other Gravity Forms field types.
  • Added "Recurring yearly" option to Date Range setting in Availability Windows, matching the functionality available in pricing rules. This allows Availability Windows to repeat annually (e.g., for holiday schedules or seasonal availability).
  • Added new gpb_capacity_limit PHP filter hook to dynamically change capacity depending on the service/resource and requested dates.
Improved
  • Improved integration support for GP Populate Anything by adding live refresh handling to Booking Time fields.
  • Improved frontend display behavior of Resource fields set to "Fixed Resource." Instead of no content in the field as it was assumed they would be hidden, a read-only field is present with the resource name.
  • Updated calendars in the Dashboard to respect WordPress "Week Starts On" setting.
  • Improved unsaved change detection with Pricing Rules and Availability Windows.
  • Improved compatibility with GP Inventory by excluding Booking fields from the allowed fields that can have their inventory tracked.
  • Updated GP Bookings menu position below Gravity Forms menu.
  • Improved frontend styling of the Booking Time field to help guard against generic table styles from interfering with the calendar display.
Fixed
  • Fixed issue where rescheduling through frontend Booking Management properly re-enabled the start/end dates for range-based bookings, but not the inside dates.
  • Fixed an issue where time slot mode field settings for the Booking Time field were always hidden when the related Service field was set to Manual Selection. Now, the settings conditionally show depending on what services are selected in the Available Services field setting.
  • Fixed an issue with nightly bookings and fixed-ranges (setting min and max to the same number of nights) not selecting the intended range and consequently showing a validation error.
  • Fixed Pricing Rules not working with dropdown or radio button Occupancy fields.
  • Fixed an issue where service unavailability was not shown while dragging bookings in the dashboard calendar.
  • Fixed an issue where cancelled bookings continued to show as booked and disable full-day availability.
  • Fixed issue where dates and times generated by the {gpb_booking:template[%SERVICE% %DATETIME%]} merge tag were not translated to match the Site Language.
  • Fixed an issue where ICS sync failure notifications were sent for services and resources that had been deleted.
  • Fixed issue where booking duration calculation did not account for DST transitions, resulting in incorrect day counts when bookings spanned the start of daylight saving time.
  • Fixed an issue where the calendar showed resource-backed days as available despite zero remaining capacity.
  • Fixed issue where you could not set Base Prices to 0 in Pricing Rules.
  • Fixed an issue where Booking Time field values on entry detail pages showed shifted times for non-UTC site timezones.
  • Fixed an issue where merge tags were blank in Booking Created notifications.
  • Fixed issue where "Booking Updated" notification event was not firing when a booking was rescheduled, regardless of booking state.
  • Fixed an issue where the admin dashboard calendar content area was not visible on mobile landscape view.
  • Fixed an issue where initial pricing for flexible-duration bookings did not apply minDuration until users manually changed duration values.
  • Fixed an issue where comma-decimal currency values were parsed as thousands in rule summaries and totals.
  • Fixed merge tags to respect WordPress date/time formats.
  • Fixed an issue where long Resource Type names did not wrap correctly in the Service Resources tab on large screens.
  • Fixed an issue where frontend slot availability used resource windows without enforcing service positive availability windows.
  • Fixed issue where booking fields would fall back to base GF_Field class when GF Conversational Forms addon is active.
  • Fixed date localization in booking time fields to respect WordPress language settings and display translated names in order summaries and entry details.
  • Fixed an issue where the Google Calendar button used https:// protocol instead of webcal://.
  • Fixed issue where selecting a 2-day booking in the Booking Time field would incorrectly show the price for only one day if "Treat as nights rather than days" is disabled.
  • Fixed issue where the time slots in the Booking Time field would not reflect the minimum duration of a service on initial load.
1.0-alpha 12 new17 improved38 fixed1 removed
New
  • Added new "Show spots left" setting to Booking Time fields.
  • Added new button in GP Bookings » Settings to clear sample data added by the setup wizard.
  • Added new {gpb_booking}, {gpb_datetime}, {gpb_service}, and {gpb_resource} merge tags.
  • Added support for editing booking fields when editing entries in the Gravity Forms Entry Details screen.
  • Added user capabilities to control who can view the GP Bookings Dashboard, edit Services/Resources, and interact with the GP Bookings settings.
  • Added ability to include GP Bookings data when exporting forms. This will include related services, resources, resource types, and availability blocks.
  • Added new gpb_availability_start and gpb_availability_end filter hooks.
  • Added Occupancy setting for services. Occupancy can be used for scenarios such as limiting the number of guests for a cabin and adjusting pricing accordingly.
  • Added additional merge tag format options for booking time field.
  • Added new settings to the Booking Time field to control the display of time slot end times and the timezone indicator if the visitor is in a different timezone than the site.
  • Added support for handling fixed ranges in the Booking Time field. For example, if the service has flexible durations enabled and min/max both set to 5 days, the Booking Time field will only allow selecting ranges of 5 days.
  • Added new "Selection Mode" setting to Service fields to allow users to select services in the form.
Improved
  • Updated Booking Time field's time slot picker to show manually selected time slots in the "Picker" mode when editing entries.
  • Updated Resource field's Allocation Mode setting to automatically set the Visibility setting to "Hidden" if using "Automatic Assignment." Note, it can still be set to "Visible" manually.
  • Updated timezone indicator and spots left settings to be under "Appearance" for the Booking Time field.
  • Improved editing behavior for Booking Time fields by not disabling any dates/times and showing the previous selection.
  • Updated the Booking Time field's new Manual Mode when editing entries to use fluid height instead of fixed.
  • Updated verbiage in setup wizard.
  • Updated "Select Dropdown" to "Dropdown" for consistency in Input Type settings.
  • Improved availability checking logic by making checks smarter by merging all adjacent Availability Windows. This fixes some issues where having a Resource field with Automatic Allocation and resources with different availability windows could always throw validation errors depending on the Availability Window configurations.
  • Updated capability checks for GP Bookings to always allow users that have gform_full_access capability to do anything in GP Bookings. This better aligns with Gravity Forms' default behavior.
  • Updated booking management pages and components to use the date and time formats configured in WordPress General Settings.
  • Updated capacity input to show a blank value if set to "Unlimited."
  • Improved behavior with multi-day events coming in from calendar syncs. Multi-day events with a start and end time are now handled correctly.
  • Improved JavaScript bundle sizes.
  • Improved localization of calendar in Booking Time field.
  • Updated Calendar view in Dashboard to persist selected timeframe (Day, Week, Month).
  • Improved Booking Time field loading behavior to get rid of the "Loading service..." message.
  • Updated Availability Windows to display "All Days" in summary when all days of the week are selected, instead of listing each individual day.
Fixed
  • Fixed issue with settings under Appearance tab for GP Bookings fields disappearing after saving in the Form Editor.
  • Fixed UI bugs with the Manual Entry mode for Booking Time fields when editing entries.
  • Fixed stray 0 showing in Customization meta box for bookables.
  • Fixed issue where buffers were not showing in availability preview for resources that are inheriting buffers from a service.
  • Fixed issue where switching the Occupancy or Service fields to "Radio Buttons" input type would result in incorrect rendering in the Form Editor until refreshing.
  • Fixed issue where selecting entire Resource Types from services would cause them to be linked by resource type _and_ by specific IDs behind the scenes rather than just resource type.
  • Fixed issue where moving resources to trash from the single edit screen would redirect to _all_ resources instead of staying in the context of the resource type.
  • Fixed issue where newly added resource names when adding new resources through the "Resources" tab in services would persist in the input.
  • Fixed issue where time slots would be shown for times blocked by unavailability windows with certain configurations on the frontend. Note, validation was rejecting these during submission properly.
  • Fixed issue where single-day bookings were not possible when flexible booking durations were enabled.
  • Fixed issue where admin users could not override booking status transition restrictions when updating booking statuses.
  • Fixed issue where rescheduling did not ignore the current booking which could prevent moving times due to buffers from the current booking. Additionally, the submit button for rescheduling is now disabled until the booking time changes away from the current time.
  • Fixed regression where the client-side state of multiple Booking fields could collide causing the frontend behavior to not work as expected.
  • Fixed issue where booking ID could get removed from the Booking field's value if using a Payment Add-On.
  • Fixed issue where editing entries could duplicate existing bookings if availability allowed for it.
  • Fixed issue where inadvertent timezone conversion in the Booking Time field could load the wrong time slots from the REST API and show availability for the previous day.
  • Fixed issue with Resource Calendar tab not loading in the GP Bookings Dashboard.
  • Fixed pricing breakdown metabox not utilizing the default currency set in Gravity Forms.
  • Fixed an issue where some bookings were missing the manage booking URL after payment.
  • Fixed issue with Pricing Rules not utilizing the default currency set in Gravity Forms.
  • Fixed regression preventing the display of Capacity when editing Services and Resources.
  • Fixed issue with buffers not working as expected when creating bookings without resources.
  • Fixed issue where multi-day calendar events from external calendars with past start dates, but future end dates, were not imported.
  • Fixed issue where rescheduling using the [gpb_manage] could throw improper validation errors in some situations preventing rescheduling.
  • Fixed issue where resource fields in Automatic Assignment allocation mode did not work with services that are nightly.
  • Fixed issue where resource fields with Automatic Allocation would not show the resource in the entry list and entry details.
  • Fixed issue preventing the "Per Occupant" pricing multiplier from being added.
  • Fixed an issue where nightly bookings persisted after disabling flexible durations.
  • Fixed an issue where resource pricing type override was reset to supplement after saving.
  • Fixed an issue where ICS imports failed when calendars responded with HTTP 206 status codes.
  • Fixed an issue where GP Bookings settings failed to save when WordPress was in a non-English language.
  • Fixed an issue where :duration merge tag modifiers showed incorrect values during DST transitions in calculation fields.
  • Fixed an issue where calendar bookings extending beyond view boundaries were hidden from display.
  • Fixed service-level buffers not properly affecting resource availability.
  • Fixed regression with the Booking Time field showing times incorrectly if the person viewing the form did not have the same UTC offset as the site.
  • Fixed an issue where availability preview times ignored the site timezone.
  • Fixed issue where ICS calendar import validation failed for webcal:// URLs and calendar URLs that immediately redirected.
  • Fixed regression with Booking Time field not working as expected with automatic resource allocation.
Removed
  • Removed gpb_availability_days filter hook. Instead, use gpb_availability_start and/or gpb_availability_end.
1.0-alpha 4 new6 improved3 fixed
New
  • Added new wp gp-bookings booking list and wp gp-bookings booking get subcommands.
  • Added --create-pages and --skip-bookings parameters to wp gp-bookings seed command.
  • Added "All", "Weekdays", and "Weekend" convenience buttons to the days of week selector in Availability Windows and Days of Week pricing condition.
  • Added message to "Services" tab for resources if the resource has not been associated with any services.
Improved
  • Updated Booking fields in entries list to provide link to view bookings directly in the GP Bookings Dashboard.
  • Updated Buffer Settings to have time unit selector for improved usability.
  • Updated "Booking" field to show under "Advanced" fields under "Add Fields" in the Form Editor.
  • Updated Booking Time field to respect the "Week Starts On" WordPress setting.
  • Updated help text for "Reschedule Deadline" and "Cancel Deadline" service settings.
  • Updated Availability Windows, Time Range Pricing conditions, and ICS imports to use the configured time format in WordPress.
Fixed
  • Fixed issues with quantity fields linked to Booking fields not validating correctly or having prices calculate as expected.
  • Fixed wp gp-bookings seed command to prevent re-adding management page.
  • Fixed issue where when creating a new view in the dashboard, the new view would be blank until refreshing.
1.0-alpha 2 improved1 fixed1 removed
Improved
  • Improved styling of Booking Time field. It now utilizes more variables from the Gravity Forms Theme Framework.
  • Updated Availability Windows to show as green to match Unavailability Windows showing as red when editing Services and Resources.
Fixed
  • Fixed regression with field UI not functioning as expected in the form editor.
Removed
  • Removed Booking Notifications metabox for entries.
1.0-alpha 5 new8 improved17 fixed1 removed
New
  • Added gpb_ics_event PHP filter hook for modify the VEVENT's in ICS feeds.
  • Added new "Starting Month" setting to Booking Time fields and change default behavior from "Current month" to "First month with availability window."
  • Added message to the "Bookings Notifications" meta box if there aren't any GP Bookings-related notifications configured for a form.
  • Added duration and date modifiers to Booking Time field merge tags. New modifiers include :duration[nights/days/hours/minutes] and :startDate/:endDate with custom formatting support. The duration merge tags can be used in calculation formulas.
  • Added support for adding multiple resource fields to a Booking field. Additionally, Resource fields now work with conditional logic.
Improved
  • Updated Services and Resources to default to a randomly generated color instead of white.
  • Improved Dashboard by adding new List tab, filters, and the ability to create custom views.
  • Updated text in setup wizard.
  • Improved handling of single-day services (full day block size, no flexible booking duration). The date picker no longer will show a range, validation will no longer show an error, and the saved value for the Booking Time field will be a single date rather than a range.
  • Updated form editor behavior to prevent duplicating GP Bookings fields.
  • Improved behavior of the date picker in the Booking Time field, particularly for nightly and date range bookings.
  • Improved nightly availability.
  • Refactored pricing rules into a more flexible (and simple) system. Additional improvements include proportional application of rules (e.g. only change price for designated time in rules) and pricing breakdown UI tweaks.
Fixed
  • Fixed issue where the wp gp-bookings reset WP-CLI command did not work unless the --everything flag was used.
  • Fixed issue where "Full day" bookings would cause calendar dates to become unavailable no matter the capacity.
  • Fixed Booking Time field not using the "Time Format" configured in Settings » General.
  • Fixed an issue where the gpb_availability_days filter was not being applied to the frontend calendar.
  • Fixed conditional logic not working with Booking fields.
  • Fixed an issue where the frontend calendar was not displaying correctly on mobile devices due to theme conflicts.
  • Fixed additional situation with date picker and nightly bookings where dates would be disabled incorrectly after having a start date selected.
  • Fixed an issue where having custom block sizes (e.g. 75 minutes) could cause valid booking times to be rejected.
  • Fixed issue where buffer settings could not be set to 0 after previously setting to a value greater than 0. Additionally, buffers now support 5 minute increments.
  • Fixed block size setting for Services to allow durations less than 15 minutes.
  • Fixed ICS parsing errors by implementing forgiving parsing options for Google Calendar and other external ICS feeds.
  • Fixed issue where end time of full-day bookings would be one day less than what was selected.
  • Fixed full-day booking end times for non-nightly services.
  • Fixed an issue where datepicker showed incorrect day count for full-day bookings.
  • Fixed an issue where full day bookings could not be rescheduled due to datetime format validation errors.
  • Fixed validation errors if using block sizes >60 minutes (but less than 24 hours).
  • Fixed issues with multiple Booking fields in a form: pricing not calculating correctly, bookings not persisting.
Removed
  • Removed unused "Resource Driven Booking" setting for Booking Time fields.
1.0-alpha 3 fixed
Fixed
  • Fixed an issue where the booking management interface would not display standalone service bookings.
  • Fixed an issue where date range end dates were being reduced by one day for full-day bookings.
  • Fixed wp_set_script_translations() calls preventing translating of certain strings.
1.0-alpha 2 fixed
Fixed
  • Fixed issue where rescheduling bookings did not update the value of their associated Booking Time fields.
  • Fixed an issue where booking confirmed notifications were not sent for bookings created with default confirmed status.
1.0-alpha 1 improved3 fixed
Improved
  • Updated @since for hook DocBlocks.
Fixed
  • Fixed styling of Booking Time field where the calendar could inherit padding from other CSS and display incorrectly.
  • Fixed issue where GP Booking's entry meta boxes were showing on any entry, even if the form did not have any Booking fields.
  • Fixed issue where "Booking Information" entry meta box wasn't showing.
1.0-alpha 2 new2 fixed
New
  • Added validation to Availability Block form to prevent End times that are before Start times.
  • Added validation to Availability Windows when editing in Local time to catch Start/End times that wrap to the next day.
Fixed
  • Fixed margin on Timezone Toggle inside Availability Windows causing the Add Window button to be oversized.
  • Fixed issue where Availability Window editor would not allow time-only windows.
1.0-alpha 2 new3 improved5 fixed1 changed
New
  • Added uninstall logic that can be used when removing GP Bookings with Spellbook.
  • Added new "Pricing" settings to Services and Resources.
Improved
  • Updated date picker in the Booking Time field to allow booking into two years into the future.
  • Improved logic around detecting which days are available/unavailable if using "Treat as Nights."
  • Updated entry deletion behavior to delete related bookings.
Fixed
  • Fixed issue where Resources could not be selected in the Form Editor for Resource fields when "Allocation Mode" is set to "Fixed."
  • Fixed "Booking Created" notification event not working.
  • Fixed a regression with rescheduling no longer working in the Manage Booking page.
  • Fixed issue with status transitions not being idempotent and throwing errors if used with a gateway.
  • Fixed regression with ICS sync scheduler causing scheduled actions to fail.
Changed
  • Internationalized Resource and Service metabox tab names.
1.0-alpha 1 new4 improved3 fixed
New
  • Added "1 hour" and "2 hours" increments to flexible interval choices.
Improved
  • Improved behavior of ICS import form when importing valid calendars with no events.
  • Updated timeout to be longer when syncing calendars from ICS URLs. It now defaults to 30 seconds and can be filtered with gp_bookings_ics_sync_timeout.
  • Improved timezone handling in Booking Time field.
  • Improved Availability Window list and editor to reduce some confusion concerning timezones.
Fixed
  • Fixed issue with flexible duration minimum settings not being respected on initial load.
  • Fixed service booking double-counting in some situations.
  • Fixed a compatibility issue with GF Paypal Checkout Add-On.
1.0-alpha 1 fixed
Fixed
  • Fixed an issue where payment status settings were not persisting after save.
1.0-alpha 1 fixed
Fixed
  • Fixed all-day availability blocks causing errors if using block sizes less than 24 hours.
1.0-alpha 5 new5 improved5 fixed1 changed
New
  • ICS Calendar Sync - Import availability from external calendars (Google Calendar, Outlook, etc.) with automatic syncing and conflict detection. Includes manual sync options and comprehensive logging.
  • ICS Feed Generation - Generate calendar feeds that others can subscribe to, with secure token-based URLs for sharing booking availability.
  • Frontend Booking Management - Customers can now manage their bookings via [gpb_manage] shortcode with secure key-based access for cancellations and rescheduling. You can then create private links for customers to manage bookings in notifications with the new {gpb_manage_booking_url} merge tag.
  • Buffer Management - Configure buffer time before and after bookings to prevent back-to-back scheduling conflicts. Buffers intelligently overlap with existing unavailability blocks.
  • Developer: Added convenience functions (gpb_delete_entry_bookings, gpb_get_entry_bookings, etc.) for easier booking management.
Improved
  • Services: Major overhaul of settings UI with new tabbed interface and improved meta box architecture for better organization.
  • Resources: Complete overhaul of resource selector with ability to add new resource types and resources inline, plus improved placeholders.
  • Dashboard: Improved availability preview integration and reduced duplicate REST API requests for better performance.
  • Availability: Improved block size editor by removing 2-hour and half-day options.
  • Developer: Refactored database table names.
Fixed
  • Fixed issue where field ordering (service, resource, booking time) could prevent resource bookings from being created.
  • Fixed issue with entry statuses becoming inconsistent when saving global settings.
  • Resolved issue where deleting the last Resource Type was not possible.
  • Improved flexible duration input behavior to prevent weird typing experiences.
  • Fixed seeding errors and improved error handling throughout.
Changed
  • Misc: Extensive UI polish, styling improvements, and code organization enhancements.