/**
 * HVAC Community Events Main JavaScript
 * 
 * Global JavaScript functionality for the HVAC Community Events plugin
 */

(function($) {
    'use strict';

    // Wait for DOM ready
    $(document).ready(function() {
        
        // Initialize any global functionality here
        console.log('HVAC Community Events plugin loaded');
        
        // Add active class to current menu item
        var currentPath = window.location.pathname;
        $('.hvac-dashboard-nav a, .hvac-toolbar a').each(function() {
            var linkPath = $(this).attr('href');
            if (linkPath && currentPath.indexOf(linkPath.replace(window.location.origin, '')) !== -1) {
                $(this).addClass('active');
            }
        });
        
        // Handle any AJAX forms globally
        $(document).on('submit', '.hvac-ajax-form', function(e) {
            e.preventDefault();
            var $form = $(this);
            var $submitBtn = $form.find('button[type="submit"], input[type="submit"]');
            var originalText = $submitBtn.text();
            
            // Disable submit button
            $submitBtn.prop('disabled', true).text('Processing...');
            
            // Submit via AJAX
            $.ajax({
                url: hvac_ajax.ajax_url,
                type: 'POST',
                data: $form.serialize() + '&nonce=' + hvac_ajax.nonce,
                success: function(response) {
                    if (response.success) {
                        // Handle success
                        if (response.data.redirect) {
                            window.location.href = response.data.redirect;
                        } else if (response.data.message) {
                            alert(response.data.message);
                        }
                    } else {
                        // Handle error
                        alert(response.data || 'An error occurred. Please try again.');
                    }
                },
                error: function() {
                    alert('An error occurred. Please try again.');
                },
                complete: function() {
                    // Re-enable submit button
                    $submitBtn.prop('disabled', false).text(originalText);
                }
            });
        });
        
    });

})(jQuery);