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
		
			
				
	
	
		
			55 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
 | |
| window.addEventListener('DOMContentLoaded', (event) => {
 | |
|     CartCrossSellsSummaryHeight();
 | |
| });
 | |
| 
 | |
| function CartCrossSellsSummaryHeight() {
 | |
|     const checkIfCart               = document.querySelector( 'body' );
 | |
|     const crossSellsProductsWrapper = document.querySelector( '.cross-sells' );
 | |
| 
 | |
|     if( checkIfCart.classList.contains( 'woocommerce-cart' ) && crossSellsProductsWrapper ) {
 | |
|         const crossSellsProducts = crossSellsProductsWrapper.querySelectorAll( '.products > li' );
 | |
| 
 | |
|         if( crossSellsProducts ) {
 | |
|             crossSellsProducts.forEach( singleProduct => {
 | |
|                 if( singleProduct ) {
 | |
|                     const singleProductSummary              = singleProduct.querySelectorAll( '.astra-shop-summary-wrap' );
 | |
|                     if( singleProductSummary ) {
 | |
|                         singleProductSummary.forEach( singleSummary => {
 | |
|                             const singleProductSummaryButton    = singleSummary.querySelector( '.price' );
 | |
|                             const singleProductSummaryPrice     = singleSummary.querySelector( 'a.button' );
 | |
|                             const quickView                     = singleSummary.querySelector( 'a.ast-quick-view-button' );
 | |
|                             if( singleProductSummaryButton || singleProductSummaryPrice ) {
 | |
| 
 | |
|                                 const buttonHeight          = singleProductSummaryButton ? singleProductSummaryButton.clientHeight : 0;
 | |
|                                 const priceHeight           = singleProductSummaryPrice ? singleProductSummaryPrice.clientHeight : 0 ;                                
 | |
|                                 const quickViewButtonHeight = quickView ? quickView.clientHeight : 0;
 | |
|                                 const currentHeight = buttonHeight + priceHeight + quickViewButtonHeight + 15;
 | |
|     
 | |
|                                 if( currentHeight ) {
 | |
|                                     singleSummary.style.minHeight = currentHeight + 'px';
 | |
|                                 }
 | |
|                             }
 | |
|                         });
 | |
|                     }
 | |
|                     
 | |
|                 }
 | |
|             });
 | |
|         }
 | |
| 
 | |
|     }
 | |
| }
 | |
| 
 | |
| CartCrossSellsSummaryHeightResize();
 | |
| 
 | |
| function CartCrossSellsSummaryHeightResize() {
 | |
|     let resizeEnd;
 | |
| 
 | |
|     window.addEventListener( 'resize' , function( event ){
 | |
|         clearTimeout( resizeEnd );
 | |
|         resizeEnd = setTimeout( function() {
 | |
|             CartCrossSellsSummaryHeight();
 | |
|         }, 500 );
 | |
|     });
 | |
| }
 | |
| 
 |