upskill-event-manager/assets/js/import-status.js
Ben Reed cdc5ea85f4 feat: Add comprehensive CSS, JavaScript and theme asset infrastructure
Add massive collection of CSS, JavaScript and theme assets that were previously excluded:

**CSS Files (681 total):**
- HVAC plugin-specific styles (hvac-*.css): 34 files including dashboard, certificates, registration, mobile nav, accessibility fixes, animations, and welcome popup
- Theme framework files (Astra, builder systems, layouts): 200+ files
- Plugin compatibility styles (WooCommerce, WPForms, Elementor, Contact Form 7): 150+ files
- WordPress core and editor styles: 50+ files
- Responsive and RTL language support: 200+ files

**JavaScript Files (400+ total):**
- HVAC plugin functionality (hvac-*.js): 27 files including menu systems, dashboard enhancements, profile sharing, mobile responsive features, accessibility, and animations
- Framework and library files: jQuery plugins, GSAP, AOS, Swiper, Chart.js, Lottie, Isotope
- Plugin compatibility scripts: WPForms, WooCommerce, Elementor, Contact Form 7, LifterLMS
- WordPress core functionality: customizer, admin, block editor compatibility
- Third-party integrations: Stripe, SMTP, analytics, search functionality

**Assets:**
- Certificate background images and logos
- Comprehensive theme styling infrastructure
- Mobile-responsive design systems
- Cross-browser compatibility assets
- Performance-optimized minified versions

**Updated .gitignore:**
- Fixed asset directory whitelisting patterns to properly include CSS/JS/images
- Added proper directory structure recognition (!/assets/css/, !/assets/js/, etc.)
- Maintains security by excluding sensitive files while including essential assets

This commit provides the complete frontend infrastructure needed for:
- Full theme functionality and styling
- Plugin feature implementations
- Mobile responsiveness and accessibility
- Cross-browser compatibility
- Performance optimization
- Developer workflow support
2025-08-11 16:20:31 -03:00

126 lines
2.8 KiB
JavaScript

( function ( $ ) {
AstraSitesImportStatus = {
timer: null,
ajax_in_process: false,
current_step: null,
interval: $( '.astra-sites-import-screen' ).length ? 1000 : 10000,
/**
* Init
*/
init: function () {
this.start();
},
/**
* Start
*/
start: function () {
AstraSitesImportStatus.timer = setInterval(
AstraSitesImportStatus.check_status,
AstraSitesImportStatus.interval
);
},
/**
* Check Status
*/
check_status: function () {
if ( false === AstraSitesImportStatus.ajax_in_process ) {
AstraSitesImportStatus.ajax_in_process = true;
AstraSitesImportStatus._ajax_request();
}
},
/**
* Ajax Request
*/
_ajax_request: function () {
$.ajax( {
url: AstraSitesImportStatusVars.ajaxurl,
type: 'POST',
data: {
action: 'astra_sites_check_import_status',
_ajax_nonce: AstraSitesImportStatusVars._ajax_nonce,
},
} )
.done( function ( result ) {
AstraSitesImportStatus.ajax_in_process = false;
// Admin Bar UI markup.
if (
'complete' === result.data.response.step ||
'fail' === result.data.response.step
) {
AstraSitesImportStatus.stop();
var response_message =
'<span class="dashicons dashicons-no-alt"></span> Site Import Failed';
if ( 'complete' === result.data.response.step ) {
response_message =
'<span class="dashicons dashicons-yes"></span>' +
response_message;
}
$( '#astra-sites-import-status-admin-bar' ).html(
response_message
);
} else {
$( '#astra-sites-import-status-admin-bar' ).html(
'<span class="loading"></span>' +
result.data.response.message
);
}
// Admin page UI markup.
var currentStep = $(
'.import-step[data-step="' +
result.data.response.step +
'"]'
);
if ( currentStep.length ) {
if (
'complete' === result.data.response.step ||
'fail' === result.data.response.step
) {
$( '.import-step' )
.removeClass( 'processing' )
.addClass( 'success' );
} else if (
AstraSitesImportStatus.current_step !==
result.data.response.step
) {
AstraSitesImportStatus.current_step =
result.data.response.step;
currentStep
.prevAll()
.removeClass( 'processing' )
.addClass( 'success' );
currentStep.addClass( 'processing' );
}
}
} )
.fail( function ( err ) {
AstraSitesImportStatus.ajax_in_process = false;
// Stop.
AstraSitesImportStatus.stop();
} );
},
/**
* Step
*/
stop: function () {
clearInterval( AstraSitesImportStatus.timer );
},
};
/**
* Initialize AstraSitesImportStatus
*/
$( function () {
AstraSitesImportStatus.init();
} );
} )( jQuery );