(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":1547,"name":"Tarte","cookie_name":"bounceClientVisit1547","domain":"tartecosmetics.com","ct":"bind_to_domain","ally":0,"ei":1,"tcjs":"","cjs":"\n (function(){\n if(window.location.pathname.indexOf('/shop/checkout/') > -1 && window.location.search.indexOf('?stage=shipping') > -1) {\n jQuery('label[for=\"add-to-email-list\"]').on('click.bx', function() {\n setTimeout(function() {\n var isChecked = jQuery('#add-to-email-list:checked').length > 0;\n if(isChecked) {\n window.bouncex.setv('checkout_email_signup', true);\n window.bouncex.setBounceCookie();\n bouncex.reload_campaigns();\n }\n }, 500);\n });\n }\n })();\n \n \n\n \n (function () {\n window.bouncex = window.bouncex || {};\n \n window.bouncex.bxISR = {\n /* --- INITIALIZATION --- */\n version: 'Version 9.0 | 04/10/18',\n startTime: Date.now(),\n \n init: function () {\n this.settings = {\n currentProduct: {},\n general: {\n productPageIdentifier: bouncex.vars.pagetype === 'product' || bouncex.website.pts === 'product' || bouncex.vars.product_page,\n maxProducts: 20,\n productHistory: JSON.parse(window.localStorage.getItem('bxProdHist')) || [],\n productHistoryLength: 0\n }\n };\n this.productMap();\n this.setItemHistoryLengths();\n this.trackProductHistory();\n this.maxProducts();\n if (jQuery('#bx-isr-boilerplate').length === 0) {\n bouncex.addCss('.bxc.bx-custom .bx-isr-preventclicks { pointer-events: none; cursor: pointer;}', bouncex.body.get(0), 'bx-isr-boilerplate');\n }\n },\n \n productMap: function () {\n if (!this.settings.general.productPageIdentifier) { return; }\n \n var productValues = {\n url: bouncex.utils.url.allowParams(),\n name: jQuery('h1.product-name span:eq(0)').text().trim(),\n price: jQuery('.product-price span.price-sales:eq(0)').text().trim().replace('$', ''),\n imageurl: jQuery('img.primary-image').attr('src'),\n timeStamp: Date.now(),\n viewCount: 1,\n sessionId: window.bouncex.cookie.vid\n };\n \n this.settings.currentProduct = productValues;\n },\n \n /* --- END OF INITIALIZATION --- */\n /* --- HELPER FUNCTIONS --- */\n \n addProductToHistory: function (product) {\n var productHistory = this.settings.general.productHistory;\n productHistory.unshift(product);\n this.setProductHistory(productHistory);\n },\n \n compareProducts: function (productA, productB) {\n if (productA.url === productB.url && typeof productB.url !== 'undefined') {\n bouncex.err('product url matches a previous product', {source: 'isr'});\n return true;\n }\n \n return false;\n },\n \n trackProductHistory: function () {\n var productHistory = this.settings.general.productHistory;\n if (!this.settings.general.productPageIdentifier) { return; }\n \n if (this.settings.general.productHistoryLength > 0) {\n var historyUpdated = false;\n \n for (var i = 0; i < this.settings.general.productHistoryLength; i++) {\n if (this.compareProducts(productHistory[i], this.settings.currentProduct)) {\n productHistory[i].viewCount++;\n productHistory[i].timeStamp = Date.now();\n productHistory.unshift(productHistory[i]);\n productHistory.splice(i + 1, 1);\n historyUpdated = true;\n this.setProductHistory(productHistory);\n return;\n }\n }\n \n if (!historyUpdated) {\n this.addProductToHistory(this.settings.currentProduct);\n }\n } else {\n this.addProductToHistory(this.settings.currentProduct);\n }\n },\n \n \n /* --- END OF HELPER FUNCTIONS --- */\n /* --- GETTER FUNCTIONS --- */\n \n \n sortProductsByLastViewed: function (number) {\n var products = this.settings.general.productHistory;\n if (!number) { number = products.length; }\n return products.sort(function (a, b) { return b.timeStamp - a.timeStamp; }).slice(0, number);\n },\n \n maxProducts: function () {\n var maxProducts = this.settings.general.maxProducts;\n if (this.settings.general.productHistoryLength > maxProducts) {\n var topProducts = this.sortProductsByLastViewed(maxProducts);\n this.setProductHistory(topProducts);\n }\n },\n \n /* --- END GETTER FUNCTIONS --- */\n /* --- SETTER FUNCTIONS --- */\n \n setItemHistoryLengths: function () {\n this.settings.general.productHistoryLength = this.settings.general.productHistory.length;\n },\n \n setProductHistory: function (productHistory) {\n window.localStorage.setItem('bxProdHist', JSON.stringify(productHistory));\n this.settings.general.productHistory = productHistory;\n this.settings.general.productHistoryLength = productHistory.length;\n bouncex.setVarAndReload('products_tracked', productHistory.length);\n },\n \n /* --- END SETTER FUNCTIONS --- */\n /* --- CAMPAIGN TEMPLATING --- */\n populateCampaign: function (params) {\n if (!params || !params.campaignId || !params.numberProducts) { return false; }\n if (!params.hasOwnProperty('linkOpensNewTab')) { params.linkOpensNewTab = true; }\n \n var $campaign = jQuery('#bx-campaign-' + params.campaignId);\n var trackedProductArray = window.bouncex.bxISR.sortProductsByLastViewed(params.numberProducts);\n var self = this;\n jQuery.each(params.campaignSteps, function (x, y) {\n \n for ( var i = 0; i < params.numberProducts; i++ ) {\n \n var $customGroup = $campaign.find('#bx-form-' + params.campaignId + '-step-' + y.stepNumber + ' .bx-group-custom:eq(' + i +')');\n var $lineshape = $customGroup.find('.bx-row-line-custom .bx-lineshape');\n var $image = $customGroup.find('.bx-row-image img');\n var $text = $customGroup.find('.bx-row-text div');\n var $hoverStates = $customGroup.find('.bx-row-line-custom:eq(' + i +')').siblings('.bx-row-text').find('div');\n var $button = $customGroup.find('.bx-button');\n \n if (params.campaignSteps[x].productGroupsLink) {\n var productLink = (trackedProductArray[i].url.indexOf('http') > -1) ? trackedProductArray[i].url : window.top.location.origin + trackedProductArray[i].url;\n $customGroup.attr({\n 'href': productLink,\n 'data-click': 'hyperlink',\n 'target': params.linkOpensNewTab ? '_blank' : '_self',\n 'data-click-report': params.reportClicks ? 'default' : 'nothing'\n });\n \n if ($button.length > 0) {\n $button.addClass('bx-isr-preventclicks');\n }\n }\n \n if ($lineshape.length > 0) {\n $lineshape.css('background-image', 'url(' + trackedProductArray[i].imageurl + ')');\n } else if ($image.length > 0) {\n $image.attr('src', trackedProductArray[i].imageurl);\n }\n \n if ($text.length > 0) {\n $text.text(trackedProductArray[i].name);\n }\n }\n \n });\n \n },\n \n };\n \n window.bouncex.bxISR.init();\n })();\n // enable.feature.PERSISTENT_COUPONS\n /* enable.feature.COMPLIANCE_REFACTOR_ENABLED */\n ","force_https":false,"waypoints":false,"content_width":0,"gai":"","swids":"","sd":0,"ljq":"auto","campaign_id":0,"is_preview":false,"aco":{"first_party_limit":"3500","local_storage":"1"},"cmp":{"gdpr":1,"gmp":0,"whitelist_check":0},"burls":[{"prop":"contains","val":"tartenaturalcosmetics.com"},{"prop":"contains","val":"?bx=off"}],"ple":false,"fbe":false,"mas":2,"map":1,"gar":false,"ete":0,"ettm":true,"etjs":"","dge":false,"bxidLoadFirst":false,"pie":true,"cme":true,"gbi_enabled":0,"bpush":true,"pt":{"cart":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"/shop/bag/"}]]},"category":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"document.querySelectorAll('.plp-header').length > 0;"}],[{"activation":"current_page_url","prop":"not_contains","prop2":"","prop3":"","val":"/shop/search/"}]]},"checkout":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"/shop/checkout/"}]]},"home":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"window.location.pathname === '/';"}]]},"product":{"testmode":false,"val":[[{"activation":"js","prop":"","prop2":"","prop3":"","val":"document.querySelectorAll('.pdp-main-container').length > 0;"}]]},"search":{"testmode":false,"val":[[{"activation":"current_page_url","prop":"contains","prop2":"","prop3":"","val":"/shop/search/"}]]}},"els":null,"vars":[{"name":"on_cart_step","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function() {\n if (jQuery('#wrapper').length > 0) {\n return window.location.pathname.indexOf('/en_US/bag') > -1;\n } else {\n return jQuery('.checkoutStepHeader[style=\"opacity: 1;\"').find('span').text() === '1';\n }\n})();\n\n\n","trigger":""},{"name":"on_tartelette_account_step","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function() {\n if (jQuery('#wrapper').length > 0) {\n return window.location.pathname.indexOf('/en_US/register') > -1;\n } else {\n return jQuery('.checkoutStepHeader[style=\"opacity: 1;\"').find('span').text() === '2';\n }\n})();\n","trigger":""},{"name":"on_shipping_step","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return window.location.pathname.indexOf('/en_US/checkout/shipping') > -1;\n } else {\n return jQuery('.checkoutStepHeader[style=\"opacity: 1;\"').find('span').text() === '3';\n }\n})();","trigger":""},{"name":"on_billing_step","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return window.location.pathname.indexOf('/en_US/checkout/billing') > -1;\n } else {\n return jQuery('.checkoutStepHeader[style=\"opacity: 1;\"').find('span').text() === '4';\n }\n})();\n","trigger":""},{"name":"on_order_review_step","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return window.location.pathname.indexOf('/en_US/checkout/review') > -1;\n } else {\n return jQuery('.checkoutStepHeader[style=\"opacity: 1;\"').find('span').text() === '5';\n }\n})();\n\n","trigger":""},{"name":"items_in_cart","polling":"vars","persist":"no","page_types":[],"testmode":false,"default":"0","code":"(function(){\n if(bouncex.website.pts === 'checkout') {\n return Number(jQuery('.order-receipt-label.grand-total-label').first().text().replace(/[^0-9\\.]/g,''));\n }\n return Number(jQuery('.minicart-quantity').first().text().replace(/[^0-9\\.]/g,''));\n})();","trigger":""},{"name":"cart_value","polling":"vars","persist":"visit","page_types":[],"testmode":false,"default":"0","code":"(function() {\n if(jQuery('.minicart-footer .sub-total:visible').length > 0) {\n return Number(jQuery('.minicart-footer .sub-total').first().text().replace(/[^0-9\\.]/g,''));\n } else if (bouncex.website.pts === 'cart') {\n return Number(jQuery('.grand-total-sum').first().text().replace(/[^0-9\\.]/g,''));\n } else if (bouncex.website.pts === 'checkout') {\n return Number(jQuery('.subtotal-item .sub-total-adjusted').first().text().replace(/[^0-9\\.]/g,''));\n } else {\n return null;\n }\n })();","trigger":""},{"name":"logged_in","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"!!_etmc.user_info;","trigger":""},{"name":"footer_email_signup","polling":"all","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"jQuery('.footer-subscribe-body .sms-subscribe-modal .modal-heading:visible').length > 0 || null;","trigger":""},{"name":"checkout_email_signup","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":""},{"name":"category","polling":"none","persist":"no","page_types":[],"testmode":false,"default":0,"code":"bouncex.website.pts === 'category';","trigger":""},{"name":"amount_until_free_shipping","polling":"vars","persist":"visit","page_types":[],"testmode":true,"default":"0","code":"bouncex.vars.cart_value < 40 ? 40 - bouncex.vars.cart_value : 0;","trigger":""},{"name":"cart_value_mobile","polling":"all","persist":"visit","page_types":[],"testmode":false,"default":"","code":"(function() {\n if(jQuery('.minicart-footer .sub-total:visible').length > 0) {\n return Number(jQuery('.minicart-footer .sub-total').first().text().replace(/[^0-9\\.]/g,''));\n } else if (bouncex.website.pts === 'cart') {\n return Number(jQuery('.grand-total-sum').first().text().replace(/[^0-9\\.]/g,''));\n } else if (bouncex.website.pts === 'checkout') {\n return Number(jQuery('.subtotal-item .sub-total-adjusted').first().text().replace(/[^0-9\\.]/g,''));\n } else {\n return null;\n }\n})();","trigger":""},{"name":"amount_until_free_shipping_mobile","polling":"all","persist":"visit","page_types":[],"testmode":true,"default":"0","code":"bouncex.vars.cart_value_mobile < 40 ? 40 - bouncex.vars.cart_value_mobile : 0;","trigger":""},{"name":"offer_okay","polling":"none","persist":"no","page_types":[],"testmode":true,"default":"false","code":"(function(){\n var desktopFlag = jQuery('.ninjaHeadLocaleIndicator img');\n var mobileFlag = jQuery('.ninjaMobileFootShipToIndicator img');\n if (desktopFlag.length > 0){\n if (desktopFlag.attr('src').indexOf('USA.jpg') > -1||desktopFlag.attr('src').indexOf('CAN.jpg') > -1){\n return true;\n }\n } else if (mobileFlag.length > 0){\n if (mobileFlag.attr('src').indexOf('USA.jpg') > -1||mobileFlag.attr('src').indexOf('CAN.jpg') > -1){\n return true;\n }\n }\n})();","trigger":""},{"name":"ibx_test","polling":"none","persist":"visit","page_types":[],"testmode":true,"default":"false","code":"location.href.indexOf('ibx_test') >= 0 || null;","trigger":""},{"name":"product_page","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"bouncex.website.pts === 'product';","trigger":""},{"name":"item_cost","polling":"none","persist":"no","page_types":["product"],"testmode":false,"default":"0","code":"Number(jQuery('.pdp-main-container .product-price .sales .value').first().text().replace(/[^0-9\\.]/g,''));","trigger":""},{"name":"product_available","polling":"vars","persist":"no","page_types":["product"],"testmode":false,"default":"false","code":"jQuery('.showBackInStock:visible').length === 0 && jQuery('.color-attribute.selected.unselectable').length === 0;","trigger":""},{"name":"gwp_threshold","polling":"vars","persist":"visit","page_types":[],"testmode":true,"default":"0","code":"bouncex.vars.cart_value < 75 ? 75 - bouncex.vars.cart_value : 0;","trigger":""},{"name":"gwp_threshold_mobile","polling":"all","persist":"visit","page_types":[],"testmode":true,"default":"0","code":"bouncex.vars.cart_value_mobile < 75 ? 75 - bouncex.vars.cart_value_mobile : 0;","trigger":""},{"name":"products_tracked","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"0","code":"bouncex.parseJSON(localStorage.getItem('bxProdHist')).length;","trigger":""},{"name":"oos_shade","polling":"all","persist":"no","page_types":["product"],"testmode":false,"default":"false","code":"jQuery('.showBackInStock:visible').length > 0 || jQuery('.color-attribute.selected.unselectable').length > 0;","trigger":"pageload"},{"name":"google_pla","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"window.location.href.indexOf('utm_') > -1 ? true : false;","trigger":""},{"name":"extra_off","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"0","code":"(function() {\n \n var originalPrice;\n var currentPrice = parseInt(bouncex.$('#microdata > div').children('span[itemprop=\"offers\"]').children('span[itemprop=\"price\"]').text(), 10);\n var reducedPrice = jQuery('.ogpromo-price').last().text().replace(/[^0-9\\.]/g,'');\n var retailPrice = jQuery('.promo-text').find('del').text().replace(/[^0-9.]/g, '');\n \n if (reducedPrice.length > 0){\n originalPrice = parseInt(reducedPrice, 10);\n return originalPrice - currentPrice;\n } else if (retailPrice.length > 0) {\n originalPrice = parseInt(retailPrice, 10);\n return originalPrice - currentPrice;\n }\n})();","trigger":""},{"name":"on_trend","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"(function(){\n\tvar whats_new = bouncex.$('#edge_breadcrumb').children('#bcb').text().trim() == \"what's new\";\n\tif(whats_new === true){\n\t\treturn true;\n\t}\n})();","trigger":""},{"name":"available_shades","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"0","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return jQuery('.swatches.color .selectable').length;\n } else {\n return (function(){\n\tvar shade_count = bouncex.$('.shadeSelArea').children('img').length;\n\tif(bouncex.$('.shadeSelArea').length){\n\t\treturn shade_count;\n\t}\n})();\n }\n})();\n\n\n","trigger":""},{"name":"vegan_friendly","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return jQuery('.tab label:contains(Why We Love It)').siblings().text().toLowerCase().indexOf('vegan') > -1 ? 'vegan friendly' : '';\n } else {\n return (function(){\n\tvar vegan = bouncex.$('.veganLabel');\n\n\tif(vegan.css('display') == 'block'){\n\t\treturn '- vegan friendly';\n\t} else {\n\t\treturn '';\n\t}\n})();\n }\n})();\n\n\n\n","trigger":""},{"name":"hypoallergenic","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return jQuery('.tab label:contains(Why We Love It)').siblings().text().toLowerCase().indexOf('hypoallergenic') > -1 ? 'hypoallergenic' : '';\n } else {\n return (function(){\n\tvar hypoallergenic = bouncex.$('.ninjaTabArea > div.tab.tabResults').text().trim().indexOf('hypoallergenic');\n\tif(bouncex.$('.ninjaTabArea > div.tab.tabResults').length){\n\tif(hypoallergenic !== -1){\n\t\t\treturn '- hypoallergenic';\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\t}\n})();\n }\n})();\n\n","trigger":""},{"name":"dermatologist_tested","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return jQuery('.tab label:contains(Why We Love It)').siblings().text().toLowerCase().indexOf('dermatologist tested') > -1 ? 'dermatologist tested' : '';\n } else {\n return (function(){\n\tvar dermatologist = bouncex.$('.ninjaTabArea > div.tab.tabResults').text().trim().indexOf('dermatologist tested');\n\tif(bouncex.$('.ninjaTabArea > div.tab.tabResults').length){\n\tif(dermatologist !== -1){\n\t\t\treturn '- dermatologist tested';\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\t}\n})();\n }\n})();\n\n","trigger":""},{"name":"pct_recommend","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"0","code":"(function() {\n if (bouncex.vars.on_new_site) {\n return Math.round(jQuery('#TTreviewSummaryAverageRating').text().split('/').reduce(function(a,b) {return +a/+b;})*100);\n } else {\n return (function(){\n var ratingValue = parseFloat(jQuery('span[itemprop=\"ratingValue\"]').eq(0).text());\n var bestRating = parseFloat(jQuery('span[itemprop=\"bestRating\"]').eq(0).text());\n\n return ratingValue/bestRating * 100;\n})();\n }\n})();\n\n","trigger":""},{"name":"g_clid","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"(function(){\n return bouncex.ibx._getparam('gclid');\n})();","trigger":""},{"name":"ibx_source","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"(function(){\n\tvar ibx_source = bouncex.ibx._getparam('ibx_source');\n\treturn ibx_source ? ibx_source : null;\n}());","trigger":""},{"name":"nano_state","polling":"none","persist":"visit","page_types":[],"testmode":true,"default":"false","code":"null;","trigger":""},{"name":"item_10per_off","polling":"none","persist":"no","page_types":[],"testmode":true,"default":"0","code":"(bouncex.vars.item_cost*.9).toFixed(2);","trigger":""},{"name":"clicked_best_seller","polling":"none","persist":"visit","page_types":[],"testmode":true,"default":"false","code":"null;","trigger":""},{"name":"clicked_hero_img2","polling":"none","persist":"visit","page_types":[],"testmode":true,"default":"false","code":"null;","trigger":""},{"name":"new_arrival","polling":"none","persist":"no","page_types":[],"testmode":true,"default":"false","code":"jQuery('.mainDesc').text().trim().indexOf('Please note this item is not eligible for select discounts or promotions') > -1;","trigger":""},{"name":"cart","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":""},{"name":"have_in_cart","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"Math.floor((Math.random() * 15) + 10);","trigger":""},{"name":"logged_in_new_site","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"!!_etmc.user_info;","trigger":""},{"name":"items_in_cart_new_site","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"0","code":"(function(){\n if(bouncex.website.pts === 'checkout') {\n return Number(jQuery('.order-receipt-label.grand-total-label').first().text().replace(/[^0-9\\.]/g,''));\n }\n return Number(jQuery('.minicart-quantity').first().text().replace(/[^0-9\\.]/g,''));\n})();","trigger":""},{"name":"on_new_site","polling":"none","persist":"no","page_types":[],"testmode":true,"default":"false","code":"jQuery('#wrapper').length > 0;","trigger":""},{"name":"in_checkout_flow","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"bouncex.website.pts === 'checkout';","trigger":""},{"name":"has_recommendations","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"jQuery('.grid-tile.recommendation-item').length > 0","trigger":""},{"name":"ever_logged_in","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"bouncex.vars.logged_in_new_site || bouncex.vars.logged_in || null;","trigger":""},{"name":"sms_footer_submit","polling":"all","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"jQuery('.footer-subscribe-body .email-subscribe-modal .modal-heading:visible').length > 0 || null;","trigger":""},{"name":"user_identified","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":""},{"name":"cart_plurality","polling":"all","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"bouncex.vars.items_in_cart > 1 ? 'ITEMS' : bouncex.vars.items_in_cart === 1 ? 'ITEM' : false;","trigger":""},{"name":"full_isr_avail","polling":"all","persist":"visit","page_types":[],"testmode":true,"default":"false","code":"(function(){\n var isrTracking = JSON.parse(window.localStorage.getItem('bxProdHist'));\n if(isrTracking === null){return false;}\n \tfor(var data in isrTracking){\n \t\tvar trackedData = isrTracking[data].imageurl && (isrTracking[data].imageurl.indexOf('https://tartecosmetics.com/dw/image/v2') === -1 || isrTracking[data].url.indexOf('https://tartecosmetics.com/') === -1 || isrTracking[data].name.length === 0 || isrTracking[data].price.length === 0);\n\n \t\tif( trackedData ){\n \t\t\treturn false;\n \t\t}\n \t}\n return true;\n})();","trigger":""},{"name":"attentive_id","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"document.cookie.replace(/(?:(?:^|.*;\\s*)__attentive_id\\s*=\\s*([^;]*).*$)|^.*$/, \"$1\") || false;","trigger":"pageload"},{"name":"id_device","polling":"all","persist":"no","page_types":[],"testmode":true,"default":"false","code":"bouncex.dg.softID;","trigger":"pageload"},{"name":"purchase_count_pushdiscount","polling":"none","persist":"permanent","page_types":[],"testmode":true,"default":"false","code":"null;","trigger":"pageload"},{"name":"product_value_desktop","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"Number(jQuery('.pdp-main-container .product-price .sales .value').first().text().replace(/[^0-9\\.]/g,''));","trigger":"pageload"},{"name":"product_value_mobile","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"Number(jQuery('.pdp-main-container .product-price .sales .value').first().text().replace(/[^0-9\\.]/g,''));","trigger":"pageload"},{"name":"product_recently_added","polling":"none","persist":"no","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"},{"name":"cookie_banner_present","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"jQuery('#onetrust-button-group-parent').is(':visible');","trigger":"pageload"},{"name":"promotion_excluded","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"jQuery('.content-asset span:contains(Excluded from promotions)').is(':visible');","trigger":"pageload"},{"name":"firstsource_code","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"},{"name":"cart_set","polling":"none","persist":"visit","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"},{"name":"cart_subtotal","polling":"all","persist":"no","page_types":[],"testmode":false,"default":"false","code":"bouncex.utils.getNestedProp('ga4ecommData.cart_subtotal', 0);","trigger":"pageload"},{"name":"cart_images","polling":"none","persist":"permanent","page_types":[],"testmode":false,"default":"false","code":"null;","trigger":"pageload"},{"name":"item_images","polling":"none","persist":"permanent","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":"/* ---------------------------- SHARED VARIABLES ---------------------------- */\n\nvar CLEAN_URL = bouncex.utils.url.allowParams();\n\n/* ------------------------------ ITEM TRACKING ----------------------------- */\nfunction getItemId() {\n var $masterIds = jQuery('.product-detail[data-masterid]'),\n bundleItemId = (jQuery('.page[data-action=\"Product-Show\"]').attr('data-querystring') || '').replace('pid=', '');\n \n if ($masterIds.length > 1 && $masterIds.hasClass('bundle-item')) {\n return bundleItemId;\n }\n return $masterIds.data('masterid');\n}\n\nfunction isExludedProduct(productId) {\n var EXCLUSIONS_IDS = [1200, 2862, 2863, 2864, 2866, 2867, 2868, 2869, 2870, 2871, 2872, 2873, 2885]; \n \n return EXCLUSIONS_IDS.indexOf(productId) > -1\n}\n\nfunction getItem() {\n return {\n id: getItemId(),\n copy: jQuery('.product-detail[data-itemname]').data('itemname') || jQuery('input[name=\"bundle-name\"]').first().val(),\n category: jQuery('ol.breadcrumb > li:nth-last-child(2)').text().trim(),\n url: CLEAN_URL,\n imageurl: jQuery('.pdp-image-section .swiper-slide-active img').first().attr('src') || jQuery('.isBundle .yotpo.bottomLine').first().data('image-url'),\n instock: jQuery('.showBackInStock:visible').length === 0,\n promotion_excluded: bouncex.vars.promotion_excluded,\n excluded: isExludedProduct(getItemId())\n };\n}\n\nfunction initializeItemEvents() {\n var item;\n\n bouncex.et.onTrue(\n function () {\n item = getItem();\n return !!item.id &&\n !!item.copy &&\n !!item.category &&\n !!item.url &&\n !!item.imageurl;\n },\n function () {\n if (item.url.indexOf('gift-certificates') > -1) {\n return;\n }\n bouncex.push(['item', item]);\n handleItemImageRTV(item.imageurl);\n initializeSkuEvents(item.id);\n bouncex.push(['view item', { 'item:id': item.id, 'item:itemgroupid': item.id }]);\n },\n 10\n );\n}\n\n/* ------------------------------ SKU TRACKING ------------------------------ */\nfunction initializeSkuEvents(itemId) {\n var skuId,\n $variants = jQuery('.automat-variants-container:visible');\n if ($variants.length === 0) {\n skuId = jQuery('.product-detail.product-wrapper').data('pid') || '';\n if (skuId) {\n fireSkuEvent(itemId, skuId);\n }\n }\n}\n\nfunction fireSkuEvent(itemId, skuId) {\n bouncex.push([\n 'select_sku',\n {\n 'item:id': itemId,\n 'item:itemgroupid': itemId,\n 'item:feedid': skuId\n }\n ]);\n}\n\n/* ---------------------------- CATEGORY TRACKING --------------------------- */\n\nfunction getItemIdsCat() {\n var ids = [];\n\n jQuery('.product-tiles .product').each(function (i, e) {\n var id = jQuery(e).data('pid');\n\n if (id && ids.indexOf(id) < 0) {\n ids.push(id);\n }\n });\n\n return ids.join(',');\n}\n\nfunction getCategoryObject() {\n return {\n 'page:url': bouncex.website.pts === 'search' ? bouncex.utils.url.allowParams(['q']) : CLEAN_URL,\n 'items:ids': getItemIdsCat()\n };\n}\n\nfunction initializeCategoryEvents() {\n var categoryObj,\n eventName;\n\n if (bouncex.website.pts === 'search') {\n eventName = 'view search';\n } else {\n eventName = 'view category';\n }\n\n bouncex.et.onTrue(\n function () {\n categoryObj = getCategoryObject();\n return !!categoryObj['items:ids'].length &&\n !!categoryObj['page:url'];\n },\n function () {\n bouncex.push([eventName, categoryObj]);\n },\n 10\n );\n}\n\n/* ------------------------------- QUICKVIEW -------------------------------- */\nfunction handleItemImageRTV(imageurl) {\n var images = JSON.parse(bouncex.vars.item_images || '[]');\n if (images.indexOf(imageurl) < 0) {\n images.push(imageurl);\n }\n bouncex.setVar('item_images', JSON.stringify(images.slice(-2)));\n}\n\nfunction handleCartImageRTV(items) {\n var images = JSON.stringify(items.reduce(function (images, item) {\n var image = bouncex.utils.getNestedProp('images.small[0].url', '', item),\n imageUrl = image ? bouncex.utils.url.allowParams([], image) : '';\n if (imageUrl && images.indexOf(imageUrl) < 0) {\n images.push(image);\n }\n\n return images;\n }, []));\n\n bouncex.setVar('cart_images', JSON.stringify(images));\n}\n\nfunction ajaxTrackingEvents(e, xhr, settings) {\n if (!bouncex.utils.url.getParam('bx_cart')\n && xhr.status === 200) {\n if (settings.url.indexOf('/Product-ShowQuickView') > -1) {\n ajaxQuickView(xhr);\n } else if (settings.url.indexOf('/Product-Variation') > -1) {\n ajaxQVSelectSku(xhr);\n } else if (settings.url.indexOf('/Cart-AddProduct') > -1) {\n ajaxATC(xhr);\n handleCartImageRTV(bouncex.utils.getNestedProp('responseJSON.cart.items', [], xhr));\n }\n\n }\n}\nfunction ajaxQuickView(xhr) {\n var id = xhr.responseJSON.selectedOptionValueId;\n if (!id) {\n return;\n }\n bouncex.push(['view item', { 'item:id': id, 'item:itemgroupid': id }]);\n}\nfunction ajaxQVSelectSku(xhr) {\n var itemData = xhr.responseJSON.product.ga4ItemData;\n if (!itemData || !itemData.item_id || !itemData.item_variant) {\n return;\n }\n fireSkuEvent(itemData.item_id, itemData.item_variant);\n}\nfunction ajaxATC(xhr) {\n var cartItems = xhr.responseJSON.cart.items,\n lastAdded = xhr.responseJSON.lastAddedItem,\n id;\n cartItems.forEach(function (item) {\n if (item.id === lastAdded.pid) {\n id = item.ga4ProductLineItemData.item_id;\n }\n });\n if (!id) {\n return;\n }\n fireAddToCart(id);\n}\n\n\n/* ------------------------------- CART EVENTS ------------------------------ */\n\nfunction fireAddToCart(itemId) {\n bouncex.push(['add to cart', { 'item:id': itemId }]);\n\n if (bouncex.vars.cart_set) {\n return;\n }\n bouncex.setVar('cart_set', true);\n}\n\nfunction addEmptyCartListener() {\n bouncex.et.onVisible(jQuery('h1.hero-heading'), function () {\n if (bouncex.vars.cart_set && bouncex.vars.items_in_cart === 0) {\n bouncex.setTimeout2(function () {\n bouncex.push(['empty_cart']);\n bouncex.setVar('cart_set', false);\n }, 1000);\n }\n });\n}\n\nfunction initializeCartEvents() {\n bouncex.et.cart.init({\n replenish: function () { },\n replenishmentType: 'single'\n });\n bouncex.et.on(bouncex.document, 'ajaxComplete.wknd', ajaxTrackingEvents);\n}\n\n/* ------------------------------ USER TRACKING ----------------------------- */\n\nfunction initializeUserTracking() {\n if (!bouncex.vars.logged_in || !!bouncex.vars.user_identified) {\n return;\n }\n\n var userEmail;\n\n bouncex.et.onTrue(\n function () {\n userEmail = bouncex.utils.getNestedProp('_etmc.user_info.email', '');\n return bouncex.utils.validate.email(userEmail);\n },\n function () {\n bouncex.push([\n 'user',\n {\n 'email': userEmail,\n 'source': 'LoggedIn'\n }\n ]);\n bouncex.setVar('user_identified', true);\n },\n 5\n );\n}\n\n/* --------------------------- INITIALIZE TRACKING -------------------------- */\n\nfunction isValidDomain() {\n return CLEAN_URL.indexOf('https://tartecosmetics.com') > -1;\n}\n\nfunction isEn() {\n return bouncex.html.attr('lang') === 'en';\n}\n\nfunction isNotExcludedCountry() {\n var selectedCountry = jQuery('.current-country').attr('data-countrycode') || '',\n geoCountry = bouncex.state.geo.country_code,\n excludedCountryCodes = ['GB', 'RU'];\n\n return excludedCountryCodes.indexOf(selectedCountry) === -1\n && excludedCountryCodes.indexOf(geoCountry) === -1;\n}\n\nfunction isValidForTracking() {\n return isValidDomain() && isEn() && isNotExcludedCountry();\n}\n\nfunction init() {\n if (!isValidForTracking()) {\n return;\n }\n\n initializeUserTracking();\n initializeCartEvents();\n\n switch (bouncex.website.pts) {\n case 'category':\n case 'search':\n initializeCategoryEvents();\n break;\n case 'product':\n initializeItemEvents();\n break;\n case 'cart':\n // add a two-second timeout since empty cart flashes on the screen on load\n bouncex.setTimeout2(addEmptyCartListener, 2000);\n break;\n default:\n break;\n }\n}\n\ninit();\n","cjs":"bouncex.ibx.track('event', bouncex.ibx.cvar.promoStatus + 'bouncex conversion');","miw":0,"mibcx":1,"te":1,"cart_rep":{"get":"","set":""},"ulpj":{"et_rid":"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":["US"],"fme":true,"fmx":"input[id*=\"giftcert_purchase_confirmRecipientEmail\"]","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":"275955412","ga4_measurement_id":"G-2RC9LMBHPX"} ; 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":"060c82010be32c8940e5ef98bcf77a22","creativesBaseStyles":"a53944a2","gpsAuction":"1375a7b38c31e98d14fe7f396b72da14","inbox":"02aca5df0e176b8810a86da97ac05424","onsite":"0e56ab6ba004ee080ce3deb3edae35e9","sms":"e39203556bab2366e56296ce42e974a7","websdk":"0704dae1eb637cbeb4a847506058402d"}; 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_e6aef002e162dc3c3a947c6f327cd93d.br.js'); script.setAttribute('async', 'async'); document.body.appendChild(script); bouncex.initializeTag = function() {}; }; document.body.appendChild(runtime); } } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", bxBootstrap); } else { bxBootstrap(); }})();