Fix double-click cart/wishlist issue: prevent duplicate initialization

This commit is contained in:
Local Server
2026-01-14 21:10:06 -06:00
parent 5cb5b1208f
commit 7200bd7012
2 changed files with 8 additions and 0 deletions

View File

@@ -388,6 +388,11 @@
// Initialize when DOM is ready // Initialize when DOM is ready
const initializeComponents = () => { const initializeComponents = () => {
// Skip if shop-system.js already initialized
if (window.ShopSystem?.isInitialized) {
console.log("[cart.js] Skipping initialization - shop-system.js already loaded");
return;
}
console.log("[cart.js] Initializing ShoppingCart and Wishlist components"); console.log("[cart.js] Initializing ShoppingCart and Wishlist components");
new ShoppingCart(); new ShoppingCart();
new Wishlist(); new Wishlist();

View File

@@ -700,6 +700,9 @@
console.log("[ShopSystem] AppState compatibility layer installed"); console.log("[ShopSystem] AppState compatibility layer installed");
// Mark as initialized to prevent cart.js duplicate initialization
window.ShopSystem.isInitialized = true;
// Setup dropdowns when DOM is ready // Setup dropdowns when DOM is ready
if (document.readyState === "loading") { if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", () => { document.addEventListener("DOMContentLoaded", () => {