Skip to content
Cegolaine Red Lettuce
$ 0.00
-
A true bibb lettuce with semi-savoy leaf and very uniform, dense heads. It’s best suited for both raw and cooked applications such as braising or boiling. Predominately used as the principal ingredient in salad, its textures and subtle flavors are a perfect canvas for savory and bold, or bright, fruity companion ingredients.
4 in stock
Description
A true bibb lettuce with semi-savoy leaf and very uniform, dense heads. It’s best suited for both raw and cooked applications such as braising or boiling. Predominately used as the principal ingredient in salad, its textures and subtle flavors are a perfect canvas for savory and bold, or bright, fruity companion ingredients.
Plant Care:
Harvest me one leaf at a time. Start with my outer leaves and keep my inner leaves. This allows me to keep producing lettuce leaves over time.
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.