(function() { function bxBootstrap() { var re = /bot|crawl|slurp|spider|mediapartners|headlesschrome|snap-prefetch|remotasks|woorank|uptime\.com|facebookexternalhit|facebookcatalog/i; if (re.test(navigator.userAgent) || navigator.userAgent == '') { return; } if (!(window.bouncex&&bouncex.website)) { var pushedData = []; if(window.bouncex && bouncex.push && bouncex.length){ pushedData = bouncex; } window.bouncex = {}; bouncex.pushedData = pushedData; bouncex.website = {"id":3807,"name":"Natural Vitality","cookie_name":"bounceClientVisit3807","domain":"betteryourhealth.com","ct":"fp_local_storage","ally":0,"ei":0,"tcjs":"","cjs":"/* temp implementation for segment identify */\nbouncex.SHA256 = function(s) {\n var chrsz = 8;\n var hexcase = 0;\n\n function safe_add(x, y) {\n var lsw = (x & 0xFFFF) + (y & 0xFFFF);\n var msw = (x >> 16) + (y >> 16) + (lsw >> 16);\n return (msw << 16) | (lsw & 0xFFFF);\n }\n\n function S(X, n) { return (X >>> n) | (X << (32 - n)); }\n function R(X, n) { return (X >>> n); }\n function Ch(x, y, z) { return ((x & y) ^ ((~x) & z)); }\n function Maj(x, y, z) { return ((x & y) ^ (x & z) ^ (y & z)); }\n function Sigma0256(x) { return (S(x, 2) ^ S(x, 13) ^ S(x, 22)); }\n function Sigma1256(x) { return (S(x, 6) ^ S(x, 11) ^ S(x, 25)); }\n function Gamma0256(x) { return (S(x, 7) ^ S(x, 18) ^ R(x, 3)); }\n function Gamma1256(x) { return (S(x, 17) ^ S(x, 19) ^ R(x, 10)); }\n\n function core_sha256(m, l) {\n var K = new Array(0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5, 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5, 0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3, 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174, 0xE49B69C1, 0xEFBE4786, 0xFC19DC6, 0x240CA1CC, 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA, 0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7, 0xC6E00BF3, 0xD5A79147, 0x6CA6351, 0x14292967, 0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13, 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85, 0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3, 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070, 0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5, 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3, 0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208, 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2);\n var HASH = new Array(0x6A09E667, 0xBB67AE85, 0x3C6EF372, 0xA54FF53A, 0x510E527F, 0x9B05688C, 0x1F83D9AB, 0x5BE0CD19);\n var W = new Array(64);\n var a, b, c, d, e, f, g, h, i, j;\n var T1, T2;\n\n m[l >> 5] |= 0x80 << (24 - l % 32);\n m[((l + 64 >> 9) << 4) + 15] = l;\n\n for (i = 0; i < m.length; i += 16) {\n a = HASH[0];\n b = HASH[1];\n c = HASH[2];\n d = HASH[3];\n e = HASH[4];\n f = HASH[5];\n g = HASH[6];\n h = HASH[7];\n\n for (j = 0; j < 64; j++) {\n if (j < 16) W[j] = m[j + i];\n else W[j] = safe_add(safe_add(safe_add(Gamma1256(W[j - 2]), W[j - 7]), Gamma0256(W[j - 15])), W[j - 16]);\n\n T1 = safe_add(safe_add(safe_add(safe_add(h, Sigma1256(e)), Ch(e, f, g)), K[j]), W[j]);\n T2 = safe_add(Sigma0256(a), Maj(a, b, c));\n\n h = g;\n g = f;\n f = e;\n e = safe_add(d, T1);\n d = c;\n c = b;\n b = a;\n a = safe_add(T1, T2);\n }\n\n HASH[0] = safe_add(a, HASH[0]);\n HASH[1] = safe_add(b, HASH[1]);\n HASH[2] = safe_add(c, HASH[2]);\n HASH[3] = safe_add(d, HASH[3]);\n HASH[4] = safe_add(e, HASH[4]);\n HASH[5] = safe_add(f, HASH[5]);\n HASH[6] = safe_add(g, HASH[6]);\n HASH[7] = safe_add(h, HASH[7]);\n }\n return HASH;\n }\n\n function str2binb(str) {\n var bin = Array();\n var mask = (1 << chrsz) - 1;\n for (var i = 0; i < str.length * chrsz; i += chrsz) {\n bin[i >> 5] |= (str.charCodeAt(i / chrsz) & mask) << (24 - i % 32);\n }\n return bin;\n }\n\n function Utf8Encode(string) {\n string = string.replace(/\\r\\n/g, '\\n');\n var utftext = '';\n\n for (var n = 0; n < string.length; n++) {\n\n var c = string.charCodeAt(n);\n\n if (c < 128) {\n utftext += String.fromCharCode(c);\n }\n else if ((c > 127) && (c < 2048)) {\n utftext += String.fromCharCode((c >> 6) | 192);\n utftext += String.fromCharCode((c & 63) | 128);\n }\n else {\n utftext += String.fromCharCode((c >> 12) | 224);\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\n utftext += String.fromCharCode((c & 63) | 128);\n }\n\n }\n\n return utftext;\n }\n\n function binb2hex(binarray) {\n var hex_tab = hexcase ? '0123456789ABCDEF' : '0123456789abcdef';\n var str = '';\n for (var i = 0; i < binarray.length * 4; i++) {\n str += hex_tab.charAt((binarray[i >> 2] >> ((3 - i % 4) * 8 + 4)) & 0xF) +\n hex_tab.charAt((binarray[i >> 2] >> ((3 - i % 4) * 8)) & 0xF);\n }\n return str;\n }\n\n s = Utf8Encode(s);\n return binb2hex(core_sha256(str2binb(s), s.length * chrsz));\n};","force_https":false,"waypoints":false,"content_width":900,"gai":"UA-58497634-1","swids":"","sd":0,"ljq":"auto","campaign_id":0,"is_preview":false,"aco":{"first_party_limit":"3500","local_storage":"1"},"cmp":{"gdpr":0,"gmp":0,"whitelist_check":0},"burls":[],"ple":false,"fbe":true,"ffs":"","mas":2,"map":1,"gar":true,"ete":1,"ettm":false,"etjs":"/* ---------------------------- SHARED VARIABLES ---------------------------- */\r\n\r\nvar CLEAN_URL = bouncex.utils.url.allowParams();\r\n\r\n/* --------------------------------- HELPERS -------------------------------- */\r\n\r\nfunction getItemIdFromUrl(url) {\r\n url = url || '';\r\n return url.split('/').pop();\r\n}\r\n\r\nfunction getItemImage() {\r\n var itemImage = jQuery('.fotorama__stage img:first').attr('src') || '';\r\n return itemImage.split('?')[0];\r\n}\r\n\r\n/* ------------------------------ ITEM TRACKING ----------------------------- */\r\n\r\nfunction getItem() {\r\n return {\r\n id: getItemIdFromUrl(CLEAN_URL),\r\n copy: jQuery('.h1.page-title .base').text(), \r\n category: jQuery('.category').text().trim() || \"GLOBAL\",\r\n url: CLEAN_URL,\r\n imageurl: getItemImage(),\r\n instock: jQuery('#product-addtocart-button').text().indexOf('Add to Cart') > -1\r\n };\r\n}\r\n\r\nfunction initializeItemEvents() {\r\n var item;\r\n\r\n bouncex.et.onTrue(\r\n function () {\r\n item = getItem();\r\n return !!item.id &&\r\n !!item.copy &&\r\n !!item.category &&\r\n !!item.url &&\r\n !!item.imageurl;\r\n },\r\n function () {\r\n if (item.url.indexOf('gift-card') > -1) {\r\n return;\r\n }\r\n bouncex.push(['item', item]);\r\n bouncex.push(['view item', { 'item:id': item.id }]);\r\n initializeATCClickTracking(item.id);\r\n },\r\n 10\r\n );\r\n}\r\n\r\n/* ---------------------------- CATEGORY TRACKING --------------------------- */\r\n\r\nfunction getItemIdsCat() {\r\n var ids = [];\r\n\r\n jQuery('.product-item-link').each(function (i, e) {\r\n var id = getItemIdFromUrl(jQuery(e).attr('href'));\r\n\r\n if (id && ids.indexOf(id) < 0) {\r\n ids.push(id);\r\n }\r\n });\r\n\r\n return ids.join(',');\r\n}\r\n\r\nfunction getCategoryObject() {\r\n return {\r\n 'page:url': CLEAN_URL,\r\n 'items:ids': getItemIdsCat()\r\n };\r\n}\r\n\r\nfunction initializeCategoryEvents() {\r\n var categoryObj;\r\n\r\n bouncex.et.onTrue(\r\n function () {\r\n categoryObj = getCategoryObject();\r\n return !!categoryObj['items:ids'].length &&\r\n !!categoryObj['page:url'];\r\n },\r\n function () {\r\n bouncex.push(['view category', categoryObj]);\r\n },\r\n 10\r\n );\r\n}\r\n\r\n/* ------------------------------- CART EVENTS ------------------------------ */\r\n\r\nfunction fireAddToCart(itemId) {\r\n bouncex.push(['add to cart', { 'item:id': itemId }]);\r\n\r\n if (bouncex.vars.cart) {\r\n return;\r\n }\r\n bouncex.setVar('cart', true);\r\n}\r\n\r\n// USE FOR INITIALIZING ATC EVENTS USING CLICK LISTENERS ONLY\r\nfunction initializeATCClickTracking(itemId) {\r\n bouncex.et.on(bouncex.document, 'click.bxatc', function () {\r\n fireAddToCart(itemId);\r\n }, '#product-addtocart-button');\r\n}\r\n\r\nfunction emptyCart() {\r\n bouncex.et.onVarChange('cart_qty', function (oldVal, newVal) {\r\n if (bouncex.vars.cart && newVal === 0 && oldVal > 0) {\r\n bouncex.push(['empty_cart']);\r\n bouncex.setVar('cart', false);\r\n }\r\n });\r\n}\r\n\r\nfunction initializeCartEvents() {\r\n bouncex.et.cart.init({\r\n replenish: function () { },\r\n replenishmentType: 'single'\r\n });\r\n\r\n emptyCart();\r\n}\r\n\r\n/* ------------------------------ USER TRACKING ----------------------------- */\r\n\r\nfunction initializeUserTracking() {\r\n if (!bouncex.vars.logged_in || !!bouncex.vars.logged_in_identified) {\r\n return;\r\n }\r\n\r\n var userEmail;\r\n\r\n bouncex.et.onTrue(\r\n function () {\r\n userEmail = jQuery('.box-information .text').text().split(' ').pop(); \r\n return bouncex.utils.validate.email(userEmail);\r\n },\r\n function () {\r\n bouncex.push([\r\n 'user',\r\n {\r\n 'email': userEmail,\r\n 'source': 'LoggedIn'\r\n }\r\n ]);\r\n bouncex.setVar('logged_in_identified', true);\r\n },\r\n 5\r\n );\r\n}\r\n\r\n/* --------------------------- INITIALIZE TRACKING -------------------------- */\r\n\r\nfunction isValidDomain() {\r\n return CLEAN_URL.indexOf('www.betteryourhealth.com/naturalvitality') > -1;\r\n}\r\n\r\nfunction isEn() {\r\n return bouncex.html.attr('lang') === 'en';\r\n}\r\n\r\nfunction isValidForTracking() {\r\n return isValidDomain() && isEn();\r\n}\r\n\r\nfunction init() {\r\n if (!isValidForTracking()) {\r\n return;\r\n }\r\n\r\n initializeUserTracking();\r\n initializeCartEvents();\r\n\r\n switch (bouncex.website.pts) {\r\n case 'category':\r\n case 'search':\r\n initializeCategoryEvents();\r\n break;\r\n case 'product':\r\n initializeItemEvents();\r\n break;\r\n default:\r\n break;\r\n }\r\n}\r\n\r\ninit();\r\n","dge":true,"bxidLoadFirst":false,"pie":true,"cme":true,"gbi_enabled":0,"bpush":false,"pt":{"cart":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"/cart"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}]]},"category":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"document.querySelectorAll('.catalog-category-view').length > 0;"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}]]},"checkout":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"/checkout"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":"/cart"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":"/success"}]]},"home":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"document.querySelectorAll('.cms-home').length > 0;"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}]]},"product":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"document.querySelectorAll('.catalog-product-view').length > 0;"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}]]},"search":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"result/?q="}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":".nutranextb2bstage"}]]}},"els":{"CART - Checkout Button":"","CART - Promo Code Apply Button":"","CART - Promo Code Box":"","CAT - Product Grid Image":"","CAT - Quickview Box":"","CAT-AddtoCartButton":"","CAT-QuickviewAddtoCart":"","Footer":"","Navigation bar":"","PDP - Add to Cart Button":"","PDP - Color Option":"","PDP - Hero Image":"","PDP - Product Name":"","PDP - Product Price":"","PDP - Quantity Option":"","PDP - Review Stars":"","PDP - Size Option":"","PDP - Thumbnail Image":"","SEARCH - Product Grid Image":""},"vars":[{"name":"logged_in","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"(function(){\n var user = null;\n \n if (bouncex.website.pts === 'checkout'){\n bouncex.utils.getNestedProp('dataLayer').forEach( function(element){\n if (!!element.username){\n user = true;\n }\n });\n return user;\n }\n return jQuery('.authorization-link a[href*=logout]').length > 0;\n})();","trigger":""},{"name":"ever_logged_in","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"bouncex.vars.logged_in ? true : null;","trigger":""},{"name":"cart_qty","polling":"all","persist":"visit","page_types":[],"testmode":false,"default":"0","code":"jQuery('.counter-number:first').text() ? Number(jQuery('.counter-number:first').text()) : null;","trigger":""},{"name":"cart_value","polling":"all","persist":"visit","page_types":[],"testmode":false,"default":"0","code":"jQuery('.subtitle.empty').length > 0 ? 0 : jQuery('.subtotal .amount .price:first').text().replace(/[^0-9.]/g, '') || null;","trigger":""},{"name":"prod_price","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"(function(){\n\tif (bouncex.website.pts === 'product') {\n\t\tvar $salePrice = jQuery('.product-info-main .special-price .price:visible').text().replace(/[^0-9.]/g, '');\n\n\t\treturn $salePrice ? $salePrice : jQuery('.product-info-main .price:visible').text().replace(/[^0-9.]/g, '');\n\t}\n\treturn false;\n})();","trigger":""},{"name":"prod_name","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"bouncex.website.pts === 'product' ? jQuery('.product-info-main .page-title-wrapper').text().trim() : false;","trigger":""},{"name":"in_stock","polling":"none","persist":"no","page_types":["product"],"testmode":false,"default":"false","code":"jQuery('#product-addtocart-button').text().indexOf('Add to Cart') > -1;","trigger":""},{"name":"submitted_onsite","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"window.location.href.indexOf('/newsletter-success') > -1 || null;","trigger":""},{"name":"page_url","polling":"none","persist":"no","page_types":["category","search"],"testmode":true,"default":"false","code":"","trigger":""},{"name":"cookie_bar_present","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"jQuery('#onetrust-banner-sdk').is(':visible');","trigger":"pageload"},{"name":"cart","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"},{"name":"logged_in_identified","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"}],"dgu":"pixel.cdnwidget.com","dgp":false,"ba":{"enabled":0,"fbte":0},"biu":"assets.bounceexchange.com","bau":"api.bounceexchange.com","beu":"events.bouncex.net","ibx":{"tjs":"","cjs":"","miw":1,"mibcx":1,"te":1,"cart_rep":{"get":"","set":""},"ulpj":{"bxid":"espemailid"},"cus":"","miw_exclude":"","enabled":1},"etjson":null,"osre":true,"osru":"osr.bounceexchange.com/v1/osr/items","checkDfp":false,"gamNetwork":"","spa":0,"spatm":1,"preinit_cjs":"","crs":{"integrations":null,"pageCount":null},"mat":0,"math":0,"cpnu":"coupons.bounceexchange.com","dfpcms":0,"sms":{"optm":"","eventSharing":false,"shqId":"","enabled":0},"pde":true,"fmc":["AW","AI","AG","AR","BS","BB","BZ","BM","BO","BQ","BR","CA","KY","CL","CO","CR","CU","CW","DM","DO","EC","SV","GF","GL","GD","GT","GP","HT","HN","JM","MQ","MX","MS","NI","PA","PY","PE","PR","PM","MF","BL","KN","LC","VC","SX","SR","TT","US","UM","UY","VE","VG","VI"],"fme":true,"fmx":"","sdk":{"android":{"enabled":false,"enabledVersions":[],"eventModifications":null},"ios":{"enabled":false,"enabledVersions":[],"eventModifications":null}},"onsite":{"enabled":1},"ads":{"enabled":0},"pubs":{"enabled":0},"websdk":{"enabled":0},"ga4_property_id":"","ga4_measurement_id":"","tag_state_domain":"api.bounceexchange.com"} ; bouncex.tag = 'tag3'; bouncex.$ = window.jQuery; bouncex.env = 'production'; bouncex.restrictedTlds = {"casl":{"ca":1},"gdpr":{"ad":1,"al":1,"at":1,"ax":1,"ba":1,"be":1,"bg":1,"by":1,"xn--90ais":1,"ch":1,"cy":1,"cz":1,"de":1,"dk":1,"ee":1,"es":1,"eu":1,"fi":1,"fo":1,"fr":1,"uk":1,"gb":1,"gg":1,"gi":1,"gr":1,"hr":1,"hu":1,"ie":1,"im":1,"is":1,"it":1,"je":1,"li":1,"lt":1,"lu":1,"lv":1,"mc":1,"md":1,"me":1,"mk":1,"xn--d1al":1,"mt":1,"nl":1,"no":1,"pl":1,"pt":1,"ro":1,"rs":1,"xn--90a3ac":1,"ru":1,"su":1,"xn--p1ai":1,"se":1,"si":1,"sj":1,"sk":1,"sm":1,"ua":1,"xn--j1amh":1,"va":1,"tr":1}}; bouncex.client = { supportsBrotli: 1 }; bouncex.assets = {"ads":"005ab6b05ecd8ae76686b26c919990d4","creativesBaseStyles":"a53944a2","gpsAuction":"bbb80866120d17013073bb6d284cbd6b","inbox":"75060a85c1a4aebcc6f779b9e84db722","onsite":"abbdf7a49be9b52b097917b7b527b262","sms":"e39203556bab2366e56296ce42e974a7","websdk":"3cdb3cd0b71927a211b8afdc85918cfd"}; bouncex.push = function(pushData) { bouncex.pushedData.push(pushData); } var runtime = document.createElement('script'); runtime.setAttribute('src', '//assets.bounceexchange.com/assets/smart-tag/versioned/runtime_6459738026535cda4232dc813c61447d.br.js'); runtime.setAttribute('async', 'async'); runtime.setAttribute('onload', 'bouncex.initializeTag()'); bouncex.initializeTag = function() { var script = document.createElement('script'); script.setAttribute('src', '//assets.bounceexchange.com/assets/smart-tag/versioned/main-v2_f19dec562548dbdce62699a91533f8b0.br.js'); script.setAttribute('async', 'async'); document.body.appendChild(script); var deviceGraphScript = document.createElement('script'); deviceGraphScript.setAttribute('src', '//assets.bounceexchange.com/assets/smart-tag/versioned/cjs_min_3a843477d8e318f67237a66d0a58c542.js'); deviceGraphScript.setAttribute('async', 'async'); var dgAttrs = [{"Key":"id","Value":"c.js"},{"Key":"async","Value":"true"},{"Key":"data-apikey","Value":"2^HIykD"},{"Key":"data-cb","Value":"bouncex.dg.initPostDeviceGraph"},{"Key":"data-bx","Value":"1"},{"Key":"data-gm","Value":"1"},{"Key":"data-fire","Value":"1"}]; if (dgAttrs) { for (var i = 0; i < dgAttrs.length; i++) { deviceGraphScript.setAttribute(dgAttrs[i].Key, dgAttrs[i].Value); } } document.body.appendChild(deviceGraphScript); bouncex.initializeTag = function() {}; }; document.body.appendChild(runtime); } } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", bxBootstrap); } else { bxBootstrap(); }})();