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 });
 | |
|     }
 | |
| }
 |