(function() { // Set the pdUid cookie with session-level expiration (no explicit expiration date) document.cookie = "pdUid=false; path=/; domain=skin-etc.com; SameSite=Lax"; })();console.log('uid='); //*** time check 1 (0.08619s elapsed) //*** time check 2 (0.08622s elapsed) //*** JJ itemId=larotopufocl //*** pageType=product //*** time check 3 (0.09229s elapsed) //*** forceOutOfStock=false //*** time check 4 (0.09231s elapsed) //*** public_mod_structuredData_renderJsonByItemId found //*** public_mod_structuredData enabled var script = document.createElement('script'); script.setAttribute('type', 'application/ld+json'); script.innerHTML = "{\"@context\":\"http:\\/\\/schema.org\",\"@type\":\"Product\",\"offers\":{\"@type\":\"Offer\",\"price\":\"14.39\",\"priceCurrency\":\"USD\",\"priceValidUntil\":\"2026-09-28\",\"seller\":{\"@type\":\"Organization\",\"name\":\"Skin-Etc.com\"},\"@id\":\"https:\\/\\/www.skin-etc.com\\/larotopufocl.html#offers\",\"url\":\"https:\\/\\/www.skin-etc.com\\/larotopufocl.html\",\"itemCondition\":\"NewCondition\",\"availability\":\"OutOfStock\"},\"name\":\"La Roche-Posay Toleriane Purifying Foaming Cleanser 400 ml\",\"description\":\"Toleriane Purifying Foaming Facial Cleanser is a daily face wash for normal to oily, sensitive skin. Formulated with La Roche-Posay prebiotic thermal spring water, niacinamide, and ceramide-3, this face wash gently cleanses skin of dirt, makeup, and impurities while maintaining the skin\'s natural moisture barrier and pH. Its gentle foaming formula leaves skin feeling clean, fresh, and comfortable with no pore-clogging residue. Skin Concern: Sensitive skin Skin Type: Normal\\/combination skin Oily skin Key Ingredients: Ceramide-3 - Ceramides are lipids naturally found in skin. They play an essential role to help retain moisture and maintain a healthy skin barrier. Ceramide 3, also known as Ceramide NP, is a skin-identical lipid used in our formulas to help support the skin moisture barrier. Glycerin - Derived from vegetable sources, it\'s an excellent humectant. It helps hydrate skin by absorbing water from the surrounding environment. Derived from vegetable sources, it\'s an excellent humectant. It helps hydrate skin by absorbing water from the surrounding environment.\\/li> Niacinamide - A form of vitamin B3, niacinamide is a water soluble vitamin. It is widely used in dermatology for its soothing properties, helping restore skin\'s moisture barrier, and visibly fading skin discolorations. La Roche-Posay Prebiotic Thermal Water - A soothing water sourced in the town of La Roche-Posay in France and a core ingredient in most of our products. It contains a unique combination of minerals, trace elements, and a high concentration of selenium, a natural antioxidant.\",\"brand\":{\"@type\":\"Brand\",\"name\":\"La Roche-Posay\"},\"image\":\"https:\\/\\/images.practicaldatacore.com\\/skin-etc\\/getProductImage.php?size=imageMedium&cb=1790197929&productId=larotopufocl\",\"sku\":\"LRP-4582\",\"@id\":\"https:\\/\\/www.skin-etc.com\\/larotopufocl.html#product\",\"gtin12\":\"3337875545822\"}" document.getElementsByTagName('head')[0].appendChild(script); ; //*** time check 5 (0.10482s elapsed) //*** mod_storeClosed called //*** time check 6 (0.1059s elapsed) //*** mod_specialAccess //*** time check 7 (0.11061s elapsed) var pdServerTime = new Date("2026-09-25T21:18:39-05:00"); var pdProductId = "larotopufocl"; var pdProductCode = "LRP-4582"; //************************************************ //************ JS/CSS FILE ROUTINES ************* //************************************************ function pdLoadJsCssFile(filename, filetype){ if (filetype=="js") { var fileref=document.createElement('script'); fileref.setAttribute("type","text/javascript"); fileref.setAttribute("async",true); fileref.setAttribute("src", filename); } else if (filetype=="css") { var fileref=document.createElement("link"); fileref.setAttribute("rel", "stylesheet"); fileref.setAttribute("type", "text/css"); fileref.setAttribute("href", filename); } if (typeof fileref!="undefined") document.getElementsByTagName("head")[0].appendChild(fileref); } function pdAddStyle(css) { var style = document.createElement("style"); style.innerHTML = css; document.getElementsByTagName("body")[0].appendChild(style); } //*** time check 8 (0.11064s elapsed) /* pdGetElementsByClassName -- Revised to avoid JS conflicts with libraries that override native "getElementsByClassName" browser function in IE Developed by Robert Nyman, http://www.robertnyman.com Code/licensing: http://code.google.com/p/getelementsbyclassname/ */ var pdGetElementsByClassName = function (className, tag, elm){ var ieVersion = getInternetExplorerVersion(); if (ieVersion == -1 && document.getElementsByClassName) { pdGetElementsByClassName = function (className, tag, elm) { elm = elm || document; var elements = elm.getElementsByClassName(className), nodeName = (tag)? new RegExp("\b" + tag + "\b", "i") : null, returnElements = [], current; for(var i=0, il=elements.length; i -1) { if(signatureList[i] == 'android') { //*** ONLY CONSIDER android a mobile device if "mobile" is also present in user agent string if(agent.indexOf("mobile") > -1) isMobile = true; } else { isMobile = true; } } } return isMobile; } function pdIsIpad() { var isIpad = false; var signatureList = new Array('ipad'); var agent = navigator.userAgent.toLowerCase(); for(var i=0;i -1) isIpad = true; } return isIpad; } function pdIsTablet() { var isTablet = false; var signatureList = new Array('ipad', 'android'); var agent = navigator.userAgent.toLowerCase(); for(var i=0;i -1) { isTablet = true; //*** ASSUME TABLET if(signatureList[i] == 'android') { //*** ONLY CONSIDER android a mobile device if "mobile" is also present in user agent string if(agent.indexOf("mobile") > -1) isTablet = false; } else { isTablet = true; } } } return isTablet; } function pdFormatCurrency(num, includeDollarSign) { num = num.toString().replace(/$|\,/g,''); if(isNaN(num)) num = "0"; sign = (num == (num = Math.abs(num))); num = Math.floor(num*100+0.50000000001); cents = num%100; num = Math.floor(num/100).toString(); if(cents<10) cents = "0" + cents; for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3)); var returnValue = (((sign)?'':'-') + num + '.' + cents); if(includeDollarSign == true) returnValue = "$" + returnValue; return returnValue; } function pdFindParentForm(element) { var elm,parentForm; for (elm = element.parentNode; elm; elm = elm.parentNode) { if(elm.tagName.toLowerCase() == "form") { parentForm = elm; break; } } return parentForm; } function pdHideForLoggedInUser() { var hideList = pdGetElementsByClassName("pdHideForLoggedInUser", null); for(var i=0;i")+1); } var data = jQuery.parseJSON(response); console.log(data); if (data['loggedIn'] == true){ jQuery(pdAddToFavoritesButton).addClass("is-favorite"); console.log("Success adding to favorites"); } else{ console.log("User not logged in adding to favorites"); } }, 'error': function(xhr, status, error){ var errorMessage = xhr.status + ': ' + xhr.statusText console.log('Error - ' + errorMessage); } }); }); function pdAddToFavorites(orderForm,index,productUrl) { var pdAddToFavoritesAction = "https://myaccount.skin-etc.com/mod_favorites/favoritesAddItem.php"; if(pdIsBlank(index)) index = 0; var item = "vwitem" + index; var itemAttr = "vwattr" + index + "_"; //*** CAN'T FIND MULTIFORM ELEMENT? FALL BACK TO SINGLE ITEM CASE if(typeof orderForm[item] == "undefined") { item = "item"; itemAttr = "vwattr_"; } //******** ATTACH PRODUCT ID INPUT ************** if(item != "item") { var inputProductId = document.createElement("INPUT"); inputProductId.type = "hidden"; inputProductId.name = "add-single-favorites"; inputProductId.value = index; orderForm.appendChild(inputProductId); } if(productUrl == "autoDetect") productUrl = String(document.location); if(!pdIsBlank(productUrl)) { var inputOptions = document.createElement("INPUT"); inputOptions.type = "hidden"; inputOptions.name = "productUrl"; inputOptions.value = productUrl; orderForm.appendChild(inputOptions); } var tempAction = orderForm.action; var copiedQueryString = ""; var queryStringPosition = tempAction.indexOf("?"); if(queryStringPosition > -1) { copiedQueryString = tempAction.substring(queryStringPosition, tempAction.length); copiedQueryString = copiedQueryString.replace("+", "%20"); } orderForm.action=pdAddToFavoritesAction + copiedQueryString; if(orderForm.target != "_top") orderForm.target = ""; //*** COMPAT W/ SCFC orderForm.submit(); orderForm.action = tempAction; orderForm.removeChild(inputProductId); orderForm.removeChild(inputOptions); return false; } //*** mod_favorites enabled //*** public_mod_favorites_renderAddToFavoritesButton found jQuery(document).ready(function(){ jQuery(".pdAddToFavWrap").each(function(){ var itemId = jQuery(this).attr("data-itemid"); var productId = jQuery(this).attr("productId"); var item; if(!isBlank(itemId)){ item = itemId; }else{ item = productId; } var orderForm = jQuery(this).parents('form:first'); jQuery(this).removeAttr('onClick'); var pdAddToFavoritesButton = jQuery(this); optionString = jQuery(orderForm).serialize(); var data = { vwitem: item, productOptionList: optionString } jQuery.ajax({ // 'async': false, 'global': false, 'xhrFields': {withCredentials: true}, 'type': "POST", 'url': "https://myaccount.skin-etc.com//mod_favorites/ajax/favoritesCheckItemFavorited.php?isCategory=false", 'data': data, 'crossDomain': true, 'success': function (response) { var data = jQuery.parseJSON(response); if (data['loggedIn'] == true){ if (data['message'] == 'success'){ jQuery(pdAddToFavoritesButton).html('
Add to Favorites
'); } else if (data['error'] == ""){ jQuery(pdAddToFavoritesButton).html(data['message']); // jQuery(pdAddToFavoritesButton).prop("onclick",null).off("click"); } else { jQuery(pdAddToFavoritesButton).html('
Add to Favorites
'); } } else{ window.location.href = data['message']; } }, 'error': function(xhr, status, error){ var errorMessage = xhr.status + ': ' + xhr.statusText console.log('Error - ' + errorMessage); } }); }); }); jQuery(document).on("click", ".pdAddToFavWrap", function (event) { var itemId = jQuery(this).attr("data-itemid"); var productId = jQuery(this).attr("productId"); var item; if(!isBlank(itemId)){ item = itemId; }else{ item = productId; } var orderForm = jQuery(this).parents('form:first'); var pdAddToFavoritesButton = jQuery(this); optionString = jQuery(orderForm).serialize(); var data = { vwitem: item, productOptionList: optionString } //**** IF ITEM IS ALREADY FAVORITED, DISABLE ACTIONS AND DIRECT TO CUSTOMER FAVORITES *** var pdItemAlreadyInFavorites = jQuery(this).children("div").hasClass("pdAddToFavExists"); var pdErrorAddingToFavorites = jQuery(this).children("div").hasClass("pdAddToFavError"); var pdItemAddedToFavorites = jQuery(this).children("div").hasClass("pdAddToFavSuccess"); var pdItemAlreadyInFavoritesSection = jQuery(this).children("div").hasClass("pdAddToFavExistsSection"); var pdErrorAddingToFavoritesSection = jQuery(this).children("div").hasClass("pdAddToFavErrorSection"); var pdItemAddedToFavoritesSection = jQuery(this).children("div").hasClass("pdAddToFavSuccessSection"); if(pdItemAlreadyInFavorites == true || pdErrorAddingToFavorites == true || pdItemAddedToFavorites == true || pdItemAlreadyInFavoritesSection == true || pdErrorAddingToFavoritesSection == true || pdItemAddedToFavoritesSection == true){ console.log("Item is already in customer favorites"); pdItemAddedToFavorites window.location.href = "https://myaccount.skin-etc.com//mod_favorites/favorites.php"; return false; } jQuery.ajax({ // 'async': false, 'global': false, 'xhrFields': {withCredentials: true}, 'type': "POST", 'url': "https://myaccount.skin-etc.com//mod_favorites/ajax/favoritesAddItemNew.php?isCategory=false", 'data': data, 'crossDomain': true, 'success': function (response) { if (response.indexOf("<") == 0){ response = response.slice(response.indexOf(">")+1); } var data = jQuery.parseJSON(response); // console.log(data); if (data['loggedIn'] == true){ jQuery(pdAddToFavoritesButton).html(data['message']); } else{ window.location.href = data['message'] + "?productList=" + encodeURIComponent(data['productList']); } }, 'error': function(xhr, status, error){ var errorMessage = xhr.status + ': ' + xhr.statusText console.log('Error - ' + errorMessage); } }); event.stopPropagation(); event.preventDefault(); }); //*** time check 13 (0.17205s elapsed) //*** time check 14 (0.17206s elapsed) var pdOneBannerEl = document.getElementById('pd_pdOneBanner'); if (pdOneBannerEl) { //*** BANNER ALREADY EXISTS, DO NOT RE-INSERT } else { pdOneBannerEl = document.createElement('div'); pdOneBannerEl.id = 'pd_pdOneBanner'; if (document.body && document.body.firstChild) { document.body.insertBefore(pdOneBannerEl, document.body.firstChild); } else if (document.body) { document.body.appendChild(pdOneBannerEl); } } if (pdOneBannerEl) { pdOneBannerEl.innerHTML = " Account Account "; } //*** time check 15 (0.19416s elapsed) if (typeof pdPerformLoginActions === "function") { pdPerformLoginActions(false); } //*** time check 16 (0.19497s elapsed) //*** time check 17 (0.19501s elapsed) //*** time check 18 (0.19502s elapsed) //*** time check 19 (0.19502s elapsed) //*** time check 20 (0.1957s elapsed) //*** time check 21 (0.19634s elapsed) //*** time check 22 (0.20027s elapsed) //********************************* //*** BEGIN mod_promotionCenter *** //********************************* //*** COULD NOT FIND PUBLIC FUNCTION 'public_mod_promotionCenter_getRenderedPageScript3()' //******************************* //*** END mod_promotionCenter *** //******************************* //*** time check 23 (0.20039s elapsed) //*** SEND PROMO INFO TO ALREADY ON-PAGE HANDLER FUNCTION var pdPromo = {}; try{pdHandlePromoInfo(pdPromo)} catch(e) {} //*** SEND PROMO INFO TO ALREADY ON-PAGE HANDLER FUNCTION var pdProductListCalloutHtml = ""; try{pdHandleProductListCallout(pdProductListCalloutHtml)} catch(e) {} //*** time check 24 (0.20122s elapsed) //*** mod_fbConversion is NOT enabled! //*** time check 25 (0.2019s elapsed) //*** time check 26 (0.20257s elapsed) //*** time check 27 (0.20323s elapsed) //*** time check 28 (0.20392s elapsed) //**** CART ITEM COUNT MESSAGE ***** function pdDisplayCartItemCount() { var pdCartItemCount = pdGetCookie('pdCartItemCount'); if(!pdIsBlank(pdCartItemCount)) { var pdCartItemCountMessage = pdCartItemCount; jQuery('.pdCartItemCountMessage').html(pdCartItemCountMessage); } } pdDisplayCartItemCount(); //*** pageScript end (0.20399s elapsed) //*** time check 29 (0.20399s elapsed) //*** PAGESCRIPT DONE