Untitled
unknown
plain_text
2 years ago
13 kB
14
Indexable
html body .eg-sld img {
display : block !important;
object-fit : contain !important;
}
html body .eg-sld {
background : rgb(241, 236, 233) !important;
}
//save cookie code
(function () {
var debug = false;
try {
function waitForElement(selector, callback) {
var maxCheck = 200;
var interval = window.setInterval(function() {
if(document.querySelectorAll(selector).length > 0) {
callback();
window.clearInterval(interval);
} else if(--maxCheck < 0) {
window.clearInterval(interval);
}
}, 50);
}
function createCookie(name, value, days) {
// CREATE COOKIE
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + (value || "") + expires + "; path=/";
}
function mutationForCart() {
var targetNode = document.querySelector('.header__nav .grid-container');
var config = { attributes: true, characterData: true, childList: true, subtree: true };
function callback (mutationList, observer) {
for(var i = 0; i < mutationList.length; i++) {
waitForElement('.cart__item .cart__item__content .mb1 > .cart__content:last-child', function() {
var vcCartItems = document.querySelectorAll('.cart__item .cart__item__content .mb1 > .cart__content:last-child');
console.log('product found >>', vcCartItems.length)
for(var i = 0; i < vcCartItems.length; i++) {
console.log(vcCartItems[i].innerHTML)
if(vcCartItems[i].innerHTML == 'Eau de Toilette') {
createCookie('gwp_ab', '43506271551721',30);
break;
}
}
});
}
};
var observer = new MutationObserver(callback);
observer.observe(targetNode, config);
}
waitForElement('.header__nav .grid-container', mutationForCart)
} catch (e) {
if (debug) console.log(e, "error in " + variation_name);
}
})();
//PDP page code
(function() {
try {
/* main variables */
var debug = 0;
var variation_name = "";
var $;
/* all Pure helper functions */
function waitForElement(selector, trigger, delayInterval, delayTimeout) {
var interval = setInterval(function() {
if (
document &&
document.querySelector(selector) &&
document.querySelectorAll(selector).length > 0
) {
clearInterval(interval);
trigger();
}
}, delayInterval);
setTimeout(function() {
clearInterval(interval);
}, delayTimeout);
}
function waitForEmbla(trigger) {
var interval = setInterval(function() {
if (window.EmblaCarousel != undefined) {
clearInterval(interval);
trigger();
} else {
addEmbla();
}
}, 50);
setTimeout(function() {
clearInterval(interval);
}, 15000)
}
function addEmbla() {
var emblaScript = document.createElement('script');
// check for updated jquery cdn
emblaScript.src = 'https://unpkg.com/embla-carousel/embla-carousel.umd.js';
document.getElementsByTagName('head')[0].appendChild(emblaScript);
}
function listener() {
/* These are the modifications: */
window.addEventListener("locationchange", function() {
if ((window.location.href.indexOf("https://www.vacation.inc/products/scent") != -1) && !document.querySelector(".eg-sld")) {
waitForElement(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul", function() {
if (!document.querySelector(".eg-right-txt")) {
document.querySelector(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul").insertAdjacentHTML("beforeend", `<li class="eg-right-txt"><em>FREE 1oz Classic Lotion SPF 30 Sample With Purchase!<em></li>`);
live(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) > div > button[title='toggle']", "click", function() {
if (!document.querySelector(".eg-right-txt")) {
document.querySelector(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul").insertAdjacentHTML("beforeend", `<li class="eg-right-txt"><em>FREE 1oz Classic Lotion SPF 30 Sample With Purchase!<em></li>`)
}
});
}
}, 50, 15000);
/* Initialize variation */
waitForElement('.embla__container', init, 50, 15000);
}
});
history.pushState = ((f) =>
function pushState() {
var ret = f.apply(this, arguments);
window.dispatchEvent(new Event("pushstate"));
window.dispatchEvent(new Event("locationchange"));
return ret;
})(history.pushState);
history.replaceState = ((f) =>
function replaceState() {
var ret = f.apply(this, arguments);
window.dispatchEvent(new Event("replacestate"));
window.dispatchEvent(new Event("locationchange"));
return ret;
})(history.replaceState);
window.addEventListener("popstate", () => {
window.dispatchEvent(new Event("locationchange"));
});
}
function live(selector, event, callback, context) {
/****Helper Functions****/
// helper for enabling IE 8 event bindings
function addEvent(el, type, handler) {
if (el.attachEvent) el.attachEvent("on" + type, handler);
else el.addEventListener(type, handler);
}
// matches polyfill
this.Element &&
(function(ElementPrototype) {
ElementPrototype.matches =
ElementPrototype.matches ||
ElementPrototype.matchesSelector ||
ElementPrototype.webkitMatchesSelector ||
ElementPrototype.msMatchesSelector ||
function(selector) {
var node = this,
nodes = (node.parentNode || node.document).querySelectorAll(selector),
i = -1;
while (nodes[++i] && nodes[i] != node);
return !!nodes[i];
};
})(Element.prototype);
// live binding helper using matchesSelector
function live(selector, event, callback, context) {
addEvent(context || document, event, function(e) {
var found,
el = e.target || e.srcElement;
while (el && el.matches && el !== context && !(found = el.matches(selector))) el = el.parentElement;
if (found) callback.call(el, e);
});
}
live(selector, event, callback, context);
}
var embla;
live(['.product__hero-thumb', '.product__hero-dot'], 'click', function() {
if (this.parentElement.children[0] == this) {
embla.scrollTo(0, false);
} else if (this.parentElement.children[1] == this) {
embla.scrollTo(1, false);
} else if (this.parentElement.children[2] == this) {
embla.scrollTo(2, false);
} else if (this.parentElement.children[3] == this) {
embla.scrollTo(3, false);
} else if (this.parentElement.children[4] == this) {
embla.scrollTo(4, false);
} else if (this.parentElement.children[5] == this) {
embla.scrollTo(5, false);
} else if (this.parentElement.children[6] == this) {
embla.scrollTo(6, false);
} else if (this.parentElement.children[7] == this) {
embla.scrollTo(7, false);
}
this.parentElement.querySelectorAll(".active").forEach(act => {
act.classList.remove("active")
})
this.classList.add("active");
});
/* Variation Init */
function init() {
waitForEmbla(function() {
if (!document.querySelector(".eg-sld")) {
var emblaNode = document.querySelector('.embla')
var options = { dots: true }
embla = EmblaCarousel(emblaNode, options);
const egSlide = document.createElement("div");
egSlide.classList.add("embla__slide", "eg-sld");
egSlide.style.cssText = `flex:0 0 100%;height:100%;width:100%;position:relative`
'flex:0 0 100%;height:100%;width:100%;position:relative'
egSlide.innerHTML = `<div class="image pa x y top left">
<picture>
<source srcset="https://expogrowth.in/wp-content/uploads/2023/02/Vacation_EDT-GWP_ClassicSample-Square.jpg" media="(min-width: 1000px)">
<source srcset="https://expogrowth.in/wp-content/uploads/2023/02/Vacation_EDT-GWP_ClassicSample-Square.jpg" media="(min-width: 600px)"><img src="https://expogrowth.in/wp-content/uploads/2023/02/Vacation_EDT-GWP_ClassicSample-Square.jpg"></picture>
</div>`;
const egSlideThumb = `<div class="product__hero-thumb mb1 pr"><button aria-label="Select image slide" class="image pa x y top left eg-thumb">
<picture><img alt="video thumbnail" src="https://expogrowth.in/wp-content/uploads/2023/02/Vacation_EDT-GWP_ClassicSample-Square.jpg?width=300&fit_mode=preserve&time=0"></picture>
</button></div>`;
document.querySelector(".product__hero-carousel-thumbs > div:nth-child(3)").insertAdjacentHTML("afterend", egSlideThumb);
const egSlideDot = `<button aria-label="Select image slide" class="product__hero-dot eg-dot"></button>`;
document.querySelector(".product__hero-dots > button:nth-child(3)").insertAdjacentHTML("afterend", egSlideDot);
document.querySelector(".embla__container > div:nth-child(3)").insertAdjacentElement("afterend", egSlide);
embla.reInit();
}
});
// changing first carousel img src
waitForElement("html body .embla__container > .embla__slide:nth-child(1) picture source", function() {
document.querySelectorAll("html body .embla__container > .embla__slide:nth-child(1) picture source").forEach(source => {
source.srcset = "https://cdn.shopify.com/s/files/1/0553/2984/9518/files/EDT_GWP_Carousel_Update_slide_1-square.jpg?v=1676962071";
if (source.nextElementSibling && source.nextElementSibling.tagName === "IMG") {
source.nextElementSibling.src = "https://cdn.shopify.com/s/files/1/0553/2984/9518/files/EDT_GWP_Carousel_Update_slide_1-square.jpg?v=1676962071";
}
})
}, 50, 15000);
}
if (window.location.href.indexOf("https://www.vacation.inc/products/scent") != -1) {
waitForElement(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul", function() {
if (!document.querySelector(".eg-right-txt")) {
document.querySelector(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul").insertAdjacentHTML("beforeend", `<li class="eg-right-txt"><em>FREE 1oz Classic Lotion SPF 30 Sample With Purchase!<em></li>`);
live(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) > div > button[title='toggle']", "click", function() {
if (!document.querySelector(".eg-right-txt")) {
document.querySelector(".shopping-block-pusher >div:nth-child(2) > div:nth-child(1) ul").insertAdjacentHTML("beforeend", `<li class="eg-right-txt"><em>FREE 1oz Classic Lotion SPF 30 Sample With Purchase!<em></li>`)
}
});
}
}, 50, 15000);
/* Initialize variation */
waitForElement('.embla', init, 50, 15000);
}
listener();
} catch (e) {
if (debug) console.log(e, "error in Test" + variation_name);
}
})();Editor is loading...