/** * 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);