HEX
Server: LiteSpeed
System: Linux s324 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64
User: leoir (1352)
PHP: 8.3.31
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/leoir/.trash/files/oceanwp1/assets/src/js/wp-plugins/easy-digital-downloads/edd-ajax-cart.js
class EddAjaxCart {
  #elements;

  constructor() {
    this.#setElements();
    this.#start();
    this.#setupEventListeners();
  }

  #setElements = () => {
    this.#elements = {
      carts: document.querySelectorAll(".edd-menu-icon"),
      totalPrices: document.querySelectorAll(".eddmenucart-details.total"),
    };
  };

  #start = () => {};

  #setupEventListeners = () => {
    /**
     * Because Easy Digital Downloads plugin uses jQuery custom event,
     * We also have to use jQuery to customize this event
     */
    jQuery("body").on("edd_cart_item_added", this.#onCartItemAdded);
    jQuery("body").on("edd_cart_item_removed", this.#onCartItemRemoved);
  };

  #onCartItemAdded = (event, response) => {
    // Simple cart
    this.#elements.carts?.forEach((cart) => {
      cart.classList.remove("edd-cart-empty");
    });

    this.#elements.totalPrices?.forEach((totalPrice) => {
      totalPrice.innerHTML = response.total;
    });
  };

  #onCartItemRemoved = (event, response) => {
    this.#elements.totalPrices?.forEach((totalPrice) => {
      totalPrice.innerHTML = response.total;
    });
  };
}

new EddAjaxCart();