upskill-event-manager/docs/TRAINER-USER-GUIDE.md
Ben c3e7fe9140 feat: comprehensive HVAC plugin development framework and modernization
## Major Enhancements

### 🏗️ Architecture & Infrastructure
- Implement comprehensive Docker testing infrastructure with hermetic environment
- Add Forgejo Actions CI/CD pipeline for automated deployments
- Create Page Object Model (POM) testing architecture reducing test duplication by 90%
- Establish security-first development patterns with input validation and output escaping

### 🧪 Testing Framework Modernization
- Migrate 146+ tests from 80 duplicate files to centralized architecture
- Add comprehensive E2E test suites for all user roles and workflows
- Implement WordPress error detection with automatic site health monitoring
- Create robust browser lifecycle management with proper cleanup

### 📚 Documentation & Guides
- Add comprehensive development best practices guide
- Create detailed administrator setup documentation
- Establish user guides for trainers and master trainers
- Document security incident reports and migration guides

### 🔧 Core Plugin Features
- Enhance trainer profile management with certification system
- Improve find trainer functionality with advanced filtering
- Strengthen master trainer area with content management
- Add comprehensive venue and organizer management

### 🛡️ Security & Reliability
- Implement security-first patterns throughout codebase
- Add comprehensive input validation and output escaping
- Create secure credential management system
- Establish proper WordPress role-based access control

### 🎯 WordPress Integration
- Strengthen singleton pattern implementation across all classes
- Enhance template hierarchy with proper WordPress integration
- Improve page manager with hierarchical URL structure
- Add comprehensive shortcode and menu system

### 🔍 Developer Experience
- Add extensive debugging and troubleshooting tools
- Create comprehensive test data seeding scripts
- Implement proper error handling and logging
- Establish consistent code patterns and standards

### 📊 Performance & Optimization
- Optimize database queries and caching strategies
- Improve asset loading and script management
- Enhance template rendering performance
- Streamline user experience across all interfaces

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 11:26:10 -03:00

656 lines
No EOL
14 KiB
Markdown

