(function (){
'use strict';
if(typeof aquaSponsors==='undefined'){
return;
}
var ajaxUrl=aquaSponsors.ajaxUrl;
var nonce=aquaSponsors.nonce;
var trackedImpressions=new Set();
function trackImpression(sponsorId){
if(trackedImpressions.has(sponsorId)){
return;
}
trackedImpressions.add(sponsorId);
sendTracking(sponsorId, 'impression');
}
var observer=new IntersectionObserver(function (entries){
entries.forEach(function (entry){
if(entry.isIntersecting){
var el=entry.target;
var sponsorId=el.getAttribute('data-sponsor-id');
if(sponsorId){
var timerId=setTimeout(function (){
trackImpression(sponsorId);
el.removeAttribute('data-impression-timer');
}, 1000);
el.setAttribute('data-impression-timer', timerId);
}}else{
var el=entry.target;
var timerId=el.getAttribute('data-impression-timer');
if(timerId){
clearTimeout(parseInt(timerId));
el.removeAttribute('data-impression-timer');
}}
});
}, {
threshold: 0.5,
});
function initObserver(){
var banners=document.querySelectorAll('.aqua-banner[data-sponsor-id], .aqua-footer-sponsors__item[data-sponsor-id]');
banners.forEach(function (el){
observer.observe(el);
});
}
function initClickTracking(){
document.addEventListener('click', function (e){
var link=e.target.closest('.aqua-banner__link, .aqua-banner__overlay-btn, .aqua-footer-sponsors__item');
if(!link){
return;
}
var sponsorId=link.getAttribute('data-sponsor-id');
if(!sponsorId){
var banner=link.closest('[data-sponsor-id]');
if(banner){
sponsorId=banner.getAttribute('data-sponsor-id');
}}
if(sponsorId){
sendTracking(sponsorId, 'click');
}});
}
function sendTracking(sponsorId, action){
var data=new FormData();
data.append('action', 'aqua_track');
data.append('sponsor_id', sponsorId);
data.append('track_action', action);
data.append('source', 'site');
data.append('nonce', nonce);
if(action==='click'&&navigator.sendBeacon){
var urlParams=new URLSearchParams();
urlParams.append('action', 'aqua_track');
urlParams.append('sponsor_id', sponsorId);
urlParams.append('track_action', action);
urlParams.append('source', 'site');
urlParams.append('nonce', nonce);
navigator.sendBeacon(ajaxUrl,
urlParams
);
}else{
fetch(ajaxUrl, {
method: 'POST',
body: data,
credentials: 'same-origin',
}).catch(function (){
});
}}
if(document.readyState==='loading'){
document.addEventListener('DOMContentLoaded', function (){
initObserver();
initClickTracking();
});
}else{
initObserver();
initClickTracking();
}
if(typeof MutationObserver!=='undefined'){
var mutationObserver=new MutationObserver(function (mutations){
mutations.forEach(function (mutation){
mutation.addedNodes.forEach(function (node){
if(node.nodeType===1){
var newBanners=node.querySelectorAll
? node.querySelectorAll('.aqua-banner[data-sponsor-id], .aqua-footer-sponsors__item[data-sponsor-id]')
: [];
newBanners.forEach(function (el){
observer.observe(el);
});
}});
});
});
mutationObserver.observe(document.body, {
childList: true,
subtree: true,
});
}})();