-

Concentrated antioxidant support from turmeric, quercetin and Japanese knotweed extract in a convenient daily capsule
(function () {
const formBox =
document.getElementById("lwf-cell-shield-rtq-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#rtq-package");
const productPriceField =
formBox.querySelector("#rtq-productpr");
const priceDisplay =
formBox.querySelector("#rtq-price");
const addToCartButton =
formBox.querySelector("#rtq-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="rtq-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"Cell Shield RTQ";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "21203",
description: "(1) bottle / 60 capsules",
price: "48.95"
},
two: {
sku: "21203",
description: "(2) bottles / 60 capsules each",
price: "97.90"
},
three: {
sku: "21203",
description: "(3) bottles / 60 capsules each",
price: "146.85"
},
four: {
sku: "21203C",
description: "(4) bottles / 60 capsules each",
price: "180.95"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="rtq-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

A convenient aromatherapy roller combining Lavender Maillette and Roman Chamomile for relaxation and nighttime wind-down
(function () {
const formBox =
document.getElementById("lwf-lavender-chamomile-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#lavender-chamomile-package");
const productPriceField =
formBox.querySelector("#lavender-chamomile-productpr");
const priceDisplay =
formBox.querySelector("#lavender-chamomile-price");
const addToCartButton =
formBox.querySelector("#lavender-chamomile-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="lavender-chamomile-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"Lavender & Chamomile 1% Roller Bottle";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "67056RB",
description: "(1) roller bottle / 10 mL",
price: "14.99"
},
two: {
sku: "67056RB",
description: "(2) roller bottles / 10 mL each",
price: "29.98"
},
three: {
sku: "67056RB",
description: "(3) roller bottles / 10 mL each",
price: "44.97"
},
four: {
sku: "67056RB",
description: "(4) roller bottles / 10 mL each",
price: "59.96"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="lavender-chamomile-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

Full-spectrum nutritional and botanical support for women through perimenopause, menopause and post-menopause
(function () {
const formBox =
document.getElementById("life-balance-menopause-support-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector(
"#life-balance-menopause-support-package"
);
const productPriceField =
formBox.querySelector(
"#life-balance-menopause-support-productpr"
);
const priceDisplay =
formBox.querySelector(
"#life-balance-menopause-support-price"
);
const addToCartButton =
formBox.querySelector(
"#life-balance-menopause-support-add-to-cart"
);
const deliveryInputs =
formBox.querySelectorAll(
'input[name="life-balance-menopause-support-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"Life Balance Menopause Support";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "USYG70005",
description: "(1) bottle / 60 capsules",
price: "49.95"
},
two: {
sku: "USYG70005",
description: "(2) bottles / 60 capsules each",
price: "99.90"
},
three: {
sku: "USYG70005",
description: "(3) bottles / 60 capsules each",
price: "149.85"
},
four: {
sku: "USYG70005",
description: "(4) bottles / 60 capsules each",
price: "199.80"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="life-balance-menopause-support-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
/*
Cart description contains:
Product
+ quantity/package description
+ manufacturer SKU
+ selected delivery schedule
Price stays the same whether the customer
chooses one-time purchase or autoship.
*/
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
/*
Mals productpr format:
full description, :price
*/
productPriceField.value =
description +
", :" +
selectedPackage.price;
/* Display selected price */
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
/* Enable Add to Cart */
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

A ready-to-use Damask Rose aromatherapy roller for relaxation, nighttime wind-down, and a gentler transition from busy to calm
(function () {
const formBox =
document.getElementById("lwf-rose-roller-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#rose-roller-package");
const productPriceField =
formBox.querySelector("#rose-roller-productpr");
const priceDisplay =
formBox.querySelector("#rose-roller-price");
const addToCartButton =
formBox.querySelector("#rose-roller-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="rose-roller-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"Rose 1% Roller Bottle";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "67073RB",
description: "(1) roller bottle / 10 mL",
price: "29.99"
},
two: {
sku: "67073RB",
description: "(2) roller bottles / 10 mL each",
price: "59.98"
},
three: {
sku: "67073RB",
description: "(3) roller bottles / 10 mL each",
price: "89.97"
},
four: {
sku: "67073RB",
description: "(4) roller bottles / 10 mL each",
price: "119.96"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="rose-roller-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

A bright citrus-and-floral aromatherapy roller with chamomile and Damask rose, pre-diluted in jojoba for relaxation and nighttime wind-down
(function () {
const formBox =
document.getElementById("lwf-to-be-at-peace-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#to-be-at-peace-package");
const productPriceField =
formBox.querySelector("#to-be-at-peace-productpr");
const priceDisplay =
formBox.querySelector("#to-be-at-peace-price");
const addToCartButton =
formBox.querySelector("#to-be-at-peace-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="to-be-at-peace-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"To Be At Peace";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "67609",
description: "(1) roller bottle / 10 mL",
price: "16.99"
},
two: {
sku: "67609",
description: "(2) roller bottles / 10 mL each",
price: "33.98"
},
three: {
sku: "67609",
description: "(3) roller bottles / 10 mL each",
price: "50.97"
},
four: {
sku: "67609",
description: "(4) roller bottles / 10 mL each",
price: "67.96"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="to-be-at-peace-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

A simple liquid colloidal silver supplement providing 13 mcg of silver per 2.5 mL serving at a concentration of 5 ppm
(function () {
const formBox = document.getElementById("lwf-ultimate-colloidal-silver-form");
if (!formBox) {
return;
}
const packageSelect = formBox.querySelector("#ultimate-colloidal-silver-package");
const productPriceField = formBox.querySelector("#ultimate-colloidal-silver-productpr");
const priceDisplay = formBox.querySelector("#ultimate-colloidal-silver-price");
const addToCartButton = formBox.querySelector("#ultimate-colloidal-silver-add-to-cart");
const deliveryInputs = formBox.querySelectorAll('input[name="ultimate-colloidal-silver-delivery"]');
const productName = "Ultimate Colloidal Silver";
const packages = {
single: {
sku: "USYG100401",
description: "1 bottle",
price: "34.95"
},
two: {
sku: "USYG100401",
description: "2 bottles",
price: "69.90"
},
three: {
sku: "USYG100401",
description: "3 bottles",
price: "104.85"
},
four: {
sku: "USYG0033",
description: "4 bottles",
price: "131.95"
}
};
function selectedDelivery() {
const selected = formBox.querySelector('input[name="ultimate-colloidal-silver-delivery"]:checked');
return selected ? selected.value : "";
}
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
function updateSelection() {
const packageKey = packageSelect.value;
const delivery = selectedDelivery();
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add("lwf-price-prompt");
addToCartButton.disabled = true;
addToCartButton.textContent = "Add to Cart";
return;
}
const selectedPackage = packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove("lwf-price-prompt");
addToCartButton.disabled = false;
addToCartButton.textContent = "Add to Cart";
}
deliveryInputs.forEach(function (input) {
input.addEventListener("change", updateSelection);
});
packageSelect.addEventListener("change", updateSelection);
updateSelection();
})();
-

A liquid calcium formula with vitamin D3, magnesium, supporting minerals, glucosamine and MSM for bone and joint support
(function () {
const formBox = document.getElementById("lwf-ultimate-osteo-fx-form");
if (!formBox) {
return;
}
const packageSelect = formBox.querySelector("#ultimate-osteo-fx-package");
const productPriceField = formBox.querySelector("#ultimate-osteo-fx-productpr");
const priceDisplay = formBox.querySelector("#ultimate-osteo-fx-price");
const addToCartButton = formBox.querySelector("#ultimate-osteo-fx-add-to-cart");
const deliveryInputs = formBox.querySelectorAll('input[name="ultimate-osteo-fx-delivery"]');
const productName = "Ultimate Osteo fx";
const packages = {
one: {
sku: "13209",
description: "(1) 32 oz bottle",
price: "46.95"
},
two: {
sku: "13209",
description: "(2) 32 oz bottles",
price: "93.90"
},
three: {
sku: "13209",
description: "(3) 32 oz bottles",
price: "140.85"
},
four: {
sku: "13209C",
description: "(4) 32 oz bottles",
price: "180.95"
}
};
function selectedDelivery() {
const selected = formBox.querySelector('input[name="ultimate-osteo-fx-delivery"]:checked');
return selected ? selected.value : "";
}
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
function updateSelection() {
const packageKey = packageSelect.value;
const delivery = selectedDelivery();
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add("lwf-price-prompt");
addToCartButton.disabled = true;
addToCartButton.textContent = "Add to Cart";
return;
}
const selectedPackage = packages[packageKey];
if (!selectedPackage) {
return;
}
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
productPriceField.value =
description +
", :" +
selectedPackage.price;
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove("lwf-price-prompt");
addToCartButton.disabled = false;
addToCartButton.textContent = "Add to Cart";
}
deliveryInputs.forEach(function (input) {
input.addEventListener("change", updateSelection);
});
packageSelect.addEventListener("change", updateSelection);
updateSelection();
})();
-

A convenient daily fiber powder with prebiotic fibers, digestive enzymes, probiotics and botanical support for healthy digestion and metabolism
(function () {
const formBox =
document.getElementById("lwf-ygy-regulate-daily-fiber-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#ygy-regulate-daily-fiber-package");
const productPriceField =
formBox.querySelector("#ygy-regulate-daily-fiber-productpr");
const priceDisplay =
formBox.querySelector("#ygy-regulate-daily-fiber-price");
const addToCartButton =
formBox.querySelector("#ygy-regulate-daily-fiber-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="ygy-regulate-daily-fiber-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"YGY Regulate Daily Fiber";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "USYG70003",
description: "(1) pouch / 30 packets",
price: "55.95"
},
two: {
sku: "USYG70003",
description: "(2) pouches / 30 packets each",
price: "111.90"
},
three: {
sku: "USYG70003",
description: "(3) pouches / 30 packets each",
price: "167.85"
},
four: {
sku: "USYG70003",
description: "(4) pouches / 30 packets each",
price: "223.80"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="ygy-regulate-daily-fiber-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
/*
Cart description contains:
Product
+ quantity/package description
+ manufacturer SKU
+ selected delivery schedule
Price stays the same whether the customer
chooses one-time purchase or autoship.
*/
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
/*
Mals productpr format:
full description, :price
*/
productPriceField.value =
description +
", :" +
selectedPackage.price;
/* Display selected price */
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
/* Enable Add to Cart */
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();
-

A powdered blend of organic greens, fruits, fermented plant foods, fiber, probiotics, and digestive enzymes for an easy way to add more plant variety to your day
(function () {
const formBox =
document.getElementById("lwf-ygy-super-greens-form");
if (!formBox) {
return;
}
const packageSelect =
formBox.querySelector("#ygy-super-greens-package");
const productPriceField =
formBox.querySelector("#ygy-super-greens-productpr");
const priceDisplay =
formBox.querySelector("#ygy-super-greens-price");
const addToCartButton =
formBox.querySelector("#ygy-super-greens-add-to-cart");
const deliveryInputs =
formBox.querySelectorAll(
'input[name="ygy-super-greens-delivery"]'
);
/* ---------------------------------------------------------
Product identification
--------------------------------------------------------- */
const productName =
"Youngevity Super Greens";
/* ---------------------------------------------------------
Package options
--------------------------------------------------------- */
const packages = {
one: {
sku: "USYG300001",
description: "(1) 257 g (9.07 oz.) canister",
price: "51.95"
},
two: {
sku: "USYG300001",
description: "(2) 257 g (9.07 oz.) canisters",
price: "103.90"
},
three: {
sku: "USYG300001",
description: "(3) 257 g (9.07 oz.) canisters",
price: "155.85"
},
four: {
sku: "USYG300001",
description: "(4) 257 g (9.07 oz.) canisters",
price: "207.80"
}
};
/* ---------------------------------------------------------
Get selected delivery option
--------------------------------------------------------- */
function selectedDelivery() {
const selected =
formBox.querySelector(
'input[name="ygy-super-greens-delivery"]:checked'
);
return selected ? selected.value : "";
}
/* ---------------------------------------------------------
Standard delivery wording
--------------------------------------------------------- */
function deliveryDescription(delivery) {
if (delivery === "monthly") {
return "autoship monthly";
}
if (delivery === "two-months") {
return "autoship every 2 months";
}
return "one-time purchase";
}
/* ---------------------------------------------------------
Build complete Mals cart description and price
--------------------------------------------------------- */
function updateSelection() {
const packageKey =
packageSelect.value;
const delivery =
selectedDelivery();
/* No quantity selected yet */
if (!packageKey) {
productPriceField.value = "";
priceDisplay.textContent =
"(Price will show when you make your selection)";
priceDisplay.classList.add(
"lwf-price-prompt"
);
addToCartButton.disabled = true;
addToCartButton.textContent =
"Add to Cart";
return;
}
const selectedPackage =
packages[packageKey];
if (!selectedPackage) {
return;
}
/*
Cart description contains:
Product
+ quantity/package description
+ manufacturer SKU
+ selected delivery schedule
Price stays the same whether the customer
chooses one-time purchase or autoship.
*/
const description =
productName +
", " +
selectedPackage.description +
", SKU " +
selectedPackage.sku +
", " +
deliveryDescription(delivery);
/*
Mals productpr format:
full description, :price
*/
productPriceField.value =
description +
", :" +
selectedPackage.price;
/* Display selected price */
priceDisplay.textContent =
"$" + selectedPackage.price;
priceDisplay.classList.remove(
"lwf-price-prompt"
);
/* Enable Add to Cart */
addToCartButton.disabled = false;
addToCartButton.textContent =
"Add to Cart";
}
/* ---------------------------------------------------------
Event listeners
--------------------------------------------------------- */
deliveryInputs.forEach(
function (input) {
input.addEventListener(
"change",
updateSelection
);
}
);
packageSelect.addEventListener(
"change",
updateSelection
);
/* ---------------------------------------------------------
Initialize
--------------------------------------------------------- */
updateSelection();
})();