# HVAC Trainer User Guide
**Version**: 2.0.0
**Last Updated**: August 28, 2025
**Audience**: HVAC Trainers
**Platform**: HVAC Community Events
## Welcome to HVAC Community Events!
This comprehensive guide will help you make the most of the HVAC Community Events platform. Whether you're creating your first event or managing an established training program, this guide covers everything you need to know.
## Table of Contents
1. [Getting Started](#getting-started)
2. [Dashboard Overview](#dashboard-overview)
3. [Managing Your Profile](#managing-your-profile)
4. [Creating and Managing Events](#creating-and-managing-events)
5. [Venue Management](#venue-management)
6. [Organizer Management](#organizer-management)
7. [Training Leads](#training-leads)
8. [Certificate Generation](#certificate-generation)
9. [Reports and Analytics](#reports-and-analytics)
10. [Best Practices](#best-practices)
11. [Troubleshooting](#troubleshooting)
12. [Getting Help](#getting-help)
## Getting Started
### First Time Login
1. **Navigate to Login Page**: Visit `/community-login/`
2. **Enter Credentials**: Use the username and password provided during registration
3. **Access Dashboard**: You'll be redirected to `/trainer/dashboard/`
### Initial Setup Checklist
- [ ] Complete your trainer profile
- [ ] Upload profile photo
- [ ] Add at least one venue
- [ ] Create your organization profile
- [ ] Set up your first event
- [ ] Test certificate generation
- [ ] Share your public profile
### Understanding Your Role
As an HVAC Trainer, you have access to:
- **Event Management**: Create and manage training events
- **Venue Directory**: Manage training locations
- **Organization Profiles**: Represent your company
- **Lead Management**: Track potential clients
- **Certificate System**: Generate completion certificates
- **Analytics**: Monitor your training metrics
## Dashboard Overview
Your dashboard at `/trainer/dashboard/` is your command center:
### Navigation Menu
```
🏠 Dashboard
📅 Events
👥 Attendees
📍 Venues
🏢 Organizations
📊 Reports
👤 Profile
💼 Training Leads
```
### Dashboard Widgets
#### Quick Stats
- **Total Events**: Lifetime event count
- **Upcoming Events**: Next 30 days
- **Total Attendees**: All-time participants
- **This Month**: Current month metrics
#### Recent Activity
- Latest event registrations
- Recent profile views
- New training leads
- Upcoming events
#### Quick Actions
- [Create New Event]
- [Add Venue]
- [View Reports]
- [Share Profile]
## Managing Your Profile
### Profile Information
Navigate to `/trainer/profile/` to manage:
#### Basic Information
- **Display Name**: How you appear publicly
- **Bio**: Professional background (500 words)
- **Credentials**: Certifications and qualifications
- **Experience**: Years in HVAC training
- **Specialties**: Areas of expertise
#### Contact Information
- **Email**: Public contact email
- **Phone**: Business phone number
- **Website**: Personal/company website
- **Social Media**: LinkedIn, Twitter, Facebook
#### Profile Photo
- **Requirements**: JPG/PNG, max 2MB
- **Recommended**: 400x400px square
- **Tips**: Professional headshot works best
### Public Profile Sharing
Your public profile is available at `/trainer/profile/[username]/`
#### Sharing Options
1. **Direct Link**: Copy and share URL
2. **QR Code**: Download for print materials
3. **Social Media**: Share buttons for major platforms
4. **Email Signature**: HTML snippet provided
#### Profile Features
- Professional bio and photo
- Upcoming events calendar
- Contact form for leads
- Credentials display
- Social media links
## Creating and Managing Events
### Creating Your First Event
Navigate to `/trainer/events/create-event/`
#### Step 1: Basic Information
```
Event Title: [EPA 608 Certification Prep Course]
Event Type: [Training ▼]
Category: [Certification ▼]
Description: [Comprehensive training...]
```
#### Step 2: Date and Time
```
Start Date: [08/30/2025]
Start Time: [09:00 AM]
End Date: [08/31/2025]
End Time: [05:00 PM]
All Day Event: [ ]
```
#### Step 3: Location
```
Venue: [Select Existing ▼] or [Create New]
Online Event: [ ]
Hybrid Event: [ ]
```
#### Step 4: Registration
```
Enable Registration: [✓]
Max Attendees: [25]
Registration Deadline: [08/28/2025]
Price: [$299]
Early Bird Price: [$249]
Early Bird Deadline: [08/15/2025]
```
#### Step 5: Additional Details
```
Organizer: [Select Organization ▼]
Contact Email: [trainer@example.com]
Contact Phone: [555-0123]
Event Website: [optional]
```
### Managing Existing Events
Navigate to `/trainer/events/` to view all events:
#### Event List Features
- **Filters**: Upcoming, Past, Draft
- **Search**: Find by title or date
- **Bulk Actions**: Delete, Duplicate
- **Quick Edit**: Inline editing
#### Event Actions
- **Edit**: Modify any event details
- **Clone**: Duplicate for similar events
- **Cancel**: Mark as cancelled (preserves data)
- **Delete**: Permanently remove (careful!)
### Event Best Practices
#### Compelling Titles
- ✅ "EPA 608 Universal Certification - 2 Day Intensive"
- ❌ "Training Session"
#### Detailed Descriptions
Include:
- Learning objectives
- Prerequisites
- What to bring
- Lunch arrangements
- Certification details
#### Optimal Scheduling
- Avoid major holidays
- Consider local events
- Morning starts preferred
- Allow registration buffer
## Venue Management
### Understanding Venues
Venues are reusable training locations that can be selected during event creation.
### Adding a New Venue
Navigate to `/trainer/venue/manage/`
#### Required Information
```
Venue Name: [HVAC Training Center]
Street Address: [123 Main Street]
City: [New York]
State/Province: [NY]
Zip/Postal Code: [10001]
Country: [United States ▼]
```
#### Optional Information
```
Description: [Modern facility with...]
Phone: [555-0123]
Website: [https://venue.com]
```
### Managing Your Venues
Navigate to `/trainer/venue/list/` to see all venues:
#### Venue List Features
- **Search**: Find by name or location
- **Filter**: By state or city
- **Pagination**: 20 venues per page
- **Ownership**: "Your Venue" badges
#### Venue Actions
- **Edit**: Update venue details
- **Delete**: Remove unused venues
- **View Events**: See events at venue
### Venue Tips
#### Accurate Addresses
- Ensures proper map display
- Helps attendee navigation
- Improves search results
#### Complete Information
- Include parking details
- Note accessibility features
- Mention nearby landmarks
## Organizer Management
### Understanding Organizers
Organizers represent the companies or organizations hosting events.
### Creating an Organization
Navigate to `/trainer/organizer/manage/`
#### Organization Logo
```
[Upload Logo] - JPG/PNG/GIF/WebP, max 5MB
Recommended: 300x300px
```
#### Organization Details
```
Organization Name: [ACME HVAC Training]
Description: [Leading provider of...]
```
#### Headquarters Location
```
City: [New York]
State/Province: [NY]
Country: [United States ▼]
```
#### Contact Information
```
Phone: [555-0123]
Email: [contact@acme.com]
Website: [https://acme.com]
```
### Managing Organizations
Navigate to `/trainer/organizer/list/`
#### Organization Features
- **Logo Display**: Visual branding
- **Contact Info**: Quick reference
- **Headquarters**: Location display
- **Website Link**: Direct access
#### Best Practices
- Professional logo enhances credibility
- Complete profiles attract more attendees
- Consistent branding across events
## Training Leads
### Understanding Leads
Training leads are inquiries from potential clients who found you through the directory.
### Managing Leads
Navigate to `/trainer/profile/training-leads/`
#### Lead Information
- **Date**: When submitted
- **Contact**: Name, email, phone
- **Location**: City and state
- **Message**: Their inquiry
- **Status**: New/Read/Replied/Archived
#### Lead Actions
##### Mark as Read
Changes status from "New" to "Read"
```javascript
[Mark Read] Status: Read
```
##### Mark as Replied
Indicates you've contacted the lead
```javascript
[Mark Replied] Status: Replied
```
##### Archive
Closes the lead (completed/not relevant)
```javascript
[Archive] Status: Archived
```
### Lead Response Best Practices
#### Quick Response
- Respond within 24 hours
- Use provided contact method
- Reference their specific needs
#### Professional Communication
```
Subject: Re: HVAC Training Inquiry
Dear [Name],
Thank you for your interest in our HVAC training programs.
I'd be happy to discuss your team's certification needs...
Best regards,
[Your Name]
[Credentials]
```
### Generating More Leads
#### Profile Optimization
- Complete all profile fields
- Professional photo
- Detailed bio
- Clear credentials
#### Profile Sharing
- Share link on social media
- Include in email signature
- Add to business cards
- Post in forums
## Certificate Generation
### Understanding Certificates
Certificates provide official documentation of training completion.
### Generating Certificates
Navigate to `/trainer/reports/` and select an event:
#### Single Certificate
1. Select event from list
2. Click attendee name
3. Click [Generate Certificate]
4. PDF downloads automatically
#### Bulk Certificates
1. Select event from list
2. Click [Select All] or choose specific attendees
3. Click [Generate Certificates]
4. ZIP file downloads with all PDFs
### Certificate Information
Certificates include:
- Attendee name
- Course title
- Completion date
- Trainer name and credentials
- Organization logo
- Certificate number
- QR code for verification
### Certificate Best Practices
#### Timely Distribution
- Generate immediately after event
- Email to attendees within 48 hours
- Keep copies for records
#### Professional Appearance
- Ensure organization logo uploaded
- Verify all information accurate
- Use high-quality PDF settings
## Reports and Analytics
### Available Reports
Navigate to `/trainer/reports/`
#### Event Summary
- Total events conducted
- Attendee counts
- Revenue generated
- Completion rates
#### Attendee Report
- Demographics
- Geographic distribution
- Repeat attendees
- Contact information
#### Financial Report
- Revenue by event
- Payment status
- Refunds processed
- Monthly/yearly totals
### Exporting Data
#### CSV Export
1. Select report type
2. Choose date range
3. Click [Export to CSV]
4. Open in Excel/Google Sheets
#### PDF Reports
1. Select report type
2. Click [Generate PDF]
3. Professional formatted report
### Using Analytics
#### Identify Trends
- Popular course topics
- Optimal scheduling
- Pricing sweet spots
- Geographic demand
#### Improve Performance
- Low attendance analysis
- Feedback incorporation
- Content optimization
- Marketing effectiveness
## Best Practices
### Event Success Tips
#### Pre-Event
- **2 Weeks Before**: Send reminder emails
- **1 Week Before**: Confirm venue details
- **3 Days Before**: Final headcount
- **1 Day Before**: Prep materials
#### During Event
- **Arrive Early**: 1 hour minimum
- **Take Attendance**: Use mobile app
- **Engage Attendees**: Interactive training
- **Document**: Photos for marketing
#### Post-Event
- **Same Day**: Mark attendance
- **24 Hours**: Send thank you email
- **48 Hours**: Distribute certificates
- **1 Week**: Request feedback
### Profile Optimization
#### SEO-Friendly
- Use relevant keywords
- Complete all fields
- Regular updates
- Link building
#### Professional Image
- High-quality photo
- Detailed credentials
- Client testimonials
- Success stories
### Lead Conversion
#### Response Template
```
1. Acknowledge inquiry
2. Address specific needs
3. Propose solutions
4. Include credentials
5. Clear call-to-action
6. Professional signature
```
#### Follow-Up Schedule
- Day 1: Initial response
- Day 3: Follow-up if no reply
- Day 7: Final follow-up
- Day 14: Archive if no response
## Troubleshooting
### Common Issues
#### Can't Create Event
**Solution**: Ensure all required fields completed
```
✓ Title
✓ Date/Time
✓ Venue (or online)
✓ Description
```
#### Venue Not Appearing
**Solution**: Check venue status
- Must be published
- Must be your venue
- Refresh page
#### Certificate Generation Fails
**Solution**: Verify requirements
- Event must be completed
- Attendee must be marked present
- Organization logo uploaded
#### Leads Not Showing
**Solution**: Check filters
- Remove date filters
- Check status filter
- Verify trainer ID
### Error Messages
| Error | Meaning | Action |
|-------|---------|--------|
| "Unauthorized" | Not logged in | Log in again |
| "Permission Denied" | Wrong role | Contact admin |
| "Venue in use" | Can't delete | Remove from events first |
| "Invalid date" | Past date selected | Choose future date |
## Getting Help
### Support Resources
#### Documentation
- User Guide (this document)
- [Video Tutorials](#)
- [FAQ Section](#)
- [Knowledge Base](#)
#### Contact Support
- **Email**: support@hvac-events.com
- **Phone**: 1-800-HVAC-HELP
- **Hours**: Mon-Fri 9am-5pm EST
#### Community Forum
- Ask questions
- Share tips
- Network with trainers
- Feature requests
### Feature Requests
Have an idea? Submit through:
1. Dashboard feedback widget
2. Community forum
3. Email to features@hvac-events.com
### Training Resources
#### Webinars
- Monthly platform training
- Best practices sessions
- Q&A with experts
#### Documentation Updates
- Release notes
- Feature announcements
- System maintenance
## Appendices
### Keyboard Shortcuts
| Shortcut | Action |
|----------|--------|
| `Ctrl+N` | New event |
| `Ctrl+S` | Save changes |
| `Ctrl+F` | Search |
| `Esc` | Close modal |
### Status Indicators
| Icon | Meaning |
|------|---------|
| 🟢 | Active/Published |
| 🟡 | Pending/Draft |
| 🔴 | Cancelled/Archived |
| ⭐ | Featured |
### Glossary
| Term | Definition |
|------|------------|
| **Lead** | Potential client inquiry |
| **Venue** | Training location |
| **Organizer** | Hosting organization |
| **TEC** | The Events Calendar plugin |
---
**Thank you for being part of the HVAC Community Events platform!**
*Last updated: August 28, 2025 | Version 2.0.0*