console.log('uid='); //*** time check 1 (0.10724s elapsed) //*** time check 2 (0.10727s elapsed) //*** JJ itemId=laroefse //*** pageType=product //*** time check 3 (0.10757s elapsed) //*** forceOutOfStock=false //*** time check 4 (0.10926s 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\":\"35.99\",\"priceCurrency\":\"USD\",\"priceValidUntil\":\"2025-05-13\",\"seller\":{\"@type\":\"Organization\",\"name\":\"Skin-Etc.com\"},\"@id\":\"https:\\/\\/www.skin-etc.com\\/laroefse.html#offers\",\"url\":\"https:\\/\\/www.skin-etc.com\\/laroefse.html\",\"itemCondition\":\"NewCondition\",\"availability\":\"OutOfStock\"},\"name\":\"La Roche-Posay Effaclar Pore-Refining Serum\",\"description\":\"La Roche-Posay Effaclar Serum addresses acne-prone aging skin with enlarged pores, wrinkles, rough skin texture and dull complexion. Effaclar Serum, a pore minimizer, provides a powerful combination of highly concentrated ingredients to exfoliate skin and visibly smooth skin texture. Tightens pores and refines skin texture. Visbily reduces the appearance of fine lines and wrinkles. Exclusive triple action exfoliation provides three layers of accelerated exfoliation in the epidermis for optimal skin renewal benefits. Recommended For Oily skin, acne-prone skin with fine lines and wrinkles. La Roche-Posay Effaclar Serum has been rigorously formulated with: 0.5% LHA provides cell-by-cell exfoliation to help unblock and tighten enlarged pores, while refining skin\'s texture. 7.5% AHA-Glycolic Complex accelerates the skin\'s natural renewal process. Helps smooth fine lines, even tone, and boost skin radiance. AHA-Glycolic Complex [7.5%] and LHA [0.5%] work together to provide a powerful combination of highly concentrated ingredients to accelerate skin renewal, tighen pores and smooth fine lines. Results: Pores are tightened. Wrinkles are visibly reduced; skin appears smoother and more radiant. Recommended For: Enlarged pores Aging, dull skin Tested on oily skin Fragrance-free, Paraben-free, Non-comedogenic, Non-greasy \",\"brand\":{\"@type\":\"Brand\",\"name\":\"La Roche-Posay\"},\"image\":\"https:\\/\\/images.practicaldatacore.com\\/skin-etc\\/getProductImage.php?size=imageMedium&cb=1746492383&productId=laroefse\",\"sku\":\"LRP-3155\",\"@id\":\"https:\\/\\/www.skin-etc.com\\/laroefse.html#product\",\"gtin12\":\"3337872413155\"}" document.getElementsByTagName('head')[0].appendChild(script); ; //*** time check 5 (0.14436s elapsed) //*** mod_storeClosed called //*** time check 6 (0.15171s elapsed) //*** mod_specialAccess //*** time check 7 (0.15743s elapsed) var pdServerTime = new Date("2025-05-10T20:22:48-05:00"); var pdProductId = "laroefse"; var pdProductCode = "LRP-3155"; //************************************************ //************ 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.15746s 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 alert('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 alert('Error - ' + errorMessage); } }); event.stopPropagation(); event.preventDefault(); }); //*** time check 13 (0.18951s elapsed) //*** time check 14 (0.18952s elapsed) if(jQuery('#pd_pdOneBanner').length) { //*** BANNER ALREADY EXISTS, DO NOT RE-INSERT } else { jQuery("body").prepend('
'); } jQuery("#pd_pdOneBanner").html(" Account Account "); //*** time check 15 (0.20544s elapsed) if (typeof pdPerformLoginActions === "function") { pdPerformLoginActions(false); } //*** time check 16 (0.20671s elapsed) //*** time check 17 (0.20674s elapsed) //*** time check 18 (0.20675s elapsed) //*** time check 19 (0.20675s elapsed) //*** time check 20 (0.21019s elapsed) //*** time check 21 (0.21126s elapsed) //*** time check 22 (0.21281s elapsed) //********************************* //*** BEGIN mod_promotionCenter *** //********************************* //*** COULD NOT FIND PUBLIC FUNCTION 'public_mod_promotionCenter_getRenderedPageScript3()' //******************************* //*** END mod_promotionCenter *** //******************************* //*** time check 23 (0.21282s 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.21366s elapsed) //*** mod_fbConversion is NOT enabled! //*** time check 25 (0.21452s elapsed) //*** time check 26 (0.21527s elapsed) //*** time check 27 (0.21609s elapsed) //*** time check 28 (0.2192s 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.21925s elapsed) //*** time check 29 (0.21926s elapsed)