- Add event-summary page to required_pages array in main plugin file - Update render_event_summary() method to handle event ID from URL - Update template_include filter to load custom event summary template - Update dashboard event links to point to new event summary page - Create comprehensive event summary template with statistics and attendee info - Add E2E tests for Event Summary Page - Add documentation for Event Summary functionality 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
3.4 KiB
Event Summary Functionality
Overview
The Event Summary page provides trainers with detailed information about their events, including ticket sales, attendee data, and revenue tracking. This page is designed to be a central hub for monitoring event performance and managing attendees.
Access & Navigation
- Access Path: The Event Summary page can be accessed from the Trainer Dashboard by clicking the "Summary" link next to any event in the events table.
- URL Structure:
/event-summary/?event_id={id}where{id}is the event post ID. - Authentication: Only logged-in users with appropriate permissions (event creators or administrators) can access this page.
Page Components
1. Header & Navigation
The header section contains:
- The event title with "Summary" suffix
- Navigation links to:
- Dashboard
- Edit Event (if user has permission)
- View Public Page (opens in new tab)
- Email Attendees (Phase 2 feature, currently a placeholder)
2. Event Overview
This section provides basic event information including:
- Date & Time (start and end)
- Event Status (Published, Draft, etc.)
- Cost
- Venue information (if available)
- Organizer details (if available)
3. Event Statistics
A visual representation of key metrics:
- Total Tickets Sold
- Total Revenue
- Ticket Type Distribution (with count and revenue for each type)
Statistics are displayed in card format for easy scanning, with the same visual style as the dashboard stats.
4. Ticket Sales & Attendees
A comprehensive table showing all attendee information:
- Attendee name
- Email address
- Ticket type
- Price paid
- Order ID
- Check-in status
This table provides a complete overview of all registrations and can be used for attendee management.
5. Event Description
The full event description is displayed for reference.
Technical Implementation
Files & Classes
- Template:
templates/template-event-summary.php - Data Handler:
includes/community/class-event-summary-data.php - Shortcode:
[hvac_event_summary](registered in main plugin class) - Styling: Inline CSS in the template (consistent with dashboard styling)
Data Flow
-
The
render_event_summary()method in the main plugin class:- Retrieves the event ID from the URL parameter
- Verifies user permissions
- Includes the event summary template
-
The template:
- Initializes the
HVAC_Event_Summary_Dataclass with the event ID - Retrieves event details, venue info, organizer info, and transaction data
- Calculates statistics from the transaction data
- Renders the UI with the retrieved data
- Initializes the
-
The
HVAC_Event_Summary_Dataclass:- Provides methods to retrieve all necessary event data
- Integrates with The Events Calendar API for event details
- Integrates with Event Tickets for transaction data
Testing
The Event Summary page is verified by E2E tests in tests/e2e/event-summary.spec.ts. The tests cover:
- Page accessibility from the dashboard
- Display of event overview information
- Display of event statistics
- Display of ticket sales and attendees data
- Display of event description
- Proper navigation links
- Authentication requirements
Future Enhancements (Planned)
- Phase 2: Integration with the Email Attendees feature
- Phase 2: CSV export of attendee data
- Phase 3: Enhanced visualization of event statistics
- Phase 3: Integration with certificate generation