HVAC Community Events WordPress Plugin with Comprehensive Testing Framework
Find a file
bengizmo 4117f730c5 feat: Implement comprehensive Safari browser compatibility system
Resolves critical Safari hanging issues through multi-layered protection:

Core Safari Resource Loading Bypass:
- Added Safari-specific minimal asset loading in HVAC_Scripts_Styles
- Prevents 35+ CSS file cascade that overwhelmed Safari rendering
- Implements intelligent browser detection with fallback systems
- Loads only essential CSS/JS files for Safari browsers
- Dequeues non-critical assets to prevent resource overload

Browser Detection Infrastructure:
- Created HVAC_Browser_Detection class with accurate Safari identification
- Added User-Agent parsing with version detection
- Implements fallback detection methods for edge cases
- Provides centralized browser compatibility services

Find Trainer Assets Management:
- Added HVAC_Find_Trainer_Assets class for proper WordPress hook timing
- Ensures Safari-compatible script loading order
- Prevents asset loading conflicts with theme integration

Safari Debugging System:
- Implemented HVAC_Safari_Request_Debugger for server-side monitoring
- Added comprehensive Safari debugging with error tracking
- Created detailed investigation documentation
- Provides real-time Safari compatibility insights

Performance Optimizations:
- Optimized database queries in find-trainer template to prevent hanging
- Implemented lazy component loading in HVAC_Plugin initialization
- Reduced Astra theme override hook priorities from 999 to 50
- Removed CSS @import statements causing Safari render blocking

MapGeo Integration Fixes:
- Fixed JavaScript syntax error (dangling }) in MapGeo integration
- Removed problematic console.log override causing Safari conflicts
- Maintained full MapGeo functionality while preventing browser hangs

Testing Results:
- Verified with Playwright WebKit engine (Safari emulation)
- Page loads successfully with complete functionality
- Interactive map, trainer cards, and navigation all functional
- Reduced CSS files from 35+ to 3 core files for optimal performance
- No hanging or blank page issues detected

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-08 21:13:43 -03:00
assets feat: Add Organization Headquarters dropdown fields to registration form 2025-08-08 10:35:14 -03:00
docs feat: Implement comprehensive Safari browser compatibility system 2025-08-08 21:13:43 -03:00
includes feat: Implement comprehensive Safari browser compatibility system 2025-08-08 21:13:43 -03:00
scripts feat: Add comprehensive performance monitoring and optimization systems 2025-08-06 17:18:50 -03:00
templates feat: Implement comprehensive Safari browser compatibility system 2025-08-08 21:13:43 -03:00
tests feat: Implement trainer approval workflow with status management 2025-07-28 12:38:34 -03:00
wordpress-dev/tests/e2e feat: Implement comprehensive user role field and certification tracking system 2025-08-01 10:52:11 -03:00
.gitattributes Remove LFS tracking for all files 2025-05-18 19:44:31 -03:00
.gitignore fix: Remove remaining debug log statements from production 2025-07-24 15:25:42 -03:00
.roomodes feat(testing): Implement comprehensive trainer journey test suite with Page Object Model 2025-05-18 15:42:00 -03:00
admin-import-trainers.php fix: Ensure import script sets correct hvac_trainer role for all users 2025-06-18 12:26:06 -03:00
CLAUDE.md docs: Document successful registration form production deployment and verification 2025-08-08 11:34:20 -03:00
hvac-community-events.php chore: Bump plugin version to 1.0.8 2025-08-06 17:19:23 -03:00
README.md Fix legacy URL redirects being intercepted by access control 2025-07-28 19:45:43 -03:00

Network Events

Status: Active/Authoritative - Production Ready Last Updated: July 23, 2025 Test Coverage: 85-90% achieved User Base: 15 active HVAC trainers, 3 master trainers Scope: Main project documentation

A specialized community events platform for trainers using The Events Calendar suite.

Description

Network Events is a WordPress plugin that extends The Events Calendar suite to create a specialized platform for trainers. It provides a custom user role for trainers, registration and login forms, a trainer dashboard, and event management capabilities.

Features

  • Custom user role for HVAC trainers ( 15 active trainers)
  • Master trainer role with aggregate dashboard ( 3 master trainers)
  • Trainer registration and login ( Verified functional)
  • Trainer dashboard ( Verified functional)
  • Event creation and management ( Verified functional)
  • Event summary and reporting ( Verified functional)
  • Attendee management ( Verified functional)
  • Certificate generation and download ( Verified functional)
  • Email communication with attendees ( Verified functional)
  • Integration with The Events Calendar suite ( Verified functional)
  • Master dashboard with trainer analytics ( Verified functional)

Architecture

The plugin follows a modular architecture with single-responsibility classes:

Core Components

  • HVAC_Plugin: Main plugin controller
  • HVAC_Shortcodes: Centralized shortcode management
  • HVAC_Scripts_Styles: Asset management
  • HVAC_Route_Manager: URL routing and redirects
  • HVAC_Template_Loader: Template handling
  • HVAC_Page_Manager: WordPress page creation

See docs/ARCHITECTURE.md for detailed architecture documentation.

Requirements

WordPress Environment

  • WordPress 5.9 or higher
  • PHP 7.4 or higher

Required Plugins (Pre-installed on Production)

All required plugins are automatically synced from production during development environment setup:

  1. The Events Calendar Suite:

    • The Events Calendar (6.10.2+)
    • Events Calendar Pro (7.4.2+)
    • Event Tickets (5.19.3+)
    • Event Tickets Plus (6.2.0+)
    • Community Events (4.10.0+)
  2. Additional Plugins (present on the Upskill HVAC Website):

    • Spectra Pro (2.0.0+)
    • Premium Starter Templates (4.4.14+)
    • Essential Blocks (5.3.2+)

License

Copyright (c) 2025 Teal Maker Consulting

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2, as published by the Free Software Foundation. You may NOT assume that you can use any other version of the GPL.

Credits

Developed by Teal Maker Consulting