Last active
January 8, 2024 19:21
-
-
Save dhyegocalota/048744248173c1c3847d507d5c85a3aa to your computer and use it in GitHub Desktop.
2024.01.03 | Snapshot | Tracking Codes of ThriftyTraveler.com/Premium
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<!-- Start of Google 1 --> | |
<script> | |
(function (w, d, s, l, i) { | |
w[l] = w[l] || []; | |
w[l].push({ "gtm.start": new Date().getTime(), event: "gtm.js" }); | |
var f = d.getElementsByTagName(s)[0], | |
j = d.createElement(s), | |
dl = l != "dataLayer" ? "&l=" + l : ""; | |
j.async = true; | |
j.src = "https://www.googletagmanager.com/gtm.js?id=" + i + dl; | |
f.parentNode.insertBefore(j, f); | |
})(window, document, "script", "dataLayer", "GTM-KNJLNSQ"); | |
</script> | |
<!-- End of Google 1 --> | |
<!-- Start of AdThrive 1 --> | |
<script> | |
!(function () { | |
"use strict"; | |
var t = new URL(window.location.href), | |
e = Array.from(t.searchParams.entries()).map( | |
(t) => `${t[0]}=${t[1]}` | |
); | |
const a = (t) => t.replace(/\s/g, ""), | |
r = async (t) => { | |
const e = { sha256Hash: "", sha1Hash: "" }; | |
if ( | |
!("msCrypto" in window) && | |
"https:" === location.protocol && | |
"crypto" in window && | |
"TextEncoder" in window | |
) { | |
const a = new TextEncoder().encode(t), | |
[r, o] = await Promise.all([n("SHA-256", a), n("SHA-1", a)]); | |
(e.sha256Hash = r), (e.sha1Hash = o); | |
} | |
return e; | |
}, | |
n = async (t, e) => { | |
const a = await crypto.subtle.digest(t, e); | |
return Array.from(new Uint8Array(a)) | |
.map((t) => ("00" + t.toString(16)).slice(-2)) | |
.join(""); | |
}; | |
function o(t) { | |
let e = !0; | |
return ( | |
Object.keys(t).forEach((a) => { | |
0 === t[a].length && (e = !1); | |
}), | |
e | |
); | |
} | |
function s() { | |
e.splice(i, 1); | |
var a = "?" + e.join("&") + t.hash; | |
history.replaceState(null, "", a); | |
} | |
for (var i = 0; i < e.length; i++) { | |
var c = "adt_ei", | |
l = decodeURIComponent(e[i]); | |
if (0 === l.indexOf(c)) { | |
var h = l.split(c + "=")[1]; | |
if ( | |
((t) => { | |
const e = t.match( | |
/((?=([a-zA-Z0-9._!#$%+^&*()[\]<>-]+))\2@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi | |
); | |
return e ? e[0] : ""; | |
})(a(h.toLowerCase())) | |
) { | |
r(h).then((t) => { | |
if (o(t)) { | |
var e = { value: t, created: Date.now() }; | |
localStorage.setItem(c, JSON.stringify(e)), | |
localStorage.setItem("adt_emsrc", "url"); | |
} | |
s(); | |
}); | |
break; | |
} | |
s(); | |
break; | |
} | |
} | |
})(); | |
</script> | |
<script data-no-optimize="1" data-cfasync="false"> | |
window.adthriveCLS = { | |
enabledLocations: ["Content", "Recipe"], | |
injectedSlots: [], | |
injectedFromPlugin: true, | |
branch: "f562f85", | |
bucket: "prod", | |
}; | |
window.adthriveCLS.siteAds = { | |
siteId: "5f172f9e14feb56cb94c4c3f", | |
siteName: "Thrifty Traveler", | |
betaTester: false, | |
targeting: [ | |
{ value: "5f172f9e14feb56cb94c4c3f", key: "siteId" }, | |
{ value: "6233884dc12ab37088fe50cf", key: "organizationId" }, | |
{ value: "Thrifty Traveler", key: "siteName" }, | |
{ value: "AdThrive Edge", key: "service" }, | |
{ value: "on", key: "bidding" }, | |
{ value: ["Travel"], key: "verticals" }, | |
], | |
breakpoints: { tablet: 768, desktop: 1024 }, | |
adUnits: [ | |
{ | |
sequence: 1, | |
targeting: [{ value: ["Sidebar"], key: "location" }], | |
devices: ["desktop"], | |
name: "Sidebar_1", | |
sticky: false, | |
location: "Sidebar", | |
dynamic: { | |
pageSelector: "", | |
spacing: 0, | |
max: 1, | |
lazy: false, | |
lazyMax: null, | |
elementSelector: "#secondary > *", | |
skip: 1, | |
classNames: [], | |
position: "beforebegin", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[160, 600], | |
[336, 280], | |
[320, 50], | |
[300, 600], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[300, 1050], | |
[300, 50], | |
[300, 420], | |
[300, 250], | |
], | |
priority: 299, | |
autosize: true, | |
}, | |
{ | |
sequence: 9, | |
targeting: [ | |
{ value: ["Sidebar"], key: "location" }, | |
{ value: true, key: "sticky" }, | |
], | |
devices: ["desktop"], | |
name: "Sidebar_9", | |
sticky: true, | |
location: "Sidebar", | |
dynamic: { | |
pageSelector: "", | |
spacing: 0, | |
max: 1, | |
lazy: false, | |
lazyMax: null, | |
elementSelector: "#secondary", | |
skip: 0, | |
classNames: [], | |
position: "beforeend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[160, 600], | |
[336, 280], | |
[320, 50], | |
[300, 600], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[300, 1050], | |
[300, 50], | |
[300, 420], | |
[300, 250], | |
], | |
priority: 291, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Content"], key: "location" }], | |
devices: ["desktop"], | |
name: "Content", | |
sticky: false, | |
location: "Content", | |
dynamic: { | |
pageSelector: "body.single, body.page:not(.home)", | |
spacing: 1, | |
max: 5, | |
lazy: true, | |
lazyMax: 20, | |
elementSelector: ".entry-content > p+p", | |
skip: 4, | |
classNames: [], | |
position: "afterend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[728, 90], | |
[336, 280], | |
[320, 50], | |
[468, 60], | |
[970, 90], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[970, 250], | |
[1, 2], | |
[300, 50], | |
[300, 300], | |
[552, 334], | |
[728, 250], | |
[300, 250], | |
], | |
priority: 199, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Content"], key: "location" }], | |
devices: ["tablet"], | |
name: "Content", | |
sticky: false, | |
location: "Content", | |
dynamic: { | |
pageSelector: "body.single, body.page:not(.home)", | |
spacing: 0.7, | |
max: 5, | |
lazy: true, | |
lazyMax: 20, | |
elementSelector: ".entry-content > p+p", | |
skip: 4, | |
classNames: [], | |
position: "afterend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[728, 90], | |
[336, 280], | |
[320, 50], | |
[468, 60], | |
[970, 90], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[970, 250], | |
[1, 2], | |
[300, 50], | |
[300, 300], | |
[552, 334], | |
[728, 250], | |
[300, 250], | |
], | |
priority: 199, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Content"], key: "location" }], | |
devices: ["phone"], | |
name: "Content", | |
sticky: false, | |
location: "Content", | |
dynamic: { | |
pageSelector: "body.single, body.page:not(.home)", | |
spacing: 1, | |
max: 6, | |
lazy: true, | |
lazyMax: 20, | |
elementSelector: ".entry-content > p+p", | |
skip: 4, | |
classNames: [], | |
position: "afterend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[1, 1], | |
[1, 2], | |
[250, 250], | |
[300, 50], | |
[300, 250], | |
[300, 300], | |
[320, 50], | |
[320, 100], | |
[336, 280], | |
[468, 60], | |
[552, 334], | |
[728, 90], | |
[728, 250], | |
[970, 90], | |
[970, 250], | |
], | |
priority: 199, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Content"], key: "location" }], | |
devices: ["desktop"], | |
name: "Content", | |
sticky: false, | |
location: "Content", | |
dynamic: { | |
pageSelector: "body.archive", | |
spacing: 0, | |
max: 1, | |
lazy: false, | |
lazyMax: null, | |
elementSelector: "article.grid", | |
skip: 0, | |
classNames: [], | |
position: "afterend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[728, 90], | |
[336, 280], | |
[320, 50], | |
[468, 60], | |
[970, 90], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[970, 250], | |
[1, 2], | |
[300, 50], | |
[300, 300], | |
[552, 334], | |
[728, 250], | |
[300, 250], | |
], | |
priority: 199, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Below Post"], key: "location" }], | |
devices: ["desktop"], | |
name: "Below_Post", | |
sticky: false, | |
location: "Below Post", | |
dynamic: { | |
pageSelector: "body.single, body.page:not(.home)", | |
spacing: 0, | |
max: 0, | |
lazy: true, | |
lazyMax: 1, | |
elementSelector: ".entry-content", | |
skip: 0, | |
classNames: [], | |
position: "beforeend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[120, 240], | |
[250, 250], | |
[300, 250], | |
[320, 50], | |
[320, 100], | |
[468, 60], | |
[728, 90], | |
[1, 1], | |
], | |
priority: 99, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [{ value: ["Below Post"], key: "location" }], | |
devices: ["phone", "tablet"], | |
name: "Below_Post", | |
sticky: false, | |
location: "Below Post", | |
dynamic: { | |
pageSelector: "body.single, body.page:not(.home)", | |
spacing: 0, | |
max: 0, | |
lazy: true, | |
lazyMax: 1, | |
elementSelector: ".entry-content", | |
skip: 0, | |
classNames: [], | |
position: "beforeend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[728, 90], | |
[336, 280], | |
[320, 50], | |
[468, 60], | |
[250, 250], | |
[1, 1], | |
[320, 100], | |
[300, 250], | |
[970, 250], | |
[728, 250], | |
], | |
priority: 99, | |
autosize: true, | |
}, | |
{ | |
sequence: null, | |
targeting: [ | |
{ value: ["Footer"], key: "location" }, | |
{ value: true, key: "sticky" }, | |
], | |
devices: ["tablet", "phone", "desktop"], | |
name: "Footer", | |
sticky: true, | |
location: "Footer", | |
dynamic: { | |
pageSelector: "body:not(.archive)", | |
spacing: 0, | |
max: 1, | |
lazy: false, | |
lazyMax: null, | |
elementSelector: "body", | |
skip: 0, | |
classNames: [], | |
position: "beforeend", | |
every: 1, | |
enabled: true, | |
}, | |
adSizes: [ | |
[320, 50], | |
[320, 100], | |
[728, 90], | |
[970, 90], | |
[468, 60], | |
[1, 1], | |
[300, 50], | |
], | |
priority: -1, | |
autosize: true, | |
}, | |
], | |
adDensityLayout: { | |
mobile: { adDensity: 0.26, onePerViewport: true }, | |
pageOverrides: [ | |
{ | |
mobile: { adDensity: 0.3, onePerViewport: false }, | |
pageSelector: "body.archive", | |
desktop: { adDensity: 0.3, onePerViewport: false }, | |
}, | |
{ | |
mobile: { adDensity: 0.3, onePerViewport: false }, | |
pageSelector: "body.home", | |
desktop: { adDensity: 0.3, onePerViewport: false }, | |
}, | |
], | |
desktop: { adDensity: 0.26, onePerViewport: true }, | |
}, | |
adDensityEnabled: true, | |
siteExperiments: [], | |
adTypes: { | |
sponsorTileDesktop: true, | |
nativeDesktopContent: true, | |
outstreamDesktop: true, | |
nativeBelowPostDesktop: true, | |
miniscroller: false, | |
animatedFooter: true, | |
largeFormatsMobile: false, | |
nativeMobileContent: true, | |
inRecipeRecommendationMobile: true, | |
nativeMobileRecipe: true, | |
expandableFooter: true, | |
nativeDesktopSidebar: true, | |
sponsorTileMobile: true, | |
interscroller: false, | |
nativeDesktopRecipe: true, | |
outstreamMobile: true, | |
nativeHeaderDesktop: true, | |
nativeHeaderMobile: true, | |
nativeBelowPostMobile: true, | |
largeFormatsDesktop: false, | |
inRecipeRecommendationDesktop: true, | |
}, | |
adOptions: { | |
theTradeDesk: true, | |
rtbhouse: true, | |
verizon: true, | |
undertone: true, | |
sidebarConfig: { | |
dynamicStickySidebar: { | |
minHeight: 1200, | |
enabled: false, | |
blockedSelectors: [], | |
}, | |
}, | |
concert: false, | |
footerCloseButton: true, | |
teads: true, | |
pmp: true, | |
thirtyThreeAcross: false, | |
sharethrough: true, | |
removeVideoTitleWrapper: false, | |
pubMatic: true, | |
roundel: true, | |
infiniteScroll: false, | |
yahoossp: true, | |
improvedigital: true, | |
spa: false, | |
stickyContainerConfig: { | |
recipeDesktop: { minHeight: null, enabled: false }, | |
blockedSelectors: [], | |
stickyHeaderSelectors: [], | |
content: { minHeight: null, enabled: false }, | |
recipeMobile: { minHeight: null, enabled: false }, | |
}, | |
sonobi: true, | |
yieldmo: true, | |
footerSelector: "", | |
amazonUAM: true, | |
gamMCMEnabled: true, | |
gamMCMChildNetworkCode: "21958179616", | |
rubicon: true, | |
conversant: true, | |
resetdigital: true, | |
openx: true, | |
mobileHeaderHeight: 1, | |
unruly: true, | |
mediaGrid: true, | |
bRealTime: true, | |
gumgum: true, | |
comscoreFooter: false, | |
desktopInterstitial: false, | |
footerCloseButtonDesktop: true, | |
ozone: false, | |
isAutoOptimized: false, | |
adform: true, | |
comscoreTAL: true, | |
targetaff: false, | |
advancePlaylistOptions: { | |
playlistPlayer: { enabled: true }, | |
relatedPlayer: { enabled: true, applyToFirst: false }, | |
}, | |
kargo: true, | |
liveRampATS: true, | |
footerCloseButtonMobile: true, | |
interstitialBlockedPageSelectors: "", | |
allowSmallerAdSizes: true, | |
comscore: "Travel", | |
mobileInterstitial: false, | |
tripleLift: true, | |
sensitiveCategories: [ | |
"alc", | |
"cbd", | |
"conl", | |
"dat", | |
"drg", | |
"gamv", | |
"ske", | |
"wtl", | |
], | |
liveRamp: true, | |
mobileInterstitialBlockedPageSelectors: "", | |
adthriveEmailIdentity: true, | |
criteo: true, | |
nativo: true, | |
infiniteScrollOptions: { selector: "", heightThreshold: 0 }, | |
siteAttributes: { | |
mobileHeaderSelectors: [], | |
desktopHeaderSelectors: [], | |
}, | |
dynamicContentSlotLazyLoading: true, | |
clsOptimizedAds: true, | |
colossus: true, | |
aidem: false, | |
verticals: ["Travel"], | |
inImage: false, | |
advancePlaylist: true, | |
delayLoading: true, | |
inImageZone: null, | |
appNexus: true, | |
liveRampId: "", | |
infiniteScrollRefresh: false, | |
indexExchange: true, | |
}, | |
videoPlayers: { | |
contextual: { | |
autoplayCollapsibleEnabled: true, | |
overrideEmbedLocation: true, | |
defaultPlayerType: "collapse", | |
}, | |
videoEmbed: "wordpress", | |
footerSelector: ".site-footer", | |
contentSpecificPlaylists: [], | |
players: [ | |
{ | |
devices: ["desktop", "mobile"], | |
description: "", | |
id: 4068190, | |
title: "Stationary related player - desktop and mobile", | |
type: "stationaryRelated", | |
enabled: true, | |
playerId: "mMeXX9Cu", | |
}, | |
{ | |
pageSelector: "", | |
devices: ["desktop"], | |
description: "", | |
elementSelector: ".entry-content > *", | |
skip: 0, | |
id: 4068191, | |
position: "afterend", | |
title: "Sticky related player - desktop", | |
type: "stickyRelated", | |
enabled: true, | |
playerId: "mMeXX9Cu", | |
}, | |
{ | |
pageSelector: "", | |
devices: ["mobile"], | |
mobileLocation: "bottom-right", | |
description: "", | |
elementSelector: ".entry-content > *", | |
skip: 0, | |
id: 4068192, | |
position: "afterend", | |
title: "Sticky related player - mobile", | |
type: "stickyRelated", | |
enabled: true, | |
playerId: "mMeXX9Cu", | |
}, | |
{ | |
playlistId: "tpqVWZjj", | |
pageSelector: "body.single", | |
devices: ["desktop"], | |
description: "", | |
skip: 0, | |
title: "LATEST VIDEOS", | |
type: "stickyPlaylist", | |
enabled: false, | |
footerSelector: ".site-footer", | |
elementSelector: ".entry-content > *", | |
id: 4068193, | |
position: "afterend", | |
saveVideoCloseState: false, | |
shuffle: true, | |
playerId: "4HVwnTqu", | |
}, | |
{ | |
playlistId: "tpqVWZjj", | |
pageSelector: "body.single", | |
devices: ["mobile"], | |
mobileLocation: "bottom-right", | |
description: "", | |
skip: 0, | |
title: "LATEST VIDEOS", | |
type: "stickyPlaylist", | |
enabled: false, | |
footerSelector: ".site-footer", | |
elementSelector: ".entry-content > *", | |
id: 4068194, | |
position: "afterend", | |
saveVideoCloseState: false, | |
shuffle: true, | |
playerId: "4HVwnTqu", | |
}, | |
], | |
partners: { | |
theTradeDesk: true, | |
unruly: true, | |
mediaGrid: true, | |
undertone: true, | |
gumgum: true, | |
adform: true, | |
pmp: true, | |
kargo: true, | |
thirtyThreeAcross: false, | |
stickyOutstream: { | |
desktop: { enabled: false }, | |
blockedPageSelectors: "", | |
mobileLocation: null, | |
allowOnHomepage: false, | |
mobile: { enabled: false }, | |
saveVideoCloseState: false, | |
mobileHeaderSelector: "", | |
allowForPageWithStickyPlayer: { enabled: false }, | |
}, | |
sharethrough: true, | |
tripleLift: true, | |
pubMatic: true, | |
roundel: true, | |
yahoossp: true, | |
criteo: true, | |
improvedigital: true, | |
colossus: true, | |
aidem: false, | |
yieldmo: true, | |
amazonUAM: true, | |
rubicon: true, | |
appNexus: true, | |
resetdigital: true, | |
openx: true, | |
indexExchange: true, | |
}, | |
}, | |
}; | |
</script> | |
<script data-no-optimize="1" data-cfasync="false"> | |
(function (w, d) { | |
w.adthrive = w.adthrive || {}; | |
w.adthrive.cmd = w.adthrive.cmd || []; | |
w.adthrive.plugin = "adthrive-ads-3.5.6"; | |
w.adthrive.host = "ads.adthrive.com"; | |
w.adthrive.integration = "plugin"; | |
var commitParam = | |
w.adthriveCLS && | |
w.adthriveCLS.bucket !== "prod" && | |
w.adthriveCLS.branch | |
? "&commit=" + w.adthriveCLS.branch | |
: ""; | |
var s = d.createElement("script"); | |
s.async = true; | |
s.referrerpolicy = "no-referrer-when-downgrade"; | |
s.src = | |
"https://" + | |
w.adthrive.host + | |
"/sites/5f172f9e14feb56cb94c4c3f/ads.min.js?referrer=" + | |
w.encodeURIComponent(w.location.href) + | |
commitParam + | |
"&cb=" + | |
(Math.floor(Math.random() * 100) + 1) + | |
""; | |
var n = d.getElementsByTagName("script")[0]; | |
n.parentNode.insertBefore(s, n); | |
})(window, document); | |
</script> | |
<link rel="dns-prefetch" href="https://ads.adthrive.com/" /> | |
<link rel="preconnect" href="https://ads.adthrive.com/" /> | |
<link rel="preconnect" href="https://ads.adthrive.com/" crossorigin /> | |
<!-- End of AdThrive 1 --> | |
<!-- Start of Meta 1 --> | |
<script type="text/javascript"> | |
!(function (f, b, e, v, n, t, s) { | |
if (f.fbq) return; | |
n = f.fbq = function () { | |
n.callMethod | |
? n.callMethod.apply(n, arguments) | |
: n.queue.push(arguments); | |
}; | |
if (!f._fbq) f._fbq = n; | |
n.push = n; | |
n.loaded = !0; | |
n.version = "2.0"; | |
n.queue = []; | |
t = b.createElement(e); | |
t.async = !0; | |
t.src = v; | |
s = b.getElementsByTagName(e)[0]; | |
s.parentNode.insertBefore(t, s); | |
})( | |
window, | |
document, | |
"script", | |
"https://connect.facebook.net/en_US/fbevents.js?v=next" | |
); | |
</script> | |
<script type="text/javascript"> | |
var url = window.location.origin + "?ob=open-bridge"; | |
fbq("set", "openbridge", "1398286217144760", url); | |
</script> | |
<script type="text/javascript"> | |
fbq( | |
"init", | |
"1398286217144760", | |
{}, | |
{ | |
agent: "wordpress-6.3.2-3.0.14", | |
} | |
); | |
</script> | |
<script type="text/javascript"> | |
fbq("track", "PageView", []); | |
</script> | |
<noscript> | |
<img | |
height="1" | |
width="1" | |
style="display: none" | |
alt="fbpx" | |
src="https://www.facebook.com/tr?id=1398286217144760&ev=PageView&noscript=1" | |
/> | |
</noscript> | |
<!-- End of Meta 1 --> | |
<!-- Start of AdThrive 2 --> | |
<script | |
data-no-optimize="1" | |
data-cfasync="false" | |
id="cls-disable-ads-f562f85" | |
> | |
"use strict"; | |
var cls_disable_ads = (function (n) { | |
function h(a, b) { | |
var c = "function" === typeof Symbol && a[Symbol.iterator]; | |
if (!c) return a; | |
a = c.call(a); | |
var d, | |
e = []; | |
try { | |
for (; (void 0 === b || 0 < b--) && !(d = a.next()).done; ) | |
e.push(d.value); | |
} catch (l) { | |
var f = { error: l }; | |
} finally { | |
try { | |
d && !d.done && (c = a["return"]) && c.call(a); | |
} finally { | |
if (f) throw f.error; | |
} | |
} | |
return e; | |
} | |
function k(a, b, c) { | |
if (c || 2 === arguments.length) | |
for (var d = 0, e = b.length, f; d < e; d++) | |
(!f && d in b) || | |
(f || (f = Array.prototype.slice.call(b, 0, d)), (f[d] = b[d])); | |
return a.concat(f || Array.prototype.slice.call(b)); | |
} | |
window.adthriveCLS.buildDate = "2024-01-02"; | |
var D = new ((function () { | |
function a() {} | |
a.prototype.info = function (b, c) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, k([console.info, b, c], h(d), !1)); | |
}; | |
a.prototype.warn = function (b, c) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, k([console.warn, b, c], h(d), !1)); | |
}; | |
a.prototype.error = function (b, c) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, k([console.error, b, c], h(d), !1)); | |
this.sendErrorLogToCommandQueue.apply(this, k([b, c], h(d), !1)); | |
}; | |
a.prototype.event = function (b, c) { | |
for (var d, e = 2; e < arguments.length; e++); | |
"debug" === | |
(null === (d = window.adthriveCLS) || void 0 === d | |
? void 0 | |
: d.bucket) && this.info(b, c); | |
}; | |
a.prototype.sendErrorLogToCommandQueue = function (b, c) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
window.adthrive = window.adthrive || {}; | |
window.adthrive.cmd = window.adthrive.cmd || []; | |
window.adthrive.cmd.push( | |
function () { | |
void 0 !== window.adthrive.logError && | |
"function" === typeof window.adthrive.logError && | |
window.adthrive.logError(b, c, d); | |
}.bind(b, c, d) | |
); | |
}; | |
a.prototype.call = function (b, c, d) { | |
for (var e = [], f = 3; f < arguments.length; f++) | |
e[f - 3] = arguments[f]; | |
f = ["%c".concat(c, "::").concat(d, " ")]; | |
var l = ["color: #999; font-weight: bold;"]; | |
0 < e.length && "string" === typeof e[0] && f.push(e.shift()); | |
l.push.apply(l, k([], h(e), !1)); | |
try { | |
Function.prototype.apply.call( | |
b, | |
console, | |
k([f.join("")], h(l), !1) | |
); | |
} catch (C) { | |
console.error(C); | |
} | |
}; | |
return a; | |
})())(), | |
g; | |
(function (a) { | |
a.amznbid = "amznbid"; | |
a.amzniid = "amzniid"; | |
a.amznp = "amznp"; | |
a.amznsz = "amznsz"; | |
})(g || (g = {})); | |
var m; | |
(function (a) { | |
a.ThirtyThreeAcross = "33across"; | |
a.AppNexus = "appnexus"; | |
a.Amazon = "amazon"; | |
a.Colossus = "colossus"; | |
a.ColossusServer = "col_ss"; | |
a.Conversant = "conversant"; | |
a.Concert = "concert"; | |
a.Criteo = "criteo"; | |
a.GumGum = "gumgum"; | |
a.ImproveDigital = "improvedigital"; | |
a.ImproveDigitalServer = "improve_ss"; | |
a.IndexExchange = "ix"; | |
a.Kargo = "kargo"; | |
a.KargoServer = "krgo_ss"; | |
a.MediaGrid = "grid"; | |
a.MediaGridVideo = "gridvid"; | |
a.Nativo = "nativo"; | |
a.OpenX = "openx"; | |
a.Ogury = "ogury"; | |
a.OpenXServer = "opnx_ss"; | |
a.Ozone = "ozone"; | |
a.Pubmatic = "pubmatic"; | |
a.PubmaticServer = "pubm_ss"; | |
a.ResetDigital = "resetdigital"; | |
a.Roundel = "roundel"; | |
a.Rtbhouse = "rtbhouse"; | |
a.Rubicon = "rubicon"; | |
a.RubiconServer = "rubi_ss"; | |
a.Sharethrough = "sharethrough"; | |
a.Teads = "teads"; | |
a.Triplelift = "triplelift"; | |
a.TripleliftServer = "tripl_ss"; | |
a.TTD = "ttd"; | |
a.Undertone = "undertone"; | |
a.UndertoneServer = "under_ss"; | |
a.Unruly = "unruly"; | |
a.YahooSSP = "yahoossp"; | |
a.YahooSSPServer = "yah_ss"; | |
a.Verizon = "verizon"; | |
a.Yieldmo = "yieldmo"; | |
})(m || (m = {})); | |
var q; | |
(function (a) { | |
a.Prebid = "prebid"; | |
a.GAM = "gam"; | |
a.Amazon = "amazon"; | |
a.Marmalade = "marmalade"; | |
a.Floors = "floors"; | |
a.CMP = "cmp"; | |
a.Optable = "optable"; | |
})(q || (q = {})); | |
var r; | |
(function (a) { | |
a.cm = "cm"; | |
a.fbrap = "fbrap"; | |
a.rapml = "rapml"; | |
})(r || (r = {})); | |
var t; | |
(function (a) { | |
a.lazy = "lazy"; | |
a.raptive = "raptive"; | |
a.refresh = "refresh"; | |
a.session = "session"; | |
a.crossDomain = "crossdomain"; | |
a.highSequence = "highsequence"; | |
a.lazyBidPool = "lazyBidPool"; | |
})(t || (t = {})); | |
var u; | |
(function (a) { | |
a.lazy = "l"; | |
a.raptive = "rapml"; | |
a.refresh = "r"; | |
a.session = "s"; | |
a.crossdomain = "c"; | |
a.highsequence = "hs"; | |
a.lazyBidPool = "lbp"; | |
})(u || (u = {})); | |
var v; | |
(function (a) { | |
a.Version = "Version"; | |
a.SharingNotice = "SharingNotice"; | |
a.SaleOptOutNotice = "SaleOptOutNotice"; | |
a.SharingOptOutNotice = "SharingOptOutNotice"; | |
a.TargetedAdvertisingOptOutNotice = "TargetedAdvertisingOptOutNotice"; | |
a.SensitiveDataProcessingOptOutNotice = | |
"SensitiveDataProcessingOptOutNotice"; | |
a.SensitiveDataLimitUseNotice = "SensitiveDataLimitUseNotice"; | |
a.SaleOptOut = "SaleOptOut"; | |
a.SharingOptOut = "SharingOptOut"; | |
a.TargetedAdvertisingOptOut = "TargetedAdvertisingOptOut"; | |
a.SensitiveDataProcessing = "SensitiveDataProcessing"; | |
a.KnownChildSensitiveDataConsents = "KnownChildSensitiveDataConsents"; | |
a.PersonalDataConsents = "PersonalDataConsents"; | |
a.MspaCoveredTransaction = "MspaCoveredTransaction"; | |
a.MspaOptOutOptionMode = "MspaOptOutOptionMode"; | |
a.MspaServiceProviderMode = "MspaServiceProviderMode"; | |
a.SubSectionType = "SubsectionType"; | |
a.Gpc = "Gpc"; | |
})(v || (v = {})); | |
var w; | |
(function (a) { | |
a[(a.NA = 0)] = "NA"; | |
a[(a.OptedOut = 1)] = "OptedOut"; | |
a[(a.OptedIn = 2)] = "OptedIn"; | |
})(w || (w = {})); | |
var x; | |
(function (a) { | |
a.AdDensity = "addensity"; | |
a.AdLayout = "adlayout"; | |
a.FooterCloseButton = "footerclose"; | |
a.Interstitial = "interstitial"; | |
a.RemoveVideoTitleWrapper = "removevideotitlewrapper"; | |
a.StickyOutstream = "stickyoutstream"; | |
a.StickyOutstreamOnStickyPlayer = "sospp"; | |
a.VideoAdvancePlaylistRelatedPlayer = "videoadvanceplaylistrp"; | |
a.MobileStickyPlayerPosition = "mspp"; | |
})(x || (x = {})); | |
var y; | |
(function (a) { | |
a.Desktop = "desktop"; | |
a.Mobile = "mobile"; | |
})(y || (y = {})); | |
var z; | |
(function (a) { | |
a.Video_Collapse_Autoplay_SoundOff = | |
"Video_Collapse_Autoplay_SoundOff"; | |
a.Video_Individual_Autoplay_SOff = "Video_Individual_Autoplay_SOff"; | |
a.Video_Coll_SOff_Smartphone = "Video_Coll_SOff_Smartphone"; | |
a.Video_In_Post_ClicktoPlay_SoundOn = | |
"Video_In-Post_ClicktoPlay_SoundOn"; | |
})(z || (z = {})); | |
var A; | |
(A || (A = {})).None = "none"; | |
var B; | |
(function (a) { | |
a.Default = "default"; | |
a.AZ_Animals = "5daf495ed42c8605cfc74b0b"; | |
a.Natashas_Kitchen = "55bccc97303edab84afd77e2"; | |
a.RecipeTin_Eats = "55cb7e3b4bc841bd0c4ea577"; | |
a.Sallys_Baking_Recipes = "566aefa94856897050ee7303"; | |
a.Spend_With_Pennies = "541917f5a90318f9194874cf"; | |
})(B || (B = {})); | |
g = (function () { | |
function a() { | |
this._timeOrigin = 0; | |
} | |
a.prototype.resetTimeOrigin = function () { | |
this._timeOrigin = window.performance.now(); | |
}; | |
a.prototype.now = function () { | |
try { | |
return Math.round(window.performance.now() - this._timeOrigin); | |
} catch (b) { | |
return 0; | |
} | |
}; | |
return a; | |
})(); | |
window.adthrive.windowPerformance = | |
window.adthrive.windowPerformance || new g(); | |
g = window.adthrive.windowPerformance; | |
g.now.bind(g); | |
var p = function (a) { | |
var b = window.location.href; | |
return a.some(function (c) { | |
return new RegExp(c, "i").test(b); | |
}); | |
}; | |
g = (function () { | |
function a(b) { | |
this.adthrive = b; | |
this.video = this.recipe = this.content = this.all = !1; | |
this.locations = new Set(); | |
this.reasons = new Set(); | |
if ( | |
this.urlHasEmail(window.location.href) || | |
this.urlHasEmail(window.document.referrer) | |
) | |
(this.all = !0), this.reasons.add("all_email"); | |
try { | |
this.checkCommandQueue(), | |
null !== document.querySelector(".tag-novideo") && | |
((this.video = !0), | |
this.locations.add("Video"), | |
this.reasons.add("video_tag")); | |
} catch (c) { | |
D.error("ClsDisableAds", "checkCommandQueue", c); | |
} | |
} | |
a.prototype.checkCommandQueue = function () { | |
var b = this; | |
this.adthrive && | |
this.adthrive.cmd && | |
this.adthrive.cmd.forEach(function (c) { | |
c = c.toString(); | |
var d = b.extractAPICall(c, "disableAds"); | |
d && b.disableAllAds(b.extractPatterns(d)); | |
(d = b.extractAPICall(c, "disableContentAds")) && | |
b.disableContentAds(b.extractPatterns(d)); | |
(c = b.extractAPICall(c, "disablePlaylistPlayers")) && | |
b.disablePlaylistPlayers(b.extractPatterns(c)); | |
}); | |
}; | |
a.prototype.extractPatterns = function (b) { | |
b = b.match(/["'](.*?)['"]/g); | |
if (null !== b) | |
return b.map(function (c) { | |
return c.replace(/["']/g, ""); | |
}); | |
}; | |
a.prototype.extractAPICall = function (b, c) { | |
b = b.match(new RegExp(c + "\\((.*?)\\)", "g")); | |
return null !== b ? b[0] : !1; | |
}; | |
a.prototype.disableAllAds = function (b) { | |
if (!b || p(b)) (this.all = !0), this.reasons.add("all_page"); | |
}; | |
a.prototype.disableContentAds = function (b) { | |
if (!b || p(b)) | |
(this.recipe = this.content = !0), | |
this.locations.add("Content"), | |
this.locations.add("Recipe"), | |
this.reasons.add("content_plugin"); | |
}; | |
a.prototype.disablePlaylistPlayers = function (b) { | |
if (!b || p(b)) | |
(this.video = !0), | |
this.locations.add("Video"), | |
this.reasons.add("video_page"); | |
}; | |
a.prototype.urlHasEmail = function (b) { | |
return b | |
? null !== | |
/([A-Z0-9._%+-]+(@|%(25)*40)[A-Z0-9.-]+\.[A-Z]{2,})/i.exec(b) | |
: !1; | |
}; | |
return a; | |
})(); | |
if ((m = window.adthriveCLS)) m.disableAds = new g(window.adthrive); | |
n.ClsDisableAds = g; | |
Object.defineProperty(n, "__esModule", { value: !0 }); | |
return n; | |
})({}); | |
</script> | |
<!-- End of AdThrive 2 --> | |
</head> | |
<body> | |
<!-- Start of Custom Script: Add email and couponId query params to .premium-btn HTML elements --> | |
<script> | |
function buildAppUrls() { | |
const email = | |
new URLSearchParams(window.location.search).get("email") || ""; | |
const couponId = | |
new URLSearchParams(window.location.search).get("couponId") || ""; | |
const emailParam = email.length > 0 ? "&email=" + email : ""; | |
const couponParam = couponId.length > 0 ? "&couponId=" + couponId : ""; | |
const premiumPlusLink = | |
document.querySelectorAll(".premium-btn")[0].href; | |
document.querySelectorAll(".premium-btn")[0].href = | |
premiumPlusLink + emailParam + couponParam; | |
} | |
window.onload = window.addEventListener("load", function () { | |
buildAppUrls(); | |
}); | |
</script> | |
<!-- End of Custom Script: Add email and couponId query params to .premium-btn HTML elements --> | |
<!-- Start of ActiveCampaign 1 --> | |
<script type="text/javascript"> | |
(function (e, t, o, n, p, r, i) { | |
e.visitorGlobalObjectAlias = n; | |
e[e.visitorGlobalObjectAlias] = | |
e[e.visitorGlobalObjectAlias] || | |
function () { | |
(e[e.visitorGlobalObjectAlias].q = | |
e[e.visitorGlobalObjectAlias].q || []).push(arguments); | |
}; | |
e[e.visitorGlobalObjectAlias].l = new Date().getTime(); | |
r = t.createElement("script"); | |
r.src = o; | |
r.async = true; | |
i = t.getElementsByTagName("script")[0]; | |
i.parentNode.insertBefore(r, i); | |
})( | |
window, | |
document, | |
"https://diffuser-cdn.app-us1.com/diffuser/diffuser.js", | |
"vgo" | |
); | |
vgo("setAccount", "475217867"); | |
vgo("setTrackByDefault", true); | |
vgo("process"); | |
</script> | |
<!-- End of ActiveCampaign 1 --> | |
<!-- Start of AdThrive 3 --> | |
<script | |
data-no-optimize="1" | |
data-cfasync="false" | |
id="cls-insertion-f562f85" | |
> | |
"use strict"; | |
(function () { | |
function x(c, a) { | |
function b() { | |
this.constructor = c; | |
} | |
if ("function" !== typeof a && null !== a) | |
throw new TypeError( | |
"Class extends value " + | |
String(a) + | |
" is not a constructor or null" | |
); | |
S(c, a); | |
c.prototype = | |
null === a | |
? Object.create(a) | |
: ((b.prototype = a.prototype), new b()); | |
} | |
function Y(c, a) { | |
var b = {}, | |
d; | |
for (d in c) | |
Object.prototype.hasOwnProperty.call(c, d) && | |
0 > a.indexOf(d) && | |
(b[d] = c[d]); | |
if (null != c && "function" === typeof Object.getOwnPropertySymbols) { | |
var e = 0; | |
for (d = Object.getOwnPropertySymbols(c); e < d.length; e++) | |
0 > a.indexOf(d[e]) && | |
Object.prototype.propertyIsEnumerable.call(c, d[e]) && | |
(b[d[e]] = c[d[e]]); | |
} | |
return b; | |
} | |
function J(c, a, b, d) { | |
var e = arguments.length, | |
f = | |
3 > e | |
? a | |
: null === d | |
? (d = Object.getOwnPropertyDescriptor(a, b)) | |
: d, | |
g; | |
if ( | |
"object" === typeof Reflect && | |
"function" === typeof Reflect.decorate | |
) | |
f = Reflect.decorate(c, a, b, d); | |
else | |
for (var h = c.length - 1; 0 <= h; h--) | |
if ((g = c[h])) | |
f = (3 > e ? g(f) : 3 < e ? g(a, b, f) : g(a, b)) || f; | |
return 3 < e && f && Object.defineProperty(a, b, f), f; | |
} | |
function E(c, a) { | |
if ( | |
"object" === typeof Reflect && | |
"function" === typeof Reflect.metadata | |
) | |
return Reflect.metadata(c, a); | |
} | |
function Q(c) { | |
var a = "function" === typeof Symbol && Symbol.iterator, | |
b = a && c[a], | |
d = 0; | |
if (b) return b.call(c); | |
if (c && "number" === typeof c.length) | |
return { | |
next: function () { | |
c && d >= c.length && (c = void 0); | |
return { value: c && c[d++], done: !c }; | |
}, | |
}; | |
throw new TypeError( | |
a ? "Object is not iterable." : "Symbol.iterator is not defined." | |
); | |
} | |
function u(c, a) { | |
var b = "function" === typeof Symbol && c[Symbol.iterator]; | |
if (!b) return c; | |
c = b.call(c); | |
var d, | |
e = []; | |
try { | |
for (; (void 0 === a || 0 < a--) && !(d = c.next()).done; ) | |
e.push(d.value); | |
} catch (g) { | |
var f = { error: g }; | |
} finally { | |
try { | |
d && !d.done && (b = c["return"]) && b.call(c); | |
} finally { | |
if (f) throw f.error; | |
} | |
} | |
return e; | |
} | |
function C(c, a, b) { | |
if (b || 2 === arguments.length) | |
for (var d = 0, e = a.length, f; d < e; d++) | |
(!f && d in a) || | |
(f || (f = Array.prototype.slice.call(a, 0, d)), (f[d] = a[d])); | |
return c.concat(f || Array.prototype.slice.call(a)); | |
} | |
function T(c, a) { | |
void 0 === a && (a = {}); | |
a = a.insertAt; | |
if (c && "undefined" !== typeof document) { | |
var b = document.head || document.getElementsByTagName("head")[0], | |
d = document.createElement("style"); | |
d.type = "text/css"; | |
"top" === a | |
? b.firstChild | |
? b.insertBefore(d, b.firstChild) | |
: b.appendChild(d) | |
: b.appendChild(d); | |
d.styleSheet | |
? (d.styleSheet.cssText = c) | |
: d.appendChild(document.createTextNode(c)); | |
} | |
} | |
window.adthriveCLS.buildDate = "2024-01-02"; | |
var S = function (c, a) { | |
S = | |
Object.setPrototypeOf || | |
({ __proto__: [] } instanceof Array && | |
function (b, d) { | |
b.__proto__ = d; | |
}) || | |
function (b, d) { | |
for (var e in d) | |
Object.prototype.hasOwnProperty.call(d, e) && (b[e] = d[e]); | |
}; | |
return S(c, a); | |
}, | |
z = function () { | |
z = | |
Object.assign || | |
function (c) { | |
for (var a, b = 1, d = arguments.length; b < d; b++) { | |
a = arguments[b]; | |
for (var e in a) | |
Object.prototype.hasOwnProperty.call(a, e) && (c[e] = a[e]); | |
} | |
return c; | |
}; | |
return z.apply(this, arguments); | |
}, | |
q = new ((function () { | |
function c() {} | |
c.prototype.info = function (a, b) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, C([console.info, a, b], u(d), !1)); | |
}; | |
c.prototype.warn = function (a, b) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, C([console.warn, a, b], u(d), !1)); | |
}; | |
c.prototype.error = function (a, b) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
this.call.apply(this, C([console.error, a, b], u(d), !1)); | |
this.sendErrorLogToCommandQueue.apply(this, C([a, b], u(d), !1)); | |
}; | |
c.prototype.event = function (a, b) { | |
for (var d, e = 2; e < arguments.length; e++); | |
"debug" === | |
(null === (d = window.adthriveCLS) || void 0 === d | |
? void 0 | |
: d.bucket) && this.info(a, b); | |
}; | |
c.prototype.sendErrorLogToCommandQueue = function (a, b) { | |
for (var d = [], e = 2; e < arguments.length; e++) | |
d[e - 2] = arguments[e]; | |
window.adthrive = window.adthrive || {}; | |
window.adthrive.cmd = window.adthrive.cmd || []; | |
window.adthrive.cmd.push( | |
function () { | |
void 0 !== window.adthrive.logError && | |
"function" === typeof window.adthrive.logError && | |
window.adthrive.logError(a, b, d); | |
}.bind(a, b, d) | |
); | |
}; | |
c.prototype.call = function (a, b, d) { | |
for (var e = [], f = 3; f < arguments.length; f++) | |
e[f - 3] = arguments[f]; | |
f = ["%c".concat(b, "::").concat(d, " ")]; | |
var g = ["color: #999; font-weight: bold;"]; | |
0 < e.length && "string" === typeof e[0] && f.push(e.shift()); | |
g.push.apply(g, C([], u(e), !1)); | |
try { | |
Function.prototype.apply.call( | |
a, | |
console, | |
C([f.join("")], u(g), !1) | |
); | |
} catch (h) { | |
console.error(h); | |
} | |
}; | |
return c; | |
})())(), | |
w = function (c, a) { | |
return null == c || c !== c ? a : c; | |
}, | |
qa = function (c) { | |
var a = c.clientWidth; | |
getComputedStyle && | |
((c = getComputedStyle(c, null)), | |
(a -= | |
parseFloat(c.paddingLeft || "0") + | |
parseFloat(c.paddingRight || "0"))); | |
return a; | |
}, | |
Z = function (c) { | |
var a = c.offsetHeight, | |
b = c.offsetWidth, | |
d = c.getBoundingClientRect(), | |
e = document.body, | |
f = document.documentElement; | |
c = Math.round( | |
d.top + | |
(window.pageYOffset || f.scrollTop || e.scrollTop) - | |
(f.clientTop || e.clientTop || 0) | |
); | |
d = Math.round( | |
d.left + | |
(window.pageXOffset || f.scrollLeft || e.scrollLeft) - | |
(f.clientLeft || e.clientLeft || 0) | |
); | |
return { | |
top: c, | |
left: d, | |
bottom: c + a, | |
right: d + b, | |
width: b, | |
height: a, | |
}; | |
}, | |
G = function () { | |
var c = navigator.userAgent, | |
a = | |
/Tablet|iPad|Playbook|Nook|webOS|Kindle|Android (?!.*Mobile).*Safari|CrOS/i.test( | |
c | |
); | |
return /Mobi|iP(hone|od)|Opera Mini/i.test(c) && !a; | |
}, | |
ra = function (c) { | |
void 0 === c && (c = document); | |
return (c === document ? document.body : c).getBoundingClientRect() | |
.top; | |
}, | |
sa = function (c) { | |
return c.includes(",") ? c.split(",") : [c]; | |
}, | |
ta = function (c) { | |
void 0 === c && (c = document); | |
c = c.querySelectorAll("article"); | |
return 0 === c.length | |
? null | |
: (c = Array.from(c).reduce(function (a, b) { | |
return b.offsetHeight > a.offsetHeight ? b : a; | |
})) && c.offsetHeight > 1.5 * window.innerHeight | |
? c | |
: null; | |
}, | |
ua = function (c, a, b) { | |
void 0 === b && (b = document); | |
var d = ta(b), | |
e = d ? [d] : [], | |
f = []; | |
c.forEach(function (h) { | |
var k = Array.from(b.querySelectorAll(h.elementSelector)).slice( | |
0, | |
h.skip | |
); | |
sa(h.elementSelector).forEach(function (l) { | |
var n = b.querySelectorAll(l); | |
l = function (r) { | |
var m = n[r]; | |
if ( | |
a.map.some(function (t) { | |
return t.el.isEqualNode(m); | |
}) | |
) | |
return "continue"; | |
(r = m && m.parentElement) && r !== document.body | |
? e.push(r) | |
: e.push(m); | |
-1 === k.indexOf(m) && f.push({ dynamicAd: h, element: m }); | |
}; | |
for (var p = 0; p < n.length; p++) l(p); | |
}); | |
}); | |
var g = ra(b); | |
c = f.sort(function (h, k) { | |
return ( | |
h.element.getBoundingClientRect().top - | |
g - | |
(k.element.getBoundingClientRect().top - g) | |
); | |
}); | |
return [e, c]; | |
}, | |
va = function (c, a, b) { | |
void 0 === b && (b = document); | |
a = u(ua(c, a, b), 2); | |
c = a[0]; | |
a = a[1]; | |
if (0 === c.length) throw Error("No Main Content Elements Found"); | |
return [ | |
Array.from(c).reduce(function (d, e) { | |
return e.offsetHeight > d.offsetHeight ? e : d; | |
}) || document.body, | |
a, | |
]; | |
}, | |
A; | |
(function (c) { | |
c.amznbid = "amznbid"; | |
c.amzniid = "amzniid"; | |
c.amznp = "amznp"; | |
c.amznsz = "amznsz"; | |
})(A || (A = {})); | |
var H; | |
(function (c) { | |
c.ThirtyThreeAcross = "33across"; | |
c.AppNexus = "appnexus"; | |
c.Amazon = "amazon"; | |
c.Colossus = "colossus"; | |
c.ColossusServer = "col_ss"; | |
c.Conversant = "conversant"; | |
c.Concert = "concert"; | |
c.Criteo = "criteo"; | |
c.GumGum = "gumgum"; | |
c.ImproveDigital = "improvedigital"; | |
c.ImproveDigitalServer = "improve_ss"; | |
c.IndexExchange = "ix"; | |
c.Kargo = "kargo"; | |
c.KargoServer = "krgo_ss"; | |
c.MediaGrid = "grid"; | |
c.MediaGridVideo = "gridvid"; | |
c.Nativo = "nativo"; | |
c.OpenX = "openx"; | |
c.Ogury = "ogury"; | |
c.OpenXServer = "opnx_ss"; | |
c.Ozone = "ozone"; | |
c.Pubmatic = "pubmatic"; | |
c.PubmaticServer = "pubm_ss"; | |
c.ResetDigital = "resetdigital"; | |
c.Roundel = "roundel"; | |
c.Rtbhouse = "rtbhouse"; | |
c.Rubicon = "rubicon"; | |
c.RubiconServer = "rubi_ss"; | |
c.Sharethrough = "sharethrough"; | |
c.Teads = "teads"; | |
c.Triplelift = "triplelift"; | |
c.TripleliftServer = "tripl_ss"; | |
c.TTD = "ttd"; | |
c.Undertone = "undertone"; | |
c.UndertoneServer = "under_ss"; | |
c.Unruly = "unruly"; | |
c.YahooSSP = "yahoossp"; | |
c.YahooSSPServer = "yah_ss"; | |
c.Verizon = "verizon"; | |
c.Yieldmo = "yieldmo"; | |
})(H || (H = {})); | |
var aa; | |
(function (c) { | |
c.Prebid = "prebid"; | |
c.GAM = "gam"; | |
c.Amazon = "amazon"; | |
c.Marmalade = "marmalade"; | |
c.Floors = "floors"; | |
c.CMP = "cmp"; | |
c.Optable = "optable"; | |
})(aa || (aa = {})); | |
var ba; | |
(function (c) { | |
c.cm = "cm"; | |
c.fbrap = "fbrap"; | |
c.rapml = "rapml"; | |
})(ba || (ba = {})); | |
var ca; | |
(function (c) { | |
c.lazy = "lazy"; | |
c.raptive = "raptive"; | |
c.refresh = "refresh"; | |
c.session = "session"; | |
c.crossDomain = "crossdomain"; | |
c.highSequence = "highsequence"; | |
c.lazyBidPool = "lazyBidPool"; | |
})(ca || (ca = {})); | |
var da; | |
(function (c) { | |
c.lazy = "l"; | |
c.raptive = "rapml"; | |
c.refresh = "r"; | |
c.session = "s"; | |
c.crossdomain = "c"; | |
c.highsequence = "hs"; | |
c.lazyBidPool = "lbp"; | |
})(da || (da = {})); | |
var ea; | |
(function (c) { | |
c.Version = "Version"; | |
c.SharingNotice = "SharingNotice"; | |
c.SaleOptOutNotice = "SaleOptOutNotice"; | |
c.SharingOptOutNotice = "SharingOptOutNotice"; | |
c.TargetedAdvertisingOptOutNotice = "TargetedAdvertisingOptOutNotice"; | |
c.SensitiveDataProcessingOptOutNotice = | |
"SensitiveDataProcessingOptOutNotice"; | |
c.SensitiveDataLimitUseNotice = "SensitiveDataLimitUseNotice"; | |
c.SaleOptOut = "SaleOptOut"; | |
c.SharingOptOut = "SharingOptOut"; | |
c.TargetedAdvertisingOptOut = "TargetedAdvertisingOptOut"; | |
c.SensitiveDataProcessing = "SensitiveDataProcessing"; | |
c.KnownChildSensitiveDataConsents = "KnownChildSensitiveDataConsents"; | |
c.PersonalDataConsents = "PersonalDataConsents"; | |
c.MspaCoveredTransaction = "MspaCoveredTransaction"; | |
c.MspaOptOutOptionMode = "MspaOptOutOptionMode"; | |
c.MspaServiceProviderMode = "MspaServiceProviderMode"; | |
c.SubSectionType = "SubsectionType"; | |
c.Gpc = "Gpc"; | |
})(ea || (ea = {})); | |
var fa; | |
(function (c) { | |
c[(c.NA = 0)] = "NA"; | |
c[(c.OptedOut = 1)] = "OptedOut"; | |
c[(c.OptedIn = 2)] = "OptedIn"; | |
})(fa || (fa = {})); | |
var F; | |
(function (c) { | |
c.AdDensity = "addensity"; | |
c.AdLayout = "adlayout"; | |
c.FooterCloseButton = "footerclose"; | |
c.Interstitial = "interstitial"; | |
c.RemoveVideoTitleWrapper = "removevideotitlewrapper"; | |
c.StickyOutstream = "stickyoutstream"; | |
c.StickyOutstreamOnStickyPlayer = "sospp"; | |
c.VideoAdvancePlaylistRelatedPlayer = "videoadvanceplaylistrp"; | |
c.MobileStickyPlayerPosition = "mspp"; | |
})(F || (F = {})); | |
var M; | |
(function (c) { | |
c.Desktop = "desktop"; | |
c.Mobile = "mobile"; | |
})(M || (M = {})); | |
var L; | |
(function (c) { | |
c.Video_Collapse_Autoplay_SoundOff = | |
"Video_Collapse_Autoplay_SoundOff"; | |
c.Video_Individual_Autoplay_SOff = "Video_Individual_Autoplay_SOff"; | |
c.Video_Coll_SOff_Smartphone = "Video_Coll_SOff_Smartphone"; | |
c.Video_In_Post_ClicktoPlay_SoundOn = | |
"Video_In-Post_ClicktoPlay_SoundOn"; | |
})(L || (L = {})); | |
var ha; | |
(ha || (ha = {})).None = "none"; | |
var ia; | |
(function (c) { | |
c.Default = "default"; | |
c.AZ_Animals = "5daf495ed42c8605cfc74b0b"; | |
c.Natashas_Kitchen = "55bccc97303edab84afd77e2"; | |
c.RecipeTin_Eats = "55cb7e3b4bc841bd0c4ea577"; | |
c.Sallys_Baking_Recipes = "566aefa94856897050ee7303"; | |
c.Spend_With_Pennies = "541917f5a90318f9194874cf"; | |
})(ia || (ia = {})); | |
var wa = function (c, a) { | |
var b = c.adDensityEnabled; | |
c = c.adDensityLayout.pageOverrides.find(function (d) { | |
return ( | |
!!document.querySelector(d.pageSelector) && | |
(d[a].onePerViewport || "number" === typeof d[a].adDensity) | |
); | |
}); | |
return b ? !c : !0; | |
}; | |
A = (function () { | |
function c() { | |
this._timeOrigin = 0; | |
} | |
c.prototype.resetTimeOrigin = function () { | |
this._timeOrigin = window.performance.now(); | |
}; | |
c.prototype.now = function () { | |
try { | |
return Math.round(window.performance.now() - this._timeOrigin); | |
} catch (a) { | |
return 0; | |
} | |
}; | |
return c; | |
})(); | |
window.adthrive.windowPerformance = | |
window.adthrive.windowPerformance || new A(); | |
A = window.adthrive.windowPerformance; | |
var U = A.now.bind(A), | |
xa = function (c) { | |
void 0 === c && (c = window.location.search); | |
var a = 0 === c.indexOf("?") ? 1 : 0; | |
return c | |
.slice(a) | |
.split("&") | |
.reduce(function (b, d) { | |
d = u(d.split("="), 2); | |
b.set(d[0], d[1]); | |
return b; | |
}, new Map()); | |
}, | |
ja = function (c) { | |
try { | |
return { valid: !0, elements: document.querySelectorAll(c) }; | |
} catch (a) { | |
return z({ valid: !1 }, a); | |
} | |
}, | |
V = function (c) { | |
return "" === c ? { valid: !0 } : ja(c); | |
}, | |
ya = function (c) { | |
var a = c.reduce(function (b, d) { | |
return d.weight ? d.weight + b : b; | |
}, 0); | |
return ( | |
0 < c.length && | |
c.every(function (b) { | |
var d = b.value; | |
b = b.weight; | |
return !( | |
void 0 === d || | |
null === d || | |
("number" === typeof d && isNaN(d)) || | |
!b | |
); | |
}) && | |
100 === a | |
); | |
}, | |
za = ["siteId", "siteName", "adOptions", "breakpoints", "adUnits"], | |
Aa = function (c) { | |
var a = {}, | |
b = xa().get(c); | |
if (b) | |
try { | |
var d = decodeURIComponent(b); | |
a = JSON.parse(d); | |
q.event( | |
"ExperimentOverridesUtil", | |
"getExperimentOverrides", | |
c, | |
a | |
); | |
} catch (e) {} | |
return a; | |
}, | |
Ba = (function (c) { | |
function a(b) { | |
var d = c.call(this) || this; | |
d._featureRollouts = b.enabled | |
? b.siteAds.featureRollouts || {} | |
: {}; | |
return d; | |
} | |
x(a, c); | |
return a; | |
})( | |
(function () { | |
function c() { | |
this._featureRollouts = {}; | |
} | |
Object.defineProperty(c.prototype, "siteFeatureRollouts", { | |
get: function () { | |
return this._featureRollouts; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.isRolloutEnabled = function (a) { | |
return this._featureRollouts && this._featureRollouts[a] | |
? this._featureRollouts[a].enabled | |
: !1; | |
}; | |
return c; | |
})() | |
), | |
ka = (function () { | |
function c() { | |
this._clsGlobalData = window.adthriveCLS; | |
} | |
Object.defineProperty(c.prototype, "enabled", { | |
get: function () { | |
var a; | |
if ( | |
(a = !!this._clsGlobalData && !!this._clsGlobalData.siteAds) | |
) | |
a: { | |
a = this._clsGlobalData.siteAds; | |
var b = void 0; | |
void 0 === b && (b = za); | |
if (a) { | |
for (var d = 0; d < b.length; d++) | |
if (!a[b[d]]) { | |
a = !1; | |
break a; | |
} | |
a = !0; | |
} else a = !1; | |
} | |
return a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "error", { | |
get: function () { | |
return !(!this._clsGlobalData || !this._clsGlobalData.error); | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "siteAds", { | |
get: function () { | |
return this._clsGlobalData.siteAds; | |
}, | |
set: function (a) { | |
this._clsGlobalData.siteAds = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "disableAds", { | |
get: function () { | |
return this._clsGlobalData.disableAds; | |
}, | |
set: function (a) { | |
this._clsGlobalData.disableAds = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "enabledLocations", { | |
get: function () { | |
return this._clsGlobalData.enabledLocations; | |
}, | |
set: function (a) { | |
this._clsGlobalData.enabledLocations = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "injectedFromPlugin", { | |
get: function () { | |
return this._clsGlobalData.injectedFromPlugin; | |
}, | |
set: function (a) { | |
this._clsGlobalData.injectedFromPlugin = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "injectedFromSiteAds", { | |
get: function () { | |
return this._clsGlobalData.injectedFromSiteAds; | |
}, | |
set: function (a) { | |
this._clsGlobalData.injectedFromSiteAds = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.overwriteInjectedSlots = function (a) { | |
this._clsGlobalData.injectedSlots = a; | |
}; | |
c.prototype.setInjectedSlots = function (a) { | |
this._clsGlobalData.injectedSlots = | |
this._clsGlobalData.injectedSlots || []; | |
this._clsGlobalData.injectedSlots.push(a); | |
}; | |
Object.defineProperty(c.prototype, "injectedSlots", { | |
get: function () { | |
return this._clsGlobalData.injectedSlots; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.setInjectedVideoSlots = function (a) { | |
this._clsGlobalData.injectedVideoSlots = | |
this._clsGlobalData.injectedVideoSlots || []; | |
this._clsGlobalData.injectedVideoSlots.push(a); | |
}; | |
Object.defineProperty(c.prototype, "injectedVideoSlots", { | |
get: function () { | |
return this._clsGlobalData.injectedVideoSlots; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.setInjectedScripts = function (a) { | |
this._clsGlobalData.injectedScripts = | |
this._clsGlobalData.injectedScripts || []; | |
this._clsGlobalData.injectedScripts.push(a); | |
}; | |
Object.defineProperty(c.prototype, "getInjectedScripts", { | |
get: function () { | |
return this._clsGlobalData.injectedScripts; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.setExperiment = function (a, b, d) { | |
void 0 === d && (d = !1); | |
this._clsGlobalData.experiments = | |
this._clsGlobalData.experiments || {}; | |
this._clsGlobalData.siteExperiments = | |
this._clsGlobalData.siteExperiments || {}; | |
(d | |
? this._clsGlobalData.siteExperiments | |
: this._clsGlobalData.experiments)[a] = b; | |
}; | |
c.prototype.getExperiment = function (a, b) { | |
void 0 === b && (b = !1); | |
return ( | |
(b = b | |
? this._clsGlobalData.siteExperiments | |
: this._clsGlobalData.experiments) && b[a] | |
); | |
}; | |
c.prototype.setWeightedChoiceExperiment = function (a, b, d) { | |
void 0 === d && (d = !1); | |
this._clsGlobalData.experimentsWeightedChoice = | |
this._clsGlobalData.experimentsWeightedChoice || {}; | |
this._clsGlobalData.siteExperimentsWeightedChoice = | |
this._clsGlobalData.siteExperimentsWeightedChoice || {}; | |
(d | |
? this._clsGlobalData.siteExperimentsWeightedChoice | |
: this._clsGlobalData.experimentsWeightedChoice)[a] = b; | |
}; | |
c.prototype.getWeightedChoiceExperiment = function (a, b) { | |
var d, e; | |
void 0 === b && (b = !1); | |
return ( | |
(b = b | |
? null === (d = this._clsGlobalData) || void 0 === d | |
? void 0 | |
: d.siteExperimentsWeightedChoice | |
: null === (e = this._clsGlobalData) || void 0 === e | |
? void 0 | |
: e.experimentsWeightedChoice) && b[a] | |
); | |
}; | |
Object.defineProperty(c.prototype, "branch", { | |
get: function () { | |
return this._clsGlobalData.branch; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "bucket", { | |
get: function () { | |
return this._clsGlobalData.bucket; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "videoDisabledFromPlugin", { | |
get: function () { | |
return this._clsGlobalData.videoDisabledFromPlugin; | |
}, | |
set: function (a) { | |
this._clsGlobalData.videoDisabledFromPlugin = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
Object.defineProperty(c.prototype, "targetDensityLog", { | |
get: function () { | |
return this._clsGlobalData.targetDensityLog; | |
}, | |
set: function (a) { | |
this._clsGlobalData.targetDensityLog = a; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.shouldHalveIOSDensity = function () { | |
var a = new Ba(this), | |
b = void 0; | |
void 0 === b && (b = navigator.userAgent); | |
return ( | |
/iP(hone|od|ad)/i.test(b) && | |
a.isRolloutEnabled("iOS-Resolution") | |
); | |
}; | |
c.prototype.getTargetDensity = function (a) { | |
return this.shouldHalveIOSDensity() ? a / 2 : a; | |
}; | |
Object.defineProperty(c.prototype, "removeVideoTitleWrapper", { | |
get: function () { | |
return this._clsGlobalData.siteAds.adOptions | |
.removeVideoTitleWrapper; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
return c; | |
})(), | |
Ca = (function () { | |
function c() {} | |
c.getScrollTop = function () { | |
return ( | |
(window.pageYOffset || document.documentElement.scrollTop) - | |
(document.documentElement.clientTop || 0) | |
); | |
}; | |
c.getScrollBottom = function () { | |
return ( | |
this.getScrollTop() + | |
(document.documentElement.clientHeight || 0) | |
); | |
}; | |
c.shufflePlaylist = function (a) { | |
for (var b = a.length, d, e; 0 !== b; ) | |
(e = Math.floor(Math.random() * a.length)), | |
--b, | |
(d = a[b]), | |
(a[b] = a[e]), | |
(a[e] = d); | |
return a; | |
}; | |
c.isMobileLandscape = function () { | |
return window.matchMedia( | |
"(orientation: landscape) and (max-height: 480px)" | |
).matches; | |
}; | |
c.playerViewable = function (a) { | |
a = a.getBoundingClientRect(); | |
return this.isMobileLandscape() | |
? window.innerHeight > a.top + a.height / 2 && | |
0 < a.top + a.height / 2 | |
: window.innerHeight > a.top + a.height / 2; | |
}; | |
c.createQueryString = function (a) { | |
return Object.keys(a) | |
.map(function (b) { | |
return "".concat(b, "=").concat(a[b]); | |
}) | |
.join("&"); | |
}; | |
c.createEncodedQueryString = function (a) { | |
return Object.keys(a) | |
.map(function (b) { | |
return "".concat(b, "=").concat(encodeURIComponent(a[b])); | |
}) | |
.join("&"); | |
}; | |
c.setMobileLocation = function (a) { | |
a = a || "bottom-right"; | |
"top-left" === a | |
? (a = "adthrive-collapse-top-left") | |
: "top-right" === a | |
? (a = "adthrive-collapse-top-right") | |
: "bottom-left" === a | |
? (a = "adthrive-collapse-bottom-left") | |
: "bottom-right" === a | |
? (a = "adthrive-collapse-bottom-right") | |
: "top-center" === a && | |
(a = G() | |
? "adthrive-collapse-top-center" | |
: "adthrive-collapse-bottom-right"); | |
return a; | |
}; | |
c.addMaxResolutionQueryParam = function (a) { | |
var b = G() ? "320" : "1280"; | |
b = "max_resolution=".concat(b); | |
var d = u(String(a).split("?"), 2); | |
a = d[0]; | |
b = (d = d[1]) ? d + "&".concat(b) : b; | |
return "".concat(a, "?").concat(b); | |
}; | |
return c; | |
})(), | |
Da = (function () { | |
return function (c) { | |
this._clsOptions = c; | |
this.removeVideoTitleWrapper = w( | |
this._clsOptions.siteAds.adOptions.removeVideoTitleWrapper, | |
!1 | |
); | |
c = this._clsOptions.siteAds.videoPlayers; | |
this.footerSelector = w(c && c.footerSelector, ""); | |
this.players = w( | |
c && | |
c.players.map(function (a) { | |
a.mobileLocation = Ca.setMobileLocation(a.mobileLocation); | |
return a; | |
}), | |
[] | |
); | |
this.contextualSettings = c && c.contextual; | |
}; | |
})(), | |
Ea = (function () { | |
return function (c) { | |
this.contextualPlayerAdded = | |
this.playlistPlayerAdded = | |
this.mobileStickyPlayerOnPage = | |
!1; | |
this.footerSelector = ""; | |
this.removeVideoTitleWrapper = !1; | |
this.videoAdOptions = new Da(c); | |
this.players = this.videoAdOptions.players; | |
this.contextualSettings = this.videoAdOptions.contextualSettings; | |
this.removeVideoTitleWrapper = | |
this.videoAdOptions.removeVideoTitleWrapper; | |
this.footerSelector = this.videoAdOptions.footerSelector; | |
}; | |
})(); | |
H = (function () { | |
return function () {}; | |
})(); | |
var I = (function (c) { | |
function a(b) { | |
var d = c.call(this) || this; | |
d._probability = b; | |
return d; | |
} | |
x(a, c); | |
a.prototype.get = function () { | |
if (0 > this._probability || 1 < this._probability) | |
throw Error("Invalid probability: ".concat(this._probability)); | |
return Math.random() < this._probability; | |
}; | |
return a; | |
})(H); | |
A = (function () { | |
function c() { | |
this._clsOptions = new ka(); | |
this.shouldUseCoreExperimentsConfig = !1; | |
} | |
c.prototype.setExperimentKey = function (a) { | |
void 0 === a && (a = !1); | |
this._clsOptions.setExperiment(this.abgroup, this.result, a); | |
}; | |
return c; | |
})(); | |
var Fa = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.key = "RemoveLargeSize"; | |
b.abgroup = "smhd100"; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(0.1).get(); | |
}; | |
return a; | |
})(A), | |
la = function (c, a, b, d, e, f) { | |
c = Math.round(f - e); | |
a = []; | |
e = []; | |
a.push( | |
"(", | |
b | |
.map(function () { | |
return "%o"; | |
}) | |
.join(", "), | |
")" | |
); | |
e.push.apply(e, C([], u(b), !1)); | |
void 0 !== d && (a.push(" => %o"), e.push(d)); | |
a.push(" %c(".concat(c, "ms)")); | |
e.push("color: #999;"); | |
}, | |
ma = function (c, a, b) { | |
var d = void 0 !== b.get ? b.get : b.value; | |
return function () { | |
for (var e = [], f = 0; f < arguments.length; f++) | |
e[f] = arguments[f]; | |
try { | |
var g = U(), | |
h = d.apply(this, e); | |
if (h instanceof Promise) | |
return h | |
.then(function (l) { | |
var n = U(); | |
la(c, a, e, l, g, n); | |
return Promise.resolve(l); | |
}) | |
.catch(function (l) { | |
l.logged || (q.error(c, a, l), (l.logged = !0)); | |
throw l; | |
}); | |
var k = U(); | |
la(c, a, e, h, g, k); | |
return h; | |
} catch (l) { | |
throw (l.logged || (q.error(c, a, l), (l.logged = !0)), l); | |
} | |
}; | |
}, | |
N = function (c, a) { | |
void 0 === a && (a = !1); | |
return function (b) { | |
var d, | |
e = Object.getOwnPropertyNames(b.prototype) | |
.filter(function (p) { | |
return a || 0 !== p.indexOf("_"); | |
}) | |
.map(function (p) { | |
return [p, Object.getOwnPropertyDescriptor(b.prototype, p)]; | |
}); | |
try { | |
for (var f = Q(e), g = f.next(); !g.done; g = f.next()) { | |
var h = u(g.value, 2), | |
k = h[0], | |
l = h[1]; | |
void 0 !== l && "function" === typeof l.value | |
? (b.prototype[k] = ma(c, k, l)) | |
: void 0 !== l && | |
void 0 !== l.get && | |
"function" === typeof l.get && | |
Object.defineProperty( | |
b.prototype, | |
k, | |
z(z({}, l), { get: ma(c, k, l) }) | |
); | |
} | |
} catch (p) { | |
var n = { error: p }; | |
} finally { | |
try { | |
g && !g.done && (d = f.return) && d.call(f); | |
} finally { | |
if (n) throw n.error; | |
} | |
} | |
}; | |
}, | |
Ga = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b.key = "MaxContent"; | |
b.abgroup = "conmax99"; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.weight = 0.02; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(this.weight).get(); | |
}; | |
return (a = J( | |
[N("MaxContentExperiment"), E("design:paramtypes", [])], | |
a | |
)); | |
})(A), | |
Ha = (function (c) { | |
function a(b) { | |
var d = c.call(this) || this; | |
d._result = !1; | |
d.key = "ParallaxAdsExperiment"; | |
d.abgroup = "parallax"; | |
d._choices = [{ choice: !0 }, { choice: !1 }]; | |
d.weight = 0.5; | |
G() && | |
b.largeFormatsMobile && | |
((d._result = d.run()), d.setExperimentKey()); | |
return d; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(this.weight).get(); | |
}; | |
return (a = J( | |
[N("ParallaxAdsExperiment"), E("design:paramtypes", [Object])], | |
a | |
)); | |
})(A), | |
Ia = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.key = "mrsf"; | |
b.abgroup = "mrsf"; | |
G() && ((b._result = b.run()), b.setExperimentKey()); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(1).get(); | |
}; | |
return a; | |
})(A), | |
Ja = [ | |
[728, 90], | |
[300, 250], | |
[300, 600], | |
[320, 50], | |
[970, 250], | |
[160, 600], | |
[300, 1050], | |
[336, 280], | |
[970, 90], | |
[300, 50], | |
[320, 100], | |
[468, 60], | |
[250, 250], | |
[120, 240], | |
[1, 1], | |
[300, 300], | |
[552, 334], | |
[300, 420], | |
[728, 250], | |
[320, 300], | |
[300, 390], | |
], | |
Ka = [ | |
[300, 600], | |
[160, 600], | |
], | |
La = new Map([ | |
["Footer", 1], | |
["Header", 2], | |
["Sidebar", 3], | |
["Content", 4], | |
["Recipe", 5], | |
["Sidebar_sticky", 6], | |
["Below Post", 7], | |
]), | |
Ma = function (c) { | |
return Ja.filter(function (a) { | |
a = u(a, 2); | |
var b = a[0], | |
d = a[1]; | |
return c.some(function (e) { | |
e = u(e, 2); | |
var f = e[1]; | |
return b === e[0] && d === f; | |
}); | |
}); | |
}, | |
Na = function (c, a, b, d, e) { | |
a = u(a, 2); | |
var f = a[0], | |
g = a[1], | |
h = c.location; | |
a = c.sequence; | |
return "Footer" === h | |
? !("phone" === b && 320 === f && 100 === g) | |
: "Header" === h | |
? !(100 < g && d.result) | |
: "Recipe" === h | |
? !( | |
e.result && | |
"phone" === b && | |
((300 === f && 390 === g) || (320 === f && 300 === g)) | |
) | |
: "Sidebar" === h | |
? ((b = c.adSizes.some(function (k) { | |
return 300 >= u(k, 2)[1]; | |
})), | |
(d = 300 < g) && !b | |
? !0 | |
: 9 === a | |
? !0 | |
: a && 5 >= a | |
? d | |
? c.sticky | |
: !0 | |
: !d) | |
: !0; | |
}, | |
Oa = function (c, a) { | |
var b = c.location; | |
c = c.sticky; | |
if ("Recipe" === b && a) { | |
var d = a.recipeMobile; | |
a = a.recipeDesktop; | |
if ( | |
(G() && (null === d || void 0 === d ? 0 : d.enabled)) || | |
(!G() && (null === a || void 0 === a ? 0 : a.enabled)) | |
) | |
return !0; | |
} | |
return "Footer" === b || c; | |
}, | |
Pa = function (c, a) { | |
var b = a.adUnits, | |
d = a.adTypes ? new Ha(a.adTypes).result : !1, | |
e = new Fa(), | |
f = new Ga(), | |
g = new Ia(); | |
return b | |
.filter(function (h) { | |
return void 0 !== h.dynamic && h.dynamic.enabled; | |
}) | |
.map(function (h) { | |
var k = h.location.replace(/\s+/g, "_"), | |
l = "Sidebar" === k ? 0 : 2; | |
return { | |
auctionPriority: La.get(k) || 8, | |
location: k, | |
sequence: w(h.sequence, 1), | |
sizes: Ma(h.adSizes) | |
.filter(function (n) { | |
return Na(h, n, c, e, g); | |
}) | |
.concat(d && "Content" === h.location ? Ka : []), | |
devices: h.devices, | |
pageSelector: w(h.dynamic.pageSelector, "").trim(), | |
elementSelector: w(h.dynamic.elementSelector, "").trim(), | |
position: w(h.dynamic.position, "beforebegin"), | |
max: | |
f.result && "Content" === h.location | |
? 99 | |
: Math.floor(w(h.dynamic.max, 0)), | |
spacing: w(h.dynamic.spacing, 0), | |
skip: Math.floor(w(h.dynamic.skip, 0)), | |
every: Math.max(Math.floor(w(h.dynamic.every, 1)), 1), | |
classNames: h.dynamic.classNames || [], | |
sticky: Oa(h, a.adOptions.stickyContainerConfig), | |
stickyOverlapSelector: w(h.stickyOverlapSelector, "").trim(), | |
autosize: h.autosize, | |
special: w(h.targeting, []) | |
.filter(function (n) { | |
return "special" === n.key; | |
}) | |
.reduce(function (n, p) { | |
return n.concat.apply(n, C([], u(p.value), !1)); | |
}, []), | |
lazy: w(h.dynamic.lazy, !1), | |
lazyMax: w(h.dynamic.lazyMax, l), | |
lazyMaxDefaulted: | |
0 === h.dynamic.lazyMax ? !1 : !h.dynamic.lazyMax, | |
name: h.name, | |
}; | |
}); | |
}, | |
W = function (c, a) { | |
var b = qa(a), | |
d = c.sticky && "Sidebar" === c.location; | |
return c.sizes.filter(function (e) { | |
var f = d ? e[1] <= window.innerHeight - 100 : !0; | |
return (c.autosize ? e[0] <= b || 320 >= e[0] : !0) && f; | |
}); | |
}, | |
Qa = (function () { | |
return function (c) { | |
this.clsOptions = c; | |
this.enabledLocations = [ | |
"Below_Post", | |
"Content", | |
"Recipe", | |
"Sidebar", | |
]; | |
}; | |
})(), | |
Ra = function (c) { | |
var a = document.body; | |
c = "adthrive-device-".concat(c); | |
if (!a.classList.contains(c)) | |
try { | |
a.classList.add(c); | |
} catch (b) { | |
q.error("BodyDeviceClassComponent", "init", { | |
message: b.message, | |
}), | |
(a = "classList" in document.createElement("_")), | |
q.error("BodyDeviceClassComponent", "init.support", { | |
support: a, | |
}); | |
} | |
}, | |
Sa = function (c, a, b, d) { | |
void 0 === b && (b = 1200); | |
void 0 === d && (d = 25); | |
return Math.min( | |
Math.max(Math.floor((c - a.offsetTop) / (b + 10)) - 2, 1), | |
d | |
); | |
}, | |
Ta = function (c) { | |
if (c && c.length) { | |
for (var a = 0, b = 0; b < c.length; b++) { | |
var d = V(c[b]); | |
if (d.valid && d.elements && d.elements[0]) { | |
a = Z(d.elements[0]).height; | |
break; | |
} | |
} | |
return a; | |
} | |
}, | |
Ua = function (c) { | |
return T( | |
'\n .adthrive-device-phone .adthrive-sticky-content {\n height: 450px !important;\n margin-bottom: 100px !important;\n }\n .adthrive-content.adthrive-sticky {\n position: -webkit-sticky;\n position: sticky !important;\n top: 42px !important;\n margin-top: 42px !important;\n }\n .adthrive-content.adthrive-sticky:after {\n content: "\u2014 Advertisement. Scroll down to continue. \u2014";\n font-size: 10pt;\n margin-top: 5px;\n margin-bottom: 5px;\n display:block;\n color: #888;\n }\n .adthrive-sticky-container {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n min-height:'.concat( | |
c ? c : 400, | |
"px !important;\n margin: 10px 0 10px 0;\n background-color: #FAFAFA;\n padding-bottom:0px;\n }\n " | |
) | |
); | |
}, | |
Va = function (c, a) { | |
a = null !== a && void 0 !== a ? a : 5; | |
T( | |
"\n .adthrive-ad.adthrive-sticky-sidebar {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n min-height: " | |
.concat( | |
null !== c && void 0 !== c ? c : 1200, | |
"px !important;\n padding-bottom: 0px;\n margin: 10px 0 10px 0;\n }\n .adthrive-ad.adthrive-sticky-sidebar > div {\n flex-basis: unset;\n position: sticky !important;\n top: " | |
) | |
.concat(a, "px;\n }\n ") | |
); | |
}, | |
X = function (c) { | |
return c.some(function (a) { | |
return null !== document.querySelector(a); | |
}); | |
}, | |
Wa = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b.abgroup = "essa"; | |
b.key = "EnhancedStickySidebarAds"; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.weight = 0.9; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(this.weight).get(); | |
}; | |
return (a = J( | |
[ | |
N("EnhancedStickySidebarAdsExperiment"), | |
E("design:paramtypes", []), | |
], | |
a | |
)); | |
})(A), | |
Xa = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.key = "RemoveRecipeCap"; | |
b.abgroup = "rrc"; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(1).get(); | |
}; | |
return a; | |
})(A), | |
O = (function (c) { | |
function a(b, d) { | |
void 0 === b && (b = []); | |
var e = c.call(this) || this; | |
e._choices = b; | |
e._default = d; | |
return e; | |
} | |
x(a, c); | |
a.fromArray = function (b, d) { | |
return new a( | |
b.map(function (e) { | |
e = u(e, 2); | |
return { choice: e[0], weight: e[1] }; | |
}), | |
d | |
); | |
}; | |
a.prototype.addChoice = function (b, d) { | |
this._choices.push({ choice: b, weight: d }); | |
}; | |
a.prototype.get = function () { | |
var b, | |
d = 100 * Math.random(), | |
e = 0; | |
try { | |
for ( | |
var f = Q(this._choices), g = f.next(); | |
!g.done; | |
g = f.next() | |
) { | |
var h = g.value, | |
k = h.choice; | |
e += h.weight; | |
if (e >= d) return k; | |
} | |
} catch (n) { | |
var l = { error: n }; | |
} finally { | |
try { | |
g && !g.done && (b = f.return) && b.call(f); | |
} finally { | |
if (l) throw l.error; | |
} | |
} | |
return this._default; | |
}; | |
Object.defineProperty(a.prototype, "totalWeight", { | |
get: function () { | |
return this._choices.reduce(function (b, d) { | |
return b + d.weight; | |
}, 0); | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
return a; | |
})(H), | |
Ya = function (c) { | |
for (var a = 5381, b = c.length; b; ) | |
a = (33 * a) ^ c.charCodeAt(--b); | |
return a >>> 0; | |
}, | |
R = new ((function () { | |
function c() { | |
var a = this; | |
this.name = "StorageHandler"; | |
this.disable = !1; | |
this.removeLocalStorageValue = function (b) { | |
window.localStorage.removeItem( | |
"adthrive_".concat(b.toLowerCase()) | |
); | |
}; | |
this.getLocalStorageValue = function (b, d, e, f, g) { | |
void 0 === d && (d = !0); | |
void 0 === e && (e = !0); | |
if (a.disable) return null; | |
try { | |
var h = window.localStorage.getItem( | |
"" | |
.concat(d ? "adthrive_" : "") | |
.concat(e ? b.toLowerCase() : b) | |
); | |
if (h) { | |
var k = JSON.parse(h), | |
l = void 0 !== f && Date.now() - k.created >= f; | |
if (k && !l) | |
return ( | |
g && a.setLocalStorageValue(b, k.value, d), k.value | |
); | |
} | |
} catch (n) {} | |
return null; | |
}; | |
this.setLocalStorageValue = function (b, d, e) { | |
void 0 === e && (e = !0); | |
try { | |
e = e ? "adthrive_" : ""; | |
var f = { value: d, created: Date.now() }; | |
window.localStorage.setItem( | |
"".concat(e).concat(b.toLowerCase()), | |
JSON.stringify(f) | |
); | |
} catch (g) {} | |
}; | |
this.isValidABGroupLocalStorageValue = function (b) { | |
return ( | |
void 0 !== b && | |
null !== b && | |
!("number" === typeof b && isNaN(b)) | |
); | |
}; | |
this.getOrSetLocalStorageValue = function (b, d, e, f, g, h, k) { | |
void 0 === f && (f = !0); | |
void 0 === g && (g = !0); | |
void 0 === k && (k = !0); | |
e = a.getLocalStorageValue(b, k, f, e, g); | |
if (null !== e) return e; | |
d = d(); | |
a.setLocalStorageValue(b, d, k); | |
h && h(d); | |
return d; | |
}; | |
this.getOrSetABGroupLocalStorageValue = function (b, d, e, f, g) { | |
var h; | |
void 0 === f && (f = !0); | |
e = a.getLocalStorageValue("abgroup", !0, !0, e, f); | |
if ( | |
null !== e && | |
((f = e[b]), a.isValidABGroupLocalStorageValue(f)) | |
) | |
return f; | |
d = d(); | |
b = z(z({}, e), ((h = {}), (h[b] = d), h)); | |
a.setLocalStorageValue("abgroup", b); | |
g && g(); | |
return d; | |
}; | |
} | |
c.prototype.init = function () {}; | |
return c; | |
})())(), | |
na = function () { | |
return function (c, a, b) { | |
var d = b.value; | |
d && | |
(b.value = function () { | |
for (var e = this, f = [], g = 0; g < arguments.length; g++) | |
f[g] = arguments[g]; | |
g = Array.isArray(this._choices) | |
? Ya(JSON.stringify(this._choices)).toString(16) | |
: null; | |
var h = this._expConfigABGroup | |
? this._expConfigABGroup | |
: this.abgroup; | |
h = h | |
? h.toLowerCase() | |
: this.key | |
? this.key.toLowerCase() | |
: ""; | |
g = g ? "".concat(h, "_").concat(g) : h; | |
g = this.localStoragePrefix | |
? "".concat(this.localStoragePrefix, "-").concat(g) | |
: g; | |
h = R.getLocalStorageValue("branch"); | |
!1 === (h && h.enabled) && R.removeLocalStorageValue(g); | |
return R.getOrSetABGroupLocalStorageValue( | |
g, | |
function () { | |
return d.apply(e, f); | |
}, | |
864e5 | |
); | |
}); | |
}; | |
}; | |
H = (function (c) { | |
function a() { | |
var b = (null !== c && c.apply(this, arguments)) || this; | |
b._resultValidator = function () { | |
return !0; | |
}; | |
return b; | |
} | |
x(a, c); | |
a.prototype._isValidResult = function (b) { | |
var d = this; | |
return c.prototype._isValidResult.call(this, b, function () { | |
return d._resultValidator(b) || "control" === b; | |
}); | |
}; | |
a.prototype.run = function () { | |
if (!this.enabled) | |
return ( | |
q.error( | |
"CLSWeightedChoiceSiteExperiment", | |
"run", | |
"() => %o", | |
"No experiment config found. Defaulting to control." | |
), | |
"control" | |
); | |
if (!this._mappedChoices || 0 === this._mappedChoices.length) | |
return ( | |
q.error( | |
"CLSWeightedChoiceSiteExperiment", | |
"run", | |
"() => %o", | |
"No experiment variants found. Defaulting to control." | |
), | |
"control" | |
); | |
var b = new O(this._mappedChoices).get(); | |
if (this._isValidResult(b)) return b; | |
q.error( | |
"CLSWeightedChoiceSiteExperiment", | |
"run", | |
"() => %o", | |
"Invalid result from experiment choices. Defaulting to control." | |
); | |
return "control"; | |
}; | |
return a; | |
})( | |
(function () { | |
function c() {} | |
Object.defineProperty(c.prototype, "enabled", { | |
get: function () { | |
return void 0 !== this.experimentConfig; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype._isValidResult = function (a, b) { | |
void 0 === b && | |
(b = function () { | |
return !0; | |
}); | |
return b() && R.isValidABGroupLocalStorageValue(a); | |
}; | |
return c; | |
})() | |
); | |
var oa = (function () { | |
function c(a) { | |
var b = this, | |
d, | |
e; | |
this.siteExperiments = []; | |
this._clsOptions = a; | |
this._device = G() ? "mobile" : "desktop"; | |
this.siteExperiments = | |
null !== | |
(e = | |
null === (d = this._clsOptions.siteAds.siteExperiments) || | |
void 0 === d | |
? void 0 | |
: d.filter(function (f) { | |
var g = f.key; | |
var h = b._device; | |
if (f) { | |
var k = !!f.enabled, | |
l = | |
null == f.dateStart || | |
Date.now() >= f.dateStart, | |
n = null == f.dateEnd || Date.now() <= f.dateEnd, | |
p = | |
null === f.selector || | |
("" !== f.selector && | |
!!document.querySelector(f.selector)), | |
r = "mobile" === f.platform && "mobile" === h; | |
h = "desktop" === f.platform && "desktop" === h; | |
r = | |
null === f.platform || | |
"all" === f.platform || | |
r || | |
h; | |
(h = | |
"bernoulliTrial" === f.experimentType | |
? 1 === f.variants.length | |
: ya(f.variants)) || | |
q.error( | |
"SiteTest", | |
"validateSiteExperiment", | |
"experiment presented invalid choices for key:", | |
f.key, | |
f.variants | |
); | |
f = k && l && n && p && r && h; | |
} else f = !1; | |
a: switch (((k = b._clsOptions.siteAds), g)) { | |
case F.AdDensity: | |
var m = wa(k, b._device); | |
break a; | |
case F.StickyOutstream: | |
var t, v; | |
m = (g = | |
null === | |
(v = | |
null === | |
(t = | |
null === (m = k.videoPlayers) || | |
void 0 === m | |
? void 0 | |
: m.partners) || void 0 === t | |
? void 0 | |
: t.stickyOutstream) || void 0 === v | |
? void 0 | |
: v.blockedPageSelectors) | |
? !document.querySelector(g) | |
: !0; | |
break a; | |
case F.Interstitial: | |
m = (m = | |
k.adOptions.interstitialBlockedPageSelectors) | |
? !document.querySelector(m) | |
: !0; | |
break a; | |
default: | |
m = !0; | |
} | |
return f && m; | |
})) && void 0 !== e | |
? e | |
: []; | |
} | |
c.prototype.getSiteExperimentByKey = function (a) { | |
var b = this.siteExperiments.filter(function (f) { | |
return f.key.toLowerCase() === a.toLowerCase(); | |
})[0], | |
d = Aa("at_site_features"), | |
e = | |
typeof ((null === b || void 0 === b ? 0 : b.variants[1]) | |
? null === b || void 0 === b | |
? void 0 | |
: b.variants[1].value | |
: null === b || void 0 === b | |
? void 0 | |
: b.variants[0].value) === typeof d[a]; | |
b && | |
d[a] && | |
e && | |
(b.variants = [ | |
{ displayName: "test", value: d[a], weight: 100, id: 0 }, | |
]); | |
return b; | |
}; | |
return c; | |
})(), | |
Za = (function (c) { | |
function a(b) { | |
var d = c.call(this) || this; | |
d._choices = []; | |
d._mappedChoices = []; | |
d._result = ""; | |
d._resultValidator = function (e) { | |
return "string" === typeof e; | |
}; | |
d.key = F.AdLayout; | |
d.abgroup = F.AdLayout; | |
d._clsSiteExperiments = new oa(b); | |
d.experimentConfig = d._clsSiteExperiments.getSiteExperimentByKey( | |
d.key | |
); | |
d.enabled && | |
d.experimentConfig && | |
((d._choices = d.experimentConfig.variants), | |
(d._mappedChoices = d._mapChoices()), | |
(d._result = d.run()), | |
b.setWeightedChoiceExperiment(d.abgroup, d._result, !0)); | |
return d; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
if (!this.enabled) | |
return ( | |
q.error( | |
"CLSAdLayoutSiteExperiment", | |
"run", | |
"() => %o", | |
"No experiment config found. Defaulting to empty class name." | |
), | |
"" | |
); | |
var b = new O(this._mappedChoices).get(); | |
if (this._isValidResult(b)) return b; | |
q.error( | |
"CLSAdLayoutSiteExperiment", | |
"run", | |
"() => %o", | |
"Invalid result from experiment choices. Defaulting to empty class name." | |
); | |
return ""; | |
}; | |
a.prototype._mapChoices = function () { | |
return this._choices.map(function (b) { | |
return { weight: b.weight, choice: b.value }; | |
}); | |
}; | |
J( | |
[ | |
na(), | |
E("design:type", Function), | |
E("design:paramtypes", []), | |
E("design:returntype", void 0), | |
], | |
a.prototype, | |
"run", | |
null | |
); | |
return a; | |
})(H), | |
$a = (function (c) { | |
function a(b) { | |
var d = c.call(this) || this; | |
d._choices = []; | |
d._mappedChoices = []; | |
d._result = "control"; | |
d._resultValidator = function (e) { | |
return "number" === typeof e; | |
}; | |
d.key = F.AdDensity; | |
d.abgroup = F.AdDensity; | |
d._clsSiteExperiments = new oa(b); | |
d.experimentConfig = d._clsSiteExperiments.getSiteExperimentByKey( | |
d.key | |
); | |
d.enabled && | |
d.experimentConfig && | |
((d._choices = d.experimentConfig.variants), | |
(d._mappedChoices = d._mapChoices()), | |
(d._result = d.run()), | |
b.setWeightedChoiceExperiment(d.abgroup, d._result, !0)); | |
return d; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
if (!this.enabled) | |
return ( | |
q.error( | |
"CLSTargetAdDensitySiteExperiment", | |
"run", | |
"() => %o", | |
"No experiment config found. Defaulting to control." | |
), | |
"control" | |
); | |
var b = new O(this._mappedChoices).get(); | |
if (this._isValidResult(b)) return b; | |
q.error( | |
"CLSTargetAdDensitySiteExperiment", | |
"run", | |
"() => %o", | |
"Invalid result from experiment choices. Defaulting to control." | |
); | |
return "control"; | |
}; | |
a.prototype._mapChoices = function () { | |
return this._choices.map(function (b) { | |
var d = b.value; | |
return { | |
weight: b.weight, | |
choice: "number" === typeof d ? (d || 0) / 100 : "control", | |
}; | |
}); | |
}; | |
J( | |
[ | |
na(), | |
E("design:type", Function), | |
E("design:paramtypes", []), | |
E("design:returntype", void 0), | |
], | |
a.prototype, | |
"run", | |
null | |
); | |
return a; | |
})(H), | |
ab = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b.abgroup = "scae"; | |
b.key = "StickyContainerAds"; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.weight = 0.99; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(this.weight).get(); | |
}; | |
return (a = J( | |
[N("StickyContainerAdsExperiment"), E("design:paramtypes", [])], | |
a | |
)); | |
})(A), | |
bb = (function (c) { | |
function a() { | |
var b = c.call(this) || this; | |
b._result = !1; | |
b.abgroup = "scre"; | |
b.key = "StickyContainerRecipe"; | |
b._choices = [{ choice: !0 }, { choice: !1 }]; | |
b.weight = 0.99; | |
b._result = b.run(); | |
b.setExperimentKey(); | |
return b; | |
} | |
x(a, c); | |
Object.defineProperty(a.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
a.prototype.run = function () { | |
return new I(this.weight).get(); | |
}; | |
return (a = J( | |
[ | |
N("StickyContainerRecipeExperiment"), | |
E("design:paramtypes", []), | |
], | |
a | |
)); | |
})(A), | |
cb = (function () { | |
function c(a) { | |
this.key = "DynamicSidebarSlotsMinHeight"; | |
this.abgroup = "dssmh"; | |
this._result = 2700; | |
this._choices = [ | |
{ choice: 1800, weight: 10 }, | |
{ choice: 2100, weight: 10 }, | |
{ choice: 2400, weight: 10 }, | |
{ choice: 2700, weight: 60 }, | |
{ choice: 3e3, weight: 10 }, | |
]; | |
this._isValidResult = function (b) { | |
return "number" === typeof b; | |
}; | |
this._result = this.run(); | |
a.setWeightedChoiceExperiment(this.abgroup, this._result, !1); | |
} | |
Object.defineProperty(c.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.run = function () { | |
var a = new O(this._choices).get(); | |
if (this._isValidResult(a)) return a; | |
q.error( | |
"setWeightedChoiceExperiment", | |
"run", | |
"() => %o", | |
"Invalid result from experiment choices. Defaulting to 0." | |
); | |
return 0; | |
}; | |
return c; | |
})(), | |
db = (function () { | |
function c(a) { | |
this.key = "DynamicSidebarSlotsCap"; | |
this.abgroup = "dssc"; | |
this._result = 25; | |
this._choices = [ | |
{ choice: 25, weight: 25 }, | |
{ choice: 50, weight: 25 }, | |
{ choice: 75, weight: 25 }, | |
{ choice: 100, weight: 25 }, | |
]; | |
this._isValidResult = function (b) { | |
return "number" === typeof b; | |
}; | |
this._result = this.run(); | |
a.setWeightedChoiceExperiment(this.abgroup, this._result, !1); | |
} | |
Object.defineProperty(c.prototype, "result", { | |
get: function () { | |
return this._result; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.run = function () { | |
var a = new O(this._choices).get(); | |
if (this._isValidResult(a)) return a; | |
q.error( | |
"DynamicSidebarSlotsCapCLSExperiment", | |
"run", | |
"() => %o", | |
"Invalid result from experiment choices. Defaulting to 0." | |
); | |
return 0; | |
}; | |
return c; | |
})(), | |
fb = (function () { | |
function c(a, b) { | |
this._clsOptions = a; | |
this._adInjectionMap = b; | |
this._mainContentHeight = this._recipeCount = 0; | |
this._mainContentDiv = null; | |
this._totalAvailableElements = []; | |
this._minDivHeight = 250; | |
this._densityDevice = M.Desktop; | |
this._pubLog = { | |
onePerViewport: !1, | |
targetDensity: 0, | |
targetDensityUnits: 0, | |
combinedMax: 0, | |
}; | |
this._densityMax = 0.99; | |
this._smallerIncrementAttempts = 0; | |
this._absoluteMinimumSpacingByDevice = 250; | |
this._usedAbsoluteMinimum = !1; | |
this._infPageEndOffset = 0; | |
this.locationMaxLazySequence = new Map([["Recipe", 5]]); | |
this.locationToMinHeight = { | |
Below_Post: "250px", | |
Content: "250px", | |
Recipe: "250px", | |
Sidebar: "250px", | |
}; | |
b = this._clsOptions.siteAds.breakpoints; | |
var d = b.tablet; | |
var e = window.innerWidth; | |
b = e >= b.desktop ? "desktop" : e >= d ? "tablet" : "phone"; | |
this._device = b; | |
this._config = new Qa(a); | |
this._clsOptions.enabledLocations = this._config.enabledLocations; | |
this._clsTargetAdDensitySiteExperiment = this._clsOptions.siteAds | |
.siteExperiments | |
? new $a(this._clsOptions) | |
: null; | |
this._dynamicSidebarSlotsMinHeightExperiment = new cb( | |
this._clsOptions | |
); | |
this._dynamicSidebarSlotsCapExperiment = new db(this._clsOptions); | |
this._stickyContainerAdsExperiment = new ab(); | |
this._stickyContainerRecipeExperiment = new bb(); | |
this._enhancedStickySidebarAdsExperiment = new Wa(); | |
this._removeRecipeCapExperiment = new Xa(); | |
} | |
c.prototype.start = function () { | |
var a = this, | |
b, | |
d, | |
e, | |
f, | |
g, | |
h, | |
k; | |
try { | |
Ra(this._device); | |
var l = new Za(this._clsOptions); | |
if (l.enabled) { | |
var n = l.result, | |
p = n.startsWith(".") ? n.substring(1) : n; | |
if (/^[-_a-zA-Z]+[-_a-zA-Z0-9]*$/.test(p)) | |
try { | |
document.body.classList.add(p); | |
} catch (B) { | |
q.error( | |
"ClsDynamicAdsInjector", | |
"start", | |
"Uncaught CSS Class error: ".concat(B) | |
); | |
} | |
else | |
q.error( | |
"ClsDynamicAdsInjector", | |
"start", | |
"Invalid class name: ".concat(p) | |
); | |
} | |
var r = this._clsOptions.siteAds.adOptions, | |
m = | |
(null === | |
(b = this._dynamicSidebarSlotsMinHeightExperiment) || | |
void 0 === b | |
? void 0 | |
: b.result) || | |
(null === | |
(e = | |
null === (d = r.sidebarConfig) || void 0 === d | |
? void 0 | |
: d.dynamicStickySidebar) || void 0 === e | |
? void 0 | |
: e.minHeight), | |
t = r.siteAttributes, | |
v = G() | |
? null === t || void 0 === t | |
? void 0 | |
: t.mobileHeaderSelectors | |
: null === t || void 0 === t | |
? void 0 | |
: t.desktopHeaderSelectors, | |
y = Ta(v); | |
Va(m, y); | |
var D = Pa(this._device, this._clsOptions.siteAds) | |
.filter(function (B) { | |
return a._locationEnabled(B); | |
}) | |
.filter(function (B) { | |
return B.devices.includes(a._device); | |
}) | |
.filter(function (B) { | |
return ( | |
0 === B.pageSelector.length || | |
null !== document.querySelector(B.pageSelector) | |
); | |
}), | |
P = this.inject(D); | |
(null === | |
(g = | |
null === | |
(f = | |
this._clsOptions.siteAds.adOptions | |
.stickyContainerConfig) || void 0 === f | |
? void 0 | |
: f.content) || void 0 === g | |
? 0 | |
: g.enabled) && | |
this._stickyContainerAdsExperiment.result && | |
!X( | |
this._clsOptions.siteAds.adOptions.stickyContainerConfig | |
.blockedSelectors || [] | |
) && | |
Ua( | |
null === | |
(k = | |
null === | |
(h = | |
this._clsOptions.siteAds.adOptions | |
.stickyContainerConfig) || void 0 === h | |
? void 0 | |
: h.content) || void 0 === k | |
? void 0 | |
: k.minHeight | |
); | |
P.forEach(function (B) { | |
return a._clsOptions.setInjectedSlots(B); | |
}); | |
} catch (B) { | |
q.error("ClsDynamicAdsInjector", "start", B); | |
} | |
}; | |
c.prototype.inject = function (a, b) { | |
void 0 === b && (b = document); | |
this._densityDevice = | |
"desktop" === this._device ? M.Desktop : M.Mobile; | |
this._overrideDefaultAdDensitySettingsWithSiteExperiment(); | |
var d = this._clsOptions.siteAds, | |
e = w(d.adDensityEnabled, !0), | |
f = d.adDensityLayout && e; | |
d = a.filter(function (g) { | |
return f ? "Content" !== g.location : g; | |
}); | |
a = a.filter(function (g) { | |
return f ? "Content" === g.location : null; | |
}); | |
return C( | |
C([], u(d.length ? this._injectNonDensitySlots(d, b) : []), !1), | |
u(a.length ? this._injectDensitySlots(a, b) : []), | |
!1 | |
); | |
}; | |
c.prototype._injectNonDensitySlots = function (a, b) { | |
var d, | |
e = this, | |
f, | |
g, | |
h, | |
k, | |
l, | |
n, | |
p; | |
void 0 === b && (b = document); | |
var r = [], | |
m = [], | |
t = | |
(null === | |
(g = | |
null === | |
(f = | |
this._clsOptions.siteAds.adOptions.sidebarConfig) || | |
void 0 === f | |
? void 0 | |
: f.dynamicStickySidebar) || void 0 === g | |
? void 0 | |
: g.enabled) && | |
this._enhancedStickySidebarAdsExperiment.result; | |
this._stickyContainerRecipeExperiment.result && | |
a.some(function (K) { | |
return "Recipe" === K.location && K.sticky; | |
}) && | |
!X( | |
(null === | |
(h = | |
this._clsOptions.siteAds.adOptions | |
.stickyContainerConfig) || void 0 === h | |
? void 0 | |
: h.blockedSelectors) || [] | |
) && | |
((f = this._clsOptions.siteAds.adOptions.stickyContainerConfig), | |
(f = | |
"phone" === this._device | |
? null === | |
(k = | |
null === f || void 0 === f | |
? void 0 | |
: f.recipeMobile) || void 0 === k | |
? void 0 | |
: k.minHeight | |
: null === | |
(l = | |
null === f || void 0 === f | |
? void 0 | |
: f.recipeDesktop) || void 0 === l | |
? void 0 | |
: l.minHeight), | |
T( | |
"\n .adthrive-recipe.adthrive-sticky {\n position: -webkit-sticky;\n position: sticky !important;\n top: 42px !important;\n margin-top: 42px !important;\n }\n .adthrive-recipe-sticky-container {\n position: relative;\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n min-height:".concat( | |
f ? f : 400, | |
"px !important;\n margin: 10px 0 10px 0;\n background-color: #FAFAFA;\n padding-bottom:0px;\n }\n " | |
) | |
)); | |
try { | |
for (var v = Q(a), y = v.next(); !y.done; y = v.next()) { | |
var D = y.value, | |
P = | |
"Sidebar" === D.location && 9 === D.sequence && D.sticky, | |
B = | |
(null === | |
(p = | |
null === | |
(n = | |
this._clsOptions.siteAds.adOptions | |
.sidebarConfig) || void 0 === n | |
? void 0 | |
: n.dynamicStickySidebar) || void 0 === p | |
? void 0 | |
: p.blockedSelectors) || [], | |
eb = X(B); | |
t && P | |
? eb | |
? this._insertNonDensityAds(D, r, m, b) | |
: this._insertDynamicStickySidebarAds(D, r, m, b) | |
: this._insertNonDensityAds(D, r, m, b); | |
} | |
} catch (K) { | |
var pa = { error: K }; | |
} finally { | |
try { | |
y && !y.done && (d = v.return) && d.call(v); | |
} finally { | |
if (pa) throw pa.error; | |
} | |
} | |
m.forEach(function (K) { | |
K.element.style.minHeight = e.locationToMinHeight[K.location]; | |
}); | |
return r; | |
}; | |
c.prototype._injectDensitySlots = function (a, b) { | |
void 0 === b && (b = document); | |
try { | |
this._calculateMainContentHeightAndAllElements(a, b); | |
} catch (h) { | |
return []; | |
} | |
var d = this._getDensitySettings(a, b); | |
a = d.onePerViewport; | |
var e = d.targetAll, | |
f = d.targetDensityUnits, | |
g = d.combinedMax; | |
d = d.numberOfUnits; | |
this._absoluteMinimumSpacingByDevice = a | |
? window.innerHeight | |
: this._absoluteMinimumSpacingByDevice; | |
if (!d) return []; | |
this._adInjectionMap.filterUsed(); | |
this._findElementsForAds(d, a, e, g, f, b); | |
return this._insertAds(); | |
}; | |
c.prototype._overrideDefaultAdDensitySettingsWithSiteExperiment = | |
function () { | |
var a; | |
if ( | |
null === (a = this._clsTargetAdDensitySiteExperiment) || | |
void 0 === a | |
? 0 | |
: a.enabled | |
) | |
(a = this._clsTargetAdDensitySiteExperiment.result), | |
"number" === typeof a && | |
((this._clsOptions.siteAds.adDensityEnabled = !0), | |
(this._clsOptions.siteAds.adDensityLayout[ | |
this._densityDevice | |
].adDensity = a)); | |
}; | |
c.prototype._getDensitySettings = function (a, b) { | |
void 0 === b && (b = document); | |
var d = this._clsOptions.siteAds.adDensityLayout, | |
e = this._determineOverrides(d.pageOverrides); | |
e = e.length ? e[0] : d[this._densityDevice]; | |
d = this._clsOptions.getTargetDensity(e.adDensity); | |
e = e.onePerViewport; | |
var f = this._shouldTargetAllEligible(d), | |
g = this._getTargetDensityUnits(d, f); | |
a = this._getCombinedMax(a, b); | |
b = Math.min.apply( | |
Math, | |
C( | |
[], | |
u( | |
C( | |
[this._totalAvailableElements.length, g], | |
u(0 < a ? [a] : []), | |
!1 | |
) | |
), | |
!1 | |
) | |
); | |
this._pubLog = { | |
onePerViewport: e, | |
targetDensity: d, | |
targetDensityUnits: g, | |
combinedMax: a, | |
}; | |
return { | |
onePerViewport: e, | |
targetAll: f, | |
targetDensityUnits: g, | |
combinedMax: a, | |
numberOfUnits: b, | |
}; | |
}; | |
c.prototype._determineOverrides = function (a) { | |
var b = this; | |
return a | |
.filter(function (d) { | |
var e = V(d.pageSelector); | |
return ( | |
"" === d.pageSelector || (e.elements && e.elements.length) | |
); | |
}) | |
.map(function (d) { | |
return d[b._densityDevice]; | |
}); | |
}; | |
c.prototype._shouldTargetAllEligible = function (a) { | |
return a === this._densityMax; | |
}; | |
c.prototype._getTargetDensityUnits = function (a, b) { | |
return b | |
? this._totalAvailableElements.length | |
: Math.floor( | |
(a * this._mainContentHeight) / (1 - a) / this._minDivHeight | |
) - this._recipeCount; | |
}; | |
c.prototype._getCombinedMax = function (a, b) { | |
void 0 === b && (b = document); | |
return w( | |
a | |
.filter(function (d) { | |
try { | |
var e = b.querySelector(d.elementSelector); | |
} catch (f) {} | |
return e; | |
}) | |
.map(function (d) { | |
return ( | |
Number(d.max) + Number(d.lazyMaxDefaulted ? 0 : d.lazyMax) | |
); | |
}) | |
.sort(function (d, e) { | |
return e - d; | |
})[0], | |
0 | |
); | |
}; | |
c.prototype._elementLargerThanMainContent = function (a) { | |
return ( | |
a.offsetHeight >= this._mainContentHeight && | |
1 < this._totalAvailableElements.length | |
); | |
}; | |
c.prototype._elementDisplayNone = function (a) { | |
var b = window.getComputedStyle(a, null).display; | |
return (b && "none" === b) || "none" === a.style.display; | |
}; | |
c.prototype._isBelowMaxes = function (a, b) { | |
return ( | |
this._adInjectionMap.map.length < a && | |
this._adInjectionMap.map.length < b | |
); | |
}; | |
c.prototype._findElementsForAds = function (a, b, d, e, f, g) { | |
var h = this; | |
void 0 === g && (g = document); | |
this._clsOptions.targetDensityLog = { | |
onePerViewport: b, | |
combinedMax: e, | |
targetDensityUnits: f, | |
targetDensityPercentage: this._pubLog.targetDensity, | |
mainContentHeight: this._mainContentHeight, | |
recipeCount: this._recipeCount, | |
numberOfEls: this._totalAvailableElements.length, | |
}; | |
var k = function (l) { | |
var n; | |
try { | |
for ( | |
var p = Q(h._totalAvailableElements), r = p.next(); | |
!r.done; | |
r = p.next() | |
) { | |
var m = r.value, | |
t = m.dynamicAd, | |
v = m.element; | |
h._logDensityInfo(v, t.elementSelector, l); | |
if ( | |
!( | |
(!d && h._elementLargerThanMainContent(v)) || | |
h._elementDisplayNone(v) | |
) | |
) | |
if (h._isBelowMaxes(e, f)) | |
h._checkElementSpacing({ | |
dynamicAd: t, | |
element: v, | |
insertEvery: l, | |
targetAll: d, | |
target: g, | |
}); | |
else break; | |
} | |
} catch (D) { | |
var y = { error: D }; | |
} finally { | |
try { | |
r && !r.done && (n = p.return) && n.call(p); | |
} finally { | |
if (y) throw y.error; | |
} | |
} | |
!h._usedAbsoluteMinimum && | |
5 > h._smallerIncrementAttempts && | |
(++h._smallerIncrementAttempts, k(h._getSmallerIncrement(l))); | |
}; | |
a = this._getInsertEvery(a, b, f); | |
k(a); | |
}; | |
c.prototype._getSmallerIncrement = function (a) { | |
a *= 0.6; | |
a <= this._absoluteMinimumSpacingByDevice && | |
((a = this._absoluteMinimumSpacingByDevice), | |
(this._usedAbsoluteMinimum = !0)); | |
return a; | |
}; | |
c.prototype._insertDynamicStickySidebarAds = function (a, b, d, e) { | |
void 0 === e && (e = document); | |
var f = this.getElements(a.elementSelector, e).item(a.skip); | |
if (null !== f) | |
for ( | |
var g = this._repeatDynamicStickySidebar(a, f), | |
h = function (n) { | |
var p = g[n], | |
r = "".concat(p.location, "_").concat(p.sequence); | |
if ( | |
b.some(function (y) { | |
return y.name === r; | |
}) | |
) | |
return "continue"; | |
var m = k.getDynamicElementId(p), | |
t = "adthrive-".concat( | |
a.location.replace("_", "-").toLowerCase() | |
), | |
v = "".concat(t, "-").concat(p.sequence); | |
n = C( | |
[ | |
n !== g.length - 1 ? "adthrive-sticky-sidebar" : "", | |
t, | |
v, | |
], | |
u(a.classNames), | |
!1 | |
); | |
if ((m = k.addAd(f, m, p.position, n))) | |
(n = W(p, m)), | |
n.length && | |
(b.push({ | |
clsDynamicAd: a, | |
dynamicAd: p, | |
element: m, | |
sizes: n, | |
name: r, | |
infinite: e !== document, | |
}), | |
d.push({ location: p.location, element: m })); | |
}, | |
k = this, | |
l = 0; | |
l < g.length; | |
l++ | |
) | |
h(l); | |
}; | |
c.prototype._insertNonDensityAds = function (a, b, d, e) { | |
void 0 === e && (e = document); | |
var f = 0, | |
g = 0, | |
h = 0; | |
0 < a.spacing && (g = f = window.innerHeight * a.spacing); | |
for ( | |
var k = this._repeatDynamicAds(a), | |
l = this.getElements(a.elementSelector, e), | |
n = function (m) { | |
if (h + 1 > k.length) return "break"; | |
var t = l[m]; | |
if (0 < f) { | |
m = Z(t).bottom; | |
if (m <= g) return "continue"; | |
g = m + f; | |
} | |
m = k[h]; | |
var v = "".concat(m.location, "_").concat(m.sequence); | |
b.some(function (B) { | |
return B.name === v; | |
}) && (h += 1); | |
var y = p.getDynamicElementId(m), | |
D = "adthrive-".concat( | |
a.location.replace("_", "-").toLowerCase() | |
), | |
P = "".concat(D, "-").concat(a.sequence); | |
D = C( | |
[ | |
"Sidebar" === a.location && | |
a.sticky && | |
a.sequence && | |
5 >= a.sequence | |
? "adthrive-sticky-sidebar" | |
: "", | |
p._stickyContainerRecipeExperiment.result && | |
"Recipe" === a.location && | |
a.sticky | |
? "adthrive-recipe-sticky-container" | |
: "", | |
D, | |
P, | |
], | |
u(a.classNames), | |
!1 | |
); | |
if ((t = p.addAd(t, y, a.position, D))) | |
(y = W(m, t)), | |
y.length && | |
(b.push({ | |
clsDynamicAd: a, | |
dynamicAd: m, | |
element: t, | |
sizes: y, | |
name: v, | |
infinite: e !== document, | |
}), | |
d.push({ location: m.location, element: t }), | |
"Recipe" === a.location && ++p._recipeCount, | |
(h += 1)); | |
}, | |
p = this, | |
r = a.skip; | |
r < l.length && "break" !== n(r); | |
r += a.every | |
); | |
}; | |
c.prototype._insertAds = function () { | |
var a = this, | |
b = []; | |
this._adInjectionMap.filterUsed(); | |
this._adInjectionMap.map.forEach(function (d, e) { | |
var f = d.el, | |
g = d.dynamicAd; | |
d = d.target; | |
e = Number(g.sequence) + e; | |
var h = g.max; | |
h = g.lazy && e > h; | |
g.sequence = e; | |
g.lazy = h; | |
if ((f = a._addContentAd(f, g, d))) (g.used = !0), b.push(f); | |
}); | |
return b; | |
}; | |
c.prototype._getInsertEvery = function (a, b, d) { | |
this._moreAvailableElementsThanUnitsToInject(d, a) | |
? ((this._usedAbsoluteMinimum = !1), | |
(a = this._useWiderSpacing(d, a))) | |
: ((this._usedAbsoluteMinimum = !0), | |
(a = this._useSmallestSpacing(b))); | |
return b && window.innerHeight > a ? window.innerHeight : a; | |
}; | |
c.prototype._useWiderSpacing = function (a, b) { | |
return this._mainContentHeight / Math.min(a, b); | |
}; | |
c.prototype._useSmallestSpacing = function (a) { | |
return a && | |
window.innerHeight > this._absoluteMinimumSpacingByDevice | |
? window.innerHeight | |
: this._absoluteMinimumSpacingByDevice; | |
}; | |
c.prototype._moreAvailableElementsThanUnitsToInject = function ( | |
a, | |
b | |
) { | |
return ( | |
this._totalAvailableElements.length > a || | |
this._totalAvailableElements.length > b | |
); | |
}; | |
c.prototype._logDensityInfo = function (a, b, d) { | |
a = this._pubLog; | |
a.onePerViewport; | |
a.targetDensity; | |
a.combinedMax; | |
}; | |
c.prototype._checkElementSpacing = function (a) { | |
var b = a.dynamicAd, | |
d = a.element, | |
e = a.insertEvery, | |
f = a.targetAll; | |
a = a.target; | |
a = void 0 === a ? document : a; | |
(this._isFirstAdInjected() || | |
this._hasProperSpacing(d, b, f, e)) && | |
this._markSpotForContentAd(d, z({}, b), a); | |
}; | |
c.prototype._isFirstAdInjected = function () { | |
return !this._adInjectionMap.map.length; | |
}; | |
c.prototype._markSpotForContentAd = function (a, b, d) { | |
void 0 === d && (d = document); | |
this._adInjectionMap.add( | |
a, | |
this._getElementCoords( | |
a, | |
"beforebegin" === b.position || "afterbegin" === b.position | |
), | |
b, | |
d | |
); | |
this._adInjectionMap.sort(); | |
}; | |
c.prototype._hasProperSpacing = function (a, b, d, e) { | |
var f = | |
"beforebegin" === b.position || "afterbegin" === b.position; | |
b = "beforeend" === b.position || "afterbegin" === b.position; | |
d = d || this._isElementFarEnoughFromOtherAdElements(a, e, f); | |
f = b || this._isElementNotInRow(a, f); | |
a = -1 === a.id.indexOf("AdThrive_".concat("Below_Post")); | |
return d && f && a; | |
}; | |
c.prototype._isElementFarEnoughFromOtherAdElements = function ( | |
a, | |
b, | |
d | |
) { | |
a = this._getElementCoords(a, d); | |
var e = !1; | |
for ( | |
d = 0; | |
d < this._adInjectionMap.map.length && | |
!((e = | |
this._adInjectionMap.map[d + 1] && | |
this._adInjectionMap.map[d + 1].coords), | |
(e = | |
a - b > this._adInjectionMap.map[d].coords && | |
(!e || a + b < e))); | |
d++ | |
); | |
return e; | |
}; | |
c.prototype._isElementNotInRow = function (a, b) { | |
var d = a.previousElementSibling, | |
e = a.nextElementSibling; | |
return (b = b | |
? (!d && e) || (d && a.tagName !== d.tagName) | |
? e | |
: d | |
: e) && 0 === a.getBoundingClientRect().height | |
? !0 | |
: b | |
? a.getBoundingClientRect().top !== | |
b.getBoundingClientRect().top | |
: !0; | |
}; | |
c.prototype._calculateMainContentHeightAndAllElements = function ( | |
a, | |
b | |
) { | |
void 0 === b && (b = document); | |
a = u(va(a, this._adInjectionMap, b), 2); | |
b = a[1]; | |
this._mainContentDiv = a[0]; | |
this._totalAvailableElements = b; | |
a = this._mainContentDiv; | |
b = void 0; | |
void 0 === b && (b = "div #comments, section .comments"); | |
this._mainContentHeight = (b = a.querySelector(b)) | |
? a.offsetHeight - b.offsetHeight | |
: a.offsetHeight; | |
}; | |
c.prototype._getElementCoords = function (a, b) { | |
void 0 === b && (b = !1); | |
a = a.getBoundingClientRect(); | |
return (b ? a.top : a.bottom) + window.scrollY; | |
}; | |
c.prototype._addContentAd = function (a, b, d) { | |
var e, f; | |
void 0 === d && (d = document); | |
var g = null, | |
h = "adthrive-".concat( | |
b.location.replace("_", "-").toLowerCase() | |
), | |
k = "".concat(h, "-").concat(b.sequence), | |
l = | |
(null === | |
(f = | |
null === | |
(e = | |
this._clsOptions.siteAds.adOptions | |
.stickyContainerConfig) || void 0 === e | |
? void 0 | |
: e.content) || void 0 === f | |
? 0 | |
: f.enabled) && this._stickyContainerAdsExperiment.result | |
? "adthrive-sticky-container" | |
: ""; | |
if ( | |
(a = this.addAd( | |
a, | |
this.getDynamicElementId(b), | |
b.position, | |
C([l, h, k], u(b.classNames), !1) | |
)) | |
) | |
(e = W(b, a)), | |
e.length && | |
((a.style.minHeight = this.locationToMinHeight[b.location]), | |
(g = "".concat(b.location, "_").concat(b.sequence)), | |
(g = { | |
clsDynamicAd: b, | |
dynamicAd: b, | |
element: a, | |
sizes: e, | |
name: g, | |
infinite: d !== document, | |
})); | |
return g; | |
}; | |
c.prototype.getDynamicElementId = function (a) { | |
return "" | |
.concat("AdThrive", "_") | |
.concat(a.location, "_") | |
.concat(a.sequence, "_") | |
.concat(this._device); | |
}; | |
c.prototype.getElements = function (a, b) { | |
void 0 === b && (b = document); | |
return b.querySelectorAll(a); | |
}; | |
c.prototype.addAd = function (a, b, d, e) { | |
void 0 === e && (e = []); | |
document.getElementById(b) || | |
((e = '<div id="' | |
.concat(b, '" class="adthrive-ad ') | |
.concat(e.join(" "), '"></div>')), | |
a.insertAdjacentHTML(d, e)); | |
return document.getElementById(b); | |
}; | |
c.prototype._repeatDynamicAds = function (a) { | |
var b = [], | |
d = | |
this._removeRecipeCapExperiment.result && | |
"Recipe" === a.location | |
? 99 | |
: this.locationMaxLazySequence.get(a.location), | |
e = a.lazy ? w(d, 0) : 0; | |
d = a.max; | |
var f = a.lazyMax; | |
e = Math.max( | |
d, | |
0 === e && a.lazy | |
? d + f | |
: Math.min(Math.max(e - a.sequence + 1, 0), d + f) | |
); | |
for (f = 0; f < e; f++) { | |
var g = Number(a.sequence) + f, | |
h = a.lazy && f >= d; | |
b.push(z(z({}, a), { sequence: g, lazy: h })); | |
} | |
return b; | |
}; | |
c.prototype._repeatSpecificDynamicAds = function (a, b, d) { | |
void 0 === d && (d = 0); | |
for (var e = [], f = 0; f < b; f++) { | |
var g = d + f; | |
e.push(z(z({}, a), { sequence: g })); | |
} | |
return e; | |
}; | |
c.prototype._repeatDynamicStickySidebar = function (a, b) { | |
var d, e, f, g; | |
if ("Sidebar" !== a.location || 9 !== a.sequence || !a.sticky) | |
return [a]; | |
if (b) { | |
var h = | |
(null === | |
(d = this._dynamicSidebarSlotsMinHeightExperiment) || | |
void 0 === d | |
? void 0 | |
: d.result) || | |
(null === | |
(f = | |
null === | |
(e = | |
this._clsOptions.siteAds.adOptions.sidebarConfig) || | |
void 0 === e | |
? void 0 | |
: e.dynamicStickySidebar) || void 0 === f | |
? void 0 | |
: f.minHeight); | |
d = a.stickyOverlapSelector | |
? (null === | |
(g = document.querySelector(a.stickyOverlapSelector)) || | |
void 0 === g | |
? void 0 | |
: g.offsetTop) || document.body.scrollHeight | |
: document.body.scrollHeight; | |
b = Sa(d, b, h, this._dynamicSidebarSlotsCapExperiment.result); | |
return this._repeatSpecificDynamicAds(a, b, 9).map(function ( | |
k | |
) { | |
9 !== k.sequence && (k.lazy = !0); | |
return k; | |
}); | |
} | |
return [a]; | |
}; | |
c.prototype._locationEnabled = function (a) { | |
a = this._clsOptions.enabledLocations.includes(a.location); | |
var b = | |
(this._clsOptions.disableAds && | |
this._clsOptions.disableAds.all) || | |
document.body.classList.contains("adthrive-disable-all"), | |
d = | |
!document.body.classList.contains( | |
"adthrive-disable-content" | |
) && | |
!this._clsOptions.disableAds.reasons.has("content_plugin"); | |
return a && !b && d; | |
}; | |
return c; | |
})(), | |
gb = (function (c) { | |
function a(b, d) { | |
var e = c.call(this, b, "ClsVideoInsertion") || this; | |
e._videoConfig = b; | |
e._clsOptions = d; | |
e._IN_POST_SELECTOR = ".adthrive-video-player"; | |
e._WRAPPER_BAR_HEIGHT = 36; | |
e._playersAddedFromPlugin = []; | |
d.removeVideoTitleWrapper && (e._WRAPPER_BAR_HEIGHT = 0); | |
return e; | |
} | |
x(a, c); | |
a.prototype.init = function () { | |
this._initializePlayers(); | |
}; | |
a.prototype._wrapJWPlayerWithCLS = function (b, d, e) { | |
void 0 === e && (e = 0); | |
return b.parentNode | |
? ((d = this._createGenericCLSWrapper( | |
0.5625 * b.offsetWidth, | |
d, | |
e | |
)), | |
b.parentNode.insertBefore(d, b), | |
d.appendChild(b), | |
d) | |
: null; | |
}; | |
a.prototype._createGenericCLSWrapper = function (b, d, e) { | |
var f = document.createElement("div"); | |
f.id = "cls-video-container-".concat(d); | |
f.className = "adthrive"; | |
f.style.minHeight = "".concat(b + e, "px"); | |
return f; | |
}; | |
a.prototype._getTitleHeight = function (b) { | |
b.innerText = "Title"; | |
b.style.visibility = "hidden"; | |
document.body.appendChild(b); | |
var d = window.getComputedStyle(b), | |
e = parseInt(d.height, 10), | |
f = parseInt(d.marginTop, 10); | |
d = parseInt(d.marginBottom, 10); | |
document.body.removeChild(b); | |
return Math.min(e + d + f, 50); | |
}; | |
a.prototype._initializePlayers = function () { | |
var b = document.querySelectorAll(this._IN_POST_SELECTOR); | |
b.length && this._initializeRelatedPlayers(b); | |
this._shouldRunAutoplayPlayers() && | |
this._determineAutoplayPlayers(); | |
}; | |
a.prototype._createStationaryRelatedPlayer = function (b, d) { | |
var e = "mobile" === this._device ? [400, 225] : [640, 360], | |
f = L.Video_In_Post_ClicktoPlay_SoundOn; | |
d && | |
b.mediaId && | |
((d = this._wrapJWPlayerWithCLS(d, b.mediaId)), | |
this._playersAddedFromPlugin.push(b.mediaId), | |
d && | |
this._clsOptions.setInjectedVideoSlots({ | |
playerId: b.playerId, | |
playerName: f, | |
playerSize: e, | |
element: d, | |
type: "stationaryRelated", | |
})); | |
}; | |
a.prototype._createStickyRelatedPlayer = function (b, d) { | |
var e = "mobile" === this._device ? [400, 225] : [640, 360], | |
f = L.Video_Individual_Autoplay_SOff; | |
this._stickyRelatedOnPage = !0; | |
this._videoConfig.mobileStickyPlayerOnPage = | |
"mobile" === this._device; | |
if (d && b.position && b.mediaId) { | |
var g = document.createElement("div"); | |
d.insertAdjacentElement(b.position, g); | |
d = document.createElement("h3"); | |
d.style.margin = "10px 0"; | |
d = this._getTitleHeight(d); | |
d = this._wrapJWPlayerWithCLS( | |
g, | |
b.mediaId, | |
this._WRAPPER_BAR_HEIGHT + d | |
); | |
this._playersAddedFromPlugin.push(b.mediaId); | |
d && | |
this._clsOptions.setInjectedVideoSlots({ | |
playlistId: b.playlistId, | |
playerId: b.playerId, | |
playerSize: e, | |
playerName: f, | |
element: g, | |
type: "stickyRelated", | |
}); | |
} | |
}; | |
a.prototype._createPlaylistPlayer = function (b, d) { | |
var e = b.playlistId, | |
f = | |
"mobile" === this._device | |
? L.Video_Coll_SOff_Smartphone | |
: L.Video_Collapse_Autoplay_SoundOff, | |
g = "mobile" === this._device ? [400, 225] : [640, 360]; | |
this._videoConfig.mobileStickyPlayerOnPage = !0; | |
var h = document.createElement("div"); | |
d.insertAdjacentElement(b.position, h); | |
d = this._wrapJWPlayerWithCLS(h, e, this._WRAPPER_BAR_HEIGHT); | |
this._playersAddedFromPlugin.push("playlist-".concat(e)); | |
d && | |
this._clsOptions.setInjectedVideoSlots({ | |
playlistId: b.playlistId, | |
playerId: b.playerId, | |
playerSize: g, | |
playerName: f, | |
element: h, | |
type: "stickyPlaylist", | |
}); | |
}; | |
a.prototype._isVideoAllowedOnPage = function () { | |
var b = this._clsOptions.disableAds; | |
if (b && b.video) { | |
var d = ""; | |
b.reasons.has("video_tag") | |
? (d = "video tag") | |
: b.reasons.has("video_plugin") | |
? (d = "video plugin") | |
: b.reasons.has("video_page") && (d = "command queue"); | |
q.error( | |
d ? "ClsVideoInsertionMigrated" : "ClsVideoInsertion", | |
"isVideoAllowedOnPage", | |
Error("DBP: Disabled by publisher via ".concat(d || "other")) | |
); | |
return !1; | |
} | |
return this._clsOptions.videoDisabledFromPlugin ? !1 : !0; | |
}; | |
return a; | |
})( | |
(function (c) { | |
function a(b, d) { | |
var e = c.call(this) || this; | |
e._videoConfig = b; | |
e._component = d; | |
e._stickyRelatedOnPage = !1; | |
e._contextualMediaIds = []; | |
b = void 0; | |
void 0 === b && (b = navigator.userAgent); | |
b = /Windows NT|Macintosh/i.test(b); | |
e._device = b ? "desktop" : "mobile"; | |
e._potentialPlayerMap = e.setPotentialPlayersMap(); | |
return e; | |
} | |
x(a, c); | |
a.prototype.setPotentialPlayersMap = function () { | |
var b = this._videoConfig.players || [], | |
d = this._filterPlayerMap(); | |
b = b.filter(function (e) { | |
return "stationaryRelated" === e.type && e.enabled; | |
}); | |
d.stationaryRelated = b; | |
return (this._potentialPlayerMap = d); | |
}; | |
a.prototype._filterPlayerMap = function () { | |
var b = this, | |
d = this._videoConfig.players, | |
e = { | |
stickyRelated: [], | |
stickyPlaylist: [], | |
stationaryRelated: [], | |
}; | |
return d && d.length | |
? d | |
.filter(function (f) { | |
var g; | |
return null === (g = f.devices) || void 0 === g | |
? void 0 | |
: g.includes(b._device); | |
}) | |
.reduce(function (f, g) { | |
f[g.type] || | |
(q.event( | |
b._component, | |
"constructor", | |
"Unknown Video Player Type detected", | |
g.type | |
), | |
(f[g.type] = [])); | |
g.enabled && f[g.type].push(g); | |
return f; | |
}, e) | |
: e; | |
}; | |
a.prototype._checkPlayerSelectorOnPage = function (b) { | |
var d = this; | |
b = this._potentialPlayerMap[b].map(function (e) { | |
return { | |
player: e, | |
playerElement: d._getPlacementElement(e), | |
}; | |
}); | |
return b.length ? b[0] : { player: null, playerElement: null }; | |
}; | |
a.prototype._getOverrideElement = function (b, d, e) { | |
b && d | |
? ((e = document.createElement("div")), | |
d.insertAdjacentElement(b.position, e)) | |
: ((d = this._checkPlayerSelectorOnPage("stickyPlaylist")), | |
(b = d.player), | |
(d = d.playerElement), | |
b && | |
d && | |
((e = document.createElement("div")), | |
d.insertAdjacentElement(b.position, e))); | |
return e; | |
}; | |
a.prototype._shouldOverrideElement = function (b) { | |
b = b.getAttribute("override-embed"); | |
return "true" === b || "false" === b | |
? "true" === b | |
: this._videoConfig.contextualSettings | |
? this._videoConfig.contextualSettings.overrideEmbedLocation | |
: !1; | |
}; | |
a.prototype._checkPageSelector = function (b, d, e) { | |
void 0 === e && (e = []); | |
return b && d && 0 === e.length | |
? ("/" !== window.location.pathname && | |
q.event( | |
"VideoUtils", | |
"getPlacementElement", | |
Error("PSNF: ".concat(b, " does not exist on the page")) | |
), | |
!1) | |
: !0; | |
}; | |
a.prototype._getElementSelector = function (b, d, e) { | |
if (d && d.length > e) return d[e]; | |
q.event( | |
"VideoUtils", | |
"getPlacementElement", | |
Error("ESNF: ".concat(b, " does not exist on the page")) | |
); | |
return null; | |
}; | |
a.prototype._getPlacementElement = function (b) { | |
var d = b.pageSelector, | |
e = b.elementSelector; | |
b = b.skip; | |
var f = V(d), | |
g = f.valid, | |
h = f.elements; | |
f = Y(f, ["valid", "elements"]); | |
var k = ja(e), | |
l = k.valid, | |
n = k.elements; | |
k = Y(k, ["valid", "elements"]); | |
return "" === d || g | |
? l | |
? this._checkPageSelector(d, g, h) | |
? this._getElementSelector(e, n, b) || null | |
: null | |
: (q.error( | |
"VideoUtils", | |
"getPlacementElement", | |
Error("".concat(e, " is not a valid selector")), | |
k | |
), | |
null) | |
: (q.error( | |
"VideoUtils", | |
"getPlacementElement", | |
Error("".concat(d, " is not a valid selector")), | |
f | |
), | |
null); | |
}; | |
a.prototype._getEmbeddedPlayerType = function (b) { | |
((b = b.getAttribute("data-player-type")) && "default" !== b) || | |
(b = this._videoConfig.contextualSettings | |
? this._videoConfig.contextualSettings.defaultPlayerType | |
: "static"); | |
this._stickyRelatedOnPage && (b = "static"); | |
return b; | |
}; | |
a.prototype._getUnusedMediaId = function (b) { | |
return (b = b.getAttribute("data-video-id")) && | |
!this._contextualMediaIds.includes(b) | |
? (this._contextualMediaIds.push(b), b) | |
: !1; | |
}; | |
a.prototype._createRelatedPlayer = function (b, d, e) { | |
"collapse" === d | |
? this._createCollapsePlayer(b, e) | |
: "static" === d && this._createStaticPlayer(b, e); | |
}; | |
a.prototype._createCollapsePlayer = function (b, d) { | |
var e = this._checkPlayerSelectorOnPage("stickyRelated"), | |
f = e.player; | |
e = e.playerElement; | |
var g = f ? f : this._potentialPlayerMap.stationaryRelated[0]; | |
g && g.playerId | |
? (this._shouldOverrideElement(d) && | |
(d = this._getOverrideElement(f, e, d)), | |
(d = | |
document.querySelector( | |
"#cls-video-container-".concat(b, " > div") | |
) || d), | |
this._createStickyRelatedPlayer( | |
z(z({}, g), { mediaId: b }), | |
d | |
)) | |
: q.error( | |
this._component, | |
"_createCollapsePlayer", | |
"No video player found" | |
); | |
}; | |
a.prototype._createStaticPlayer = function (b, d) { | |
this._potentialPlayerMap.stationaryRelated.length && | |
this._potentialPlayerMap.stationaryRelated[0].playerId | |
? this._createStationaryRelatedPlayer( | |
z(z({}, this._potentialPlayerMap.stationaryRelated[0]), { | |
mediaId: b, | |
}), | |
d | |
) | |
: q.error( | |
this._component, | |
"_createStaticPlayer", | |
"No video player found" | |
); | |
}; | |
a.prototype._shouldRunAutoplayPlayers = function () { | |
return this._isVideoAllowedOnPage() && | |
(this._potentialPlayerMap.stickyRelated.length || | |
this._potentialPlayerMap.stickyPlaylist.length) | |
? !0 | |
: !1; | |
}; | |
a.prototype._determineAutoplayPlayers = function () { | |
var b = this._component, | |
d = "VideoManagerComponent" === b, | |
e = this._config; | |
if (this._stickyRelatedOnPage) | |
q.event( | |
b, | |
"stickyRelatedOnPage", | |
(d && { | |
device: e && e.context.device, | |
isDesktop: this._device, | |
}) || | |
{} | |
); | |
else { | |
var f = this._checkPlayerSelectorOnPage("stickyPlaylist"), | |
g = f.player; | |
f = f.playerElement; | |
g && g.playerId && g.playlistId && f | |
? this._createPlaylistPlayer(g, f) | |
: q.event( | |
b, | |
"noStickyPlaylist", | |
(d && { | |
vendor: "none", | |
device: e && e.context.device, | |
isDesktop: this._device, | |
}) || | |
{} | |
); | |
} | |
}; | |
a.prototype._initializeRelatedPlayers = function (b) { | |
for (var d = 0; d < b.length; d++) { | |
var e = b[d], | |
f = e.offsetParent, | |
g = this._getEmbeddedPlayerType(e); | |
f && | |
(f = this._getUnusedMediaId(e)) && | |
this._createRelatedPlayer(f, g, e); | |
} | |
}; | |
return a; | |
})( | |
(function () { | |
function c() {} | |
Object.defineProperty(c.prototype, "enabled", { | |
get: function () { | |
return !0; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
return c; | |
})() | |
) | |
), | |
hb = (function (c) { | |
function a() { | |
return (null !== c && c.apply(this, arguments)) || this; | |
} | |
x(a, c); | |
return a; | |
})( | |
(function () { | |
function c() { | |
this._map = []; | |
} | |
c.prototype.add = function (a, b, d, e) { | |
void 0 === e && (e = document); | |
this._map.push({ el: a, coords: b, dynamicAd: d, target: e }); | |
}; | |
Object.defineProperty(c.prototype, "map", { | |
get: function () { | |
return this._map; | |
}, | |
enumerable: !1, | |
configurable: !0, | |
}); | |
c.prototype.sort = function () { | |
this._map.sort(function (a, b) { | |
return a.coords - b.coords; | |
}); | |
}; | |
c.prototype.filterUsed = function () { | |
this._map = this._map.filter(function (a) { | |
return !a.dynamicAd.used; | |
}); | |
}; | |
c.prototype.reset = function () { | |
this._map = []; | |
}; | |
return c; | |
})() | |
); | |
try { | |
(function () { | |
var c = new ka(); | |
c && | |
c.enabled && | |
(new fb(c, new hb()).start(), new gb(new Ea(c), c).init()); | |
})(); | |
} catch (c) { | |
q.error("CLS", "pluginsertion-iife", c), | |
window.adthriveCLS && (window.adthriveCLS.injectedFromPlugin = !1); | |
} | |
})(); | |
</script> | |
<script data-no-optimize="1" data-cfasync="false"> | |
(function () { | |
var clsElements = document.querySelectorAll("script[id^='cls-']"); | |
window.adthriveCLS && clsElements && clsElements.length === 0 | |
? (window.adthriveCLS.injectedFromPlugin = false) | |
: ""; | |
})(); | |
</script> | |
<!-- End of AdThrive 3 --> | |
<!-- Start of WPMU Dev 1 --> | |
<script type="text/javascript"> | |
var _paq = _paq || []; | |
_paq.push(["trackPageView"]); | |
(function () { | |
var u = "https://stats1.wpmudev.com/"; | |
_paq.push(["setTrackerUrl", u + "track/"]); | |
_paq.push(["setSiteId", "111364"]); | |
var d = document, | |
g = d.createElement("script"), | |
s = d.getElementsByTagName("script")[0]; | |
g.type = "text/javascript"; | |
g.async = true; | |
g.defer = true; | |
g.src = "https://stats.wpmucdn.com/analytics.js"; | |
s.parentNode.insertBefore(g, s); | |
})(); | |
</script> | |
<!-- End of WPMU Dev 1 --> | |
<!-- Start of Contact Form 1 --> | |
<script type="text/javascript"> | |
document.addEventListener( | |
"wpcf7mailsent", | |
function (event) { | |
if ("fb_pxl_code" in event.detail.apiResponse) { | |
eval(event.detail.apiResponse.fb_pxl_code); | |
} | |
}, | |
false | |
); | |
</script> | |
<div id="fb-pxl-ajax-code"></div> | |
<!-- End of Contact Form 1 --> | |
<!-- Start of AdThrive 4 --> | |
<script> | |
!(function () { | |
"use strict"; | |
!(function (e) { | |
if (-1 === e.cookie.indexOf("__adblocker")) { | |
e.cookie = | |
"__adblocker=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"; | |
var t = new XMLHttpRequest(); | |
t.open("GET", "https://ads.adthrive.com/abd/abd.js", !0), | |
(t.onreadystatechange = function () { | |
if (XMLHttpRequest.DONE === t.readyState) | |
if (200 === t.status) { | |
var a = e.createElement("script"); | |
(a.innerHTML = t.responseText), | |
e.getElementsByTagName("head")[0].appendChild(a); | |
} else { | |
var n = new Date(); | |
n.setTime(n.getTime() + 3e5), | |
(e.cookie = | |
"__adblocker=true; expires=" + | |
n.toUTCString() + | |
"; path=/"); | |
} | |
}), | |
t.send(); | |
} | |
})(document); | |
})(); | |
</script> | |
<!-- End of AdThrive 4 --> | |
<!-- Start of CafeMedia 1 --> | |
<script> | |
!(function () { | |
"use strict"; | |
var e; | |
(e = document), | |
(function () { | |
var t, n; | |
function r() { | |
var t = e.createElement("script"); | |
(t.src = | |
"https://cafemedia-com.videoplayerhub.com/galleryplayer.js"), | |
e.head.appendChild(t); | |
} | |
function a() { | |
var t = e.cookie.match( | |
"(^|[^;]+)\\s*__adblocker\\s*=\\s*([^;]+)" | |
); | |
return t && t.pop(); | |
} | |
function c() { | |
clearInterval(n); | |
} | |
return { | |
init: function () { | |
var e; | |
"true" === (t = a()) | |
? r() | |
: ((e = 0), | |
(n = setInterval(function () { | |
(100 !== e && "false" !== t) || c(), | |
"true" === t && (r(), c()), | |
(t = a()), | |
e++; | |
}, 50))); | |
}, | |
}; | |
})().init(); | |
})(); | |
</script> | |
<!-- End of CafeMedia 1 --> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment