Skip to content
Plum Tomatoes
$ 0.00
-
Ready to make tomato sauce? Plum tomatoes are dense, oblong tomatoes most commonly used to for doing just that! Plum tomatoes are even more special as their solid content is far greater than any other type, with a lower proportion of seeds and juices.
8 in stock
Description
Only logged in customers who have purchased this product may leave a review.
Go to Top
console.log("GB custom code loaded");
window.GB_OOS_SCRIPT_LOADED = true;
document.addEventListener("DOMContentLoaded", function () {
// Only run on GrowBox product page (ID 2577)
if (!document.body.classList.contains("postid-2577")) return;
// Debug flag so we can verify it loaded
window.GB_OOS_SCRIPT_LOADED = true;
function isOutOfStock(stockEl) {
if (!stockEl) return false;
if (stockEl.classList.contains("out-of-stock")) return true;
var t = (stockEl.textContent || "").toLowerCase().trim();
return t.includes("out of stock");
}
function getItemContainer(fromEl) {
// Try common bundle wrappers; fall back to something safe
return (
fromEl.closest("li") ||
fromEl.closest(".bundled_item") ||
fromEl.closest(".bundled_product") ||
fromEl.closest(".cart") ||
fromEl.parentElement
);
}
function setQtyToZero(container) {
// Catch *any* number inputs inside the container (qty boxes)
container.querySelectorAll('input[type="number"], input.qty').forEach(function (inp) {
inp.value = 0;
inp.dispatchEvent(new Event("change", { bubbles: true }));
inp.dispatchEvent(new Event("input", { bubbles: true }));
});
}
function disableContainer(container) {
container.classList.add("gb-oos");
container.style.opacity = "0.4";
// Disable everything interactive inside
container.querySelectorAll("input, select, textarea, button").forEach(function (el) {
el.disabled = true;
el.setAttribute("aria-disabled", "true");
el.style.pointerEvents = "none";
});
// Kill links too
container.querySelectorAll("a").forEach(function (a) {
a.setAttribute("tabindex", "-1");
a.setAttribute("aria-disabled", "true");
a.style.pointerEvents = "none";
a.style.cursor = "not-allowed";
});
setQtyToZero(container);
}
function enableContainer(container) {
container.classList.remove("gb-oos");
container.style.opacity = "1";
container.querySelectorAll("input, select, textarea, button").forEach(function (el) {
el.disabled = false;
el.removeAttribute("aria-disabled");
el.style.pointerEvents = "";
});
container.querySelectorAll("a").forEach(function (a) {
a.removeAttribute("tabindex");
a.removeAttribute("aria-disabled");
a.style.pointerEvents = "";
a.style.cursor = "";
});
}
function update() {
// IMPORTANT: This targets bundle item "cart" blocks like the ones you saw in DevTools:
//
document.querySelectorAll('.cart[data-bundle_id="2577"]').forEach(function (cartEl) {
var stockEl = cartEl.querySelector(".stock");
var container = getItemContainer(cartEl);
if (!container) return;
if (isOutOfStock(stockEl)) {
disableContainer(container);
} else {
enableContainer(container);
}
});
}
update();
// Bundles update via AJAX; keep re-checking
var obs = new MutationObserver(function () { update(); });
obs.observe(document.body, { childList: true, subtree: true });
});
Reviews
There are no reviews yet.