The Booking Editor is where you create and modify all your reservations. This modal interface adapts to your specific needs, whether you're booking a single bowling lane for a walk-in customer or coordinating a multi-asset corporate event.
Three Booking Types: Product Bookings for regular activities like bowling, mini golf, or meeting rooms; Event Bookings for special events and parties with simplified group management; and Asset Blocking to mark assets unavailable for maintenance or special purposes.
Using the Booking Editor
How to Open the Editor
You can select asset times by choosing time slots on the calendar then saving selections, edit existing bookings by opening any booking and choosing "Edit" on any booking product, or use the right-click shortcut by right-clicking available time slots for quick access.
Editor Interface
The editor uses a tabbed interface that dynamically adapts based on your context and selections:
The tab selection logic considers factors like existing selections, opportunity context, and calendar entry points. When you have active selections or enter from an opportunity record, the system defaults to the Event tab with enhanced functionality.
Product Booking Tab
This is your main booking interface for regular activities like bowling, mini golf, meeting rooms, and other standard services.
Product Selection
Choose from your available products using the dropdown menu. The system automatically filters products into standard_products and event_products arrays, showing only regular products (those without the is_event_product flag) in this tab. This filtering ensures clean separation between standard bookings and special events.
Event Booking Tab
Perfect for parties, corporate events, tournaments, and any booking that needs multiple assets or special coordination.
Event Product Selection
The dropdown shows only event products (identified by the is_event_product flag in your system). These are automatically filtered from your product catalog and typically include birthday party packages, corporate event options, tournament setups, and special group activities. Event products are designed with simplified pricing structures and enhanced group management capabilities.
Asset Management
Asset Assignment - The system automatically assigns the best available assets, but you can review which specific assets are assigned and see time ranges for each asset. Assets are grouped by class for better organization and include detailed time range information.
Event Duration
All-Day Events: Toggle the "All-Day" option for events that run during your full operating hours. Perfect for:
- Private parties with exclusive access
- Corporate events with extended time
- Tournaments that need setup and breakdown time
Custom Time Ranges: For events with specific start/end times:
- Use the time pickers to set exact times
- System automatically calculates duration
- Conflict detection prevents double-booking
Asset Blocking Tab
Use this tab to mark assets as unavailable for maintenance, cleaning, or special circumstances.
Why Block Assets?
Common Reasons include scheduled maintenance or repairs, deep cleaning or sanitization, equipment setup for special events, safety inspections or compliance checks, and facility improvements or renovations.
Blocking Configuration
Reason for Block requires a clear explanation in the text field (255 character limit). This mandatory field helps other staff understand why assets are unavailable and creates an audit trail for operational decisions.
Block Duration
All-Day Blocking: Perfect for major maintenance or facility improvements. Covers your entire operational hours for the selected date.
Custom Time Ranges: For shorter maintenance windows or specific setup requirements:
- Set precise start and end times
- System warns if blocks conflict with existing bookings
Booking Workflow Examples
Standard Product Booking Workflow
- Select Calendar Slots: Use calendar selection tools to mark time slots, open the modal by clicking the save button
- Open Product Tab: Editor automatically opens with Product tab active based on context evaluation
- Choose Product: Select from the
standard_productslist excluding event products - Configure Details: Complete the pricing group quantity selection & choose a time slot
- Review and Save: System validates the booking product and handles asset reservation
- Process Payment: Open the booking within the EPOS for transaction processing and customer assignment
Event Planning Workflow
- Access Event Tab: System may auto-select Event tab when the
opportunitycontext is detected - Select Event Product: Choose from filtered
event_productslist - Set Asset Count: Use stepper controls, or type a number to specify asset quantity with automatic asset assignment
- Configure Timing: Utilize integrated timepicker component with timezone-aware date/time handling
- Review Asset Assignment: View
booking_assetslist with asset information and time ranges - Complete Event Details: Form persistence maintains state across tab switches and modal interactions
- Save Event Booking: Comprehensive validation and backend integration with conflict detection
Asset Blocking Workflow
- Open Block Tab: Access blocking functionality with tab state controlled by
isBlockTabgetter - Enter Reason: Mandatory text field with 255 character limit for audit trail documentation
- Set Quantity: Stepper control with automatic asset selection based on availability algorithms
- Choose Duration: All-day toggle or custom time range using integrated time management system
- Apply Block: Validation for date and time selections
Advanced Editor Features
State Management and Persistence
The booking editor implements sophisticated state management to ensure smooth user experience:
Form Persistence maintains your selections when switching between tabs or temporarily closing the modal. The system tracks editing states through is_editing flags and preserves form data across interactions.
Asset Reservation automatically reserves selected assets during the booking process, preventing conflicts with concurrent users. The system handles asset release on errors or cancellation through cleanup mechanisms.
Validation and Error Prevention
Real-time Validation provides immediate feedback, which evaluates tab-specific requirements and form completeness.
Date and Time Validation includes timezone-aware date checking to prevent past date bookings, and time range validation to ensure logical start/end time relationships.
Race Condition Prevention protects against concurrent booking attempts and ensures data consistency during high-traffic periods.
Tips and Best Practices
Quick Reference
Tab Selection Logic
| Entry Context | Default Tab | Tab Availability | Key Features |
|---|---|---|---|
| Regular Selection | Product | All tabs available | Full booking options form integration |
| With Selections/Opportunity | Event | Product tab disabled | Simplified group management |
| Asset Blocking | Block | Block tab focused | Mandatory reason specification |
Validation Requirements
| Tab Type | Required Fields | Key Validations | Special Features |
|---|---|---|---|
| Product | Product selection, time slots | Date/time validation, availability checking | Product Booking integration |
| Event | Event product, asset count | Date/time validation, asset availability | Automatic asset assignment |
| Block | Reason (255 chars), asset count | Date/time validation, conflict checking | Asset reservation system |
Integration Points
| System | Purpose | Key Features |
|---|---|---|
| EPOS | Transaction processing | Cart booking, permission validation |
| Timepicker | Date/time selection | Lightning Message Service communication |
| Asset Management | Resource allocation | Automatic assignment, conflict prevention |
| Validation System | Error prevention | Real-time feedback, race condition protection |
Technical Features
| Feature | Implementation | Benefits |
|---|---|---|
| State Persistence | Form data preservation across interactions | Seamless user experience |
| Modal Positioning | Dynamic viewport-aware placement | Prevents overflow issues |
| Asset Reservation | Temporary asset locking during editing | Prevents booking conflicts |
| Race Condition Prevention | Concurrent operation protection | Data consistency assurance |