TEC Community Events Debug Report\n"; echo "\n"; // Check 1: TEC Plugin Status echo "

1. The Events Calendar Plugin Status

\n"; $tec_active = is_plugin_active('the-events-calendar/the-events-calendar.php'); $tec_ce_active = is_plugin_active('the-events-calendar-community-events/tribe-community-events.php'); echo "

The Events Calendar: " . ($tec_active ? '✓ Active' : '✗ Not Active') . "

\n"; echo "

TEC Community Events: " . ($tec_ce_active ? '✓ Active' : '✗ Not Active') . "

\n"; // Check if TEC classes/functions exist $tec_functions = [ 'tribe_community_events_init' => function_exists('tribe_community_events_init'), 'tribe_is_community_edit_event_page' => function_exists('tribe_is_community_edit_event_page'), 'tribe_community_events_list' => function_exists('tribe_community_events_list'), ]; echo "

TEC Functions Available:

\n"; foreach ($tec_functions as $func => $exists) { echo "

$func(): " . ($exists ? '✓ Available' : '✗ Not Available') . "

\n"; } // Check 2: Shortcode Registration echo "

2. Shortcode Registration Status

\n"; global $shortcode_tags; $hvac_shortcodes = [ 'hvac_create_event', 'hvac_edit_event', 'tribe_community_events' ]; foreach ($hvac_shortcodes as $shortcode) { $registered = shortcode_exists($shortcode); echo "

[$shortcode]: " . ($registered ? '✓ Registered' : '✗ Not Registered') . "

\n"; if ($registered) { $callback = $shortcode_tags[$shortcode]; if (is_array($callback)) { echo "

Callback: " . get_class($callback[0]) . "::" . $callback[1] . "()

\n"; } else { echo "

Callback: $callback

\n"; } } } // Check 3: HVAC Plugin Classes echo "

3. HVAC Plugin Classes

\n"; $hvac_classes = [ 'HVAC_Shortcodes', 'HVAC_Edit_Event_Shortcode', 'HVAC_Community_Events', 'HVAC_Menu_System', 'HVAC_Breadcrumbs' ]; foreach ($hvac_classes as $class) { $exists = class_exists($class); echo "

$class: " . ($exists ? '✓ Available' : '✗ Not Available') . "

\n"; } // Check 4: Current User Capabilities echo "

4. Current User Status

\n"; if (is_user_logged_in()) { $user = wp_get_current_user(); echo "

Logged in as: {$user->user_login} (ID: {$user->ID})

\n"; echo "

Roles: " . implode(', ', $user->roles) . "

\n"; $capabilities = [ 'hvac_trainer', 'hvac_master_trainer', 'edit_tribe_events', 'manage_options' ]; echo "

Capabilities:

\n"; foreach ($capabilities as $cap) { $has_cap = current_user_can($cap); echo "

$cap: " . ($has_cap ? '✓ Has Permission' : '✗ No Permission') . "

\n"; } } else { echo "

⚠ Not logged in

\n"; } // Check 5: Test Direct Shortcode Execution echo "

5. Direct Shortcode Testing

\n"; if (shortcode_exists('tribe_community_events')) { echo "

Testing [tribe_community_events] directly:

\n"; // Test basic shortcode ob_start(); $basic_output = do_shortcode('[tribe_community_events]'); $basic_errors = ob_get_clean(); echo "

Basic shortcode output:

\n"; if (!empty($basic_errors)) { echo "
PHP Errors/Warnings:
" . esc_html($basic_errors) . "
\n"; } echo "
" . substr(esc_html($basic_output), 0, 1000) . (strlen($basic_output) > 1000 ? '...' : '') . "
\n"; // Test with submission_form view echo "

Testing with view='submission_form':

\n"; ob_start(); $form_output = do_shortcode('[tribe_community_events view="submission_form"]'); $form_errors = ob_get_clean(); if (!empty($form_errors)) { echo "
PHP Errors/Warnings:
" . esc_html($form_errors) . "
\n"; } echo "
" . substr(esc_html($form_output), 0, 1000) . (strlen($form_output) > 1000 ? '...' : '') . "
\n"; } else { echo "

✗ [tribe_community_events] shortcode not available for testing

\n"; } // Check 6: Test HVAC Shortcodes echo "

6. Testing HVAC Shortcodes

\n"; if (shortcode_exists('hvac_create_event')) { echo "

Testing [hvac_create_event]:

\n"; ob_start(); $hvac_create_output = do_shortcode('[hvac_create_event]'); $hvac_create_errors = ob_get_clean(); if (!empty($hvac_create_errors)) { echo "
PHP Errors/Warnings:
" . esc_html($hvac_create_errors) . "
\n"; } echo "
" . substr(esc_html($hvac_create_output), 0, 1000) . (strlen($hvac_create_output) > 1000 ? '...' : '') . "
\n"; } else { echo "

✗ [hvac_create_event] shortcode not registered

\n"; } if (shortcode_exists('hvac_edit_event')) { echo "

Testing [hvac_edit_event]:

\n"; ob_start(); $hvac_edit_output = do_shortcode('[hvac_edit_event]'); $hvac_edit_errors = ob_get_clean(); if (!empty($hvac_edit_errors)) { echo "
PHP Errors/Warnings:
" . esc_html($hvac_edit_errors) . "
\n"; } echo "
" . substr(esc_html($hvac_edit_output), 0, 1000) . (strlen($hvac_edit_output) > 1000 ? '...' : '') . "
\n"; } else { echo "

✗ [hvac_edit_event] shortcode not registered

\n"; } // Check 7: WordPress Error Log echo "

7. Recent WordPress Errors

\n"; $error_log_path = ini_get('error_log'); if (!$error_log_path) { $error_log_path = WP_CONTENT_DIR . '/debug.log'; } if (file_exists($error_log_path)) { $recent_errors = shell_exec("tail -20 " . escapeshellarg($error_log_path)); if ($recent_errors) { echo "

Last 20 lines from error log:

\n"; echo "
" . esc_html($recent_errors) . "
\n"; } else { echo "

✓ No recent errors in log

\n"; } } else { echo "

⚠ Error log not found at: $error_log_path

\n"; } // Check 8: Plugin Activation Order echo "

8. Plugin Load Order Analysis

\n"; $active_plugins = get_option('active_plugins'); $hvac_plugin_found = false; $tec_plugin_found = false; echo "

Active Plugins (in load order):

\n"; echo "
    \n"; foreach ($active_plugins as $plugin) { echo "
  1. $plugin"; if (strpos($plugin, 'hvac-community-events') !== false) { echo " (HVAC Plugin)"; $hvac_plugin_found = true; } elseif (strpos($plugin, 'the-events-calendar') !== false) { echo " (TEC Plugin)"; $tec_plugin_found = true; } echo "
  2. \n"; } echo "
\n"; if ($hvac_plugin_found && $tec_plugin_found) { echo "

✓ Both HVAC and TEC plugins are active

\n"; } else { echo "

✗ Missing required plugins

\n"; } echo "

Debugging Complete

\n"; echo "

If issues persist, check the WordPress admin > Plugins page to ensure both 'The Events Calendar' and 'The Events Calendar Community Events' are properly activated.

\n";