document.addEventListener("DOMContentLoaded", function () {
    document
        .querySelector(".navbar_hamburger")
        .addEventListener("click", function () {
            this.classList.toggle("open");
            document.querySelector(".navbar_pages").classList.toggle("open");

            document
                .querySelector(".navbar_search_modal")
                .classList.remove("open");
        });

    document
        .querySelector(".navbar_search_button")
        .addEventListener("click", function () {
            document
                .querySelector(".navbar_search_modal")
                .classList.toggle("open");
            document.querySelector(".navbar_search_modal input").focus();

            document
                .querySelector(".navbar_hamburger")
                .classList.remove("open");
            document.querySelector(".navbar_pages").classList.remove("open");
        });

    document.addEventListener("click", function (event) {
        if (
            !event.target.closest(".navbar_search_modal") &&
            !event.target.closest(".navbar_search_button")
        ) {
            document
                .querySelector(".navbar_search_modal")
                .classList.remove("open");
        }
    });

    document.querySelectorAll(".dropdown_field").forEach((dropdown_field) => {
        dropdown_field.addEventListener("click", function () {
            if (window.innerWidth > 768) return;
            event.preventDefault();
            this.parentElement
                .querySelector(".navbar_dropdown_menu")
                .classList.toggle("open");
        });
    });

    if (
        localStorage.getItem("our_sites_toggle") === null ||
        localStorage.getItem("our_sites_toggle") === "true"
    ) {
        document.querySelector("#our_sites_toggle").classList.add("active");
        document
            .querySelector("#inner_sites_navigation")
            .classList.add("active");
    }

    // add a click event listener to the id 'our_sites_toggle'
    document
        .querySelector("#our_sites_toggle")
        .addEventListener("click", function () {
            const isActive = this.classList.contains("active");

            if (isActive) {
                this.classList.remove("active");
                document
                    .querySelector("#inner_sites_navigation")
                    .classList.remove("active");
                localStorage.setItem("our_sites_toggle", "false");
                return;
            }

            this.classList.add("active");
            document
                .querySelector("#inner_sites_navigation")
                .classList.add("active");
            localStorage.setItem("our_sites_toggle", "true");
        });

    if (
        document
            .querySelector("#inner_sites_navigation")
            .classList.contains("active")
    ) {
        window.addEventListener("scroll", function () {
            if (localStorage.getItem("our_sites_toggle") !== null) return;
            document
                .querySelector("#inner_sites_navigation")
                .classList.remove("active");
            document
                .querySelector("#our_sites_toggle")
                .classList.remove("active");
            localStorage.setItem("our_sites_toggle", "false");
        });
    }

    const updateWIthSearchParam = (searchParam) => {
        document
            .querySelectorAll(".nav_currency_selector")
            .forEach((anchor) => {
                const href = anchor.getAttribute("href").split("?");
                anchor.setAttribute("href", `${href[0]}?${searchParam}`);
            });
    };

	 let currentSearchParam = new URLSearchParams(window.location.search).toString();
	 if (currentSearchParam) {updateWIthSearchParam(currentSearchParam);}

	 let previousUrl = "";
     const observer = new MutationObserver(function (mutations) {
         if (window.location.href !== previousUrl) {
             previousUrl = window.location.href;
             const searchParam = new URLSearchParams(
                 window.location.search
             ).toString();
				 if (searchParam !== currentSearchParam) {
					  updateWIthSearchParam(searchParam);
					  currentSearchParam = searchParam;
				 }
         }
     });
     const config = { subtree: true, childList: true };
     observer.observe(document, config);
	  
    // window.addEventListener("scroll", function () {
    // 	if (window.scrollY > 90) {
    // 		document.querySelector(".navigation").classList.add("scrolled");
    // 	} else {
    // 		document.querySelector(".navigation").classList.remove("scrolled");
    // 	}
    // });

    fetch("/json/global_cart")
        .then((response) => response.json())
        .then((data) => {
            console.log("json/global_cart data: ", data);
            if (data.order_qty == 0) {
                document.querySelector(".cart_count").textContent = "0";
            } else if (data.order_qty == 1) {
                document.querySelector(".cart_count").textContent = "1";
                document.querySelector(".cart_total").textContent =
                    data.order_subtotal;
            } else if (data.order_qty >= 2) {
                document.querySelector(".cart_count").textContent =
                    data.order_qty;
                document.querySelector(".cart_total").textContent =
                    data.order_subtotal;
            }
        })
        .catch((error) => {
            console.error("Error:", error);
        });
});
