Sha256: f6b67ef418e85aea848b68bddec0c715cab0722c3b9af2789bfb568a0bf631b7
Contents?: true
Size: 1.45 KB
Versions: 2
Compression:
Stored size: 1.45 KB
Contents
// Placeholder manifest file. // the installer will append this file to the app vendored assets here: vendor/assets/javascripts/spree/frontend/all.js' Spree.ready(function($) { Spree.updateKitPrice = function() { var selectedVariant = $("input[name='variant_id']:checked")[0] var hiddenVariantField = $("input[name='variant_id']")[0] if (!(selectedVariant || hiddenVariantField)) { return } var variantPrice = (selectedVariant || hiddenVariantField).dataset.price var selectedKitItemPrices = Array.prototype.slice.call( $("select.kit_variant_input") ).map((element) => { return element.options[element.selectedIndex].dataset.price; }) var unselectableKitItemPrices = Array.prototype.slice.call( $("input.kit_variant_input") ).map((element) => { return element.dataset.price; }) var sum = [variantPrice]. concat(selectedKitItemPrices). concat(unselectableKitItemPrices). filter((price) => price). map((p) => p.replace(/[€$,]+/g, "")). map(Number). filter((price) => !isNaN(price)). reduce((a, b) => a + b, 0) if (variantPrice) { var formatter = new Intl.NumberFormat('en-US', { style: 'currency', currency: 'EUR', }); $(".price.selling").text(formatter.format(sum)); } }; $("select.kit_variant_input, input[name='variant_id'").change(function(event) { Spree.updateKitPrice(); }); Spree.updateKitPrice(); });
Version data entries
2 entries across 2 versions & 1 rubygems