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
40 lines
1.6 KiB
JavaScript
40 lines
1.6 KiB
JavaScript
// Horizontal gallery slider.
|
|
const horizontalProductGallerySlider = jQuery('.ast-single-product-thumbnails').flexslider({
|
|
animation: "slide",
|
|
controlNav: false,
|
|
animationLoop: false,
|
|
slideshow: false,
|
|
itemWidth: 80,
|
|
itemMargin: 15,
|
|
maxItems: 4,
|
|
asNavFor: '.woocommerce-product-gallery',
|
|
selector: '.woocommerce-product-gallery-thumbnails__wrapper > div',
|
|
});
|
|
|
|
window.addEventListener("resize", function() {
|
|
horizontalProductGallerySlider.resize();
|
|
});
|
|
|
|
const articleSingle = document.querySelector('.ast-article-single');
|
|
|
|
if (articleSingle && articleSingle.classList.contains('ast-product-single-variable')) {
|
|
const img = document.querySelector(".woocommerce-product-gallery .woocommerce-product-gallery__image");
|
|
const thumbnail_images = document.querySelectorAll('.woocommerce-product-gallery .ast-woocommerce-product-gallery__image img');
|
|
|
|
if (img && thumbnail_images) {
|
|
observer = new MutationObserver((changes) => {
|
|
changes.forEach(change => {
|
|
if (change.attributeName.includes('data-thumb')) {
|
|
if (thumbnail_images !== null) {
|
|
thumbnail_images.forEach(element => {
|
|
if (element.getAttribute('srcset') !== null && element.getAttribute('srcset').includes(img.getAttribute('data-thumb'))) {
|
|
element.click();
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
});
|
|
observer.observe(img, { attributes: true });
|
|
}
|
|
}
|