#2 JavaScript::Eval (size: 178554) - SHA256: 25f4d94b97fa06a1608143da9e876ad0f9cd437e90740d18851a061c2261362b
var eaCtrl = (typeof eaCtrl != 'undefined' && typeof eaCtrl.init != 'undefined') ? eaCtrl : {
datadomain: '',
datafailover_domain: '',
refurl: '',
datapath: 'data',
connectors: {},
ctrlId: 'ictrlid',
sCtrlName: 'eaCtrl',
bypassAb: true,
ag: {},
ca: {},
iWaitMs: 0,
abDetected: false,
al: false,
v: false,
jq: null,
w: false,
c: [],
f_print: 'unknown',
browserInfo: [],
plugins: [],
aPlugins: ['banner', 'floater', 'fpa', 'im', 'invideo', 'native', 'video', 'pop', 'videoslider', 'fxim_banner', 'native_webpush', 'native_bar', 'tabs', 'dyn_banner', 'tools', 'inpage_video', 'skin'],
an: [],
ao: [],
cr: [],
cs: false,
ap: false,
ax: [],
debugOn: true,
iTime: 0,
isPaused: false,
sLastStatus: '',
bSlowConn: false,
bFirstStart: false,
bSkipAdding: false,
bSkipConnecting: false,
initDataLoaded: false,
videoAdRunning: false,
aSkippedAds: [],
ck: [],
ci: 0,
cj: 0,
cl: 0,
cw: 0,
cv: 0,
PageLoading: "",
awHwnd: [],
rid: 0,
sRequestType: 'POST',
lazyLoading: false,
isPreview: false,
cm: false,
lvJs: false,
sCloseButtonHtml: "<img alt='Close Ad' style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>",
getVersion: function() {
return "6.6"
},
GetMyId: function() {
return this.ctrlId
},
reset: function() {
this.bSkipAdding = false;
this.aSkippedAds = [];
this.c = [];
this.ax = []
},
pause: function() {
this.isPaused = true
},
resume: function() {
this.isPaused = false;
this.run()
},
backLog: function(stype, json) {},
ch: function(a) {
this.ci = Date.now();
this.cj++;
this.ck.push(a)
},
cg: function() {
var o = this;
if (o.ck.length > 0 && o.ci < (o.Tools.now() - 60)) {
var b = o.ck;
o.ck = [];
var u = 'act=logmultiimp';
var i = 0;
b.forEach(function(v, k) {
if (v != '') {
u += '&logitem[' + i + ']=' + v;
o.cl++;
i++
}
});
if (i > 0) {
eaCtrl.o('logimp', u, 0, {
result: function(d) {}
})
}
}
},
runSkippedAds: function() {
var n = this;
n.pause();
n.aSkippedAds.forEach(function(v, k) {
n.ad(v)
});
n.resume()
},
isInFold: function(a) {
return eaCtrl.Tools.isInFold(a)
},
bkLog: function(stype, ii, json, ai) {
if (ai == null || typeof ai == 'undefined') {
var ai = eaCtrl.c[ii]
}
var o = eaCtrl;
if (typeof json != 'object') {
var json = {}
}
json.uniqid = o.f_print;
json.itemid = ii;
json.adzone = o.getItem(ai, 'name', 'unk');
json.plugin = o.getItem(ai, 'plugin', 'unk');
json.spaceid = ai.sid;
json.subid = ai.subid;
if (typeof ai.data != 'undefined') {
json.spaceid = ai.data.spaceid;
json.siteid = ai.data.siteid;
if (ai.plugin == 'banner' || ai.plugin == 'native') {
json.adpos = ai.data.pos
} else {
json.adpos = {
left: 0,
top: 0
}
}
if (typeof ai.data.xparams != 'undefined') {
var xparams = ai.data.xparams;
delete xparams.bid;
json.forEach(function(v, i) {
xparams[i] = v
});
json = xparams
}
}
eaCtrl.backLog(stype, json)
},
init: function() {
if (eaCtrl.al) {
return
}
if (eaCtrl.PageLoading == "" || eaCtrl.PageLoading.indexOf("http") == -1) {
eaCtrl.PageLoading = eaCtrl.getItem(document, 'location', '')
}
if (typeof eaCtrlRecs != 'undefined') {
eaCtrlRecs.forEach(function(funct, i) {
eaCtrl.ax.push(funct);
delete eaCtrlRecs[i]
})
}
eaCtrl.al = true;
eaCtrl.Tools.docready(function() {
eaCtrl.Tools.fetch_session('set', true);
eaCtrl.start(1);
setInterval(function() {
eaCtrl.cg()
}, 500)
})
},
cb: function() {
if (document.body != null && typeof document.body != 'undefined') {
var el = document.createElement('div');
el.id = 'adsbox';
el.innerHTML = '<h2> </h2>';
document.body.appendChild(el);
if (el.offsetHeight === 0) {
eaCtrl.abDetected = true;
eaCtrl.runAbFuncts()
}
el.parentNode.removeChild(el);
return eaCtrl.abDetected
} else {
eaCtrl.abDetected = true;
eaCtrl.runAbFuncts();
return true
}
},
start: function(dr) {
eaCtrl.cb();
var aPlugins = [];
eaCtrl.aPlugins.forEach(function(v, i) {
var o = eaCtrl.checkPlugin(v, true);
if (o !== false) {
aPlugins.push({
f: v,
v: o
})
}
});
eaCtrl.ap = true;
eaCtrl.ax.forEach(function(v, i) {
eaCtrl.add(v)
});
eaCtrl.ax = [];
eaCtrl.w = true;
eaCtrl.run(aPlugins)
},
makeId: function(im) {
var t = "";
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < im; i++) {
t += s.charAt(Math.floor(Math.random() * s.length))
}
return t
},
openModal: function(aParms) {
var sid = eaCtrl.makeId(10);
var uri = eaCtrl.getItem(aParms, 'uri', '');
if (uri == '') {
eaCtrl.i("No url given to open the modal");
return
}
var bOpenOnHide = eaCtrl.getItem(aParms, 'reopen_onhide', false);
var sBgColor = eaCtrl.getItem(aParms, 'bgcolor', '#000000');
var sDivStyle = 'display:block;background-color:' + sBgColor + ';position:absolute;z-index:1000000000000;top:0px;left:0px;width:100%;height:100%;margin:0,0,0,0;overflow:hidden;';
var sFrameStyle = 'position: absolute; ' + (!eaCtrl.browserInfo.ismobile ? ' left:50%;top: 50%;transform: translate(-50%, -50%);' : 'left:0px;top:0px;');
eaCtrl.Tools.append('head', '<style>#' + sid + '_16{' + sDivStyle + '} #' + sid + '_22{' + sFrameStyle + '}</style>');
setTimeout(function() {
var h = '<div id="' + sid + '_16"><iframe id="' + sid + '_22" ' + (!eaCtrl.browserInfo.ismobile ? ' width="90%" height="90%"' : 'width="100%" height="100%"') + ' frameborder="0" src="' + uri + '"></iframe><div>';
eaCtrl.Tools.append('body', h);
if (bOpenOnHide) {
oReCheck = function() {
if (eaCtrl.Tools.isvisible('#' + sid + '_16')) {
setTimeout("oReCheck()", 1000)
} else {
eaCtrl.Tools.remove("#" + sid);
eaCtrl.openModal(aParms)
}
};
setTimeout("oReCheck()", 1000)
}
}, 1500)
},
getSettings: function() {
return eaCtrl.ca
},
aq: function(j) {
var u = 'undefined';
eaCtrl.ar(j);
if (u != typeof(j.logo_data) && j.logo_data != '') {
eaCtrl.ce = j.logo_data
}
if (u != typeof(j.closebtn_data) && j.closebtn_data != '') {
eaCtrl.cf = j.closebtn_data
}
if (u != typeof(j.browserinfo)) {
eaCtrl.browserInfo = j.browserinfo
}
if (u != typeof(j.datadomain)) {
eaCtrl.datadomain = j.datadomain
}
if (u != typeof(j.datapath)) {
eaCtrl.datapath = j.datapath
}
if (u != typeof(j.refurl)) {
eaCtrl.refurl = j.refurl
}
if (u != typeof(j.plugininfo)) {
eaCtrl.an = j.plugininfo
}
if (u != typeof(j.siteinfo)) {
eaCtrl.siteinfo = j.siteinfo
}
if (u != typeof(j.ctrlsettings)) {
eaCtrl.ca = j.ctrlsettings
}
if (u != typeof(j.abrestictions)) {
eaCtrl.ag = j.abrestictions
}
if (u != typeof(j.cmd)) {
try {
eval(j.cmd)
} catch (_0) {
console.log(_0)
}
}
if (typeof(j.errors) != 'undefined') {
eaCtrl.au(j.errors)
}
eaCtrl.initDataLoaded = true;
eaCtrl.ao.forEach(function(f, i) {
try {
f()
} catch (_0) {
eaCtrl.i(_0)
}
});
eaCtrl.rid = 0;
eaCtrl.rid = setInterval("eaCtrl.checkHiddenAds()", 500)
},
checkHiddenAds: function() {
if (eaCtrl.isPaused) {
return
}
var bFound = false,
iCnt = 0;
eaCtrl.c.forEach(function(val, i) {
if (val.state == -1) {
iCnt++;
if (eaCtrl.Tools.isvisible("#" + val.display)) {
eaCtrl.i("AdTag: " + val.display + ' ItemId' + i + ' Is visible again');
eaCtrl.c[i].state = 0;
bFound = true;
iCnt--
}
}
});
if (bFound) {
eaCtrl.run()
}
},
onAbDetected: function(f) {
eaCtrl.cr.push(f)
},
runAbFuncts: function() {
if (eaCtrl.cs) {
return
}
eaCtrl.cs = true;
eaCtrl.cr.forEach(function(funct, i) {
try {
funct()
} catch (_0) {
eaCtrl.i(_0)
}
})
},
onReady: function(f) {
if (!eaCtrl.al) {
eaCtrl.ao.push(f)
} else {
try {
f()
} catch (_0) {
eaCtrl.i(_0)
}
}
},
af: function(obj, filter) {
var s = '';
this.ag.forEach(function(v, i) {
if (typeof filter == 'undefined' || typeof filter[i] != 'undefined') {
s += (s != '' ? ',' : '') + '"' + i + '"' + ':"' + v + '"'
}
});
return '{' + s + '}'
},
i: function(ovar) {
if (eaCtrl.debugOn) {
console.log(ovar)
}
},
Add: function(a, cb) {
this.add(a, cb)
},
runads: function() {
if (eaCtrl.cv > 0 && eaCtrl.cw < Date.now() - 5) {
eaCtrl.cv = 0;
var aPlugins = [];
eaCtrl.aPlugins.forEach(function(funct, i) {
var o = eaCtrl.checkPlugin(funct, true);
if (o !== false) {
aPlugins.push({
f: funct,
v: o
})
}
});
eaCtrl.run(aPlugins)
}
},
add: function(a, cb) {
if (eaCtrl.bSkipAdding) {
eaCtrl.aSkippedAds.push(a);
return
}
if (!eaCtrl.ap) {
eaCtrl.ax.push(a);
return
}
if (eaCtrl.abDetected && eaCtrl.getItem(eaCtrl.ag, a.plugin, 'yes') == 'no') {
return
}
a.state = 0;
var i = eaCtrl.c.length;
eaCtrl.c.push(a);
eaCtrl.cw = Date.now();
eaCtrl.cv++;
setTimeout(function() {
eaCtrl.runads()
}, 6);
if (typeof cb != 'undefined') {
cb(i)
}
},
runOnErrors: function() {
eaCtrl.c.forEach(function(val, i) {
if (typeof val.onerror == 'function') {
if (typeof val.cf == 'undefined' && val.state == '1') {
eaCtrl.c[i].cf = 1;
try {
val.onerror(i, eaCtrl.getItem(val, 'display', 'unknown'))
} catch (_0) {
eaCtrl.i("something went wrong with executing the onerror handler in addtag:" + eaCtrl.getItem(val, 'display', 'unknown') + ' SpaceId:' + eaCtrl.getItem(val, 'sid', 'Unknown'));
eaCtrl.i(_0)
}
}
}
})
},
o: function(sact, ay, as, av) {
if (!eaCtrl.lvJs && eaCtrl.abDetected && !eaCtrl.bypassAb) {
eaCtrl.i("Request cancelled, enable the option bypassAb to get this running");
return
}
var at = '';
var ck = -1;
var iStart = 0;
var iEnd = 0;
var ob = this;
var uc;
for (const k in eaCtrl.connectors) {
uc = eaCtrl.connectors[k];
if (typeof uc.isfailed == 'undefined') {
eaCtrl.connectors[k].isfailed = 0
}
if (!eaCtrl.lvJs && eaCtrl.abDetected) {
if (!eaCtrl.getItem(uc, 'isproxy', 0)) {
continue
}
}
if (!uc.isfailed) {
ck = k;
at = uc.url;
break
}
}
if (at == '') {
eaCtrl.backLog('error', {
msg: 'no connectionurl available',
abdetected: eaCtrl.abDetected
});
return false
}
if (eaCtrl.abDetected) {
ay += '&ab=1'
}
ay += '&hastouch=' + ('ontouchend' in document);
if (sact != 'loadimage' && (typeof(as) == "undefined" || as == 0)) {
ay += '&time=' + (new Date).getTime();
ay += '&is_ssl=' + (eaCtrl.m() ? '1' : '0');
ay += '&ctrlname=' + eaCtrl.sCtrlName;
ay += '&ctrlid=' + eaCtrl.ctrlId + '&version=' + parseFloat(eaCtrl.getVersion());
ay += '&ispreview=' + eaCtrl.isPreview;
if (eaCtrl.Gup("nocap") == 1 || eaCtrl.isPreview) {
ay += '&nocap=1'
}
ay += '&itime=' + eaCtrl.iTime;
if (sact == 'init' || sact == 'get') {
ay += '&doc=' + escape(eaCtrl.PageLoading);
ay += '&ref=' + escape(eaCtrl.getItem(document, 'referrer', ''));
ay += '&sh=' + eaCtrl.getItem(screen, 'height', 0);
ay += '&sw=' + eaCtrl.getItem(screen, 'width', 0);
if (eaCtrl.debugOn) {
ay += '&de' + 'bug=1'
}
var tm = "-1";
try {
tm = new Date().toString().match(/([-\+][0-9]+)\s/)[1];
tm = tm.replace('+', '')
} catch (_0) {
tm = "-1"
}
if (typeof tm == 'undefined' || tm == null || tm == '') {
tm = '-1'
}
ay += '&tz=' + tm;
try {
ay += '&dh=' + parseInt(eaCtrl.Tools.dh()) + '&dw=' + parseInt(eaCtrl.Tools.dw());
ay += '&p_title=' + escape(ob.utf8_encode(eaCtrl.Tools.find("title").innerText))
} catch (_0) {}
}
}
var sdata_Type = "json";
if (sact == "loadplugin" || sact == "logimp") {
sdata_Type = "text"
}
try {
var i = '';
var sMethod = eaCtrl.sRequestType;
if (sact == "loadimage") {
i = ay
} else {
i = 's=' + eaCtrl.encode(ay)
}
iStart = eaCtrl.Tools.now();
var http = new XMLHttpRequest();
function tC(evt) {
var rjdata = evt.target.response;
if (rjdata != null && typeof rjdata.error != 'undefined') {
eaCtrl.i("there was an error " + rjdata.error);
if (rjdata.error == 'connect_error') {
if (sact == 'get') {
eaCtrl.bSkipConnecting = true;
eaCtrl.runOnErrors()
}
}
} else {
eaCtrl.sLastStatus = 'success';
iEnd = eaCtrl.Tools.now();
if (sact == "init") {
var iC = (iEnd - iStart);
if (eaCtrl.iTime < iC) {
eaCtrl.iTime = iC
}
eaCtrl.i("Total Init Request Time:" + eaCtrl.iTime)
}
if (rjdata === undefined || rjdata == null) {
if (typeof(av) != 'undefined' && typeof(av.result) != 'undefined') {
rjdata = {
success: false,
data: {}
};
return av.result(rjdata)
}
} else {
if (typeof(rjdata.errors) != 'undefined') {
eaCtrl.au(rjdata.errors)
}
if (typeof(av) != 'undefined' && typeof(av.result) != 'undefined') {
return av.result(rjdata)
} else {
eaCtrl.handleResult(sact, rjdata)
}
}
}
}
function tF(evt) {
var xhr = evt.target;
if (typeof(av) != 'undefined' && typeof(av.error) != 'undefined') {
av.error()
}
eaCtrl.sLastStatus = xhr.sTxt;
if (xhr.status == 0 && xhr.timeout == 0) {
if (as == 0 && !eaCtrl.abDetected) {
if (eaCtrl.cb()) {
if (eaCtrl.bypassAb) {
eaCtrl.o(sact, ay, 1, av)
} else {
eaCtrl.i("enable the bypassab option to get ads");
eaCtrl.runOnErrors()
}
}
} else {
eaCtrl.runOnErrors()
}
return
} else if (xhr.status != 200) {
eaCtrl.runOnErrors();
return
}
}
try {
http.addEventListener("load", tC);
http.addEventListener("error", tF);
http.open("POST", at);
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
http.responseType = sdata_Type;
http.send(i)
} catch (_0) {
console.log(_0)
}
} catch (_0) {
console.log(_0);
eaCtrl.i("Adblocker detected (catch error)");
eaCtrl.runAbFuncts();
eaCtrl.abDetected = true;
if (eaCtrl.bypassAb) {
eaCtrl.o(sact, ay, 1, av)
} else {
eaCtrl.i("enable the bypassab option to get ads")
}
}
},
loadBin: function(s, c) {
var ob = this;
ob.o("loadimage", "&act=getimage&f=" + s, 0, {
result: function(ar) {
var sd = '';
if (typeof ar.errors != 'undefined') {
ar.errors.forEach(function(v, i) {
if (typeof v != 'undefined' && v != '') {
ob.i(v)
}
})
}
c(ar.success, ar.data)
},
error: function() {
c(false, '')
}
})
},
swpvid: function(obj, itemid, subid) {
var ob = this;
if (!eaCtrl.abDetected) {
eaCtrl.banner.reload(itemid);
return
}
if (obj.src.indexOf("base64") == -1) {
try {
ob.loadBin(obj.src, function(ok, s) {
if (ok) {
obj.src = s.replace("image", "video")
}
})
} catch (_0) {}
} else {
console.log("another errors", itemid, subid);
eaCtrl.banner.reload(itemid)
}
},
rma: function(n, ka) {
var a = [];
if (n.attributes) {
for (const at of n.attributes) {
if (ka.indexOf(at.name) == -1) {
a.push(at.name)
}
};
for (var i = 0; i < a.length; i++) {
n.removeAttribute(a[i])
}
}
},
k: function(o) {;
var ob = this;
if (o.src.indexOf("base64") == -1) {
try {
ob.loadBin(o.src, function(ok, s) {
if (ok) {
o.src = s;
eaCtrl.rma(o, ['src', 'width', 'height', 'id', 'border'])
} else {
ob.Tools.remove(o)
}
})
} catch (_0) {
console.log(_0)
}
}
},
open: function(uri, cb, i) {
i = i | 0;
var ob = this;
var win, uc;
if (i == 0 && (!eaCtrl.abDetected || !eaCtrl.bypassAb)) {
win = window.open(uri, ob.makeId())
} else {
if (eaCtrl.bypassAb) {
for (const k in eaCtrl.connectors) {
uc = eaCtrl.connectors[k];
var i = eaCtrl.getItem(uc, 'isproxy', 0);
if (i == 1) {
if (uri.substring(0, 2) == "//") {
uri = "http" + (eaCtrl.m() ? "s" : "") + ":" + uri
}
var u = uc.url + "?i=0&act=redir&uri=" + escape(uri);
win = window.open(u, ob.makeId())
}
}
}
}
setTimeout(function() {
if (!win || win.closed) {
cb(false)
} else {
cb(true)
}
}, 1000)
},
handleResult: function(sact, j) {
switch (sact) {
case 'get':
if (typeof j.init_res != 'undefined') {
eaCtrl.aq(j.init_res)
}
eaCtrl.ar(j);
if (typeof j.results != 'undefined') {
j.results.forEach(function(d, i) {
try {
eaCtrl.cm = eaCtrl.cm | false;
function ds() {
if (eaCtrl.cm) {
setTimeout(function() {
ds()
});
return
}
eaCtrl.display(d.itemid, d)
}
ds()
} catch (_0) {
console.log(_0)
}
})
}
break
}
},
ar: function(j) {
if ('undefined' != typeof(j.plugins)) {
j.plugins.forEach(function(v, i) {
try {
eval(v)
} catch (_0) {
eaCtrl.i("error in loading plugin");
console.log(_0)
}
})
}
},
ad: function(ii, ac, cb) {
if (eaCtrl.checkPlugin(ac)) {
if ('undefined' != typeof cb) {
try {
cb()
} catch (_0) {
eaCtrl.i("Error in executing call back in plugin:" + ac + " Error:" + _0)
}
return
}
if (ii > -1) {
var ai = eaCtrl.c[ii];
eaCtrl.c[ii].state = 2;
eaCtrl.display(ii, ai.data)
}
return
}
eaCtrl.i('loading plugin:' + ac);
eaCtrl.plugins.push(ac);
eaCtrl.o('loadplugin', '&act=loadplugin&plugins[0]=' + ac + '&ctrl=' + eaCtrl.sCtrlName, 0, {
result: function(a) {
try {
eval(a);
if ('undefined' != typeof cb) {
cb();
return
}
if (ii > -1) {
var ai = eaCtrl.c[ii];
eaCtrl.c[ii].state = 2;
eaCtrl.display(ii, ai.data)
}
} catch (_0) {
console.log(_0);
eaCtrl.i("error in loading plugin:" + ac)
}
}
})
},
watch: function(ii, cb) {
var ad = eaCtrl.c[ii].data;
if (typeof ad != 'object' || eaCtrl.c[ii].d_called == 0) {
setTimeout(function() {
eaCtrl.watch(ii, cb)
}, 500)
} else {
cb(ad)
}
},
display: function(ii, j) {
var ai = eaCtrl.c[ii];
if (eaCtrl.c[ii].state != 2) {
eaCtrl.c[ii].state = 2;
eaCtrl.c[ii].d_called = 0;
eaCtrl.c[ii].settings = eaCtrl.getItem(j, 'settings', {}, false);
eaCtrl.c[ii].data = j
}
eaCtrl.c[ii].d_called = 0;
eaCtrl.c[ii].q = 0;
if (!eaCtrl.checkPlugin(ai.plugin)) {
eaCtrl.ad(ii, ai.plugin);
return
}
if ('undefined' != typeof(eaCtrl[ai.plugin])) {
eaCtrl[ai.plugin].display(ii, j);
eaCtrl.c[ii].d_called = 1
}
},
Open: function(uri) {
this.open(uri, {}, 0)
},
ak: function(i) {
var item = this.c[i];
if (item != null && typeof item.data != 'undefined') {
var pid = this.getItem(item.data, 'pubid', 0);
var spaceid = this.getItem(item.data, 'spaceid', 0);
if (pid != 0) {
var url = this.refurl;
if (url == '') {
return
}
url = url.replace('{userid}', pid);
url = url.replace('{spaceid}', pid);
this.Open(url)
}
}
},
m: function() {
if (window.location.protocol != 'http:') {
return true
}
return false
},
run: function(aPlugins) {
if (eaCtrl.isPaused) {
this.i("Controller cannot run because its set on \"Paused\" please command \"resume\"");
return false
}
var ay = '';
var aFuncts = [];
var iCnt = 0;
var iPluginCnt = 0;
var ii = 0;
var u = 'undefined';
var dSubId = eaCtrl.Gup("subid");
eaCtrl.c.forEach(function(val, i) {
ii = i;
var ac = eaCtrl.getItem(val, 'plugin', '', false);
if (ac != '') {
ac = ac.replace(' ', '');
if (!(eaCtrl.abDetected && eaCtrl.getItem(eaCtrl.ag, ac, 'yes') == 'no')) {
if (val.state == 0) {
eaCtrl.c[ii].state = 1;
if ('undefined' != typeof(val.fn)) {
var a = {
plugin: ac,
fn: val.fn,
fn_params: val.fn_params
};
aFuncts.push(a)
}
var b = true;
if (ac == 'video') {
b = false;
if (typeof val.videoads != u) {
if (!eaCtrl.abDetected) {
val.videoads.forEach(function(ad, tel) {
var b = true;
var set = {
s: {}
};
if (typeof val.settings == 'object') {
set.s = val.settings
}
var icap = parseInt(eaCtrl.getItem(ad, 'capping', 0));
if (icap > 0) {
var scap = 'video_cap_' + ad.type;
set.s.capping = icap;
if (eaCtrl.getStorage(scap) != null) {
b = false
}
}
if (b && typeof ad.sid != u) {
set.s.itemid = ii;
set.s.actionid = tel;
set.s.vtype = eaCtrl.getItem(ad, 'type', 'preroll');
if (typeof ad.defaultad != u) {
var sname = eaCtrl.getItem(ad.defaultad, 'name', 'unknown ad');
var imincpm = eaCtrl.getItem(ad.defaultad, 'mincpm', 0);
if (isNaN(imincpm)) {
imincpm = 0
}
var scurr = eaCtrl.getItem(ad.defaultad, 'curr', 'usd');
if (scurr != 'usd') {
scurr = 'eur'
}
var stype = eaCtrl.getItem(ad.defaultad, 'type', 'vast');
if (stype != 'vast') {
stype = 'vast'
}
var surl = eaCtrl.getItem(ad.defaultad, 'url', '');
if (surl == '') {
delete eaCtrl.c[ii].videoads[tel].defaultad;
eaCtrl.i("Missing param 'url' for defaultad in spaceid:" + ad.sid)
} else {
set.s.defaultad = {
name: sname,
mincpm: imincpm,
curr: scurr
}
}
}
eaCtrl.c[ii].state = 1;
if (typeof eaCtrl.c[ii].actions == u) {
eaCtrl.c[ii].actions = []
}
eaCtrl.c[ii].actions[tel] = ad;
set.id = ad.sid;
set.sid = eaCtrl.getItem(ad, 'subid', dSubId, true);
set.kw = eaCtrl.getItem(ad, 'keywords', '', true);
set.mc = eaCtrl.getItem(ad, 'maincat', '', true);
set.cat = eaCtrl.getItem(ad, 'category', '', true);
ay += '&ad=' + JSON.stringify(set);
iCnt++
} else {}
})
} else {}
}
if (typeof eaCtrl.video != u) {
eaCtrl.video.display(ii, {})
}
} else {
var g = '';
var set = {
s: {}
};
if (typeof val.settings == 'object') {
set.s = val.settings
}
if (!eaCtrl.isPreview) {
if (ac == 'banner' || ac == 'native') {
if (!eaCtrl.Tools.isvisible("#" + val.display) && eaCtrl.getItem(val, 'isflt', 0) != 1) {
eaCtrl.i("AdTag: " + val.display + ' ItemId' + i + ' Is hidden, abort processing');
eaCtrl.c[ii].state = -1;
b = false
} else {
try {
var pos = eaCtrl.Tools.getnode("#" + eaCtrl.c[ii].display).getBoundingClientRect();
set.s.px = parseInt(pos.left);
set.s.py = parseInt(pos.top)
} catch (_0) {
set.s.px = 0;
set.s.py = 0
}
}
}
}
if (ac == 'pop') {
if (typeof val.skipCookie != u && val.skipCookie == true) {
set.s.skipCookie = 1
}
if (typeof val.capSettings == 'object') {
set.s.capSettings = val.capSettings
}
}
if (ac == 'banner' || ac == "pop") {
if (typeof val.defaultad != 'undefined') {
var sname = eaCtrl.getItem(val.defaultad, 'name', 'unknown FO Ad');
var imincpm = parseFloat(eaCtrl.getItem(val.defaultad, 'mincpm', 0.000001));
var scurr = eaCtrl.getItem(val.defaultad, 'curr', 'usd');
if (scurr != 'eur' && scurr != 'usd') {
scurr = 'usd'
}
var buse = true;
var url = '';
if (ac == 'banner') {
var type = eaCtrl.getItem(val.defaultad, 'type', 'image');
var path, data, url = '';
switch (type) {
case 'image':
path = eaCtrl.getItem(val.defaultad, 'image', '');
url = eaCtrl.getItem(val.defaultad, 'url', '');
break;
case "iframe":
path = eaCtrl.getItem(val.defaultad, 'iframe', '');
break;
case 'html':
data = eaCtrl.getItem(val.defaultad, 'html', '');
break
}
if (type == 'image' || type == 'iframe') {
if (path == '') {
eaCtrl.i("Adtag " + eaCtrl.getItem(val, 'name', 'Unknown') + " is missing the path for his " + type);
buse = false
}
if (type == 'image') {
if (url == '') {
eaCtrl.i("Adtag " + eaCtrl.getItem(val, 'name', 'Unknown') + " is missing the url for his Image");
buse = false
}
}
} else if (type == 'html') {
if (data == '') {
eaCtrl.i("Adtag " + eaCtrl.getItem(val, 'name', 'Unknown') + " is missing the html needed to load as ad");
buse = false
}
} else {
eaCtrl.i("Adtag " + eaCtrl.getItem(val, 'name', 'Unknown') + " has a unvalid 'type' value (" + type + ")");
buse = false
}
} else {
url = eaCtrl.getItem(val.defaultad, 'url', '');
if (url == '') {
buse = false;
eaCtrl.i("Adtag " + eaCtrl.getItem(val, 'name', 'Unknown') + " is missing the url for his Pop")
}
}
if (buse) {
set.s.defaultad = {
name: sname,
mincpm: imincpm,
curr: scurr
};
if (ac == 'pop') {
set.s.defaultad.url = url
}
} else {
delete eaCtrl.c[ii].defaultad
}
}
}
if (b) {
if (typeof set.s == 'undefined') {
set.s = {
itemid: 0
}
}
set.s.itemid = ii;
if (typeof val.rtbext == "object") {
set.s.rtbext = JSON.stringify(val.rtbext)
}
if (eaCtrl.getItem(val, 'sid', '') != '') {
eaCtrl.c[ii].state = 1;
set.id = parseInt(val.sid);
var s = eaCtrl.getItem(val, 'subid', dSubId, true);
if (s != "") {
set.sid = s
}
s = eaCtrl.getItem(val, 'keywords', '', true);
if (s != "") {
set.kw = s
}
s = eaCtrl.getItem(val, 'maincat', '', true);
if (s != '') {
set.mc = s
}
s = eaCtrl.getItem(val, 'category', '', true);
if (s != '') {
set.cat = s
}
ay += '&ad=' + JSON.stringify(set);
iCnt++
}
}
}
}
if (ac == "invideo" || ac == "im" || ac == "floater" || ac == "fxim_banner") {
if (!eaCtrl.checkPlugin("banner")) {
ay += '&plugins[' + iPluginCnt + ']=banner';
eaCtrl.plugins.push("banner");
iPluginCnt++
}
}
if (!eaCtrl.checkPlugin(ac)) {
ay += '&plugins[' + iPluginCnt + ']=' + ac;
eaCtrl.plugins.push(ac);
iPluginCnt++
}
}
} else {
eaCtrl.i("No plugin given in param " + val.toString());
console.log(val)
}
});
if (eaCtrl.lazyLoading) {
if (typeof Waypoint != 'function') {
ay += '&plugins[' + iPluginCnt + ']=waypoint'
}
}
if (ay != '') {
var sData = ay + '&act=get';
if (eaCtrl.initDataLoaded == false) {
eaCtrl.initDataLoaded = true;
sData += '&getinit=1'
}
if (typeof aPlugins != 'undefined') {
sData += '&pluginsav=' + JSON.stringify(aPlugins)
}
eaCtrl.o('get', sData, 0, {
result: function(j) {
eaCtrl.handleResult('get', j);
eaCtrl.runFn(aFuncts)
}
})
} else {
eaCtrl.runFn(aFuncts)
}
},
au: function(errors) {
try {
errors.forEach(function(v, i) {
console.log(v)
})
} catch (e) {}
},
runFn: function(aFuncts) {
aFuncts.forEach(function(v, i) {
var ac = v.plugin;
var fn = v.fn;
var fn_params = v.fn_params;
try {
eaCtrl[ac][fn](fn_params)
} catch (_0) {
eaCtrl.i("Error in executing function:" + fn.toString() + ",plugin:" + ac.toString() + ', Error: ' + _0)
}
})
},
checkPlugin: function(s, brv) {
var u = 'undefined';
if (typeof eaCtrl[s] == u) {
if (eaCtrl.plugins.indexOf(s) >= 0) {
return true
}
if (typeof brv == u) {
eaCtrl.i('Plugin ' + s + ' have to be q')
}
return false
} else {
if (eaCtrl.plugins.indexOf(s) >= 0) {
return true
}
try {
if (typeof eaCtrl[s].getVersion == u) {
eaCtrl.i("Plugin " + s + " is really out of date, loading the new version");
return false
} else {
var version = eaCtrl[s].getVersion();
if (version == u || (typeof eaCtrl.an[s] != u && version < eaCtrl.an[s].version)) {
eaCtrl.i("Plugin " + s + " is out of date, loading the new version");
return false
}
if (typeof brv != u) {
return version
} else {
if (typeof eaCtrl.an[s] == u) {
return false
}
}
}
} catch (_0) {
eaCtrl.i("Something is wrong with checking plugin " + s);
eaCtrl.i(_0);
return false
}
}
return true
},
getItem: function(arr, fld, dval, aa, sPrepend) {
var rval;
if (arr != null && typeof(arr) != 'undefined' && typeof(arr[fld]) != 'undefined') {
if (arr[fld] == '') {
return dval
}
rval = arr[fld]
} else {
rval = dval
}
if (aa != null && typeof aa != 'undefined' && aa) {
rval = eaCtrl.aa(rval)
}
return (sPrepend != null && typeof(sPrepend) != 'undefined' ? sPrepend : '') + rval
},
q: function(i) {
var o = this;
var a = o.c[i].data;
if (o.getItem(a, 'logimp', false, false, '')) {
if (!a.q) {
o.c[i].q = true;
o.ch(a.hash)
} else {}
} else {}
},
clicked: function(i) {
eaCtrl.i("ad " + i + ' is clicked')
},
aa: function(s) {
return escape(s)
},
encode: function(s) {
return eaCtrl.z.encode(s)
},
utf8_encode: function(s) {
return eaCtrl.z._14(s)
},
createCookie: function(cookieName, cookieState, cookieLifetime) {
try {
var date = new Date(new Date().getTime() + (cookieLifetime * 60 * 1000)).toGMTString();
document.cookie = cookieName + '=' + cookieState + '; expires=' + date + '; path=/'
} catch (_0) {}
},
ai: function(name) {
try {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) == 0) return unescape(c.substring(nameEQ.length, c.length))
}
} catch (_0) {}
return ""
},
removeStorage: function(name) {
try {
var infSt = ((!!window.localStorage) && (!!window.atob))
} catch (e) {
var infSt = 0
}
if (infSt) {
try {
window.localStorage.removeItem(name)
} catch (e) {
console.log('removeStorage: Error removing key [' + key + '] from localStorage: ' + JSON.stringify(e));
return false
}
return true
}
},
getStorage: function(key) {
try {
var infSt = ((!!window.localStorage) && (!!window.atob))
} catch (e) {
var infSt = 0
}
if (!infSt) {
return eaCtrl.ai(key)
} else {
var now = Date.now();
try {
var item = window.localStorage.getItem(key);
if (item === undefined || item == null) {
return null
} else {
item = JSON.parse(item);
var tm = item.expires;
var val = item.value;
if (tm < now) {
eaCtrl.removeStorage(key);
return null
} else {
return val
}
}
} catch (e) {
console.log('getStorage: Error reading key [' + key + '] from localStorage: ' + JSON.stringify(e));
console.log(e);
return null
}
}
},
Gup: function(name) {
name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
var regexS = "[\\?&]" + name + "=([^&#]*)";
var regex = new RegExp(regexS);
var results = regex.exec(document.location.href);
if (results == null) {
try {
var results = regex.exec(top.location.href);
if (results == null) {
return ""
}
} catch (_0) {
return ""
}
}
return results[1]
},
setStorage: function(key, value, expires) {
try {
var infSt = ((!!window.localStorage) && (!!window.atob))
} catch (e) {
var infSt = 0
}
if (!infSt) {
eaCtrl.createCookie(key, value, expires)
} else {
if (expires === undefined || expires === null) {
expires = (24 * 60)
} else {
expires = Math.abs(expires)
}
var now = Date.now();
var schedule = now + (expires * 60 * 1000);
try {
var item = {
expires: schedule,
value: value
};
window.localStorage.setItem(key, JSON.stringify(item))
} catch (e) {
console.log('setStorage: Error setting key [' + key + '] in localStorage: ' + JSON.stringify(e));
return false
}
return true
}
},
reload: function(ii) {
var ai = eaCtrl.c[ii];
ai.q = false;
try {
delete ai.data;
delete ai.q;
delete ai.btype;
delete ai.state;
delete ai.settings
} catch (e) {}
ai.reload = 1;
ai.state = 0;
eaCtrl.run()
},
logImp: function(ii, adtype, xargs, ai) {
var u = 'undefined';
if (ai == null || typeof ai == 'undefined') {
var ai = eaCtrl.c[ii];
var a = eaCtrl.c[ii].data
} else {
var a = ai.data
}
eaCtrl.ch(a.hash);
eaCtrl.bkLog('view', ii, {}, ai)
},
z: {
_6: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
encode: function(e) {
var t = "";
var n, r, i, s, o, u, a;
var f = 0;
e = this._14(e);
while (f < e.length) {
n = e.charCodeAt(f++);
r = e.charCodeAt(f++);
i = e.charCodeAt(f++);
s = n >> 2;
o = (n & 3) << 4 | r >> 4;
u = (r & 15) << 2 | i >> 6;
a = i & 63;
if (isNaN(r)) {
u = a = 64
} else if (isNaN(i)) {
a = 64
}
t = t + this._6.charAt(s) + this._6.charAt(o) + this._6.charAt(u) + this._6.charAt(a)
}
return t
},
_14: function(e) {
e = e.replace(/\r\n/g, "\n");
var t = "";
for (var n = 0; n < e.length; n++) {
var r = e.charCodeAt(n);
if (r < 128) {
t += String.fromCharCode(r)
} else if (r > 127 && r < 2048) {
t += String.fromCharCode(r >> 6 | 192);
t += String.fromCharCode(r & 63 | 128)
} else {
t += String.fromCharCode(r >> 12 | 224);
t += String.fromCharCode(r >> 6 & 63 | 128);
t += String.fromCharCode(r & 63 | 128)
}
}
return t
},
}
};
eaCtrl.banner = {
sTag: "",
getVersion: function() {
return "7.4"
},
imghwd: [],
wpc: false,
haswebp: false,
display: function(ii, json) {
var o = this;
if (eaCtrl.getItem(json, 'adtype', '') == 'native') {
eaCtrl.ad(-1, "native", function() {
json.adtype = 'banner';
eaCtrl.native.display(ii, json)
});
return
}
if (typeof eaCtrl.c[ii] == "undefined") {
return
}
if (typeof eaCtrl.lazyLoading == 'undefined') {
eaCtrl.lazyLoading = false
}
var ai = eaCtrl.c[ii];
ai.data = [];
var Bfound = false;
var bExit = false;
var aNodes = eaCtrl.Tools.getnodes("#" + ai.display);
aNodes.forEach(function(node, i) {
if (node.getAttribute('run') != '1' || eaCtrl.getItem(ai, 'reload', 0) == 1) {
if (!Bfound) {
delete ai.reload;
if (ai.plugin == "banner") {
if (eaCtrl.abDetected) {
eaCtrl.Tools.getnode("#" + ai.display).removeAttribute("style")
}
if (!eaCtrl.Tools.isvisible("#" + ai.display)) {
if (eaCtrl.getItem(ai, 'isflt', 0) != 1) {
if (!eaCtrl.abDetected) {
eaCtrl.i("AdTag " + ai.display + " is not visible, abort loading");
console.log("AdTag " + ai.display + " is not visible, abort loading");
bExit = true;
return true
} else {
eaCtrl.i("AdTag " + ai.display + " is not visible, probably because the active adblocker")
}
}
}
}
var h = '';
var aAds = [];
if (typeof json.items != 'undefined' && json.items.length > 0) {
aAds = json.items;
var sId = o.makeId(15);
eaCtrl.Tools.html(node, '<div id="' + sId + '" style="width:' + json.adwidth + 'px;height:' + json.adheight + 'px;overflow:hidden; margin:0px;padding:0px;"></div>');
node = eaCtrl.Tools.getnode("#" + sId)
} else {
eaCtrl.Tools.html(node, "");
aAds.push(json)
}
var iSet = 0;
eaCtrl.Tools.attr(node, 'run', '1');
aAds.forEach(function(ad, i) {
if (eaCtrl.getItem(ad, 'sellingtype', 'unk') == 'own_ad_eactrl') {
ad.type = eaCtrl.getItem(ai.defaultad, 'type', 'image');
switch (ad.type) {
case "image":
ad.bannerpath = eaCtrl.getItem(ai.defaultad, 'image', '');
ad.destinationurl = eaCtrl.getItem(ai.defaultad, 'url', '');
break;
case "iframe":
ad.bannerpath = eaCtrl.getItem(ai.defaultad, 'iframe', '');
break;
case "html":
ad.html = eaCtrl.getItem(ai.defaultad, 'html', '');
break
}
ad.bannertype = ad.type;
ad.isrtb = 0;
ad.networkid = 0;
ad.ispubad = 1
}
ai.data.push(ad);
o.t(ii, ad, function(s) {
if (eaCtrl.lazyLoading && !eaCtrl.Tools.isInFold(node) && typeof Waypoint == 'function') {
try {
var waypoint = new Waypoint({
element: node,
handler: function(direction) {
o.execute(node, s, ai, i, ii);
this.destroy()
},
offset: 'bottom-in-view'
})
} catch (_0) {
console.log(_0);
o.execute(node, s, ai, i, ii)
}
} else {
o.execute(node, s, ai, i, ii)
}
}, i)
});
Bfound = true
}
return
}
});
if (bExit) {
return
}
if (!Bfound) {
eaCtrl.i("Could not find element with id:" + ai.display)
}
},
execute: function(node, h, ai, i, ii) {
var o = this;
eaCtrl.Tools.append(node, h);
if (typeof ai.onload == "function") {
try {
ai.onload(function() {})
} catch (_0) {
eaCtrl.i("something went wrong with executing the onload function for adtag:" + eaCtrl.getItem(ai, 'name', 'unk'));
eaCtrl.i(_0)
}
}
if (eaCtrl.abDetected) {
var s = o.makeId(15) + i;
eaCtrl.Tools.attr(node, 'id', s);
ai.display = s
}
var ir = eaCtrl.getItem(ai, 'reloadtime', 0);
if (ir > 0) {
if (ir < 4) {
ir = 4
}
ir = (ir * 1000);
setTimeout(function() {
if (typeof ai.onbeforeReload == "function") {
try {
ai.onbeforeReload(function() {
o.reload(ii)
})
} catch (_0) {
eaCtrl.i("something went wrong with executing the onbeforeReload function for adtag:" + eaCtrl.getItem(ai, 'name', 'unk'));
eaCtrl.i(_0);
o.reload(ii)
}
} else {
o.reload(ii)
}
}, ir)
}
o.j(ii, {}, i)
},
reload: function(ii) {
var ai = eaCtrl.c[ii];
ai.q = false;
try {
delete ai.data;
delete ai.q;
delete ai.btype;
delete ai.state;
delete ai.settings
} catch (e) {}
ai.reload = 1;
ai.state = 0;
eaCtrl.run()
},
j: function(ii, p, iSubItem) {
iSubItem = iSubItem | 0;
var u = 'undefined';
if (typeof p != u) {
this.imghwd[ii] = p
} else {
var p = this.imghwd[ii]
}
var ai = eaCtrl.c[ii];
var px = this.sTag + ii + iSubItem + "px";
var n = eaCtrl.Tools.getnode("#" + px);
if (n) {
n.addEventListener('load', function() {
eaCtrl.banner.q(ii, ai.btype, this, p, iSubItem)
})
} else {
console.log("cannot find pixel node")
}
if (ai.btype == "image" || ai.btype == 'video' || ai.btype == "image_set") {
var na = eaCtrl.Tools.getnode("#" + this.sTag + "u" + ii + '_' + iSubItem);
if (na) {
na.addEventListener('click', function(event) {
event.stopImmediatePropagation();
var ad = ai.data;
if (typeof ad.length != 'undefined') {
ad = ad[iSubItem]
}
var lc = eaCtrl.getItem(ad, 'logclick', '0') == "1";
if (lc) {
url = eaCtrl.getItem(ad, 'destinationurl', '')
} else {
var sDomain = "";
var u = "undefined";
if (typeof eaCtrl.ca.ctrl_domain != u && eaCtrl.ca.ctrl_domain != "") {
sDomain = eaCtrl.ca.ctrl_domain
}
url = sDomain + "/click.go?xref=" + ad.hash
}
eaCtrl.open(url, function(ok) {
if (ok) {
if (lc) {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
})
}
eaCtrl.bkLog('click', ii, {
isiframe: 0
})
}
});
return false
})
} else {
console.log("cannot find node ", "#" + this.sTag + "u" + ii + '_' + iSubItem)
}
}
},
q: function(ii, ah, s, p, iSubItem) {
var u = 'undefined';
iSubItem = iSubItem | 0;
if (eaCtrl.abDetected) {
if (typeof ah != u) {
if (ah == 'img') {
if (typeof eaCtrl.Tools.getnode(s).getAttribute('class') != u) {
eaCtrl.i("Swap image because ab blocked");
eaCtrl.k(s);
return
}
}
}
}
if (typeof p != u && typeof p.onload != u) {
p.onload()
}
var a = eaCtrl.c[ii].data;
if (typeof a.length != 'undefined') {
a = a[iSubItem]
}
if (typeof a.q != 'undefined' && a.q) {
this.reload(ii);
return
} else {
var ai = eaCtrl.c[ii];
if (eaCtrl.abDetected && ai.data.type == 'image' && ai.plugin == "banner") {
if (!eaCtrl.Tools.isvisible("#" + ai.display)) {
eaCtrl.Tools.attr("#" + ai.display, "style", "display:block !important");
if (!eaCtrl.Tools.isvisible("#" + ai.display)) {
eaCtrl.i("Ad hided by adblocker");
return
}
} else {
if (!eaCtrl.Tools.isvisible("#" + this.sTag + ii)) {
eaCtrl.Tools.attr("#" + this.sTag + ii, "style", "display:block !important");
if (!eaCtrl.Tools.isvisible("#" + this.sTag + ii)) {
eaCtrl.i("Ad hided by adblocker");
return
}
}
}
}
eaCtrl.c[ii].q = true;
eaCtrl.i(ai.plugin + ' ItemId:' + ii + " finished");
if (typeof a.nurl != u && a.nurl != '') {
var ul = a.nurl.replace('${AUCTION_PRICE}', a.bid);
var si = '<img src="' + ul + '" border="0" width="1" height="1"/>';
eaCtrl.Tools.append('body', si)
}
eaCtrl.ch(a.hash);
eaCtrl.bkLog('view', ii)
}
},
iframe: function(a) {
var h = '<iframe class="" name="' + eaCtrl.getItem(a, 'name', '') + '" id="' + eaCtrl.getItem(a, 'id', '') + '" src="' + eaCtrl.getItem(a, 'url', '') + '" width="' + eaCtrl.getItem(a, 'width', '') + '" height="' + eaCtrl.getItem(a, 'height', '') + '" scrolling="' + eaCtrl.getItem(a, 'scroll', 'no') + '" frameborder="0"></iframe>';
eaCtrl.Tools.html("#" + a.display, h);
if ("undefined" != typeof(a.onerror)) {
eaCtrl.Tools.getnode("#" + a.id).addEventListener('error', function() {
try {
eaCtrl.Tools.html("#" + a.display, '');
a.onerror()
} catch (_0) {}
})
}
if ("undefined" != typeof(a.onload)) {
eaCtrl.Tools.getnode("#" + a.id).addEventListener('load', function() {
try {
a.onload()
} catch (_0) {}
})
}
},
open: function(uri) {
var win = window.open(uri);
setTimeout(function() {
if (!win || win.closed) {
top.location = uri
}
}, 500)
},
makeId: function(iMax) {
var t = "";
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < iMax; i++) {
t += s.charAt(Math.floor(Math.random() * s.length))
}
return t
},
vidloaded: function(vid) {
alert(test)
},
t: function(ii, json, z, i) {
var o = this;
if (!o.wpc) {
o.wpc = true;
o.hasWebP(function(ok) {
o.haswebp = ok;
o.t(ii, json, z, i)
});
return
}
var iSubItem = 0;
if (i != null) {
iSubItem = i
}
if (this.sTag == '') {
var i = Math.floor((Math.random() * 10) + 1);
this.sTag = this.makeId(i)
}
var ai = eaCtrl.c[ii];
var b = '';
var h = '';
var DynamicBanner = (eaCtrl.getItem(json.settings, 'isdynamic', 0) == 1);
if (DynamicBanner) {
if (json.settings.width.responsive == 1) {
b = 'width="100%"'
} else {
b = 'width="' + json.settings.width.value + '"'
}
if (json.settings.height.responsive == 1) {
b += ' height="100%"'
} else {
b += ' height="' + json.settings.height.value + '"'
}
} else {
if (ai.responsive == '1') {
b = 'width="100%"'
} else {
b = 'width="' + json.adwidth + '" height="' + json.adheight + '"'
}
}
eaCtrl.c[ii].btype = json.type;
var ttl = eaCtrl.getItem(json, 'ainfo', '');
if (ttl != '') {
ttl = 'title="' + ttl + '" '
}
var px = String(this.sTag + ii + iSubItem + 'px');
switch (json.type) {
case "img_base64":
h = '<a id="' + this.sTag + 'u' + ii + '_' + iSubItem + '" href="#" rel="sponsored noopener nofollow noindex"><img ' + ttl + ' id="' + this.sTag + ii + '_' + iSubItem + '" src="%%img%%" ' + b + ' border="0"/></a>';
h += '<img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
h = h.replace('%%img%%', json.imgdata);
break;
case "iframe":
var iframe = json.bannerpath;
h = '<span id="frmtrck_' + ii + '_' + iSubItem + '" bnrid="' + ii + '_' + iSubItem + '"><iframe ' + ttl + ' rel="sponsored noopener nofollow noindex" sandbox="allow-same-origin allow-popups allow-popups-to-escape-sandbox allow-scripts allow-top-navigation-by-user-activation allow-forms" src="' + iframe + '" ' + b + ' id="' + this.sTag + ii + '_' + iSubItem + '" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"></iframe></span>';
h += '<img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
break;
case "image_set":
h = '<a id="' + this.sTag + 'u' + ii + '_' + iSubItem + '" href="#" rel="sponsored noopener nofollow noindex">';
var spath = json.bannerpath;
if (!eaCtrl.abDetected && o.haswebp) {
var sm = '';
if (json.files.webp != null && json.files.webp != '') {
sm = json.files.webp
} else {
sm = json.files.org
}
h += '<img ' + ttl + ' id="' + this.sTag + ii + '_' + iSubItem + '" src="' + spath + '/' + sm + '" ' + b + ' border="0" onerror="eaCtrl.k(this)"/>'
} else {
var sm = '';
if (json.files.org != null && json.files.org != '') {
sm = json.files.org
} else {
sm = json.files.webp
}
h += '<img ' + ttl + ' id="' + this.sTag + ii + '_' + iSubItem + '" src="' + spath + '/' + sm + '" ' + b + ' border="0" onerror="eaCtrl.k(this)"/>'
}
h += '</a><img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
break;
case "image":
var bi = false;
var f = json.bannerpath;
h = '<a id="' + this.sTag + 'u' + ii + '_' + iSubItem + '" href="#" rel="sponsored noopener nofollow noindex"><img ' + ttl + ' id="' + this.sTag + ii + '_' + iSubItem + '" src="%%img%%" ' + b + ' border="0" onerror="eaCtrl.k(this)"/></a>';
h += '<img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
h = h.replace('%%img%%', f);
break;
case 'html':
var h = json.html;
h += '<img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
break;
case 'video':
f = json.bannerpath;
h = '<a id="' + this.sTag + 'u' + ii + '_' + iSubItem + '" href="#" rel="sponsored noopener nofollow noindex" ' + b + '>';
var alt = eaCtrl.getItem(json, 'alt_image', '');
if (alt != '') {
h += '<video id="' + this.sTag + '_21' + ii + '_' + iSubItem + '" autoplay muted playsinline loop data-object-fit="cover" onload="eaCtrl.banner.vidloaded(this)" ' + b + ' src="' + f + '" type="video/mp4" altimg="' + alt + '" onerror="eaCtrl.banner.swpvid(this)"></video></a>'
} else {
h += '<video id="' + this.sTag + '_21' + ii + '_' + iSubItem + '" autoplay muted playsinline loop data-wf-ignore="true" data-object-fit="cover" ' + b + ' onload="eaCtrl.banner.vidloaded(this)" src="' + f + '" type="video/mp4" onerror="eaCtrl.swpvid(this,' + ii + ',' + iSubItem + ')"></video></a>'
}
h += '<img width="0" height="0" id="' + px + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
break;
default:
eaCtrl.i("unknown bannertype:" + json.type);
break
}
if (typeof json.imp_trackingurl != 'undefined' && json.imp_trackingurl != '') {
h += '<img style="width:0px;height:0px;" width="0" height="0" src="' + json.imp_trackingurl + '" onerror="eaCtrl.Tools.remove(this)" border="0"/>'
}
z(h)
},
swpvid: function(vid) {
var imgpath = vid.getAttribute('altimg');
var img = document.createElement('img');
eaCtrl.i("video " + vid.src + " got replaced with " + imgpath + " because a error");
var p = vid.parentNode;
img.src = imgpath;
img.setAttribute('width', vid.getAttribute('width'));
img.setAttribute('height', vid.getAttribute('height'));
img.setAttribute('onerror', "eaCtrl.k(this)");
img.setAttribute('id', vid.getAttribute('id'));
p.insertBefore(img, vid);
p.removeChild(vid)
},
hasWebP: function(cb) {
var img = document.createElement("img");
img.onload = function() {
if (img.width === 2 && img.height === 1) {
cb(true)
} else {
cb(false)
}
};
img.onerror = function() {
cb(false)
};
img.src = "data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="
}
};
eaCtrl.floater = {
aFlt: [],
i: 0,
display: function(ii, q, isHtml) {
eaCtrl.cm = eaCtrl.cm | false;
eaCtrl.cn = eaCtrl.cn | false;
if (typeof isHtml == 'undefined') {
var isHtml = 0
}
if (typeof q.settings != 'object' || q.settings == null) {
q.settings = {
position: "top-center",
interstitial: false,
position: ''
}
}
this.aFlt[ii] = new this.float(isHtml, ii, q, q.settings);
if (this.aFlt[ii].init()) {
if (!isHtml) {
this.aFlt[ii].load()
} else {
this.aFlt[ii].loadHtml()
}
}
},
getVersion: function() {
return "4.6"
},
float: function(i, ii, a, aSet) {
return {
position: "top-center",
hideDelay: 0,
hideSeconds: 30,
elementName: "",
ie: null,
iebody: null,
objheight: null,
avHeight: null,
avWidth: null,
isActive: false,
topMargin: 0,
leftMargin: 0,
bottomMargin: 0,
position: '',
objref: null,
bi: null,
ctrlName: 'floater',
pw: false,
aPop: null,
hasMultiItems: i,
IsLoaded: false,
fire: function(i) {
if (!this.IsLoaded) {
this.run();
this.IsLoaded = true
} else {
console.log("run skipped")
}
},
init: function() {
var ob = this;
aSet.interstitial = aSet.interstitial || false;
aSet.position = aSet.position || '';
if (aSet.interstitial) {
if (eaCtrl.cm) {
return false
}
aSet.position = "center"
}
if (typeof eaCtrl.sCloseButtonHtml == 'undefined') {
eaCtrl.sCloseButtonHtml = "<img alt='Close Ad' style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>"
}
var btndiv = 'fl_' + ii + '_8';
var elmName = "fl_" + ii;
this.elementName = elmName;
var xposcss = '';
eaCtrl.Tools.append('head', '<style type="text/css" media="all">@CHARSET "UTF-8";#' + elmName + ' { font-family: Arial, Helvetica, sans-serif; font-size:12px; ' + xposcss + ' background: #000000; border-radius:5px; #000000; } #' + elmName + ' a,#' + elmName + ' a:link,#slider strong { text-decoration:none; color: black; font-size:12px; } </style>');
var h = '<div id="fl_' + ii + '_8" style="position:absolute;z-index:1000000; right:0px; float:right; top:0px;float:right;">' + '<a title="Close ' + (eaCtrl.isPreview ? 'Preview' : 'Ad') + '" onclick="return eaCtrl.floater.aFlt[' + ii + '].hide(1);" >' + eaCtrl.sCloseButtonHtml + '</a></div>';
var sTag = 'body';
var zindex = '1000';
if (aSet.interstitial) {
eaCtrl.Tools.append('body', '<div id="' + elmName + '_3" style="z-index:5000;top:0px;left:0px;padding:0px;margin:0px;background:#000;opacity: 0.8;filter: alpha(opacity = 80);position:fixed;display:none;width:100%;height:calc(100vh);"></div>');
sTag = '#' + elmName + '_3';
eaCtrl.Tools.getnode(sTag).addEventListener('click', function(e) {
ob.hide()
});
zindex = '6000'
}
var sxy = '';
if (!aSet.interstitial) {
var w1 = parseInt(eaCtrl.getItem(aSet, "width", 0));
var h1 = parseInt(eaCtrl.getItem(aSet, "height", 0));
if (w1 > 0 && h1 > 0) {
sxy = 'style="width:' + w1 + 'px;height:' + h1 + 'px;"'
}
}
eaCtrl.Tools.append('body', '<div id="' + elmName + '" style="z-index:' + zindex + '; padding: 0px; margin:0px; border:1px #000000 solid; border-spacing:1px; background-color:#000000; position:fixed; ' + ' text-align: left;display:none; ">' + h + '<div id="' + elmName + '_1" ' + sxy + '>' + '</div></div>');
this.objref = document.getElementById(elmName);
var tmp = this;
window.addEventListener('resize', function() {
tmp.setPosition()
});
if (document.compatMode != "CSS1Compat") {
window.addEventListener('scroll', function() {
tmp.setPosition()
})
}
this.ie = document.all && !window.opera;
this.iebody = (document.compatMode == "CSS1Compat") ? document.documentElement : document.body;
this.hideDelay = aSet.hidedelay;
this.hideSeconds = aSet.hideseconds;
if (this.hideSeconds < 15) {
this.hideseconds = 15
}
this.topMargin = aSet.topmargin;
this.leftMargin = aSet.leftmargin;
this.bottomMargin = aSet.bottommargin;
if (aSet.position == '') {
aSet.position = "center"
}
this.position = aSet.position;
return true
},
run: function() {
var ob = this;
var elmName = this.elementName;
var isNt = eaCtrl.getItem(a, 'adtype', '') == 'native';
if (isNt) {
eaCtrl.ad(-1, "native", function() {
var sId = elmName + 'ct';
eaCtrl.c[ii].display = sId;
eaCtrl.c[ii].isflt = 1;
eaCtrl.Tools.html('#' + elmName + '_1', '<div style="clear:both;font-size:11px; color:black;" id="' + sId + '"></div>');
eaCtrl.native.display(ii, a);
ob.show();
if (aSet.interstitial) {
eaCtrl.Tools.show('#' + elmName + '_3')
}
});
return
} else {
if (typeof a.items != 'undefined') {
this.hasMultiItems = true
} else {
eaCtrl.banner.t(ii, a, function(s) {
function run() {
eaCtrl.Tools.html('#' + elmName + '_1', s);
var p = {
onload: function() {
ob.show();
if (aSet.interstitial) {
eaCtrl.Tools.show('#' + elmName + '_3')
}
}
};
eaCtrl.banner.j(ii, p)
}
if (aSet.interstitial) {
eaCtrl.Tools.on('click', 'a', function(e) {
try {
var phref = e.target.getAttribute("href");
if (phref != null && phref !== '#' && phref !== 'javascript:void(0)') {
run()
}
} catch (_0) {}
})
} else {
run()
}
})
}
}
},
load: function() {
var ob = this;
if (aSet.interstitial && !eaCtrl.isPreview) {
if (eaCtrl.floater.i >= 1) {
return
}
eaCtrl.floater.i++;
ob.run();
ob.IsLoaded = true
} else {
ob.run()
}
},
loadHtml: function() {
var ob = this;
aSet.interstitial = aSet.interstitial | false;
function run() {
var elmName = ob.elementName;
eaCtrl.Tools.html('#' + elmName + '_1', a.html);
eaCtrl.floater.aFlt[ii].show();
if (typeof a.ab != 'undefined') {
a.ab()
}
}
if (aSet.interstitial) {
if (eaCtrl.floater.i >= 1) {
return
}
eaCtrl.floater.i++;
eaCtrl.Tools.on('click', '*', function(e) {
if (!ob.IsLoaded) {
run();
ob.IsLoaded = true
}
})
} else {
run()
}
},
show: function() {
this.isActive = true;
eaCtrl.Tools.show('#' + this.elementName);
if (this.hasMultiItems) {
console.log(" i have multiple items")
}
if (typeof aSet.hideref == 'undefined') {
aSet.hideref = 1
}
var btndiv = 'fl_' + ii + '_8';
this.setPosition();
if (this.hideDelay) {
var tmp = this;
if (tmp.hideSeconds > 0) {
if (tmp.hideSeconds < 20) {
tmp.hideSeconds = 20
}
setTimeout(function() {
tmp.hide(0)
}, tmp.hideSeconds * 1000)
}
}
try {
if (aSet.closepop.id > 0) {
var ob = this;
var ai = eaCtrl.c[ii];
eaCtrl.ad(-1, "pop", function() {
cbTestFlt = function() {
if (typeof eaPopn != 'undefined') {
var p = new eaPopn;
p.isPopunder = 0;
p.xbtn = true;
p.url = p.genUrl(ai, aSet.closepop.id);
p.cookieTime = aSet.closepop.cap;
p.clickHandler = ['#' + btndiv];
p.ignoreList = [];
p.cookieName = 'popcap_' + aSet.closepop.id;
ob.aPop = p;
if (p.canrun()) {
ob.pw = true;
p.init()
}
} else {
setTimeout("cbTestFlt()", 500)
}
};
cbTestFlt()
})
}
} catch (e) {}
},
hide: function(c) {
c = c | 0;
if (c && this.pw) {
var tmp = this;
setTimeout(function() {
tmp.hide(0)
}, 500);
return
}
try {
this.isActive = false;
eaCtrl.Tools.remove('#' + this.elementName);
eaCtrl.c[ii].d_called = 0;
eaCtrl.Tools.remove('#' + this.elementName + '_3');
eaCtrl.cm = false
} catch (_0) {
console.log(_0)
}
},
reDisplayItems: function() {
console.log('reDisplayItems')
},
setPosition: function(obj) {
if (!this.isActive) {
return
}
this.avWidth = (this.ie) ? this.iebody.clientWidth : window.innerWidth;
this.avHeight = (this.ie) ? this.iebody.clientHeight : window.innerHeight;
this.objwidth = this.objref.offsetWidth;
this.objheight = this.objref.offsetHeight;
switch (this.position) {
case "center":
var left = this.avWidth / 2 - this.objwidth / 2;
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
this.objref.style.top = this.avHeight / 2 - this.objheight / 2 + "px";
break;
case "top-left":
this.objref.style.left = this.leftMargin + "px";
this.objref.style.top = this.topMargin + "px";
break;
case "top-right":
var left = (this.avWidth - (this.objwidth + 15));
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
this.objref.style.top = this.topMargin + "px";
break;
case "top-center":
var left = this.avWidth / 2 - this.objwidth / 2;
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
this.objref.style.top = this.topMargin + "px";
break;
case "left-middle":
this.objref.style.left = this.leftMargin + "px";
var top = ((this.avHeight - this.objheight) / 2) + this.topMargin;
if (top < this.topMargin) {
top = this.topMargin
}
this.objref.style.top = top + 'px';
break;
case "right-middle":
var left = (this.avWidth - (this.objwidth + 15));
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
var top = ((this.avHeight - this.objheight) / 2) + this.topMargin;
if (top < this.topMargin) {
top = this.topMargin
}
this.objref.style.top = top + 'px';
break;
case "left-bottom":
this.objref.style.left = this.leftMargin + "px";
this.objref.style.top = (this.avHeight - this.objheight) - this.bottomMargin + 'px';
break;
case "right-bottom":
this.objref.style.top = (this.avHeight - this.objheight) - this.bottomMargin + 'px';
var left = (this.avWidth - (this.objwidth + 15));
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
break;
case "bottom-center":
var left = this.avWidth / 2 - this.objwidth / 2;
if (left < this.leftMargin) {
left = this.leftMargin
}
this.objref.style.left = left + "px";
this.objref.style.top = (this.avHeight - this.objheight) - this.bottomMargin + 'px';
break
}
if (this.hasMultiItems) {
this.reDisplayItems()
}
},
}
}
};
eaCtrl.fpa = {
cq: false,
bv: false,
ismobile: false,
ctrlName: 'fpa',
IsLoaded: false,
aHtml: [],
ClickTags: ['a'],
lsett: {
url: "",
target: ""
},
getVersion: function() {
return "4.8"
},
fire: function(ii) {
var Html = this.aHtml[ii];
if (typeof Html != 'undefined') {
eaCtrl.Tools.append('body', Html);
this.IsLoaded = true
}
},
checkParents: function(aNode, findNode) {
var aParents = eaCtrl.Tools.parents(aNode);
var bFound = false;
aParents.forEach(function(v, i) {
if (v == findNode) {
bFound = true;
return false
}
});
return bFound
},
checkChilds: function(aNode, findNode) {
var bFound = false;
if (typeof aNode.children != 'undefined') {
var aChilds = aNode.children;
if (aChilds.length > 0) {
aChilds.forEach(function(v, i) {
if (v == findNode) {
bFound = true;
return false
}
})
}
}
return bFound
},
canFire: function(aNode) {
var ob = this;
var bRet = false;
try {
ob.ClickTags.forEach(function(v, i) {
var fNodes = eaCtrl.Tools.getnodes(v);
fNodes.forEach(function(fNode, icnt) {
if (fNode == aNode) {
bRet = true;
return false
} else {
if (ob.checkParents(aNode, fNode)) {
bRet = true;
return false
} else if (ob.checkChilds(aNode, fNode)) {
bRet = true;
return false
}
}
});
if (bRet) {
return false
}
})
} catch (_0) {}
return bRet
},
display: function(ii, ai) {
if (this.bv) {
return
}
if (eaCtrl.browserInfo.ismobile) {
eaCtrl.Tools.append('head', '<meta name="viewport" content="width=device-width,height=device-height,initial-scale=1.0"/>');
this.ismobile = true
}
var Item = eaCtrl.c[ii];
if (typeof Item.clickTags != 'undefined' && Item.clickTags.length > 0) {
this.ClickTags = Item.clickTags
}
var Html = '';
var uri = ai.destinationurl;
if (uri.indexOf('?')) {
uri += '&nojump'
} else {
uri += '?nojump'
}
var s;
if (typeof eaCtrl.sCloseFpaButtonHtml != 'undefined' && eaCtrl.sCloseFpaButtonHtml != '') {
s = eaCtrl.sCloseFpaButtonHtml
} else {
s = '<button style="height:40px;font-size:19px;margin-top:5px;margin-right:5px;"><b>Close</b></button>'
}
Html += '<div id="fpa_layer" style="display:none;background-color:#ffffff;position:absolute;z-index:1000000000000;top:0px;left:0px;width:100%;height:100%;margin:0,0,0,0;overflow:hidden;">' + '<div id="fpa_top" style="background-color:#000000;height:50px;overflow:hidden;width:100%; margin:0,0,0,0;">' + '<div id="fpa_close_button" style="float:right;" onclick="eaCtrl.fpa.close();"><a title="Close ' + (eaCtrl.isPreview ? 'Preview' : 'Ad') + '">' + s + '</a></div>' + '</div><div id="fpa_loader" class="fpa_loader" style="overflow:auto;-webkit-overflow-scrolling:touch; height: 100%; width: 100%;">' + '<iframe framborder="0" sandbox="allow-same-origin allow-scripts allow-popups allow-forms" style="padding:0;margin:0;border:0;margin:0;" width="100%" height="100%" id="fpa_frame" onload="eaCtrl.fpa.q(' + ii + ');" src="' + uri + '" onerror="eaCtrl.fpa.error()"></iframe>' + '</div><style id="fpa_css" type="text/css">fpa_frame{overflow-y:scroll !important;border:none;top:0;left:0;margin:0;padding:0;width:100%;height:100%;-webkit-overflow-scrolling: touch}';
if (this.ismobile) {
Html += '.fpa_loader{display: inline-block;-webkit-overflow-scrolling: touch;overflow-y: scroll}.fpa_loader .fpa_loader{width:100%}'
}
Html += '</style></div>';
var ob = this;
ob.aHtml[ii] = Html;
if (eaCtrl.isPreview) {
ob.fire(ii)
} else {
var ch = function(t, e) {
try {
if (!ob.IsLoaded) {
if (ob.canFire(t)) {
var phref = t.getAttribute("href");
var ptarget = t.getAttribute("target");
if (phref !== '#' && phref != "" && phref !== 'javascript:void(0)') {
if (ptarget != null) {
ob.lsett.target = ptarget
}
ob.lsett.url = phref;
eaCtrl.cm = true;
ob.IsLoaded = true;
eaCtrl.Tools.append('body', Html);
e.preventDefault();
e.stopPropagation();
e.stopImmediatePropagation();
ob.cq = true;
eaCtrl.q(ii)
}
}
}
} catch (_0) {}
};
eaCtrl.Tools.on("click", 'a', function(e) {
ch(e.target, e)
});
eaCtrl.Tools.on("click", '*', function(e) {
if (ob.IsLoaded) {
return
}
var el = e.target;
while (el) {
if (el.nodeName == 'A') {
ch(el, e);
return
}
el = el.parentNode
}
})
}
},
error: function() {
eaCtrl.i("error in loading FPA,probably blocked ");
this.close()
},
close: function() {
eaCtrl.Tools.remove("#fpa_layer");
if (this.ismobile) {
eaCtrl.Tools.show('body > :not(#fpa_layer)')
}
eaCtrl.Tools.css('body', {
overflow: ''
});
eaCtrl.cm = false;
if (eaCtrl.isPreview) {
this.IsLoaded = false;
this.bv = false
}
if (typeof this.lsett.url != 'undefined') {
if (this.lsett.url != null && this.lsett.url != "") {
if (this.lsett.target.search('blank') >= 0) {
var w = window.open(this.lsett.url, '_19');
this.lsett = {
url: "",
target: ""
}
} else {
top.location.href = this.lsett.url
}
}
}
},
q: function(ii) {
if (this.bv) {
return
}
if (this.ismobile) {
eaCtrl.Tools.hide('body > :not(#fpa_layer)')
}
eaCtrl.Tools.css('body', {
overflow: 'hidden'
});
window.scrollTo(0, 0);
this.bv = true;
eaCtrl.Tools.show("#fpa_layer");
eaCtrl.Tools.on(window, 'resize', function() {
eaCtrl.fpa.by()
});
eaCtrl.Tools.on(document, 'scroll', function() {
eaCtrl.fpa.cn()
});
eaCtrl.Tools.on(window, "orientationchange", function(event) {
eaCtrl.fpa.by()
});
setTimeout("eaCtrl.fpa.bx()", 3000);
setTimeout("eaCtrl.fpa.by();", 1000);
this.by()
},
bx: function() {
eaCtrl.Tools.fadeIn("#fpa_close_button", 2500)
},
gw: function(i) {
try {
return (i.innerWidth ? i.innerWidth : (i.offsetWidth ? i.offsetWidth : (i.screen != null ? i.screen.availWidth : 0)))
} catch (_0) {
return eaCtrl.Tools.width(i)
}
},
by: function() {
var cp = eaCtrl.Tools.height(window);
eaCtrl.Tools.css('#fpa_layer', {
height: cp + 'px'
});
cp -= (eaCtrl.Tools.height('#fpa_top'));
eaCtrl.Tools.css('#fpa_loader', {
height: cp + 'px'
});
eaCtrl.Tools.css('#fpa_frame', {
height: cp + 'px'
});
if (this.ismobile) {
var iWidth = this.gw(window);
eaCtrl.Tools.css('#fpa_layer', {
width: iWidth + 'px'
});
eaCtrl.Tools.css('#fpa_frame', {
width: iWidth + 'px'
})
}
},
co: function() {
return (window.orientation === 90 || window.orientation === -90)
},
cn: function() {
if (this.bv) {
window.scrollTo(0, 0);
this.by()
}
},
};
eaCtrl.im = {
skipreload: false,
reload: false,
reloadTime: 30,
popsid: 0,
cl: false,
ctrlName: 'im',
bi: 0,
aSet: null,
sTag: "imlayer",
getVersion: function() {
return "4.4"
},
hide: function() {
this.reload = false;
eaCtrl.Tools.remove(['#' + this.sTag, '#' + this.sTag + '_24'])
},
init: function(ii, aSett) {
if (this.cl) {
return
}
aSett.hideadsby = true;
this.cl = true;
var xposcss = 'right:10px;';
var xposshcss = 'float:right;';
if (typeof(aSett.position) != 'undefined') {
if (aSett.position == 'bottom_left') {
xposcss = 'left:5px;';
xposshcss = 'float:left;'
} else if (aSett.position == 'bottom_center') {
xposcss = 'left:50%;margin-left:-' + (aSett.width / 2) + 'px;'
}
}
var cpos = "fixed";
try {
cpos = (document.compatMode == 'CSS1Compat') ? "fixed" : "absolute";
var browser = navigator.appName;
var version = parseFloat(navigator.appVersion.split("MSIE")[1]);
if (browser == "Microsoft Internet Explorer" && version <= 6) {
cpos = "absolute"
}
} catch (_0) {};
var sCloseButtonHtml = '';
if (typeof eaCtrl.sCloseButtonHtml == 'undefined') {
eaCtrl.sCloseButtonHtml = sCloseButtonHtml = "<img alt='Close " + (eaCtrl.isPreview ? "Preview" : "Ad") + " style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>"
} else {
sCloseButtonHtml = eaCtrl.sCloseButtonHtml;
if (eaCtrl.isPreview) {
sCloseButtonHtml = sCloseButtonHtml.replace('Close Ad', 'Close Preview')
}
}
eaCtrl.Tools.append('head', '<style type="text/css"> #' + this.sTag + ' {' + xposcss + ' background: #000000; border-top-right-radius: 5px; border-top-left-radius: 5px; ' + 'z-index:2000; padding: 0px; margin:0px; border:1px #000000 solid; border-spacing:1px; background-color:#000000; position: ' + cpos + '; ' + xposcss + xposshcss + ' bottom: 0px; text-align: left;' + (eaCtrl.abDetected ? '' : 'display:none;') + '} #' + this.sTag + ' a,#' + this.sTag + ' a:link,#slider strong { text-decoration:none; color: black; font-size:12px; } ' + '</style>');
var h = '<div id="btn_close_im_' + ii + '" style="position:absolute;z-index:1000000; right:0px; float:right; top:0px;float:right;">' + '<a title="Close ' + (eaCtrl.isPreview ? "Preview" : "Ad") + '" onclick="eaCtrl.im.hide()">' + sCloseButtonHtml + '</a></div>';
eaCtrl.Tools.append('body', '<div id="' + this.sTag + '" onmouseover="eaCtrl.im.skipreload=true;" onmouseout="eaCtrl.im.skipreload=false;">' + h + '<div id="' + this.sTag + '_1">' + '</div></div>');
btndiv = 'btn_close_im_' + ii;
if (typeof(aSett.reloadtime) != 'undefined') {
var rtime = parseInt(aSett.reloadtime);
if (rtime > 0) {
if (rtime < 5) {
rtime = 5
}
this.reloadTime = (rtime * 1000);
this.reload = true
}
}
this.aSet = aSett;
try {
if (this.aSet.closepop.id > 0) {
var ob = this;
var ai = eaCtrl.c[this.bi];
eaCtrl.ad(-1, "pop", function() {
cbTestIm = function() {
if (typeof eaPopn != 'undefined') {
var p = new eaPopn;
p.isPopunder = false;
p.url = p.genUrl(ai, ob.aSet.closepop.id);
p.cookieTime = ob.aSet.closepop.cap;
p.clickHandler = ["#" + btndiv];
p.ignoreList = [];
p.cookieName = 'popcap_' + ob.aSet.closepop.id;
p.xbtn = true;
ob.aPop = p;
if (p.canrun()) {
p.init()
}
} else {
setTimeout("cbTestIm()", 500)
}
};
cbTestIm()
})
}
} catch (e) {}
},
display: function(ii, json) {
var o = this;
var u = 'undefined';
if (this.bi == 0) {
this.bi = ii
} else {
if (this.bi != ii) {
eaCtrl.i("Im plugin got called more than one time, will be ignored");
return
}
}
if (!this.cl) {
this.init(ii, json.settings)
} else {
if (typeof(json.settings['position']) != 'undefined') {
if (json.settings['position'] == 'bottom_center') {
eaCtrl.Tools.css('#' + this.sTag, {
marginLeft: "-" + (json.settings.width / 2) + "px"
})
}
}
}
var isNt = eaCtrl.getItem(json, 'adtype', '') == 'native';
if (isNt) {
eaCtrl.ad(-1, "native", function() {
var sId = o.sTag + 'ct';
eaCtrl.c[ii].display = sId;
eaCtrl.c[ii].isflt = 1;
if (eaCtrl.abDetected) {
eaCtrl.Tools.html('#' + o.sTag + '_1', '<div style="clear:both;font-size:11px; color:black;" id="' + sId + '"></div>');
eaCtrl.native.display(ii, json)
} else {
eaCtrl.Tools.html('#' + o.sTag + '_1', '<div style="clear:both;font-size:11px; color:black;" id="' + sId + '"></div>');
eaCtrl.native.display(ii, json);
eaCtrl.Tools.slideUp('#' + o.sTag, 2000, function() {});
if (eaCtrl.im.reload && eaCtrl.im.reloadTime > 0) {
setTimeout(function() {
if (!eaCtrl.im.reload) {
return
}
eaCtrl.banner.reload(ii)
}, eaCtrl.im.reloadTime)
}
}
});
return
} else {
eaCtrl.ad(-1, 'banner', function() {
eaCtrl.banner.t(ii, json, function(shtml) {
var h = '<div style="clear:both;font-size:11px; color:black;">' + shtml + '</div>';
if (eaCtrl.abDetected) {
eaCtrl.Tools.html('#' + o.sTag + '_1', h);
eaCtrl.banner.j(ii)
} else {
eaCtrl.Tools.html('#' + o.sTag + '_1', h);
eaCtrl.banner.j(ii);
eaCtrl.Tools.slideUp('#' + o.sTag, 2000, function() {})
}
if (eaCtrl.im.reload && eaCtrl.im.reloadTime > 0 && !eaCtrl.abDetected) {
setTimeout(function() {
if (!eaCtrl.im.reload) {
return
}
eaCtrl.banner.reload(ii)
}, eaCtrl.im.reloadTime)
}
})
})
}
},
};
eaCtrl.invideo = {
a: [],
getVersion: function() {
return "4.6"
},
display: function(ii, j) {
if (typeof j.settings == 'undefined') {
j.settings = {}
}
this.a[ii] = new this.c();
this.a[ii].bi = ii;
this.a[ii].bf = j.settings;
this.a[ii].run()
},
c: function() {
return {
bi: 0,
bf: {},
opts: null,
playerNode: null,
player: null,
playerLoaded: false,
bz: false,
ci: false,
bp: '',
bc: '',
bl: 0,
bm: 0,
ba: '',
an: null,
be: '',
ctrlHeight: 0,
sc: '',
al: false,
popFired: false,
aPop: null,
closePopId: 0,
playPopId: 0,
VP: null,
run: function() {
var bf = eaCtrl.c[this.bi];
this.ctrlHeight = eaCtrl.getItem(this.bf, 'controllerHeight', 0);
if (bf.display != '') {
this.be = bf.display
}
if (typeof bf.player == "string" && bf.player != '') {
bf.be = bf.player;
bf.player = eaCtrl.Tools.getnode('#' + bf.player)
} else {
if (bf.playertype == '' || bf.playertype == "autodetect") {
var p = this.bu();
if (typeof p != 'undefined' && typeof jwplayer(0).onPlay != "undefined") {
bf.playertype = "jwplayer"
} else {
var v = eaCtrl.Tools.getnode("video");
if (v != null && v[0] != null) {
bf.playertype = "video"
} else {
p = this.detectFlowPlayerFlash();
if (typeof p != 'undefined') {
bf.playertype = "flowplayer"
} else {
p = this.detectKtPlayer();
if (typeof p != 'undefined') {
bf.playertype = "ktplayer"
}
}
}
}
if (bf.playertype == '') {
console.log("cannot detect player");
return
}
}
}
switch (bf.playertype) {
case 'html5_video':
case 'video':
bf.playertype = "html5_video";
if (typeof bf.player != 'object') {
var s = eaCtrl.getItem(bf, 'playerid', '');
if (s != "") {
this.player = eaCtrl.Tools.getnode("#" + s)
} else {
s = eaCtrl.getItem(bf, 'playerwrapper', '');
if (s != '') {
this.player = eaCtrl.Tools.find("#" + s, 'video')[0]
} else {
this.player = eaCtrl.Tools.getnode("video")
}
}
} else {
this.player = bf.player
}
if (typeof this.player != 'object') {
eaCtrl.i("Could not detect the Videoplayer?");
return
} else {
this.be = bf.display;
if (eaCtrl.Tools.getnode('#' + bf.display) === null || eaCtrl.Tools.getnode('#' + this.be).nodeName == 'VIDEO') {
s = eaCtrl.getItem(bf, 'playerwrapper', '');
if (s == '') {
s = this.player.parentNode.id
}
this.be = s;
bf.playerwrapper = this.be
}
var ctrl = this;
ctrl.ba = "html5_video";
ctrl.player.addEventListener('play', function() {
ctrl.Play()
});
ctrl.player.addEventListener('playing', function() {
ctrl.bn()
});
ctrl.player.addEventListener('canplaythrough', function() {});
ctrl.player.addEventListener('pause', function() {
if (this.currentTime < (this.duration - 2) && !this.seeking) {
ctrl.Pause()
}
});
ctrl.player.addEventListener('ended', function() {
ctrl.End()
});
ctrl.player.addEventListener('timeupdate', function(e) {
ctrl.bb(this.currentTime, this.duration)
});
ctrl.player.addEventListener('webkitfullscreenchange', function() {
ctrl.CheckFullScreen()
});
ctrl.player.addEventListener('mozfullscreenchange', function() {
ctrl.CheckFullScreen()
});
ctrl.player.addEventListener('fullscreenchange', function() {
ctrl.CheckFullScreen()
});
ctrl.init()
}
break;
case "ktplayer":
this.ctrlHeight = 35;
if (typeof bf.player != 'object') {
this.player = this.detectKtPlayer(bf.display)
} else {
this.player = bf.player
}
if (typeof this.player != 'object') {
eaCtrl.i("Could not detect the KtPlayer")
} else {
var ctrl = this;
this.ba = "ktplayer";
ctrl.player.listen('ktVideoStarted', function() {
ctrl.Play()
});
ctrl.player.listen('ktVideoPaused', function() {
ctrl.Pause()
});
ctrl.player.listen('ktVideoStopped', function() {
ctrl.End()
});
ctrl.player.listen('ktVideoFinished', function() {
ctrl.End()
});
ctrl.player.listen('ktVideoProgress', function(time) {
ctrl.bb(time)
});
ctrl.init()
}
break;
case "jwplayer":
if (typeof bf.player == 'undefined' || bf.player == '') {
this.player = this.bu()
} else {
this.player = bf.player
}
this.player = jwplayer(0);
if (typeof this.player != 'object') {
eaCtrl.i("Could not detect the JwPlayer");
return
} else {
var ctrl = this;
ctrl.ba = "jwplayer";
ctrl.be = ctrl.player.id;
ctrl.player.onPlay(function() {
ctrl.Play()
});
ctrl.player.onPause(function() {
ctrl.Pause()
});
ctrl.player.onTime(function(e) {
ctrl.bb(e.position, e.duration)
});
ctrl.player.onReady(function() {
ctrl.init()
});
setTimeout(function() {
ctrl.init()
}, 2000)
}
break;
case "flowplayer":
this.ba = "flowplayer";
if (typeof bf.player == 'undefined' || bf.player == '') {
this.player = this.detectFlowPlayerFlash()
} else {
this.player = bf.player
}
if (typeof this.player != 'object') {
eaCtrl.i("Could not detect the Flowplayer");
return
} else {
var ctrl = this;
if (typeof this.player.on == 'function') {
if (eaCtrl.Tools.getnode("#" + this.be) === null) {
var node = eaCtrl.Tools.getnode('.flowplayer');
if (node.getAttribute('id') == null) {
eaCtrl.Tools.attr(node, 'id', 'flowplayer');
this.be = 'flowplayer'
} else {
this.be = node.getAttribute('id')
}
}
this.player.on("progress", function(a, b, time) {
ctrl.bb(time)
});
this.player.on("pause", function() {
ctrl.Pause()
});
this.player.on("ready", function() {});
this.player.on("start", function() {
ctrl.Play()
});
this.player.on("resume", function() {
ctrl.bn()
});
this.player.on("finish", function() {
ctrl.End()
})
} else {
this.be = this.player.getParent().id;
this.player.onPause(function() {
ctrl.Pause()
});
this.player.onStart(function() {
return ctrl.Play()
});
this.player.onResume(function() {
return ctrl.bn()
});
this.player.onFinish(function() {
return ctrl.End()
});
this.player.onCuepoint([ctrl.bf.midrollstart * 1e3], function(e, t) {
ctrl.bg("midroll")
})
}
ctrl.init()
}
break;
default:
eaCtrl.i("unknown invideo player type " + bf.playertype);
return;
break
}
},
init: function() {
if (this.ba == "") {
return
}
if (typeof eaCtrl.sCloseButtonHtml == 'undefined') {
eaCtrl.sCloseButtonHtml = "<img alt='Close Ad' style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>"
}
var e = 'undefined';
if (this.al) {
return
}
this.al = true;
this.sc = 'ctrl_' + this.bi + '_1';
var h = '<div id="inv_' + this.bi + '" style="display:none;position:absolute">' + '<div id="ctrl_' + this.bi + '_8" style="position:absolute;z-index:1000000; right:0px;">' + '<a href="#" title="Close Ad" id="btn_ctrl_' + this.bi + '_7" onclick="eaCtrl.invideo.a[' + this.bi + '].bh(1); return false;">' + eaCtrl.sCloseButtonHtml + '</a></div>' + '<div id="' + this.sc + '"></div</div>';
var node = document.getElementById(this.be);
if (node == null) {
console.log("No video node found", this.be);
return
}
var needpop = false;
var needInvideo = false;
var presid, midsid, postsid = 0;
if (this.bf.usepreroll) {
if (typeof this.bf.preroll.vsid != 'undefined' && !isNaN(this.bf.preroll.vsid)) {
if (this.bf.preroll.vsid > 0) {
presid = this.bf.preroll.vsid;
needInvideo = true
}
}
}
if (this.bf.usemidroll) {
if (typeof this.bf.midroll.vsid != 'undefined' && !isNaN(this.bf.midroll.vsid)) {
if (this.bf.midroll.vsid > 0) {
midsid = this.bf.midroll.vsid;
needInvideo = true
}
}
}
if (this.bf.usepostroll) {
if (typeof this.bf.postroll.vsid != 'undefined' && !isNaN(this.bf.postroll.vsid)) {
if (this.bf.postroll.vsid > 0) {
postsid = this.bf.postroll.vsid;
needInvideo = true
}
}
}
if (needInvideo) {
var ii = this.bi;
var ob = this;
eaCtrl.ad(-1, "video", function() {
try {
var aSet = eaCtrl.c[ii];
aSet.videoads = [];
eaCtrl.c[ii] = aSet;
ob.VP = eaCtrl.video.display(ii, {})
} catch (_0) {
console.log(_0)
}
})
}
if (typeof this.bf.closepop != e && this.bf.closepop.id != e) {
var closePopId = this.bf.closepop.id;
var acap = this.bf.closepop.cappingtime;
var btn = this.sc;
eaCtrl.ad(-1, "pop", function() {
cbp = function() {
if (typeof eaPopn != 'undefined') {
var p = new eaPopn;
p.isPopunder = 0;
p.url = p.genUrl({}, closePopId);
p.cookieTime = acap;
p.clickHandler = ["#" + btn];
p.ignoreList = [document];
p.cookieName = 'pop_btn_close_' + closePopId;
if (p.canrun()) {
p.init()
}
} else {
setTimeout("cbp()", 500)
}
};
cbp()
})
}
if (typeof this.bf.onplaypop != e && this.bf.onplaypop.id != e) {
var closePpId = this.bf.onplaypop.id;
var acp = this.bf.onplaypop.cappingtime;
var btna = this.be;
eaCtrl.ad(-1, "pop", function() {
cba = function() {
if (typeof eaPopn != 'undefined') {
var p = new eaPopn;
p.isPopunder = 0;
p.url = p.genUrl({}, closePpId);
p.cookieTime = acp;
p.clickHandler = ["#" + btna];
p.ignoreList = [document];
p.cookieName = 'pop_onplay_' + closePpId;
if (p.canrun()) {
p.init()
}
} else {
setTimeout("cba()", 500)
}
};
cba()
})
}
if (node.nodeName == "OBJECT") {
node = node.parentNode;
this.be = node.id
}
this.an = eaCtrl.Tools.prepend(node, h);
if (this.bf.usepreroll) {
this.bg('preroll')
} else {
eaCtrl.i("no preroll configged for invideo")
}
var t = this;
eaCtrl.Tools.on(window, 'resize', function() {
t.bj()
})
},
bg: function(bd) {
var ob = this;
if (typeof eaCtrl.videoAdRunning != 'undefined') {
if (eaCtrl.videoAdRunning == true) {
return false
}
}
if (this.bz) {
return false
}
if (this.an != null) {
if (typeof this.bf[bd] == 'undefined') {
console.log("no invideo options for " + bd);
return
}
if (eaCtrl.Tools.getnode('#' + this.sc) === null) {
eaCtrl.i("cannot find html noded to load ads");
return
}
this.bc = bd;
var opts = null;
switch (this.bc) {
case "preroll":
this.opts = opts = this.bf.preroll;
if (this.bp == "playing" || this.bp == "buffering") {
return
}
break;
case "pause":
this.opts = opts = this.bf.pause;
break;
case "postroll":
this.opts = opts = this.bf.postroll;
this.ci = true;
break;
case "midroll":
this.opts = opts = this.bf.midroll;
break;
default:
return false
}
this.bf[bd].showed = true;
var val = eaCtrl.c[this.bi];
var i = this.bi;
var ay = '';
var sids = opts.sids;
if (sids == null || typeof sids != 'object') {
sids = []
}
if (typeof opts.vsid != 'undefined' && !isNaN(opts.vsid) && opts.vsid > 0) {
sids.push(opts.vsid)
}
if (sids.length > 0) {
ay = '';
var i = 0;
sids.forEach(function(sid, ia) {
var set = {
s: {}
};
set.id = sid;
set.s.itemid = i;
var s = eaCtrl.getItem(val, 'subid', '', true);
if (s != "") {
set.sid = s
}
s = eaCtrl.getItem(val, 'keywords', '', true);
if (s != "") {
set.kw = s
}
s = eaCtrl.getItem(val, 'maincat', '', true);
if (s != '') {
set.mc = s
}
ay += '&ad=' + JSON.stringify(set);
i++
})
}
var actrl = this;
var ii = this.bi;
eaCtrl.o('get', ay + '&act=get&doc=' + escape(document.location), 0, {
result: function(j) {
if ('undefined' != typeof j.results && 'undefined' != typeof j.results[0]) {
eaCtrl.Tools.html('#' + actrl.sc, '');
eaCtrl.c[ii].data = j.results;
iTotal = j.results.length;
var iBannersFound = 0;
var iBanCpm = 0;
var iVidCpm = 0;
var ct = 0;
var i = 0;
j.results.forEach(function(ad, ia) {
if (ad.adtype == "banner" || ad.adtype == "native") {
iBannersFound++;
if (typeof ad.ecpm == 'number') {
iBanCpm += ad.ecpm
}
} else {
ct++;
if (typeof ad.ecpm == 'number') {
iVidCpm += ad.ecpm
}
}
});
var skipbanner = false;
var skipvid = false;
if (bd != 'preroll') {
if (iBannersFound > 0 && ct > 0) {
if (iBanCpm > iVidCpm) {
skipvid = true
} else {
skipbanner = true
}
}
}
eaCtrl.Tools.html('#' + actrl.sc, '');
j.results.forEach(function(ad, ia) {
switch (ad.adtype) {
case "native":
if (!skipbanner) {
i++;
eaCtrl.ad(-1, "native", function() {
var sId = actrl.sc + 'ct_' + i;
eaCtrl.c[ii].display = sId;
eaCtrl.c[ii].isflt = 1;
eaCtrl.Tools.append('#' + actrl.sc, '<div style="float:left;padding:1px" id="' + sId + '"></div>');
eaCtrl.native.display(ii, ad);
if (i == iBannersFound) {
eaCtrl.invideo.a[ii].w()
}
})
}
break;
case "banner":
if (!skipbanner) {
i++;
eaCtrl.banner.t(ii, ad, function(s) {
eaCtrl.Tools.append('#' + actrl.sc, '<div style="float:left;padding:1px">' + s + '</div>');
var p = {};
if (i == iBannersFound) {
p = {
onload: function() {
eaCtrl.invideo.a[ii].w()
}
}
}
eaCtrl.banner.j(ii, p, ia)
}, ia)
}
break;
case "video":
if (!skipvid) {
ad.type = bd;
var ai = eaCtrl.c[ii];
if (ob.VP != null) {
if (typeof eaCtrl.c[ii].actions == 'undefined') {
eaCtrl.c[ii].actions = []
}
eaCtrl.c[ii].actions[ad.actionid] = {
"type": bd,
"invideo": 1
};
eaCtrl.video.display(ii, ad)
}
}
break;
default:
eaCtrl.i("unknown ad for invideo, adtype:" + ad.adtype);
return
}
})
}
}
});
return true
}
},
bh: function(play) {
eaCtrl.Tools.hide('#inv_' + this.bi);
if (play != null && play) {
if (this.bp != "playing" && !this.ci) {
this.bn();
return false
}
this.ci = false;
return true
}
},
w: function() {
var o = this;
if (o.opts.fadeIn) {
eaCtrl.Tools.fadeIn("inv_" + o.bi, 2500, function() {
o.bj()
})
} else {
document.getElementById("inv_" + o.bi).style.display = 'block';
o.bj()
}
},
CheckFullScreen: function() {
if (this.VP != null && this.VP.vidAdRunning) {
if (this.isInFullScreenMode()) {
this.VP.endActions(1)
}
return
}
},
bj: function(bk) {
if (eaCtrl.Tools.html("#" + this.sc) == '') {
return
}
if (this.an == null) {
return
}
if (eaCtrl.Tools.getnode("#" + this.be).length == 0) {
console.log("No videolayer node");
return
}
var bl;
var bm;
switch (this.ba) {
case "html5_video":
bl = eaCtrl.Tools.width(this.player);
bm = eaCtrl.Tools.height(this.player);
break;
default:
bl = eaCtrl.Tools.width('#' + this.be);
bm = eaCtrl.Tools.height('#' + this.be);
break
}
switch (this.bc) {
case "preroll":
if (this.bp == "playing" || this.bp == "buffering") {
return
}
break;
case "pause":
break;
case "postroll":
this.ci = true;
break;
case "midroll":
break;
default:
return false
}
var bq = eaCtrl.Tools.getnode('#inv_' + this.bi);
if (bq == null) {
return false
}
if (bm <= 10) {
setTimeout("eaCtrl.invideo.a[" + this.bi + "].bj();", 1500);
return
}
bm -= this.ctrlHeight;
var bs = eaCtrl.Tools.width('#inv_' + this.bi);
var br = eaCtrl.Tools.height('#inv_' + this.bi);
if (br <= 10) {}
switch (this.opts.position) {
case "center":
xstyle = "top:" + ((bm - br) / 2) + "px;";
xstyle += "left:" + ((bl - bs) / 2) + "px;";
break;
case "center-bottom":
xstyle = "margin-top:" + (bm - br) + "px;";
xstyle += "margin-left:" + ((bl - bs) / 2) + "px;";
break;
case "top-left":
xstyle = "margin-top:1px;";
xstyle += "margin-left:0px;";
break;
case "top-center":
xstyle = "margin-top:1px;";
xstyle += "margin-left:" + ((bl - bs) / 2) + "px;";
break;
case "left-middle":
xstyle = "margin-left:1px;";
xstyle += "margin-top:" + ((bm - br) / 2) + "px;";
break;
case "right-middle":
xstyle = "margin-top:" + ((bm - br) / 2) + "px;";
xstyle += "margin-left:" + (bl - bs) + "px;";
break;
case "top-right":
xstyle = "margin-left:" + (bl - bs) + "px;";
xstyle += "margin-top:1px;";
break;
case "left-bottom":
xstyle = "margin-top:" + (bm - br) + "px;";
xstyle += "margin-left:1px;";
break;
case "right-bottom":
xstyle = "margin-top:" + (bm - br) + "px;";
xstyle += "margin-left:" + (bl - bs) + "px;";
break;
default:
return
}
xstyle += 'z-index:5000; position: absolute; background: #ffffff;';
if (bk) {
xstyle = "display:none"
}
eaCtrl.Tools.attr(bq, 'style', xstyle)
},
bn: function() {
this.bh();
if (this.bp != 'playing') {
this.bp = "playing";
switch (this.ba) {
case "jwplayer":
case "ktplayer":
case "flowplayer_flash":
case "flowplayer":
this.player.play();
break;
case "flashplayer":
eroFlash.play();
break;
case 'html5_video':
this.player.play();
break
}
return
}
},
End: function() {
if (this.bp != "finished") {
this.bp = "finished";
if (this.bf.usepostroll) {
this.bg("postroll")
}
}
},
Play: function() {
this.bp = "playing";
this.bh()
},
Pause: function() {
this.bp = "paused";
if (this.bc == "midroll") {
this.bc = "";
this.bn();
return
}
if (this.bf.usepause) {
this.bg("pause")
}
},
bb: function(pos, dur) {
if (this.VP != null && this.VP.vidAdRunning) {
if (this.isInFullScreenMode()) {
this.bh(1)
}
return
}
this.bz = this.isInFullScreenMode();
this.FullScreen(this.bz);
if (!this.bz) {
if (this.bf.usemidroll) {
if (isNaN(this.bf.midrollstart)) {
this.bf.midrollstart = 0
}
if (this.bf.midrollstart == 0) {
this.bf.midrollstart = dur / 2
} else {
if (!this.bf.midroll.showed && pos >= this.bf.midrollstart && pos < (this.bf.midrollstart + 5)) {
console.log("midroll call");
this.bg("midroll")
}
}
}
}
if ('undefined' != typeof dur) {
if (parseInt(pos) >= parseInt(dur)) {
this.End()
}
}
},
bu: function() {
if (typeof(jwplayer) != "undefined") {
return jwplayer()
}
},
detectFlowPlayerFlash: function() {
if (typeof f !== "undefined") {
return f
}
},
detectKtPlayer: function(nodeid) {
if (typeof kt_player != 'undefined') {
return eaCtrl.Tools.getnode('#' + nodeid + '_23')
}
},
isInFullScreenMode: function() {
return false
},
FullScreen: function(bool) {
this.bz = bool;
if (bool) {
this.bh()
}
},
}
},
};
eaCtrl.native = {
sTag: "itmp",
getVersion: function() {
return "5.4"
},
imghwd: [],
IsLoaded: false,
IsHided: false,
elementName: "",
removedItems: 0,
reload: function(ii) {
var ai = eaCtrl.c[ii];
ai.q = false;
try {
delete ai.data;
delete ai.q;
delete ai.btype;
delete ai.state;
delete ai.settings
} catch (e) {}
ai.reload = 1;
ai.state = 0;
eaCtrl.run()
},
setpos: function(sn, st) {
var dh = eaCtrl.Tools.height('#' + st);
var wh = eaCtrl.Tools.height(window) - 100;
var dw = eaCtrl.Tools.width('#' + st);
var ww = eaCtrl.Tools.width(window) - 100;
var bdh, bdw = false;
var t = eaCtrl.Tools;
t.getnodes('[id^="nt_row_' + sn + '_"]').forEach(function(v, k) {
if (dh > wh) {
if (eaCtrl.Tools.isvisible(v)) {
eaCtrl.Tools.css(v, {
"display": "none"
});
dh = eaCtrl.Tools.height('#' + sn)
}
} else {
if (!bdh) {
if ((dh + 300) < wh) {
if (!t.isvisible(v)) {
t.css(v, {
"display": "flex"
});
dh = t.height('#' + st);
if (dh > wh) {
t.css(v, {
"display": "none"
});
bdh = true
}
}
}
}
}
if (t.isvisible(v)) {
t.getnodes('[id^="nt_col_' + sn + '_' + k + '_"]').forEach(function(v2, k2) {
if (dw > ww) {
if (t.isvisible(v2)) {
t.css(v2, {
"display": "none"
});
dw = eaCtrl.Tools.width('#' + st)
}
} else {
if (!bdw) {
if ((dw + 300) < ww) {
if (!eaCtrl.Tools.isvisible(v2)) {
eaCtrl.Tools.css(v2, {
"display": "inline-block"
});
dw = eaCtrl.Tools.width('#' + st);
if (dw > ww) {
eaCtrl.Tools.css(v2, {
"display": "none"
});
bdw = true
}
}
}
}
}
})
}
})
},
hide: function(sn) {
eaCtrl.Tools.remove(['#' + sn, '#' + sn + '_3', '#' + sn + '_9']);
eaCtrl.cm = false;
this.IsLoaded = false;
this.IsHided = true
},
display: function(ii, json) {
var ob = this;
eaCtrl.cm = eaCtrl.cm | false;
if (typeof eaCtrl.lazyLoading == 'undefined') {
eaCtrl.lazyLoading = false
}
if (typeof eaCtrl.sCloseButtonHtml == 'undefined') {
eaCtrl.sCloseButtonHtml = "<img alt='Close Ad' style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>"
}
if (typeof json.settings.interstitial == 'undefined') {
json.settings.interstitial = false
} else {
json.settings.interstitial = json.settings.interstitial || false
}
var sTag = this.makeId(10);
if (json.settings.interstitial) {
if (eaCtrl.cm) {
return
}
}
var ai = eaCtrl.c[ii];
if (eaCtrl.isPreview) {
if (typeof ai.nsettings == 'object') {
json.settings.cols = parseInt(ai.nsettings.cols);
json.settings.rows = parseInt(ai.nsettings.rows);
json.settings.width = parseInt(ai.nsettings.width);
json.settings.height = parseInt(ai.nsettings.height);
if (typeof ai.nsettings.css == 'object') {
json.settings.css = ai.nsettings.css
}
}
var iTotal = json.items.length;
var i = 0;
var cu = json.settings.cols * json.settings.rows;
if (cu > iTotal) {
while (cu > iTotal) {
i = Math.floor(Math.random() * iTotal);
ob = json.items[i];
json.items.push(ob);
iTotal++
}
}
}
var iRows = json.settings.rows;
var iCols = json.settings.cols;
var isBanner = json.adtype == 'banner';
var iWidth = 0;
var cp = 0;
if (isBanner) {
iWidth = parseInt(eaCtrl.getItem(json.settings, 'width', 0));
cp = parseInt(eaCtrl.getItem(json.settings, 'height', 0))
}
if (iWidth > 0 && cp > 0) {
isBanner = true
} else if (json.settings.interstitial) {
iWidth = iCols * 300;
cp = iRows * 120;
isBanner = true
} else {}
var iRow = 0;
var iCol = 0;
var h = '';
var sColdata = '';
var tplItem, tblTbl, tpl_row = '';
var sk = false;
if (!isBanner) {
tplItem = eaCtrl.getItem(ai, 'tpl_item', '<td id="nt_col_' + sTag + '_{rowid}_{colid}" class="nt_flt_item"><span class="title">{title}</span><br><a id="{href_itemid}" href="#">{image}<br/><span class="displayurl">{displayurl}</span></a></td>');
tblTbl = eaCtrl.getItem(ai, 'tpl_body', '<table id="nt_table_' + sTag + '">{body}</table>');
tpl_row = eaCtrl.getItem(ai, 'tpl_row', '<tr id="nt_row_' + sTag + '_{rowid}">{items}</tr>')
} else {
var iw = (iWidth / iCols) - 2;
var ih = (cp / iRows) - 2;
var css = json.settings.css;
if (typeof css.background_color != 'string' || css.background_color == '') {
css.background_color = "#ffffff"
}
if (typeof css.border_color != 'string' || css.border_color == '') {
css.border_color = "#000000"
}
if (typeof css.title_color != 'string' || css.title_color == '') {
css.title_color = "#000000"
}
if (typeof css.text_color != 'string' || css.text_color == '') {
css.text_color = "#000000"
}
if (typeof css.url_color != 'string' || css.url_color == '') {
css.url_color = "#000000"
}
if (typeof css.font_family != 'string' || css.font_family == '') {
css.font_family = "Verdana"
}
if (typeof css.fontsize != 'number' || css.fontsize <= 0) {
css.fontsize = 12
}
if (!json.settings.interstitial) {
tblTbl = '<div style="width:' + iWidth + 'px;height:' + cp + 'px;overflow:hidden;">{body}</div>'
} else {
tblTbl = '<div style="">{body}</div>'
}
var xs = '';
if (!json.settings.interstitial) {
xs = 'float:left;'
} else {
xs = 'display:inline-block;'
}
tplItem = '<div id="nt_col_' + sTag + '_{rowid}_{colid}" style="width:' + iw + 'px;height:' + ih + 'px;overflow:hidden;background-color:' + css.background_color + ';border:1px solid ' + css.border_color + ';border-radius:10px;margin:0px;padding:0px;' + xs + '">';
tplItem += '<div style="font-family:' + css.font_family + ';cursor:pointer;padding:0px;" id="{href_itemid}">';
tplItem += '<div style="float:left">{image}</div>';
if (iw >= 140) {
tplItem += '<div style="padding-right:5px;">';
var xs = 'color:' + css.title_color + ';padding-left:5px;',
xs1 = 'color:' + css.text_color + ';padding-left:5px;',
xs2 = 'color:' + css.url_color + ';padding-left:5px;';
if (ih < 100) {
xs += 'line-height:1.2;';
xs1 += 'line-height:1.2;';
xs2 += 'line-height:1.2;'
}
if (iw < 200) {
xs1 += 'font-size:' + css.fontsize + 'px;padding-top:2px;';
xs2 += ''
} else {
xs1 += 'font-size:' + css.fontsize + 'px;padding-top:5px;';
xs2 += 'display:block;';
tplItem += '<div style="font-size:' + (css.fontsize - 1) + 'px;font-weight:bold;padding-top:5px;' + xs + '" >{title}</div>'
}
tplItem += '<div style="' + xs1 + '">{description}</div>';
tplItem += '<div style="font-size:' + (css.fontsize - 2) + 'px;padding-top:5px;' + xs2 + 'margin-top:auto">{displayurl}</div>';
tplItem += '</div>'
}
tplItem += '</div></div>';
tpl_row = '<div id="nt_row_' + sTag + '_{rowid}" style="display:flex">{items}</div>'
}
var elmName = "";
elmName = "nt_fl_" + ii;
var elementName = elmName;
ob.elementName = elmName;
var floatDif = false;
var al = [];
var sColdata = '';
var bPxAdded = false;
var sImgId = sTag + '_18' + ii + '_12';
var sPx = '<img style="position:absolute;top:-100px" width="0" height="0" id="' + sImgId + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
var iRow = 0;
var cu = iRows * iCols;
var iCnt = 0;
json.items.forEach(function(ad, i) {
iCnt++;
if (iCnt > cu) {
return
}
iCol++;
if (typeof ad.imagepath == 'undefined') {
ad.imagepath = ''
}
var sPath = "";
var f = ad.imagepath;
if (typeof ad.trackingevents != 'undefined') {
ad.trackingevents.forEach(function(e, i) {
sPx += '<img style="position:absolute;top:-100px" width="0" height="0" src="' + e.url + '"/>'
})
}
if (typeof ad.imp_trackingurl != 'undefined' && ad.imp_trackingurl != '') {
sPx += '<img style="position:absolute;top:-100px" width="0" height="0" src="' + ad.imp_trackingurl + '" border="0"/>'
}
var s1 = tplItem;
if (s1.indexOf('href="#"') > 0) {
s1 = s1.replace('href="#"', 'href="javascript:void(0);"')
}
var sId = sTag + 'ntv' + ii + '_' + i;
var sxy = '';
if (isBanner) {
var iw = (iWidth / iCols);
var ih = (cp / iRows) - iRows;
if (ih > 50 && iw >= 150) {
var gw = iw,
gh = ih - 75,
sx = '';
if (iw > ih) {
if (iw > 200) {
gh = ih - 10;
gw = gh - 10;
il = iw - gw;
if (il < 180) {
i = (180 - il) / 2;
gh -= i;
gw -= i
}
sx += 'border-radius:50%;margin:5px;'
}
} else {
if (gh > gw) {
gh = gw
} else {
if (ih > 200) {
gh = ih - 150
}
}
}
var itop = ((ih - gh) / 2) - 5;
sxy = 'style="width:' + gw + 'px;height:' + gh + 'px;' + sx + 'position:relative;top:' + itop + '"'
} else {
sxy = 'style="width:' + iw + 'px;height:' + ih + 'px;border-radius:60%;display:block;margin:-2px"'
}
}
var s = '<img id="' + sId + '_13" src="' + f + '" border="0"' + sxy + '"/>';
s1 = s1.replace('{image}', s);
s1 = s1.replace('{itemid}', i);
s1 = s1.replace('{colid}', iCol);
s1 = s1.replace('{rowid}', iRow);
s1 = s1.replace('{description}', eaCtrl.getItem(ad, 'description', ''));
s1 = s1.replace('{title}', eaCtrl.getItem(ad, 'title', ''));
s1 = s1.replace('{displayurl}', eaCtrl.getItem(ad, 'displayurl', ''));
al.push({
id: sId,
itemid: ii,
i: i,
"img": f,
"rowid": iRow,
"colid": iCol
});
s1 = s1.replace('{href_itemid}', sId);
sColdata += s1;
if (iCol == iCols) {
h += tpl_row.replace('{items}', sColdata).replace('{rowid}', iRow);
sColdata = '';
iCol = 0;
iRow++
}
});
h = tblTbl.replace('{body}', h);
var bExit, Bfound = false;
var exec = function(node, h, sPx, ai, ii, sImgId, json, al) {
var iCnt = 0;
eaCtrl.Tools.html(node, h);
eaCtrl.Tools.append("body", sPx);
var ir = eaCtrl.getItem(ai, 'reloadtime', 0);
if (ir > 0) {
if (ir < 30) {
ir = 30
}
ir = (ir * 1000);
setTimeout(function() {
if (typeof ai.onbeforeReload == "function") {
try {
ai.onbeforeReload(function() {
ob.reload(ii)
})
} catch (_0) {
eaCtrl.i("something went wrong with executing the onbeforeReload function for adtag:" + eaCtrl.getItem(ai, 'name', 'unk'));
eaCtrl.i(_0);
ob.reload(ii)
}
} else {
ob.reload(ii)
}
}, ir)
}
eaCtrl.Tools.getnode("#" + sImgId).addEventListener('load', function() {
if (typeof ai.onload == "function") {
try {
ai.onload(function() {})
} catch (_0) {
eaCtrl.i("something went wrong with executing the onload function for adtag:" + eaCtrl.getItem(ai, 'name', 'unk'))
}
}
json.items.forEach(function(ad, i) {
eaCtrl.ch(ad.hash)
});
eaCtrl.bkLog('view', ii)
});
if (eaCtrl.abDetected) {
var s = ob.makeId(15);
eaCtrl.Tools.attr(node, 'id', s);
ai.display = s
}
al.forEach(function(item, i) {
eaCtrl.Tools.getnode("#" + item.id).addEventListener('click', function() {
var a = json.items[i];
eaCtrl.open(a.destinationurl, function(ok) {
if (ok) {
eaCtrl.o('logclick', 'act=logclick&xref=' + a.hash, 0, {
result: function(a) {}
});
eaCtrl.bkLog('click', ii)
}
}, 0);
return false
});
eaCtrl.Tools.getnode("#" + item.id + '_13').addEventListener('load', function() {
iCnt++;
ob.setpos(sTag, elmName)
});
eaCtrl.Tools.getnode("#" + item.id + '_13').addEventListener('error', function() {
eaCtrl.k(this)
})
})
};
if (json.settings.interstitial) {
var ob = this;
xposcss = '';
eaCtrl.Tools.append('head', '<style id="' + elmName + '_9" type="text/css" media="all">@CHARSET "UTF-8";#' + elmName + ' { font-family: Arial, Helvetica, sans-serif; font-size:' + json.settings.css.fontsize + 'px; ' + xposcss + ' background: #ffffff; border-radius:15px;#000000} #' + elmName + ' a,#' + elmName + ' a:link,#slider strong { text-decoration:none; color: black; font-size:' + json.settings.css.fontsize + 'px; } .nt_flt_item{width:300px;height:270px; overflow:hidden} .nt_flt_item img{width:300px;height:232px} .nt_flt_item::after{content:"";clear:both;display:table} </style>');
var sTag;
eaCtrl.Tools.append('body', '<div id="' + elmName + '_3" style="z-index:5000;top:0px;left:0px;padding:0px;margin:0px;background:#000;opacity: 0.8;filter: alpha(opacity = 80);position:fixed;display:none;width:100%;height:calc(100vh);"></div>');
eaCtrl.Tools.getnode('#' + elmName + '_3').addEventListener('click', function(e) {
ob.hide(elmName)
});
var s = '<div style="position:absolute;z-index:1000000; right:0px; float:right; top:0px;float:right;"><a id="nt_btn_close_' + elmName + '" title="Close Ad">' + eaCtrl.sCloseButtonHtml + '</a></div>';
eaCtrl.Tools.append('body', '<div id="' + elmName + '" style="z-index:100000; padding: 5px; margin:0px;border:2px #000000 solid; border-spacing:1px; background-color:#ffffff; position:fixed;top:calc(50%);left:calc(50%);transform:translate(-50%, -50%); ' + ' text-align: left;display:none ">' + s + '<br><div id="' + elmName + '_1" style="">' + '</div></div>');
eaCtrl.Tools.getnode('#nt_btn_close_' + elmName).addEventListener('click', function(e) {
ob.hide(elmName)
});
var run = function() {
if (ob.IsHided) {
return
}
if (!ob.IsLoaded) {
eaCtrl.cm = true;
var node = eaCtrl.Tools.getnode('#' + elmName + '_1');
ob.IsLoaded = true;
exec(node, h, sPx, ai, ii, sImgId, json, al);
eaCtrl.Tools.show('#' + elmName);
eaCtrl.Tools.show('#' + elmName + "_3");
setTimeout(function() {
ob.setpos(sTag, elmName)
}, 1500);
var fn = function() {
if (ob.IsHided) {
return
}
ob.setpos(sTag, elmName);
window.removeEventListener('resize', fn)
};
window.addEventListener('resize', fn)
}
};
if (eaCtrl.isPreview) {
ob.IsLoaded = false;
run()
} else {
eaCtrl.Tools.on("click", "a", function(e) {
if (ob.IsHided) {
return
}
try {
var phref = e.target.getAttribute("href");
if (phref != null && phref !== '#' && phref !== 'javascript:void(0)') {
run()
}
} catch (_0) {
console.log(_0)
}
})
}
} else {
eaCtrl.Tools.getnodes("#" + ai.display).forEach(function(node, i) {
if (node.getAttribute('run') != '1' || eaCtrl.getItem(ai, 'reload', 0) == 1) {
delete ai.reload;
if (eaCtrl.abDetected) {
eaCtrl.Tools.getnode("#" + ai.display).removeAttribute("style")
}
if (!eaCtrl.Tools.isvisible("#" + ai.display)) {
if (!eaCtrl.abDetected) {
if (eaCtrl.getItem(ai, 'isflt', 0) != 1 && !eaCtrl.isPreview) {
eaCtrl.i("AdTag " + ai.display + " is not visible, abort loading");
bExit = true;
return true
}
} else {
eaCtrl.i("AdTag " + ai.display + " is not visible, probably because the active adblocker")
}
}
eaCtrl.Tools.attr(node, 'run', '1');
if (eaCtrl.lazyLoading && !eaCtrl.isInFold(node) && typeof Waypoint == 'function') {
var waypoint = new Waypoint({
element: node,
handler: function(direction) {
exec(node, h, sPx, ai, ii, sImgId, json, al);
this.destroy()
},
offset: 'bottom-in-view'
})
} else {
exec(node, h, sPx, ai, ii, sImgId, json, al)
}
Bfound = true;
return false
}
});
if (bExit) {
return
}
if (!Bfound) {
eaCtrl.i("Could not find element with id:" + ai.display)
}
}
},
displayFloat: function(ii, json) {
eaCtrl.Tools.append('body', json.html)
},
makeId: function(iMax) {
var t = "";
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < iMax; i++) {
t += s.charAt(Math.floor(Math.random() * s.length))
}
return t
},
};
eaPopn = function() {
this.phwnd = null;
this.url = '';
this.clickHandler = ['body'];
this.ignoreList = [];
this.cookieName = '';
this.isPopunder = false;
this.skipCookie = false;
this.cookieTime = 900;
this.nurls = {};
this.popFired = false;
this.xbtn = false;
this.bjUsed = false;
this.left = 0;
this.p_width = screen.width;
this.p_height = screen.height;
this.top = 0;
this.ii = 0;
this.cbp = false;
this.capSettings = {
repeatAmount: 0,
repeatInterval: 0
};
this.cHash = "";
this.genUrl = function(ai, spaceid) {
var sDomain = "";
var u = "undefined";
if (typeof eaCtrl.ca.ctrl_domain != u && eaCtrl.ca.ctrl_domain != "") {
sDomain = eaCtrl.ca.ctrl_domain
}
var suri = sDomain + '/pop.go?ctrlid=' + eaCtrl.ctrlId + '&spaceid=' + spaceid + eaCtrl.getItem(ai, 'subid', '', true, '&subid=') + '&rnd=' + Math.random() + '&hastouch=' + ('ontouchend' in document);
suri += eaCtrl.getItem(ai, 'keywords', '', true, '&keywords=');
suri += eaCtrl.getItem(ai, 'maincat', '', true, '&maincat=');
suri += eaCtrl.getItem(ai, 'category', '', true, '&category=');
if (eaCtrl.abDetected) {
suri += '&ab=1'
}
if (typeof ai.defaultad == 'object') {
suri += '&foad=' + eaCtrl.encode(JSON.stringify(ai.defaultad))
}
if (typeof ai.rtbext == "object") {
suri += '&rtbext=' + eaCtrl.encode(JSON.stringify(ai.rtbext))
}
suri += '&sh=' + eaCtrl.getItem(screen, 'height', 0);
suri += '&sw=' + eaCtrl.getItem(screen, 'width', 0);
var tm;
try {
tm = new Date().toString().match(/([-\+][0-9]+)\s/)[1]
} catch (_0) {
tm = -1
}
if (tm == null || tm == '') {
tm = -1
}
suri += '&tz=' + tm.replace('+', '');
suri += '&wh=' + eaCtrl.Tools.wh() + '&ww=' + eaCtrl.Tools.ww() + '&dh=' + eaCtrl.Tools.dh() + '&dw=' + eaCtrl.Tools.dw();
suri += '&doc=' + escape(eaCtrl.getItem(document, 'location', ''));
suri += '&ref=' + escape(eaCtrl.getItem(document, 'referrer', ''));
return suri
};
this.canrun = function() {
if (this.skipCookie) {
return true
}
aVar = eaCtrl.getStorage(this.cookieName);
if (aVar == null || typeof aVar == 'undefined' || typeof aVar.repeatCount == 'undefined') {
return true
} else {
if (aVar.repeatCount < this.capSettings.repeatAmount) {
iSec = parseInt(this.capSettings.repeatInterval);
if (typeof aVar.Last != 'undefined' && !isNaN(aVar.Last)) {
i = parseInt(this.jq.now() / 1000);
is = parseInt(aVar.Last + iSec);
if (is < i) {
return true
} else {
eaCtrl.i("Pop need to wait " + (is - i) + " Seconds")
}
} else {
return true
}
} else {
eaCtrl.i("Pop repeat amount of " + this.capSettings.repeatAmount + " Reached")
}
}
return false
};
this.bypass = function() {
if (!this.cbp) {
return false
} else {
try {
if (eaCtrl.Tools.is_chrome() === true) {
var t = Math.round(new Date().getTime() / 1000);
try {
var s = eaCtrl.Tools.fetch_session('get', true)
} catch (e) {
return false
}
var d = t - s.time;
if (s.v < 3 || d < 180) {
return true
} else {
return false
}
} else {
return false
}
} catch (_0) {
return false
}
}
};
this.init = function() {
var ob = this;
ob.initPop()
};
this.cl = function(fn) {
this.phwnd = fn;
this.adPop()
};
this.checkParents = function(aNode, findNode) {
var aParents = eaCtrl.Tools.parents(aNode);
var bFound = false;
aParents.forEach(function(v, i) {
if (v == findNode) {
bFound = true;
return false
}
});
return bFound
};
this.checkChilds = function(aNode, findNode) {
var aChilds = aNode.childNodes;
var bFound = false;
if (aChilds.length > 0) {
aChilds.forEach(function(v, i) {
if (v == findNode) {
bFound = true;
return false
}
})
}
return bFound
};
this.canFire = function(aNode) {
if (!this.canrun()) {
return false
}
var bRet = false;
var ob = this;
var bCheckIgnore = false;
try {
ob.clickHandler.forEach(function(v, i) {
var a = eaCtrl.Tools.getnode(v);
if (a == aNode) {
bRet = true;
bCheckIgnore = true
} else {
var fNodes = eaCtrl.Tools.getnodes(v);
fNodes.forEach(function(fNode, icnt) {
if (fNode == aNode) {
bRet = true;
if (this.xbtn) {
bCheckIgnore = true
}
return false
} else {
if (ob.checkParents(aNode, fNode)) {
bRet = true;
return false
} else if (ob.checkChilds(aNode, fNode)) {
bRet = true;
return false
}
}
})
}
if (bRet) {
return false
}
})
} catch (_0) {}
if (bRet && !bCheckIgnore) {
if (aNode.nodeName == 'HTML') {
bRet = false
} else {
try {
ob.ignoreList.forEach(function(v, i) {
var fNodes = eaCtrl.Tools.getnodes(v);
fNodes.forEach(function(fNode, icnt) {
if (fNode == aNode) {
bRet = false;
return false
} else if (v != 'body' && ob.checkParents(aNode, fNode)) {
bRet = false;
return false
}
});
if (bRet == false) {
return false
}
})
} catch (_0) {}
}
if (!bRet) {
eaCtrl.i("Pop cancelled")
}
}
return bRet
};
this.upDateCookie = function() {
var aVar = eaCtrl.getStorage(this.cookieName);
try {
i = parseInt(eaCtrl.Tools.now() / 1000);
e = 'undefined';
if (aVar == null || typeof aVar == e || typeof aVar.repeatCount == e || typeof aVar.Last == e) {
aVar = {
repeatCount: 0,
Last: i
};
eaCtrl.setStorage(this.cookieName, aVar, this.cookieTime)
} else {
aVar.repeatCount++;
aVar.Last = i;
eaCtrl.setStorage(this.cookieName, aVar, this.cookieTime)
}
} catch (_0) {}
};
this.Pop = function() {
var ob = this;
eaCtrl.Tools.on('click', '*', function(e) {
var a = e.target;
if (eaCtrl.ct == false && ob.canFire(a)) {
if (!ob.skipCookie) {
ob.upDateCookie()
}
eaCtrl.open(ob.url, function(ok) {
if (ok) {
if (ob.cHash != '') {
eaCtrl.ch(ob.hash)
}
eaCtrl.bkLog('view', ob.ii)
}
})
}
})
};
this.Under = function() {
var ob = this;
if (eaCtrl.Gup("nocap") == 1) {
ob.skipCookie = true
}
var c = false;
function r(e, node) {
try {
if (eaCtrl.ct == false && ob.canFire(node)) {
if (ob.bypass()) {
c = false
} else {
eaCtrl.ct = true;
e.preventDefault();
e.stopPropagation();
var uri = window.location.href;
var s = eaCtrl.getItem(node, 'href', '');
if (s != '' && s != '#' && s != 'javascript:void(0)') {
var tg = eaCtrl.getItem(node, 'target', '');
if (tg != '' && tg == '_19') {
window.open(uri, eaCtrl.makeId(10))
}
window.open(s, eaCtrl.makeId(10))
} else {
window.open(uri, eaCtrl.makeId(10))
}
if (!ob.skipCookie) {
ob.upDateCookie()
}
if (ob.cHash != '') {
eaCtrl.ch(ob.cHash)
}
window.location.href = ob.url;
return false
}
}
c = false;
return true
} catch (_0) {
console.log(_0)
}
}
eaCtrl.Tools.on('click', 'a', function(e) {
c = true;
return r(e, e.target)
});
eaCtrl.Tools.on('click', '*', function(e) {
if (!c) {
var el = e.target;
while (el) {
if (el.nodeName == 'A') {
if (!c) {
r(e, el)
}
return
}
el = el.parentNode
}
if (!c) {
r(e, e.target)
}
}
})
};
this.initPop = function() {
if (typeof eaCtrl.ct == 'undefined') {
eaCtrl.ct = false
}
var ai = eaCtrl.c[this.ii];
var id = 0;
if (this.isPopunder) {
id = 2
} else {
if (typeof ai.settings != 'undefined' && typeof ai.settings.displaytype != 'undefined') {
id = ai.settings.displaytype
}
}
if (id == 2) {
this.Under()
} else {
this.Pop()
}
}
};
eaCtrl.pop = {
fired: false,
p_height: screen.availHeight,
p_width: screen.availWidth,
c_name: 'p_chk',
pops: [],
getVersion: function() {
return "6.1"
},
display: function(ii, j, tpItem) {
var u = 'undefined';
var sDomain = "";
if (typeof eaCtrl.ca != u && typeof eaCtrl.ca.ctrl_domain != u && eaCtrl.ca.ctrl_domain != "") {
sDomain = eaCtrl.ca.ctrl_domain
} else {
if (typeof eaCtrl.getSettings == "function") {
var as = eaCtrl.getSettings();
eaCtrl.ca = as;
sDomain = as.ctrl_domain
} else {
console.log("no domain found for pophandler");
return
}
}
if (typeof window.ct == u) {
window.ct = false
}
var cname = this.c_name = 'p_c_' + j.spaceid;
var pop = new eaPopn;
var ai;
if (typeof(tpItem) != u) {
ai = tpItem
} else {
ai = eaCtrl.c[ii];
if (typeof ai.capSettings == 'object') {
pop.capSettings = ai.capSettings;
j.settings.capSettings = pop.capSettings
}
eaCtrl.c[ii].settings = j.settings
}
if (typeof ai.watchChrome == 'boolean') {
pop.cbp = ai.watchChrome
}
pop.cookieTime = (ai.settings['refreshtime']);
if (pop.cookieTime > 0) {
pop.cookieTime = pop.cookieTime / 60
}
if (typeof ai.ignoreTags == 'object' && ai.ignoreTags.length > 0) {
pop.ignoreList = ai.ignoreTags
}
if (typeof ai.clickTags != u && ai.clickTags.length > 0) {
pop.clickHandler = ai.clickTags
} else {
pop.clickHandler = ['body']
}
if (typeof ai.skipCookie != u && ai.skipCookie == true) {
pop.skipCookie = true
}
var purl = '';
if (typeof j.destinationurl == u || j.destinationurl == '') {
pop.url = pop.genUrl(ai, j.spaceid);
purl = pop.url
} else {
pop.url = j.destinationurl;
pop.cHash = j.hash;
purl = sDomain + '/imp.go?xref=' + j.hash
}
if (typeof ai.onReady != u) {
ai.onReady(purl);
return
}
pop.cookieName = cname;
pop.ii = ii;
pop.init()
},
};
eaCtrl.video = {
aPlayers: [],
getVersion: function() {
return "5.2"
},
display: function(ii, json) {
if (typeof eaCtrl.c[ii] == 'undefined') {
console.log("Item " + ii + " dont exists");
return
}
var ai = eaCtrl.c[ii];
if (eaCtrl.getItem(json, 'selling_type', 'unk') == 'own_ad_eactrl') {
var this_action = eaCtrl.c[ii].videoads[json.actionid];
json.video_vasturl = this_action.defaultad.url;
json.isrtb = 0;
json.networkid = 0;
json.ispubad = 1;
json.url = '';
json.adtype = 'video'
}
var c = this;
var sid = ai.playerwrapper;
if (typeof ai.playerid != 'undefined') {
sid = ai.playerid
}
var b = false;
var player = null;
this.aPlayers.forEach(function(v, i) {
if (v.playerid == sid) {
player = c.aPlayers[i];
b = true
}
});
if (!b) {
player = this.videoCtrl();
player.playerid = sid;
player.bi = ii;
player.initPlayer(ai);
this.aPlayers.push(player)
}
if (typeof json.actionid != 'undefined') {
player.addItem(ii, json)
}
return player
},
videoCtrl: function() {
return {
playerid: '',
isSlider: false,
playerWidth: 0,
playerHeight: 0,
player: null,
bi: 0,
bMidRollChecked: false,
playerNode: null,
playerParentNode: null,
aPrerols: [],
aMidRols: [],
aPostRols: [],
playing: false,
ba: '',
vidAdRunning: false,
impLogged: false,
playerPaused: false,
hasPreRoll: false,
prerolvid: {
running: false,
executed: false
},
postrolvid: {
running: false,
executed: false
},
midrolvid: {
running: false,
executed: false
},
currvid: {
bHasPlayList: false,
bOldConfig: false,
iNext: 0,
iCurr: 0,
orgfile: '',
playtime: 0,
orgconfig: null
},
iSkipafter: 5,
iActionId: 0,
sVideoType: '',
currentAd: null,
aActions: [],
bImplogged: false,
bSkipVideoAds: false,
maxLoaderTime: 100000,
IsFromInVideo: false,
isFunction: function(ovar) {
if (typeof ovar != 'undefined' && ovar != null) {
return (typeof ovar)
} else {
return false
}
},
onAdStarted: function(ah) {
eaCtrl.videoAdRunning = true;
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onVideoAdStarted)) {
ai.onVideoAdStarted(ah)
}
},
onAdEnded: function(ah) {
eaCtrl.videoAdRunning = false;
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.videoAdEnded)) {
ai.onVideoAdEnded(ah)
}
},
onVideoAdTimeUpdate: function(stype, currtime, duration) {
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onVideoAdTimeUpdate)) {
ai.onVideoAdTimeUpdate(stype, currtime, duration)
}
},
onTimeUpdate: function(currtime, duration) {
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onTimeUpdate)) {
ai.onTimeUpdate(currtime, duration)
}
},
onEnd: function() {
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onEnd)) {
ai.onEnd()
}
},
onStart: function() {
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onStart)) {
ai.onStart()
}
},
onPause: function() {
var ai = eaCtrl.c[this.bi];
if (this.isFunction(ai.onPause)) {
ai.onPause()
}
},
i: function(txt, clear) {
if (typeof clear != 'undefined' && clear == 1) {}
eaCtrl.Tools.append('#' + this.playerid + '-log', '<div>' + txt + '</div>')
},
isInFullScreenMode: function() {
return false
},
open: function(uri) {
var win = window.open(uri);
setTimeout(function() {
if (!win || win.closed) {
top.location = uri
}
}, 500)
},
Play: function(pl) {
var c = this;
if (c.vidAdRunning) {
return
}
if (!this.isInFullScreenMode()) {
if (c.prerolvid.executed == false && c.prerolvid.running == false) {
if (eaCtrl.iTime > c.maxLoaderTime) {
c.prerolvid.executed = true;
console.log("skipping videoads because to low bandwith");
return
}
this.prerolvid.running = true;
c.aPrerols.forEach(function(v, i) {
if (v.state == 0) {
v.state = 1;
ad = v.data;
if (ad.adtype == 'video') {
eaCtrl.videoAdRunning = true;
c.Pause();
c.prerolvid.running = true;
c.prerolvid.executed = true;
c.handleVideo(v.itemid, ad, 'preroll', v.actionid)
}
}
})
}
} else {
c.prerolvid.executed = true
}
},
swapVideo: function(newfile, bIsVideoAd, stype) {
var ctrl = this;
var u = 'undefined';
ctrl.bImplogged = false;
switch (this.ba) {
case "jwplayer":
if (bIsVideoAd) {
eaCtrl.videoAdRunning = true;
if (this.isFunction(this.player.getConfig)) {
this.currvid.bOldConfig = false;
var config = this.player.getConfig();
this.currvid.orgconfig = this.player.getConfig();
if (typeof this.currvid.orgconfig.nextUp != 'undefined') {
this.currvid.iNext = this.currvid.orgconfig.nextUp.index;
this.currvid.iCurr = (this.currvid.iNext - 1)
}
} else {
if (typeof this.player.config != u) {
this.currvid.bOldConfig = true;
this.currvid.orgconfig = this.player.config
} else {
return
}
}
ctrl.currvid.playtime = this.player.getPosition();
this.player.load({
file: newfile
})
} else {
if (this.currvid.orgconfig != null) {
var p = this.currvid.orgconfig.playlist;
if (p != null && p.length > 0) {
var pitem = null;
var playlist = [];
p.forEach(function(val, no) {
var pl = val.sources[0];
pl.title = val.title;
playlist.push(pl)
});
this.player.load(playlist)
} else {
this.player.load(this.currvid.orgconfig)
}
this.player.play();
if (stype == 'midroll' || stype == 'postroll') {
var bcalled = false;
ctrl.player.onPlay(function() {
if (bcalled) {
return
}
bcalled = true;
ctrl.player.seek(parseInt(ctrl.currvid.playtime))
})
}
eaCtrl.videoAdRunning = false
}
}
break;
case "html5_video":
if (bIsVideoAd) {
this.currvid.orgfile = this.player.currentSrc;
ctrl.currvid.playtime = ctrl.player.currentTime;
this.player.src = newfile;
this.player.load();
this.onAdStarted(stype)
} else {
this.i("Current time:" + this.currvid.playtime);
this.player.src = this.currvid.orgfile;
this.player.load();
this.onAdEnded(stype);
if (this.player.paused && stype == 'preroll') {
this.player.play()
}
if (stype == 'midroll') {
if (ctrl.currvid.playtime > 0) {
function seekTime() {
ctrl.player.removeEventListener("canplay", seekTime);
ctrl.i(stype + " set seektime " + ctrl.currvid.playtime);
ctrl.player.currentTime = (ctrl.currvid.playtime);
ctrl.player.play()
}
ctrl.player.addEventListener("canplay", seekTime)
}
}
if (stype == 'postroll') {
function seekTime() {
ctrl.i(stype + " set seektime " + ctrl.currvid.playtime);
ctrl.player.removeEventListener("canplay", seekTime);
ctrl.player.currentTime = (ctrl.currvid.playtime - 1);
ctrl.player.play()
}
ctrl.player.addEventListener("canplay", seekTime)
}
}
break
}
},
Pause: function() {
switch (this.ba) {
case "html5_video":
case 'jwplayer':
return this.player.pause();
break
}
},
End: function(bforce) {
if (this.vidAdRunning) {
this.endActions(0);
if (this.currvid.bHasPlayList) {}
} else {
this.playing = false;
var ctrl = this;
var bact = false;
if (!this.isInFullScreenMode()) {
if (ctrl.postrolvid.executed == false && ctrl.postrolvid.running == false) {
this.aPostRols.forEach(function(v, i) {
if (v.state == 0) {
v.state = 1;
ad = v.data;
if (ad.adtype == 'video') {
bact = true;
ctrl.postrolvid.executed = true;
if (eaCtrl.iTime > ctrl.maxLoaderTime) {
console.log("skipping videoads because to low bandwith")
} else {
eaCtrl.videoAdRunning = true;
ctrl.postrolvid.running = true;
setTimeout(function() {
ctrl.handleVideo(v.itemid, ad, 'postroll', v.actionid)
}, 0)
}
}
}
})
}
} else {
ctrl.postrolvid.executed = true
}
if (!bact) {
ctrl.onEnd()
} else {}
}
},
bb: function(i, d) {
i = parseInt(i);
d = parseInt(d);
var ctrl = this;
var u = 'undefined';
if (ctrl.vidAdRunning) {
if (ctrl.isInFullScreenMode()) {
ctrl.endActions(1)
}
ctrl.onVideoAdTimeUpdate(ctrl.sVideoType, i, d);
var firtsQuartile = (d / 4);
var midPoint = (d / 2);
var thirdQuartile = (firtsQuartile + midPoint);
if (typeof ctrl.aActions.trackingevents.progress != 'undefined') {
for (a = 0; a < ctrl.aActions.trackingevents.progress.items.length; a++) {
item = ctrl.aActions.trackingevents.progress.items[a];
if (item.done == false) {
if (item.offset <= i) {
ctrl.aActions.trackingevents.progress.items[a].done = true;
var items = [];
items.push(item.url);
ctrl.sendNotifications(items, 'progress')
}
}
}
}
if (i >= firtsQuartile && i < (firtsQuartile + 1)) {
if (typeof ctrl.aActions.trackingevents.firstquartile != u && ctrl.aActions.trackingevents.firstquartile.done == false) {
ctrl.aActions.trackingevents.firstquartile.done = true;
ctrl.sendNotifications(ctrl.aActions.trackingevents.firstquartile.items, 'firstquartile')
}
} else if (i >= midPoint && i < (midPoint + 1)) {
if (typeof ctrl.aActions.trackingevents.midpoint != u && ctrl.aActions.trackingevents.midpoint.done == false) {
ctrl.aActions.trackingevents.midpoint.done = true;
ctrl.sendNotifications(ctrl.aActions.trackingevents.midpoint.items, 'midpoint')
}
} else if (i >= thirdQuartile && i < (thirdQuartile + 1)) {
if (typeof ctrl.aActions.trackingevents.thirdquartile != u && ctrl.aActions.trackingevents.thirdquartile.done == false) {
ctrl.aActions.trackingevents.thirdquartile.done = true;
ctrl.sendNotifications(ctrl.aActions.trackingevents.thirdquartile.items, 'thirdquartile')
}
}
var status_text = ctrl.getStatusTxt();
if (status_text != '') {
eaCtrl.Tools.html('#vid_state_' + ctrl.playerid, status_text.replace('%s', (d - i)))
}
if (i <= ctrl.iSkipafter) {
var is = ctrl.iSkipafter - i;
eaCtrl.Tools.html('#vid_skip' + '_' + ctrl.playerid, "Skip ad in " + is)
} else {
if (!ctrl.bImplogged) {
ctrl.bImplogged = true;
var ai = eaCtrl.c[ctrl.bi].actions[ctrl.iActionId];
ai.data = ctrl.currentAd;
if (typeof ai.data.imp_trackingurl != 'undefined' && ai.data.imp_trackingurl != '') {
var sPx = '<img width="0" height="0" src="' + ai.data.imp_trackingurl + '" border="0"/>';
eaCtrl.Tools.append("body", sPx)
}
ai.plugin = 'video';
eaCtrl.logImp(ctrl.bi, 'video', '', ai);
ctrl.sendNotifications(ctrl.aActions.impression, 'impression');
eaCtrl.Tools.html('#vid_skip' + '_' + ctrl.playerid, '<div class="vid_skip_btn_' + ctrl.playerid + '" id="vid_skip_btn_' + ctrl.playerid + '"></div>');
eaCtrl.Tools.getnode('#vid_skip' + '_' + ctrl.playerid).addEventListener('click', function(e) {
ctrl.endActions(1);
return false
})
}
}
} else {
if (ctrl.hasPreRoll) {
if (ctrl.prerolvid.executed == false) {
console.log("preroll was not executed yet!");
ctrl.Play();
return
}
}
var currtime = i;
var duration = d;
ctrl.onTimeUpdate(i, d);
var ctrl = this;
var midPoint = (d / 2);
if (currtime >= midPoint && currtime <= (midPoint + 10) && ctrl.bMidRollChecked == false) {
this.aMidRols.forEach(function(v, i) {
if (v.state == 0) {
v.state = 1;
ad = v.data;
if (ad.adtype == 'video') {
ctrl.bMidRollChecked = true;
if (!ctrl.isInFullScreenMode()) {
if (ctrl.midrolvid.executed == false && ctrl.midrolvid.running == false) {
ctrl.midrolvid.executed = true;
if (eaCtrl.iTime > ctrl.maxLoaderTime) {
console.log("skipping videoads because to low bandwith")
} else {
eaCtrl.videoAdRunning = true;
ctrl.midrolvid.running = true;
ctrl.Pause();
ctrl.handleVideo(v.itemid, ad, 'midroll', v.actionid)
}
}
} else {
ctrl.midrolvid.executed = true
}
}
}
})
}
if (parseInt(currtime) == parseInt(duration)) {
ctrl.End(1)
}
}
},
bn: function(stype) {
var ctrl = this;
switch (stype) {
case 'preroll':
this.prerolvid.running = false;
break;
case 'midroll':
this.midrolvid.running = false;
break;
case 'postroll':
this.postrolvid.running = false;
break
}
this.swapVideo('', false, stype)
},
initPlayer: function(ai) {
var ctrl = this;
var bl;
var bm;
switch (ai.playertype) {
case "video":
case "html5_video":
ai.playertype = "html5_video";
this.playerNode = eaCtrl.Tools.getnode("#" + this.playerid);
if (typeof ai.player == 'object') {
this.player = ai.player
} else {
this.player = eaCtrl.Tools.find(this.playerNode, 'video')[0];
if (typeof this.player != 'object') {
if (typeof this.playerNode == 'object') {
this.player = this.playerNode
}
}
}
if (typeof this.player == 'undefined') {
console.log("Cannot find a VideoPlayer", this.playerid);
return
}
bl = eaCtrl.Tools.width(this.player[0]);
bm = eaCtrl.Tools.height(this.player[0]);
this.ba = "html5_video";
this.playerParentNode = this.player.parentNode;
ctrl.ba = "html5_video";
ctrl.player.addEventListener("play", function(e) {
try {
ctrl.Play(e);
if (!ctrl.vidAdRunning) {
ctrl.onStart()
}
} catch (_0) {
console.log(_0)
}
});
ctrl.player.addEventListener('timeupdate', function(e) {
var i = parseInt(e.target.currentTime);
var d = parseInt(e.target.duration);
ctrl.bb(i, d)
});
ctrl.player.addEventListener("pause", function(e) {
if (!ctrl.vidAdRunning) {
ctrl.onPause()
}
});
ctrl.player.addEventListener("ended", function(e) {
ctrl.End()
});
break;
case 'jwplayer':
if (typeof ai.player == 'object') {
this.player = ai.player
} else {
this.player = jwplayer(0)
}
this.playerNode = eaCtrl.Tools.getnode("#" + this.playerid);
bl = eaCtrl.Tools.width(this.playerNode);
bm = eaCtrl.Tools.height(this.playerNode);
ctrl.ba = "jwplayer";
ctrl.playerParentNode = ctrl.playerNode;
ctrl.player.onPlay(function(e) {
ctrl.Play(e);
if (!ctrl.vidAdRunning) {
ctrl.onStart()
}
});
ctrl.player.onBuffer(function(e) {});
ctrl.player.onPause(function() {
if (!ctrl.vidAdRunning) {
ctrl.onPause()
}
});
ctrl.player.onTime(function(e) {
ctrl.bb(e.position, e.duration)
});
ctrl.player.onComplete(function() {
ctrl.End()
});
break;
default:
console.log("unknown or unsupported playertype:" + ai.playertype);
return;
break
}
var s = '<div style="display:none;width:' + bl + 'px;height:' + bm + 'px;" class="vid_wrapper_' + ctrl.playerid + '" id="vid_wrapper_' + ctrl.playerid + '"></div>';
switch (this.ba) {
case 'jwplayer':
case 'html5_video':
eaCtrl.Tools.append(this.playerNode, s);
break;
default:
break
}
eaCtrl.Tools.append('body', '<div id="notifications_' + ctrl.playerid + '"></div>');
ctrl.playerWidth = bl;
ctrl.playerHeight = bm;
ctrl.i("player:" + bl + 'x' + bm)
},
sendNotifications: function(e, idval) {
var c = this;
e.forEach(function(v, i) {
if (typeof v == 'string' && v != '') {
eaCtrl.Tools.append('#notifications_' + c.playerid, '<img act="' + idval + '" src="' + v + '" border="0" width="0" height="0"/>')
}
})
},
AddCaption: function(caption_text) {
var s = '<div id="vid_caption_' + this.playerid + '" class="vid_caption">' + caption_text + '</div>';
eaCtrl.Tools.prepend('#vid_wrapper_' + this.playerid, s);
var sLeft = (eaCtrl.Tools.width('#vid_wrapper_' + this.playerid) / 2) - (eaCtrl.Tools.width('#vid_caption_' + this.playerid) / 2);
eaCtrl.Tools.css('#vid_caption_' + this.playerid, {
left: sLeft + 'px'
})
},
RemoveCaption: function() {
eaCtrl.Tools.remove('#vid_caption_' + this.playerid)
},
addItem: function(ii, json) {
var ai = eaCtrl.c[ii].actions[json.actionid];
switch (ai.type) {
case 'preroll':
this.aPrerols.push({
actionid: json.actionid,
itemid: ii,
state: 0,
data: json
});
this.hasPreRoll = true;
break;
case 'midroll':
this.aMidRols.push({
actionid: json.actionid,
itemid: ii,
state: 0,
data: json
});
break;
case 'postroll':
this.aPostRols.push({
actionid: json.actionid,
itemid: ii,
state: 0,
data: json
});
if (typeof ai.invideo != 'undefined' && ai.invideo == 1) {
if (!this.playing);
this.End(1)
}
break
}
},
getStatusTxt: function() {
var ai = eaCtrl.c[this.bi].actions[this.iActionId];
var state = null;
var status_text = 'Video will be displayed in %s';
if (typeof ai.status_txt == 'object') {
state = ai.status_txt
}
var dsp = 1;
if (state != null) {
var dsp = eaCtrl.getItem(state, 'display', 0);
if (dsp == 1) {
status_text = eaCtrl.getItem(state, 'txt', status_text)
}
}
if (dsp == 0) {
status_text = ''
}
return status_text
},
getCaptionText: function() {
var ai = eaCtrl.c[this.bi].actions[this.iActionId];
var txt = "Advertisement";
if (typeof ai.caption == 'object') {
if (eaCtrl.getItem(ai.caption, 'display', 0) == 0) {
txt = ''
} else {
txt = eaCtrl.getItem(ai.caption, 'txt', txt)
}
}
return txt
},
reposWrapper: function() {},
AddClickthrough: function(ii, ad, aActions) {
var c = this;
var video_player = c.player;
eaCtrl.Tools.remove('#click_' + this.playerid);
var s = '<div id="click_' + this.playerid + '" style="position:absolute;z-index:100;cursor:pointer;left:0px;top:0px;width:calc(100%);height:calc(100%);"></div>';
eaCtrl.Tools.append('#vid_wrapper_' + this.playerid, s);
eaCtrl.Tools.getnode('#click_' + this.playerid).addEventListener('click', function(event) {
event.stopImmediatePropagation();
var url = '';
url = eaCtrl.getItem(ad, 'destinationurl', '');
if (aActions.clickthrough_url != '') {
url = aActions.clickthrough_url
}
if (url != '') {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
})
} else {
console.log("no video clickurl????");
return
}
if (aActions.clickthrough_tracking != '') {
var arr = [];
arr.push(aActions.clickthrough_tracking);
c.sendNotifications(arr, 'clicktrack')
}
c.open(url);
var ai = eaCtrl.c[c.bi].actions[c.iActionId];
ai.data = ad;
ai.plugin = 'video';
eaCtrl.bkLog('click', ii, {
isiframe: 0
}, ai);
return false
})
},
endActions: function(state) {
var c = this;
var u = 'undefined';
if (state == 1) {
c.player.pause();
if (typeof c.aActions.trackingevents.skip != u) {
c.sendNotifications(c.aActions.trackingevents.skip.items, 'skip')
}
} else {
if (state == 0) {
if (typeof c.aActions.trackingevents.complete != u) {
c.sendNotifications(c.aActions.trackingevents.complete.items, 'complete')
}
}
}
eaCtrl.Tools.remove('#click_' + c.playerid);
eaCtrl.Tools.hide('#vid_wrapper_' + c.playerid);
c.vidAdRunning = false;
c.bn(c.sVideoType);
eaCtrl.Tools.remove('#vid_clickt_' + c.playerid);
c.RemoveCaption();
eaCtrl.Tools.remove('#vid_skip_' + c.playerid);
eaCtrl.Tools.remove('#vid_state_' + c.playerid);
setTimeout(function() {
eaCtrl.Tools.remove("#notifications_" + c.playerid)
}, 1000)
},
LoadActions: function(ad, cb) {
var c = this;
var aActions = c.defaultActions();
if (typeof ad.video_vasturl != 'undefined' && ad.video_vasturl != '') {
c.LoadXml(ad.video_vasturl, function(XmlObj) {
c.ParseVastFile(XmlObj, aActions, function(aActions) {
cb(aActions)
})
})
} else if (typeof ad.video_vastxml != 'undefined' && ad.video_vastxml != '') {
var parseXml;
if (typeof window.DOMParser != "undefined") {
parseXml = function(xmlStr) {
return new window.DOMParser().parseFromString(xmlStr, "text/xml")
}
} else if (typeof window.ActiveXObject != "undefined" && new window.ActiveXObject("Microsoft.XMLDOM")) {
parseXml = function(xmlStr) {
var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = "false";
xmlDoc.loadXML(xmlStr);
return xmlDoc
}
} else {
return
}
XmlObj = parseXml(ad.video_vastxml);
c.ParseVastFile(XmlObj, aActions, function(aActions) {
cb(aActions)
})
} else {
cb(aActions)
}
},
handleVideo: function(ii, ad, stype, actionid) {
if (this.isInFullScreenMode()) {
return
}
var c = this;
c.LoadActions(ad, function(aActions) {
var file = "";
var u = 'undefined';
if (typeof aActions != u && typeof aActions.mediafile != u && aActions.mediafile != '') {
file = aActions.mediafile
} else {
if (typeof ad != u && typeof ad.video_url != u && ad.video_url != "") {
file = ad.video_url
}
}
c.aActions = aActions;
if (file == null || file == '') {
eaCtrl.i("something went wrong, no videofile available for:" + stype);
c.player.play();
return
}
c.iActionId = actionid;
c.sVideoType = stype;
c.bi = ii;
c.currentAd = ad;
c.vidAdRunning = true;
var u = 'undefined';
var ai = eaCtrl.c[ii].actions[actionid];
var bs = false;
var impLogged = false;
var vDuration = 0;
var aActions = c.aActions;
if (typeof c.aActions.trackingevents.creativeview != u) {
c.sendNotifications(c.aActions.trackingevents.creativeview.items, 'createview')
}
var icap = parseInt(eaCtrl.getItem(ai, 'capping', 0));
if (icap > 0) {
var scap = 'video_cap_' + ai.type;
eaCtrl.setStorage(scap, 1, icap)
}
if (typeof aActions.trackingevents.start != u) {
c.sendNotifications(aActions.trackingevents.start.items, 'start')
}
eaCtrl.Tools.show('#vid_wrapper_' + c.playerid);
eaCtrl.Tools.css('#vid_wrapper_' + c.playerid, {
'z-index': 100000,
top: '0px',
left: '0px',
height: 'calc(100%)',
width: 'calc(100%)'
});
c.swapVideo(file, true, stype);
var s = '<div class="vid_skip" id="vid_skip' + '_' + c.playerid + '"></div>';
eaCtrl.Tools.append('#vid_wrapper_' + c.playerid, s);
if (c.getStatusTxt() != '') {
var s = '<div class="vid_state" id="vid_state' + '_' + c.playerid + '"></div>';
eaCtrl.Tools.append('#vid_wrapper_' + c.playerid, s)
}
c.AddClickthrough(ii, ad, aActions);
var s = c.getCaptionText();
if (s != '') {
c.AddCaption(s)
}
c.player.play()
})
},
defaultActions: function() {
return {
impression: [],
mediafile: '',
clickthrough_url: '',
clickthrough_tracking: '',
duration: 0,
trackingevents: {}
}
},
LoadXml: function(vast_url, cb) {
var xmlHttpReq;
if (window.XMLHttpRequest) {
xmlHttpReq = new XMLHttpRequest()
} else {
xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP")
}
xmlHttpReq.onload = function() {
cb(xmlHttpReq.responseXML)
};
xmlHttpReq.open("GET", vast_url);
xmlHttpReq.send()
},
ParseVastFile: function(xmlDoc, obj_vast, cb) {
var xmlHttpReq;
var ob = this;
if (typeof xmlDoc == 'undefined') {
var xmlDoc
}
if (obj_vast == null || typeof obj_vast == 'undefined') {
var obj_vast = new this.defaultActions()
}
if (xmlDoc == null) {
return obj_vast
}
var impression = xmlDoc.getElementsByTagName("Impression");
for (var i = 0; i < impression.length; i++) {
var s = impression[i].firstChild.nodeValue;
if (s != '') {
obj_vast.impression.push(s)
}
}
var creative = xmlDoc.getElementsByTagName("Creative");
var media_files;
var tracking_events;
var vasttagaduri = [];
var tmp = xmlDoc.getElementsByTagName("VASTAdTagURI");
for (var i = 0; i < tmp.length; i++) {
var s = tmp[i].firstChild.nodeValue;
if (s != '') {
vasttagaduri.push(s)
}
}
for (var i = 0; i < creative.length; i++) {
var creative_linear = creative[i].getElementsByTagName("Linear");
if (creative_linear != null) {
for (var j = 0; j < creative_linear.length; j++) {
var creative_linear_mediafiles = creative_linear[j].getElementsByTagName("MediaFiles");
if (creative_linear_mediafiles != null) {
for (var k = 0; k < creative_linear_mediafiles.length; k++) {
var creative_linear_mediafiles_mediafile = creative_linear_mediafiles[k].getElementsByTagName("MediaFile");
if (creative_linear_mediafiles_mediafile != null) {
media_files = creative_linear_mediafiles_mediafile
}
}
} else {
console.log("no media files")
}
var videoclicks = creative_linear[j].getElementsByTagName("VideoClicks");
if (videoclicks != null) {
for (var k = 0; k < videoclicks.length; k++) {
var cq = null;
try {
if (typeof videoclicks[k].getElementsByTagName("ClickThrough") != 'undefined') {
cq = videoclicks[k].getElementsByTagName("ClickThrough")[0].childNodes[0].nodeValue
}
} catch (_0) {
cq = null
}
var cp = null;
try {
if (typeof videoclicks[k].getElementsByTagName("ClickTracking") != 'undefined') {
var cp = videoclicks[k].getElementsByTagName("ClickTracking")[0].childNodes[0].nodeValue
}
} catch (_0) {}
if (cq != null) {
obj_vast.clickthrough_url = cq
}
if (cp != null) {
obj_vast.clickthrough_tracking = cp
}
}
}
var cs = creative_linear[j].getElementsByTagName("TrackingEvents");
if (cs != null) {
for (var k = 0; k < cs.length; k++) {
var co = cs[k].getElementsByTagName("Tracking");
if (co != null) {
tracking_events = co
}
}
}
var cr = creative_linear[j].getElementsByTagName("Duration")[0];
if (cr != null) {
obj_vast.duration = cr.childNodes[0].nodeValue;
var arrD = obj_vast.duration.split(':');
var strSecs = (+arrD[0]) * 60 * 60 + (+arrD[1]) * 60 + (+arrD[2]);
obj_vast.duration = strSecs
}
}
}
}
if (media_files != null) {
for (var i = 0; i < media_files.length; i++) {
switch (media_files[i].childNodes[0].parentElement.attributes.type.nodeValue) {
case 'video/mp4':
obj_vast.mediafile = media_files[i].childNodes[0].nodeValue;
break;
case 'application/javascript':
break;
default:
if (obj_vast.mediafile == "") {
obj_vast.mediafile = media_files[i].childNodes[0].nodeValue
}
break
}
}
}
if (tracking_events != null) {
for (var i = 0; i < tracking_events.length; i++) {
var event = tracking_events[i].getAttribute('event');
var val = tracking_events[i].childNodes[0].nodeValue;
if (event != '' && val != '') {
event = event.toLowerCase();
if (typeof obj_vast.trackingevents[event] == 'undefined') {
obj_vast.trackingevents[event] = {
done: false,
items: []
}
}
if (event == "progress") {
var offset = (tracking_events[i].childNodes[0].parentElement.getAttribute("offset"));
a = offset.split(":");
if (a.length == 3) {
iSeconds = parseInt(a[2]);
obj_vast.trackingevents[event].items.push({
"url": val,
"offset": iSeconds,
done: false
})
}
} else {
obj_vast.trackingevents[event].items.push(val)
}
}
}
}
if (vasttagaduri.length > 0) {
ob.LoadXml(vasttagaduri[0], function(xmlDoc) {
ob.ParseVastFile(xmlDoc, obj_vast, function(obj_vast) {
cb(obj_vast)
})
})
} else {
cb(obj_vast)
}
},
}
}
};
eaCtrl.videoslider = {
aProcs: [],
ctrlName: 'videoslider',
display: function(ii, q) {
if (eaCtrl.abDetected) {
return
}
var ob = this;
eaCtrl.cm = eaCtrl.cm | false;
eaCtrl.cn = eaCtrl.cn | false;
ob.aProcs[ii] = new ob.proc();
if (ob.aProcs[ii].init(ii, q.settings)) {
function dc() {
ob.aProcs[ii].dc(ii, q)
}
if (ob.aProcs[ii].interStitial && !eaCtrl.isPreview) {
eaCtrl.Tools.on("click", "a", function(e) {
var phref = e.target.getAttribute("href");
if (typeof phref == 'undefined') {
phref = '#'
}
if (phref != null && phref !== '#' && phref !== 'javascript:void(0)') {
if (!ob.aProcs[ii].IsLoaded) {
eaCtrl.cm = true;
ob.aProcs[ii].IsLoaded = true;
dc()
}
}
})
} else {
dc()
}
}
},
getVersion: function() {
return "1.7"
},
proc: function() {
return {
Video: null,
skipreload: false,
reload: false,
reloadTime: 30,
popsid: 0,
cl: false,
interStitial: false,
IsLoaded: false,
bi: 0,
aSet: null,
sTag: "im_video",
hide: function() {
var t = this;
t.reload = false;
eaCtrl.Tools.html('#' + t.sTag + '_4', '');
eaCtrl.Tools.remove(['#' + t.sTag, '#' + t.sTag + '_9', '#' + t.sTag + '_3']);
if (t.interStitial) {
eaCtrl.cn = true;
eaCtrl.cm = false
}
},
dc: function(ii, json) {
var o = this;
var u = 'undefined';
if (o.bi == 0) {
o.bi = ii
} else {
if (o.bi != ii) {
eaCtrl.i("Videoslider plugin got called more than one time, will be ignored");
return
}
}
o.aSet.interstitial = o.aSet.interstitial || false;
if (o.aSet.interstitial) {
o.aSet.width = 'calc(100%)';
o.aSet.height = 'calc(100vh -1px)'
} else {
o.aSet.width = (o.aSet.width | '420') + 'px';
o.aSet.height = (o.aSet.height | '240') + 'px';
var iSw = document.body.clientWidth;
if (iSw > 0 && iSw < 600) {
o.aSet.width = '330px';
o.aSet.height = '210px'
}
}
if (typeof(o.aSet.position) != u) {
if (o.aSet.position == 'bottom_right') {
document.getElementById(o.sTag).style.marginLeft = "-" + (o.aSet.width / 2) + "px"
}
}
eaCtrl.ad(-1, 'video', function() {
var u = 'undefined';
var ad = json;
var pl = eaCtrl.video.videoCtrl();
this.Video = pl;
pl.isSlider = true;
pl.bi = ii;
pl.iActionId = 0;
pl.playerid = o.sTag + '_1';
pl.playerNode = eaCtrl.Tools.getnode("#" + pl.playerid);
var bl = o.aSet.width;
var bm = o.aSet.height;
pl.LoadActions(json, function(aActions) {
var file = "";
if (typeof aActions != u && typeof aActions.mediafile != u && aActions.mediafile != '') {
file = aActions.mediafile
} else {
if (typeof ad != u && typeof ad.video_url != u && ad.video_url != "") {
file = ad.video_url
}
}
if (file == '') {
var ai = eaCtrl.c[ii];
ai.data = json;
ai.plugin = 'videoslider';
eaCtrl.logImp(pl.bi, 'video', '', ai);
pl.sendNotifications(aActions.impression, 'impression');
o.hide();
return
}
eaCtrl.Tools.append('body', '<div id="notifications_' + pl.playerid + '"></div>');
eaCtrl.Tools.append(pl.playerNode, '<video id="' + o.sTag + '_4" style="width:' + bl + ';height:' + bm + ';" muted="muted" preload="auto" src="' + file + '" autoplay webkit-playsinline playsinline></video>');
eaCtrl.Tools.slideUp('#' + o.sTag, 1000, function() {
pl.player = eaCtrl.Tools.getnode("#" + o.sTag + '_4');
eaCtrl.Tools.remove('click_' + pl.playerid);
var s = '<div id="click_' + pl.playerid + '" style="position:absolute;z-index:1000;cursor:pointer;left:0px;top:30px;width:100%;height:100%"></div>';
eaCtrl.Tools.append(pl.playerNode, s);
eaCtrl.Tools.getnode('#click_' + pl.playerid).addEventListener('click', function(e) {
e.stopImmediatePropagation();
var url = '';
url = eaCtrl.getItem(ad, 'destinationurl', '');
if (aActions.clickthrough_url != '') {
url = aActions.clickthrough_url
}
if (url != '') {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
})
} else {
return
}
if (aActions.clickthrough_tracking != '') {
var arr = [];
arr.push(aActions.clickthrough_tracking);
pl.sendNotifications(arr, 'clicktrack')
}
pl.open(url);
var ai = eaCtrl.c[ii];
ai.data = ad;
ai.plugin = 'videoslider';
eaCtrl.bkLog('click', ii, {
isiframe: 0
}, ai);
return false
});
pl.player.addEventListener('timeupdate', function(e) {
var i = parseInt(e.target.currentTime);
var d = parseInt(e.target.duration);
var firtsQuartile = (d / 4);
var midPoint = (d / 2);
var thirdQuartile = (firtsQuartile + midPoint);
if (typeof aActions.trackingevents.start != u && aActions.trackingevents.start.done == false) {
aActions.trackingevents.start.done = true;
pl.sendNotifications(aActions.trackingevents.start.items, 'start')
}
if (typeof aActions.trackingevents.progress != u) {
for (a = 0; a < aActions.trackingevents.progress.items.length; a++) {
item = aActions.trackingevents.progress.items[a];
if (item.done == false) {
if (item.offset <= i) {
aActions.trackingevents.progress.items[a].done = true;
var items = [];
items.push(item.url);
pl.sendNotifications(items, 'progress')
}
}
}
}
if (i >= firtsQuartile && i < (firtsQuartile + 1)) {
if (typeof aActions.trackingevents.firstquartile != u && aActions.trackingevents.firstquartile.done == false) {
aActions.trackingevents.firstquartile.done = true;
pl.sendNotifications(aActions.trackingevents.firstquartile.items, 'firstquartile')
}
} else if (i >= midPoint && i < (midPoint + 1)) {
if (typeof aActions.trackingevents.midpoint != u && aActions.trackingevents.midpoint.done == false) {
aActions.trackingevents.midpoint.done = true;
pl.sendNotifications(aActions.trackingevents.midpoint.items, 'midpoint')
}
} else if (i >= thirdQuartile && i < (thirdQuartile + 1)) {
if (typeof aActions.trackingevents.thirdquartile != u && aActions.trackingevents.thirdquartile.done == false) {
aActions.trackingevents.thirdquartile.done = true;
pl.sendNotifications(aActions.trackingevents.thirdquartile.items, 'thirdquartile')
}
}
if (i <= 10) {
if (i >= 5) {
if (!pl.bImplogged) {
pl.bImplogged = true;
var ai = eaCtrl.c[ii];
ai.data = json;
ai.plugin = 'videoslider';
eaCtrl.logImp(pl.bi, 'video', '', ai);
pl.sendNotifications(aActions.impression, 'impression');
eaCtrl.Tools.hide("#close_videoslider_" + ii + "_10");
eaCtrl.Tools.show("#btn_close_videoslider_" + ii);
if (typeof json.imp_trackingurl != 'undefined' && json.imp_trackingurl != '') {
var sPx = '<img width="0" height="0" src="' + json.imp_trackingurl + '" border="0"/>';
eaCtrl.Tools.append("body", sPx)
}
}
} else {
eaCtrl.Tools.html("#close_videoslider_" + ii + "_10", "Skip over " + (5 - i))
}
}
});
pl.player.addEventListener("ended", function(e) {
if (typeof aActions.trackingevents.complete != u) {
pl.sendNotifications(aActions.trackingevents.complete.items, 'complete')
}
setTimeout(function() {
eaCtrl.Tools.slideDown('#' + o.sTag, 1000, function() {
o.hide()
})
}, 2000)
})
})
})
})
},
init: function(ii, aSett) {
var ob = this;
ob.bi = ii;
ob.sTag = "vl_" + ii;
ob.interStitial = aSett.interstitial || false;
if (ob.interStitial) {
if (eaCtrl.cm || eaCtrl.cn) {
return false
}
}
if (this.cl) {
return
}
this.cl = true;
var xposcss = 'right:10px;z-index:1000;';
var xposshcss = 'float:right;';
if (typeof(aSett.position) != 'undefined') {
if (aSett.position == 'bottom_left') {
xposcss = 'left:5px;';
xposshcss = 'float:left;'
} else if (aSett.position == 'bottom_center') {
xposcss = 'left:50%;margin-left:-' + (aSett.width / 2) + 'px;'
}
}
if (ob.interStitial) {
aSett.display = aSett.display || 'fullscreen';
xposcss = 'position:fixed;top:calc(50%);left:calc(50%);transform:translate(-50%, -50%);';
if (aSett.display == 'fullscreen') {
xposcss = 'position:fixed;top:0px;left:0px;width:calc(100%);height:calc(100%);z-index:10000'
}
xposshcss = ''
}
var cpos = "fixed";
try {
cpos = (document.compatMode == 'CSS1Compat') ? "fixed" : "absolute";
var browser = navigator.appName;
var version = parseFloat(navigator.appVersion.split("MSIE")[1]);
if (browser == "Microsoft Internet Explorer" && version <= 6) {
cpos = "absolute"
}
} catch (_0) {};
if (typeof eaCtrl.sCloseButtonHtml == 'undefined') {
eaCtrl.sCloseButtonHtml = "<img alt='Close Ad' style='background:#ffffff;border-radius: 50%;margin:2px' width='24' height='24' src='data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPg0KPHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgNDk2IDQ5NiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDk2IDQ5NjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPGc+DQoJCTxnPg0KCQkJPHBhdGggZD0iTTI0OCwwQzExMS4wMzMsMCwwLDExMS4wMzMsMCwyNDhzMTExLjAzMywyNDgsMjQ4LDI0OHMyNDgtMTExLjAzMywyNDgtMjQ4QzQ5NS44NDEsMTExLjA5OSwzODQuOTAxLDAuMTU5LDI0OCwweg0KCQkJCSBNMjQ4LDQ4MEMxMTkuODcsNDgwLDE2LDM3Ni4xMywxNiwyNDhTMTE5Ljg3LDE2LDI0OCwxNnMyMzIsMTAzLjg3LDIzMiwyMzJDNDc5Ljg1OSwzNzYuMDcyLDM3Ni4wNzIsNDc5Ljg1OSwyNDgsNDgweiIvPg0KCQkJPHBhdGggZD0iTTM2MS4xMzYsMTM0Ljg2NGMtMy4xMjQtMy4xMjMtOC4xODgtMy4xMjMtMTEuMzEyLDBMMjQ4LDIzNi42ODhMMTQ2LjE3NiwxMzQuODY0Yy0zLjA2OS0zLjE3OC04LjEzNC0zLjI2Ni0xMS4zMTItMC4xOTcNCgkJCQljLTMuMTc4LDMuMDY5LTMuMjY2LDguMTM0LTAuMTk3LDExLjMxMmMwLjA2NCwwLjA2NywwLjEzLDAuMTMyLDAuMTk3LDAuMTk3TDIzNi42ODgsMjQ4TDEzNC44NjQsMzQ5LjgyNA0KCQkJCWMtMy4xNzgsMy4wNy0zLjI2Niw4LjEzNC0wLjE5NiwxMS4zMTJjMy4wNywzLjE3OCw4LjEzNCwzLjI2NiwxMS4zMTIsMC4xOTZjMC4wNjctMC4wNjQsMC4xMzItMC4xMywwLjE5Ni0wLjE5NkwyNDgsMjU5LjMxMg0KCQkJCWwxMDEuODI0LDEwMS44MjRjMy4xNzgsMy4wNyw4LjI0MiwyLjk4MiwxMS4zMTItMC4xOTZjMi45OTUtMy4xLDIuOTk1LTguMDE2LDAtMTEuMTE2TDI1OS4zMTIsMjQ4bDEwMS44MjQtMTAxLjgyNA0KCQkJCUMzNjQuMjU5LDE0My4wNTIsMzY0LjI1OSwxMzcuOTg4LDM2MS4xMzYsMTM0Ljg2NHoiLz4NCgkJPC9nPg0KCTwvZz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjxnPg0KPC9nPg0KPGc+DQo8L2c+DQo8Zz4NCjwvZz4NCjwvc3ZnPg0K'/>"
}
eaCtrl.Tools.remove("[id^=" + this.sTag + "]");
eaCtrl.Tools.append('head', '<style type="text/css" id="' + this.sTag + '_9"> #' + this.sTag + ' { font-family: Arial, Helvetica, sans-serif; font-size:12px; ' + xposcss + ' background: #000000; border-top-right-radius: 5px; border-top-left-radius: 5px; box-shadow: 2px 2px 2px #000000; ' + 'z-index:5000; padding: 0px; margin:0px; border:1px #000000 solid; border-spacing:1px; background-color:#000000; position: ' + cpos + '; ' + xposcss + xposshcss + ' bottom: 0px; text-align: left;' + (eaCtrl.abDetected ? '' : 'display:none;') + '} #' + this.sTag + ' a,#' + this.sTag + ' a:link,#slider strong { text-decoration:none; color: black; font-size:12px; } ' + '#btn_close_videoslider_' + ii + '{float: right; cursor: pointer} ' + '#close_videoslider_' + ii + '_10{float: right;color:#ffffff; font-size:13px;padding-top:2px; padding-right:5px;margin: 2px} ' + '</style>');
if (aSett.interstitial) {
eaCtrl.Tools.append('body', '<div id="' + this.sTag + '_3" style="z-index:5000;top:0px;left:0px;padding:0px;margin:0px;background:#000;opacity: 0.8;filter: alpha(opacity = 80);position:fixed;display:none;width:100%;height:calc(100vh);"></div>');
eaCtrl.Tools.on('#' + this.sTag, 'click', function(e) {
ob.hide()
});
zindex = '6000'
}
eaCtrl.Tools.append('body', '<div id="' + this.sTag + '" onmouseover="eaCtrl.videoslider.skipreload=true;" onmouseout="eaCtrl.videoslider.skipreload=false;">' + '<div id="btn_close_videoslider_' + ii + '" style="display:none;">' + eaCtrl.sCloseButtonHtml + '</div>' + '<div id="close_videoslider_' + ii + '_10"></div>' + '<div id="' + this.sTag + '_1">' + '</div></div>');
var btn = eaCtrl.Tools.getnode('#btn_close_videoslider_' + ii);
btn.addEventListener('click', function() {
ob.hide()
});
btndiv = 'btn_close_videoslider_' + ii;
if (typeof(aSett.reloadtime) != 'undefined') {
var rtime = parseInt(aSett.reloadtime);
if (rtime > 0) {
if (rtime < 5) {
rtime = 5
}
this.reloadTime = (rtime * 1000);
this.reload = true
}
}
this.aSet = aSett;
try {
if (aSett.closepop.id > 0) {
var ob = this;
var ai = eaCtrl.c[ii];
eaCtrl.ad(-1, "pop", function() {
cbTestVdSlider = function() {
if (typeof eaPopn != 'undefined') {
var p = new eaPopn;
p.isPopunder = false;
p.url = p.genUrl(ai, aSett.closepop.id);
p.cookieTime = aSett.closepop.cap;
p.clickHandler = ["#" + btndiv];
p.ignoreList = [];
p.cookieName = 'popcap_' + ob.aSet.closepop.id;
p.xbtn = true;
ob.aPop = p;
if (p.canrun()) {
p.init()
}
} else {
setTimeout("cbTestVdSlider()", 500)
}
};
cbTestVdSlider()
})
}
} catch (e) {};
return true
},
}
},
};
eaCtrl.tabs = {
sTag: "",
getVersion: function() {
return "1.1"
},
display: function(ii, ad) {
var Bf = false;
var ai = eaCtrl.c[ii];
var ob = this;
eaCtrl.Tools.getnodes("#" + ai.display).forEach(function(node, i) {
if (node.getAttribute('run') != '1') {
if (ob.sTag == '') {
var i = Math.floor((Math.random() * 20) + 1);
ob.sTag = eaCtrl.makeId(i)
}
eaCtrl.Tools.attr(node, 'run', '1');
var h = '<a id="' + ob.sTag + 'u' + ii + '" href="#" rel="nofollow">' + ad.title + '</a>';
h += '<img width="0" height="0" id="' + ob.sTag + ii + '_12" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
eaCtrl.Tools.html(node, h);
eaCtrl.Tools.getnode("#" + ob.sTag + "u" + ii).addEventListener('click', function(event) {
event.stopImmediatePropagation();
var url = eaCtrl.getItem(ad, 'destinationurl', '');
eaCtrl.open(url, function(ok) {
if (ok) {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
});
eaCtrl.bkLog('click', ii)
}
});
return false
});
eaCtrl.Tools.getnode("#" + ob.sTag + ii + '_12').addEventListener('load', function() {
eaCtrl.ch(ad.hash);
eaCtrl.bkLog('view', ii)
});
Bf = true;
return false
}
});
if (!Bf) {
console.log("cannot find tab node with id " + ai.display)
}
}
};
eaCtrl.dyn_banner = {
getVersion: function() {
return "1.0"
},
display: function(ii, json) {
eaCtrl.ad(-1, "banner", function() {
json.settings.isdynamic = 1;
eaCtrl.banner.display(ii, json)
})
}
};
eaCtrl.native_bar = {
getVersion: function() {
return "1.5"
},
aFlt: [],
display: function(ii, json) {
this.aFlt[ii] = new this.float(ii, json);
this.aFlt[ii].init();
this.aFlt[ii].run()
},
float: function(ii, json) {
return {
sTag: "",
settings: {},
imgHwd: [],
removedItems: 0,
ii: ii,
json: json,
clear: function() {
eaCtrl.Tools.remove("#" + this.sTag);
eaCtrl.Tools.remove("#css_" + ii)
},
setpos: function() {
var ob = this;
var dh = eaCtrl.Tools.height('#' + ob.sTag);
var wh = eaCtrl.Tools.height(window);
if (dh > wh) {
eaCtrl.Tools.getnodes('[id^="' + ob.sTag + '_11"]').forEach(function(v, k) {
if (dh > wh) {
if (eaCtrl.Tools.isvisible(v)) {
eaCtrl.Tools.hide(v);
dh = eaCtrl.Tools.height('#' + ob.sTag);
ob.removedItems++
}
}
})
} else {
if (ob.removedItems > 0) {
var bdone = false;
eaCtrl.Tools.getnodes('[id^="' + ob.sTag + '_11"]').forEach(function(v, k) {
if (dh < wh && !bdone) {
if (!eaCtrl.Tools.isvisible(v)) {
eaCtrl.Tools.show(v);
dh = eaCtrl.Tools.height('#' + ob.sTag);
ob.removedItems--;
dh = eaCtrl.Tools.height('#' + ob.sTag);
if (dh > wh) {
eaCtrl.Tools.hide(v);
dh = eaCtrl.Tools.height('#' + ob.sTag);
ob.removedItems++;
bdone = true
}
}
}
})
}
}
switch (this.settings.position) {
case "top_left":
var i = this.settings.topmargin;
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"left": "0px"
});
break;
case "top_right":
var i = this.settings.topmargin;
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"right": "0px"
});
break;
case "right_middle":
var i = (wh / 2 - (dh / 2));
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"right": "0px"
});
break;
case "left_middle":
var i = (wh / 2 - (dh / 2));
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"left": "0px"
});
break
}
},
init: function() {
this.settings = json.settings;
this.sTag = "bar_" + ii;
this.clear();
var ob = this;
if (eaCtrl.isPreview) {
setTimeout(function() {
ob.clear()
}, (20 * 1000))
}
var scss1 = '';
var sccs2 = '';
switch (json.settings.position) {
case "top_left":
case "left_middle":
scss1 = "float:left;";
scss2 = '';
break;
case "top_right":
case "right_middle":
scss1 = "float:right;";
scss2 = '';
break
}
var css = json.settings.css;
var sCloseHtml = '';
var sXStyleAttr = '';
if (eaCtrl.isPreview) {
var sx = '';
switch (json.settings.position) {
case "top_right":
case "right_middle":
sx = 'top:0px;right:0px;';
break
}
sCloseHtml = '<div style="position:fixed;' + sx + '"><a title="Close Preview" onclick="eaCtrl.native_bar.aFlt[' + ii + '].clear()">' + eaCtrl.sCloseButtonHtml + '</a></div>';
sXStyleAttr = ' id="css_' + ii + '"'
}
var h = '<div id="' + this.sTag + '_17" style="width:60px;background-color:' + css.background_color + ';border-radius:20px;' + scss1 + '"></div>';
eaCtrl.Tools.append('body', '<div id="' + this.sTag + '" style="position:fixed;padding:0px;width:400px;min-width:400px;max-width:400px;transform:translate3d(0,0,0);z-index:1000;height:auto;">' + sCloseHtml + h + '</div>');
var sCss = '.' + this.sTag + '_5{' + scss2 + 'width:300px;max-width:300px;display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-box-align:end;-moz-box-align:end;-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end;cursor:pointer;border-radius:10px;-webkit-backdrop-filter:blur(20px);padding:10px;height:65px;box-sizing:border-box}';
sCss += '.' + this.sTag + '_5{margin-top:-50px;border:2px solid ' + css.border_color + ';border-radius:15px;padding:5px;background-color:' + css.background_color + '}';
eaCtrl.Tools.append('head', '<style' + sXStyleAttr + '>' + sCss + '</style>')
},
getimg: function(ad) {
return ad.imagepath
},
remove: function(i) {
eaCtrl.Tools.remove('#' + this.sTag + '_11' + i)
},
run: function() {
var ob = this;
var scss = '';
switch (ob.settings.position) {
case "top_left":
case "left_middle":
case "bottom_left":
break;
case "top_right":
case "right_middle":
case "bottom_right":
scss = "left:90px;float:left;";
break
}
json.items.forEach(function(ad, i) {
var id = ob.sTag + '_11' + i;
var s = '<div id="' + id + '" style="padding:5px;"><img onerror="eaCtrl.k(this)" style="width:50px;height:50px;border-radius: 50%;display:block;" src="' + ob.getimg(ad) + '"></div>';
eaCtrl.Tools.append('#' + ob.sTag + '_17', s);
ob.imgHwd[i] = false;
eaCtrl.Tools.hover('#' + id, function(ev) {
var s = '<div class="' + ob.sTag + '_5" style="position:absolute;z-index:20000;' + scss + '" id="' + ob.sTag + '_2' + i + '">' + '<div style=""><img onerror="eaCtrl.k(this)" style="width:50px;height:50px;border-radius: 50%;display:block;" src="' + ob.getimg(ad) + '"/></div>' + '<div style="display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-align:end;-moz-box-align:end;-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end;height:100%;margin-left:10px;">' + '<div style="max-width:300px;height:50px;display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-box-pack:center;-moz-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-box-direction:normal;-webkit-box-orient:vertical;-moz-box-direction:normal;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;font-family:' + ob.settings.css.font_family + ';color:' + ob.settings.css.text_color + ';">' + '<div style="overflow:hidden;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;font-weight:bold;color:' + ob.settings.css.title_color + '">' + ad.title + '</div>';
var sd = eaCtrl.getItem(ad, 'description', '');
if (sd != '') {
s += '<div style="max-width:300px; overflow:hidden;font-size:12px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;text-transform:none;color:' + ob.settings.css.text_color + '">' + sd + '</div>'
}
s += '<div style="max-width:300px; overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap;color:' + ob.settings.css.url_color + '">' + ad.displayurl + '</div>' + '</div>' + '</div>' + '</div>';
eaCtrl.Tools.append('#' + id, s);
if (!ob.imgHwd[i]) {
ob.imgHwd[i] = true;
eaCtrl.ch(ad.hash);
eaCtrl.bkLog('view', ii);
var sPx = '';
if (typeof ad.imp_trackingurl != 'undefined' && ad.imp_trackingurl != '') {
sPx += '<img width="0" height="0" src="' + ad.imp_trackingurl + '" border="0"/>'
}
if (typeof ad.trackingevents != 'undefined') {
ad.trackingevents.forEach(function(e, i) {
sPx += '<img width="0" height="0" src="' + e.url + '"/>'
})
}
if (sPx != '') {
eaCtrl.Tools.append('body', sPx)
}
}
eaCtrl.Tools.getnode('#' + ob.sTag + '_2' + i).addEventListener('click', function(ev) {
ev.stopImmediatePropagation();
ob.open(ad.destinationurl);
eaCtrl.o('logclick', 'act=logclick&xref=' + ad.hash, 0, {
result: function(a) {}
});
eaCtrl.bkLog('click', ii)
})
}, function(ev) {
eaCtrl.Tools.remove('#' + ob.sTag + '_2' + i)
})
});
ob.setpos();
window.addEventListener('resize', function() {
ob.setpos()
});
window.addEventListener('scroll', function() {
ob.setpos()
})
},
makeId: function(iMax) {
var t = "";
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < iMax; i++) {
t += s.charAt(Math.floor(Math.random() * s.length))
}
return t
},
open: function(uri) {
var win = window.open(uri);
setTimeout(function() {
if (!win || win.closed) {
top.location = uri
}
}, 500)
},
}
},
};
eaCtrl.native_webpush = {
getVersion: () => {
return "1.7"
},
aFlt: [],
display: function(ii, json) {
var ob = this;
eaCtrl.cm = eaCtrl.cm | false;
eaCtrl.cn = eaCtrl.cn | false;
ob.aFlt[ii] = new ob.float(ii, json);
ob.aFlt[ii].init();
function rn() {
ob.aFlt[ii].run()
}
function chk() {
if (eaCtrl.cm) {
setTimeout(chk(), 500)
} else {
rn()
}
}
chk()
},
float: function(ii, json) {
return {
sTag: "",
settings: {},
ii: ii,
json: json,
init: function() {
var ob = this;
ob.settings = json.settings;
ob.sTag = "wp_" + ii + "_" + ob.makeId(10);
var sCloseHtml = '';
var sXStyleAttr = '';
var sXCss = '';
if (eaCtrl.isPreview) {
sCloseHtml = '<div style="position:fixed;top:0px;right:10px;z-index:2000;"><a title="Close Preview" onclick="eaCtrl.native_webpush.aFlt[' + ii + '].clear()">' + eaCtrl.sCloseButtonHtml + '</a></div>';
sXStyleAttr = ' id="css_' + ii + '"';
sXCss = '';
setTimeout(function() {
ob.clear()
}, (30 * 1000))
}
ob.clear();
eaCtrl.Tools.append('body', '<div id="' + ob.sTag + '" style="position:fixed;overflow:hidden;padding:10px;width:360px;min-width:360px;max-width:380px;transform:translate3d(0,0,0);z-index:1000;height:auto;">' + sCloseHtml + '</div>');
var sCss = '.' + ob.sTag + '_5{display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-box-align:end;-moz-box-align:end;-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end;width:100%;cursor:pointer;border-radius:10px;-webkit-backdrop-filter:blur(20px);padding:10px;height:70px;box-sizing:border-box}';
var css = json.settings.css;
sCss += '.' + ob.sTag + '_5{margin-top:5px;border:2px solid ' + css.border_color + ';border-radius:15px;padding:5px;background-color:' + css.background_color + '}';
eaCtrl.Tools.append('head', '<style ' + sXStyleAttr + '>' + sCss + '</style>')
},
clear: function() {
eaCtrl.Tools.remove("#" + this.sTag);
eaCtrl.Tools.remove("#css_" + ii)
},
run: function() {
var ob = this;
var sImgId = ob.sTag + '_18' + ii + '_12';
var sPx = '<img width="0" height="0" id="' + sImgId + '" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="/>';
var css = ob.settings.css;
json.items.forEach(function(ad, i) {
var f = '';
if (typeof ad.imp_trackingurl != 'undefined' && ad.imp_trackingurl != '') {
sPx += '<img width="0" height="0" src="' + ad.imp_trackingurl + '" border="0"/>'
}
if (typeof ad.trackingevents != 'undefined') {
ad.trackingevents.forEach(function(e, i) {
sPx += '<img width="0" height="0" src="' + e.url + '"/>'
})
}
var s = '<div class="' + ob.sTag + '_5" id="' + ob.sTag + '_2' + i + '" >' + '<div><img style="width:50px;height:50px;border-radius: 50%;display:block;" src="' + ad.imagepath + '" onerror="eaCtrl.k(this)"></div>' + '<div style="max-width:300px;display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-align:end;-moz-box-align:end;-ms-flex-align:end;-webkit-align-items:flex-end;align-items:flex-end;height:100%;margin-left:10px;">' + '<div style="max-width:300px;height:50px;display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-box-pack:center;-moz-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-box-direction:normal;-webkit-box-orient:vertical;-moz-box-direction:normal;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;font-family:' + css.font_family + ';color:' + css.text_color + ';">' + '<div style="overflow:hidden;font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;font-weight:bold;color:' + css.title_color + '">' + ad.title + '</div>';
var sd = eaCtrl.getItem(ad, 'description', '');
if (sd != '') {
s += '<div style="max-width:300px;overflow:hidden;font-size:12px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap;text-transform:none;color:' + css.text_color + '">' + sd + '</div>'
}
s += '<div style="max-width:300px;overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap;color:' + css.url_color + '">' + ad.displayurl + '</div>' + '</div>' + '</div>' + '<div style="display:-webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-pack:center;-moz-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;-webkit-box-align:center;-moz-box-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;width:10px;height:50px;position:relative;font-weight:bold;z-index:10;">' + '<div id="' + ob.sTag + '_2' + i + '_7" style="display:none;"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><path d="M14.53 4.53l-1.06-1.06L9 7.94 4.53 3.47 3.47 4.53 7.94 9l-4.47 4.47 1.06 1.06L9 10.06l4.47 4.47 1.06-1.06L10.06 9z"/></svg></div>' + '</div>' + '</div>';
ob.display(s, i, ad, ii)
});
this.setpos();
eaCtrl.Tools.append('body', sPx);
eaCtrl.Tools.getnode("#" + sImgId).addEventListener('load', function() {
var ai = eaCtrl.c[ii];
if (typeof ai.onload == "function") {
try {
ai.onload(function() {})
} catch (_0) {
eaCtrl.i("something went wrong with executing the onload function for adtag:" + eaCtrl.getItem(ai, 'name', 'unk'))
}
}
json.items.forEach(function(ad, i) {
eaCtrl.ch(ad.hash)
})
})
},
setpos: function() {
var ob = this;
var dh = eaCtrl.Tools.height('#' + ob.sTag);
var wh = eaCtrl.Tools.height(window);
switch (this.settings.position) {
case "top_left":
var i = this.settings.topmargin;
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"left": "0px"
});
break;
case "top_right":
var i = this.settings.topmargin;
eaCtrl.Tools.css('#' + this.sTag, {
"top": i + "px",
"right": "0px"
});
break;
case "bottom_right":
eaCtrl.Tools.css('#' + this.sTag, {
"bottom": "0px",
"right": "0px"
});
break;
case "bottom_left":
eaCtrl.Tools.css('#' + this.sTag, {
"bottom": "0px",
"left": "0px"
});
break;
case "center":
eaCtrl.Tools.css('#' + this.sTag, {
top: '50%',
left: '50%',
margin: '-' + (eaCtrl.Tools.height('#' + this.sTag) / 2) + 'px 0 0 -' + (eaCtrl.Tools.width('#' + this.sTag) / 2) + 'px'
});
break
}
},
display: function(s, i, ad, ii) {
var ob = this;
eaCtrl.Tools.append('#' + ob.sTag, s);
eaCtrl.Tools.fadeIn('#' + ob.sTag + '_2' + i, 1500, function() {});
eaCtrl.Tools.hover('#' + ob.sTag + '_2' + i, function() {
eaCtrl.Tools.show('#' + ob.sTag + '_2' + i + '_7')
}, function() {
eaCtrl.Tools.hide('#' + ob.sTag + '_2' + i + '_7')
});
eaCtrl.Tools.getnode('#' + ob.sTag + '_2' + i + '_7').addEventListener('click', function(ev) {
ev.stopImmediatePropagation();
eaCtrl.Tools.hide('#' + ob.sTag + '_2' + i)
});
eaCtrl.Tools.getnode('#' + ob.sTag + '_2' + i).addEventListener('click', function(ev) {
ev.stopImmediatePropagation();
ob.open(ad.destinationurl);
eaCtrl.o('logclick', 'act=logclick&xref=' + ad.hash, 0, {
result: function(a) {}
});
eaCtrl.bkLog('click', ii)
});
if (ob.settings.position == 'center') {
ob.setpos()
}
},
makeId: function(im) {
var t = "";
var s = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
for (var i = 0; i < im; i++) {
t += s.charAt(Math.floor(Math.random() * s.length))
}
return t
},
open: function(u) {
var w = window.open(u);
setTimeout(() => {
if (!w || w.closed) {
top.location = u
}
}, 500)
},
}
},
};
! function() {
"use strict";
function t(n) {
if (!n) throw new Error("No options passed to Waypoint constructor");
if (!n.element) throw new Error("No element option passed to Waypoint constructor");
if (!n.handler) throw new Error("No handler option passed to Waypoint constructor");
this.key = "waypoint-" + e, this.options = t.Adapter.extend({}, t.defaults, n), this.element = this.options.element, this.adapter = new t.Adapter(this.element), this.ab = n.handler, this.axis = this.options.horizontal ? "horizontal" : "vertical", this.enabled = this.options.enabled, this.triggerPoint = null, this.group = t.Group.findOrCreate({
name: this.options.group,
axis: this.axis
}), this.context = t.Context.findOrCreateByElement(this.options.context), t.offsetAliases[this.options.offset] && (this.options.offset = t.offsetAliases[this.options.offset]), this.group.add(this), this.context.add(this), i[this.key] = this, e += 1
}
var e = 0,
i = {};
t.prototype.queueTrigger = function(t) {
this.group.queueTrigger(this, t)
}, t.prototype.trigger = function(t) {
this.enabled && this.ab && this.ab.apply(this, t)
}, t.prototype.destroy = function() {
this.context.remove(this), this.group.remove(this), delete i[this.key]
}, t.prototype.disable = function() {
return this.enabled = !1, this
}, t.prototype.enable = function() {
return this.context.refresh(), this.enabled = !0, this
}, t.prototype.next = function() {
return this.group.next(this)
}, t.prototype.previous = function() {
return this.group.previous(this)
}, t.invokeAll = function(t) {
var e = [];
for (var n in i) e.push(i[n]);
for (var o = 0, r = e.length; r > o; o++) e[o][t]()
}, t.destroyAll = function() {
t.invokeAll("destroy")
}, t.disableAll = function() {
t.invokeAll("disable")
}, t.enableAll = function() {
t.Context.refreshAll();
for (var e in i) i[e].enabled = !0;
return this
}, t.refreshAll = function() {
t.Context.refreshAll()
}, t.viewportHeight = function() {
return window.innerHeight || document.documentElement.clientHeight
}, t.viewportWidth = function() {
return document.documentElement.clientWidth
}, t.adapters = [], t.defaults = {
context: window,
continuous: !0,
enabled: !0,
group: "default",
horizontal: !1,
offset: 0
}, t.offsetAliases = {
"bottom-in-view": function() {
return this.context.innerHeight() - this.adapter.outerHeight()
},
"right-in-view": function() {
return this.context.innerWidth() - this.adapter.outerWidth()
}
}, window.Waypoint = t
}(),
function() {
"use strict";
function t(t) {
window.setTimeout(t, 1e3 / 60)
}
function e(t) {
this.element = t, this.Adapter = o.Adapter, this.adapter = new this.Adapter(t), this.key = "waypoint-context-" + i, this.didScroll = !1, this.didResize = !1, this.oldScroll = {
x: this.adapter.scrollLeft(),
y: this.adapter.scrollTop()
}, this.waypoints = {
vertical: {},
horizontal: {}
}, t.waypointContextKey = this.key, n[t.waypointContextKey] = this, i += 1, o.windowContext || (o.windowContext = !0, o.windowContext = new e(window)), this.createThrottledScrollHandler(), this.createThrottledResizeHandler()
}
var i = 0,
n = {},
o = window.Waypoint,
r = window.onload;
e.prototype.add = function(t) {
var e = t.options.horizontal ? "horizontal" : "vertical";
this.waypoints[e][t.key] = t, this.refresh()
}, e.prototype.checkEmpty = function() {
var t = this.Adapter.isEmptyObject(this.waypoints.horizontal),
e = this.Adapter.isEmptyObject(this.waypoints.vertical),
i = this.element == this.element.window;
t && e && !i && (this.adapter.off(".waypoints"), delete n[this.key])
}, e.prototype.createThrottledResizeHandler = function() {
function t() {
e.handleResize(), e.didResize = !1
}
var e = this;
this.adapter.on("resize.waypoints", function() {
e.didResize || (e.didResize = !0, o.requestAnimationFrame(t))
})
}, e.prototype.createThrottledScrollHandler = function() {
function t() {
e.handleScroll(), e.didScroll = !1
}
var e = this;
this.adapter.on("scroll.waypoints", function() {
(!e.didScroll || o.isTouch) && (e.didScroll = !0, o.requestAnimationFrame(t))
})
}, e.prototype.handleResize = function() {
o.Context.refreshAll()
}, e.prototype.handleScroll = function() {
var t = {},
e = {
horizontal: {
newScroll: this.adapter.scrollLeft(),
oldScroll: this.oldScroll.x,
forward: "right",
backward: "left"
},
vertical: {
newScroll: this.adapter.scrollTop(),
oldScroll: this.oldScroll.y,
forward: "down",
backward: "up"
}
};
for (var i in e) {
var n = e[i],
o = n.newScroll > n.oldScroll,
r = o ? n.forward : n.backward;
for (var s in this.waypoints[i]) {
var l = this.waypoints[i][s];
if (null !== l.triggerPoint) {
var a = n.oldScroll < l.triggerPoint,
h = n.newScroll >= l.triggerPoint,
p = a && h,
u = !a && !h;
(p || u) && (l.queueTrigger(r), t[l.group.id] = l.group)
}
}
}
for (var d in t) t[d].flushTriggers();
this.oldScroll = {
x: e.horizontal.newScroll,
y: e.vertical.newScroll
}
}, e.prototype.innerHeight = function() {
return this.element == this.element.window ? o.viewportHeight() : this.adapter.innerHeight()
}, e.prototype.remove = function(t) {
delete this.waypoints[t.axis][t.key], this.checkEmpty()
}, e.prototype.innerWidth = function() {
return this.element == this.element.window ? o.viewportWidth() : this.adapter.innerWidth()
}, e.prototype.destroy = function() {
var t = [];
for (var e in this.waypoints)
for (var i in this.waypoints[e]) t.push(this.waypoints[e][i]);
for (var n = 0, o = t.length; o > n; n++) t[n].destroy()
}, e.prototype.refresh = function() {
var t, e = this.element == this.element.window,
i = e ? void 0 : this.adapter.offset(),
n = {};
this.handleScroll(), t = {
horizontal: {
contextOffset: e ? 0 : i.left,
contextScroll: e ? 0 : this.oldScroll.x,
contextDimension: this.innerWidth(),
oldScroll: this.oldScroll.x,
forward: "right",
backward: "left",
offsetProp: "left"
},
vertical: {
contextOffset: e ? 0 : i.top,
contextScroll: e ? 0 : this.oldScroll.y,
contextDimension: this.innerHeight(),
oldScroll: this.oldScroll.y,
forward: "down",
backward: "up",
offsetProp: "top"
}
};
for (var r in t) {
var s = t[r];
for (var l in this.waypoints[r]) {
var a, h, p, u, d, f = this.waypoints[r][l],
c = f.options.offset,
w = f.triggerPoint,
y = 0,
g = null == w;
f.element !== f.element.window && (y = f.adapter.offset()[s.offsetProp]), "function" == typeof c ? c = c.apply(f) : "string" == typeof c && (c = parseFloat(c), f.options.offset.indexOf("%") > -1 && (c = Math.ceil(s.contextDimension * c / 100))), a = s.contextScroll - s.contextOffset, f.triggerPoint = Math.floor(y + a - c), h = w < s.oldScroll, p = f.triggerPoint >= s.oldScroll, u = h && p, d = !h && !p, !g && u ? (f.queueTrigger(s.backward), n[f.group.id] = f.group) : !g && d ? (f.queueTrigger(s.forward), n[f.group.id] = f.group) : g && s.oldScroll >= f.triggerPoint && (f.queueTrigger(s.forward), n[f.group.id] = f.group)
}
}
return o.requestAnimationFrame(function() {
for (var t in n) n[t].flushTriggers()
}), this
}, e.findOrCreateByElement = function(t) {
return e.findByElement(t) || new e(t)
}, e.refreshAll = function() {
for (var t in n) n[t].refresh()
}, e.findByElement = function(t) {
return n[t.waypointContextKey]
}, window.onload = function() {
r && r(), e.refreshAll()
}, o.requestAnimationFrame = function(e) {
var i = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || t;
i.call(window, e)
}, o.Context = e
}(),
function() {
"use strict";
function t(t, e) {
return t.triggerPoint - e.triggerPoint
}
function e(t, e) {
return e.triggerPoint - t.triggerPoint
}
function i(t) {
this.name = t.name, this.axis = t.axis, this.id = this.name + "-" + this.axis, this.waypoints = [], this.clearTriggerQueues(), n[this.axis][this.name] = this
}
var n = {
vertical: {},
horizontal: {}
},
o = window.Waypoint;
i.prototype.add = function(t) {
this.waypoints.push(t)
}, i.prototype.clearTriggerQueues = function() {
this.triggerQueues = {
up: [],
down: [],
left: [],
right: []
}
}, i.prototype.flushTriggers = function() {
for (var i in this.triggerQueues) {
var n = this.triggerQueues[i],
o = "up" === i || "left" === i;
n.sort(o ? e : t);
for (var r = 0, s = n.length; s > r; r += 1) {
var l = n[r];
(l.options.continuous || r === n.length - 1) && l.trigger([i])
}
}
this.clearTriggerQueues()
}, i.prototype.next = function(e) {
this.waypoints.sort(t);
var i = o.Adapter.inArray(e, this.waypoints),
n = i === this.waypoints.length - 1;
return n ? null : this.waypoints[i + 1]
}, i.prototype.previous = function(e) {
this.waypoints.sort(t);
var i = o.Adapter.inArray(e, this.waypoints);
return i ? this.waypoints[i - 1] : null
}, i.prototype.queueTrigger = function(t, e) {
this.triggerQueues[e].push(t)
}, i.prototype.remove = function(t) {
var e = o.Adapter.inArray(t, this.waypoints);
e > -1 && this.waypoints.splice(e, 1)
}, i.prototype.first = function() {
return this.waypoints[0]
}, i.prototype.last = function() {
return this.waypoints[this.waypoints.length - 1]
}, i.findOrCreate = function(t) {
return n[t.axis][t.name] || new i(t)
}, o.Group = i
}(),
function() {
"use strict";
function t(t) {
return t === t.window
}
function e(e) {
return t(e) ? e : e.defaultView
}
function i(t) {
this.element = t, this.handlers = {}
}
var n = window.Waypoint;
i.prototype.innerHeight = function() {
var e = t(this.element);
return e ? this.element.innerHeight : this.element.clientHeight
}, i.prototype.innerWidth = function() {
var e = t(this.element);
return e ? this.element.innerWidth : this.element.clientWidth
}, i.prototype.off = function(t, e) {
function i(t, e, i) {
for (var n = 0, o = e.length - 1; o > n; n++) {
var r = e[n];
i && i !== r || t.removeEventListener(r)
}
}
var n = t.split("."),
o = n[0],
r = n[1],
s = this.element;
if (r && this.handlers[r] && o) i(s, this.handlers[r][o], e), this.handlers[r][o] = [];
else if (o)
for (var l in this.handlers) i(s, this.handlers[l][o] || [], e), this.handlers[l][o] = [];
else if (r && this.handlers[r]) {
for (var a in this.handlers[r]) i(s, this.handlers[r][a], e);
this.handlers[r] = {}
}
}, i.prototype.offset = function() {
if (!this.element.ownerDocument) return null;
var t = this.element.ownerDocument.documentElement,
i = e(this.element.ownerDocument),
n = {
top: 0,
left: 0
};
return this.element.getBoundingClientRect && (n = this.element.getBoundingClientRect()), {
top: n.top + i.pageYOffset - t.clientTop,
left: n.left + i.pageXOffset - t.clientLeft
}
}, i.prototype.on = function(t, e) {
var i = t.split("."),
n = i[0],
o = i[1] || "__default",
r = this.handlers[o] = this.handlers[o] || {},
s = r[n] = r[n] || [];
s.push(e), this.element.addEventListener(n, e)
}, i.prototype.outerHeight = function(e) {
var i, n = this.innerHeight();
return e && !t(this.element) && (i = window.getComputedStyle(this.element), n += parseInt(i.marginTop, 10), n += parseInt(i.marginBottom, 10)), n
}, i.prototype.outerWidth = function(e) {
var i, n = this.innerWidth();
return e && !t(this.element) && (i = window.getComputedStyle(this.element), n += parseInt(i.marginLeft, 10), n += parseInt(i.marginRight, 10)), n
}, i.prototype.scrollLeft = function() {
var t = e(this.element);
return t ? t.pageXOffset : this.element.scrollLeft
}, i.prototype.scrollTop = function() {
var t = e(this.element);
return t ? t.pageYOffset : this.element.scrollTop
}, i.extend = function() {
function t(t, e) {
if ("object" == typeof t && "object" == typeof e)
for (var i in e) e.hasOwnProperty(i) && (t[i] = e[i]);
return t
}
for (var e = Array.prototype.slice.call(arguments), i = 1, n = e.length; n > i; i++) t(e[0], e[i]);
return e[0]
}, i.inArray = function(t, e, i) {
return null == e ? -1 : e.indexOf(t, i)
}, i.isEmptyObject = function(t) {
for (var e in t) return !1;
return !0
}, n.adapters.push({
name: "noframework",
Adapter: i
}), n.Adapter = i
}();
eaCtrl.fxim_banner = {
ctrlName: 'fxim_banner',
bi: 0,
aSet: null,
sTag: "fx_imbanner",
h: "",
bLoaded: false,
bOpen: false,
getVersion: function() {
return "1.4"
},
init: function(ii, aJson) {
this.aSet = aSett;
var o = this;
var aSett = aJson.settings;
var ai = eaCtrl.c[ii];
var xposcss = 'width:' + aSett.width + ';right:10px;';
var xposshcss = 'float:right;';
if (typeof(aSett.position) != 'undefined') {
if (aSett.position == 'bottom_left') {
xposcss = 'left:10px;';
xposshcss = 'float:left;'
} else if (aSett.position == 'bottom_center') {
xposcss = 'left:50%;margin-left:-' + (aSett.width / 2) + 'px;'
}
}
var cpos = "fixed";
try {
cpos = (document.compatMode == 'CSS1Compat') ? "fixed" : "absolute";
var browser = navigator.appName;
var version = parseFloat(navigator.appVersion.split("MSIE")[1]);
if (browser == "Microsoft Internet Explorer" && version <= 6) {
cpos = "absolute"
}
} catch (_0) {};
eaCtrl.Tools.append('head', '<style type="text/css" id="css_' + o.sTag + '"> #' + o.sTag + ' { font-family: Arial, Helvetica, sans-serif; font-size:12px; ' + xposcss + ' background: #000000; border-top-right-radius: 5px; border-top-left-radius: 5px; ' + 'z-index:2000; padding: 0px; margin:0px; border:1px #000000 solid; border-spacing:1px; background-color:#000000; position: ' + cpos + '; ' + xposcss + xposshcss + ' bottom: 0px; text-align: left;display:block;' + '} #' + o.sTag + ' a,#' + o.sTag + ' a:link,#slider strong { text-decoration:none; color: black; font-size:12px; } ' + '#' + o.sTag + '_20 {color:#ffffff; height:50px;width:' + aSett.width + 'px;font-size:15px;margin-bottom:5px;cursor:pointer}' + '</style>');
var sAdTitle = eaCtrl.getItem(ai, 'default_title', '');
sAdTitle = eaCtrl.getItem(aJson, 'title', sAdTitle);
var isNt = eaCtrl.getItem(aJson, 'adtype', '') == 'native';
if (isNt || sAdTitle == '') {
sAdTitle = 'Click To Open'
}
sIcon = eaCtrl.getItem(ai, 'default_icon', '');
var sIcon = eaCtrl.getItem(aJson, 'iconpath', sIcon);
var sIconHtml = '';
if (sIcon != '') {
sIconHtml = '<img src="' + sIcon + '" border="0" width="45" height="45" style="float:left;padding-top:5px;padding-left:5px;background-color:#000000;"/>'
}
var sCloseHtml = '';
if (eaCtrl.isPreview) {
sCloseHtml = '<a title="Close Preview" onclick="eaCtrl.fxim_banner.hide()" style="margin-left:-10px;z-index:3000">' + eaCtrl.sCloseButtonHtml + '</a>'
}
eaCtrl.Tools.append('body', '<div id="' + o.sTag + '">' + '<div id="' + o.sTag + '_20" onclick="eaCtrl.fxim_banner.switch(); ">' + sCloseHtml + sIconHtml + '<div style="float:left;margin-left:10px;margin-top:15px;max-width:' + (aSett.width - 40) + 'px;overflow:hidden">' + sAdTitle + '</div><div style="float:right;margin-right:10px;margin-top:15px"><svg id="' + o.sTag + '_15" width="20" height="20" viewBox="0 0 640 640" xmlns="http://www.w3.org/2000/svg">' + '<path fill="#fff" d="m320,100l-320,320l128,128l192,-192l192,192l128,-128l-320,-320z"></path>' + '</svg></div></div>' + '<div id="' + o.sTag + '_1" style="display:none">' + '</div></div>')
},
switch: function(c) {
c = c | false;
var o = this;
if (!o.bOpen) {
o.bOpen = true;
eaCtrl.Tools.html('#' + o.sTag + '_15', '<path fill="#fff" d="m512,100l-192,192l-192,-192l-128,128l320,320l320,-320l-128,-128z"></path>');
if (!o.bloaded) {
o.bloaded = true
}
eaCtrl.Tools.show('#' + o.sTag + '_1')
} else {
eaCtrl.Tools.html('#' + o.sTag + '_15', '<path fill="#fff" d="m320,100l-320,320l128,128l192,-192l192,192l128,-128l-320,-320z"></path>');
o.bOpen = false;
eaCtrl.Tools.hide('#' + o.sTag + '_1')
}
},
hide: function() {
eaCtrl.Tools.remove(['#' + this.sTag, '#css_' + this.sTag])
},
display: function(ii, json) {
var o = this;
var u = 'undefined';
if (o.bi == 0) {
o.bi = ii;
this.iItemId = ii
} else {
if (o.bi != ii) {
eaCtrl.i("Im plugin got called more than one time, will be ignored");
return
}
}
var isNt = eaCtrl.getItem(json, 'adtype', '') == 'native';
if (typeof(json.settings['position']) != 'undefined') {
if (json.settings['position'] == 'bottom_center') {
eaCtrl.Tools.css(o.sTag, {
"marginLeft": "-" + (json.settings.width / 2) + "px"
})
}
}
o.init(ii, json);
if (isNt) {
eaCtrl.ad(-1, "native", function() {
var sId = o.sTag + 'ct';
eaCtrl.c[ii].display = sId;
eaCtrl.c[ii].isflt = 1;
eaCtrl.Tools.html('#' + o.sTag + '_1', '<div style="clear:both;font-size:11px; color:black;" id="' + sId + '"></div>');
json.adtype = 'banner';
eaCtrl.native.display(ii, json);
eaCtrl.Tools.show('#' + o.sTag)
});
return
} else {
eaCtrl.ad(-1, 'banner', function() {
eaCtrl.banner.t(ii, json, function(shtml) {
eaCtrl.Tools.html('#' + o.sTag + '_1', '<div style="clear:both;font-size:11px; color:black;">' + shtml + '</div>');
eaCtrl.banner.j(o.bi)
})
})
}
},
};
eaCtrl.Tools = {
getVersion: function() {
return "1.3"
},
isInFold: function(a) {
try {
var n = this.getnode(a);
if (n) {
var w = window;
var p = n.offsetTop + n.scrollHeight;
var s = w.pageYOffset + this.wh();
if (w.pageYOffset > p) {
return false
} else if (s < n.offsetTop) {
return false
}
}
} catch (_0) {}
return true
},
is_bot: function() {
return /bot|baidu|bing|msn|duckduckbot|teoma|slurp|yandex|lighthouse/i.test(navigator.userAgent)
},
is_chrome: function() {
var isChromium = window.chrome;
var winNav = window.navigator;
var vendorName = winNav.vendor;
var isOpera = typeof window.opr !== "undefined";
var isIEedge = winNav.userAgent.indexOf("Edg") > -1;
var isIOSChrome = winNav.userAgent.match("CriOS");
var isSamsungChrome = winNav.userAgent.indexOf("SamsungBrowser") > -1;
if (isIOSChrome) {
return false
} else if (isChromium !== null && typeof isChromium !== "undefined" && vendorName === "Google Inc." && isOpera === false && isIEedge === false && isSamsungChrome === false) {
return true
} else {
return false
}
},
fetch_session: function(method, auto_reset) {
if (typeof(Storage) !== "undefined") {
var d = document.domain;
var current_time = Math.round(new Date().getTime() / 1000);
var browse_session = localStorage.getItem('bs');
var new_session = false;
if (auto_reset === true && document.referrer.indexOf(d) == -1) {
new_session = true
}
if (browse_session && !new_session) {
browse_session = JSON.parse(browse_session);
if (browse_session.time < current_time - 2 * 3600) {
browse_session = {
v: 1,
time: current_time
}
} else {
if (method == 'set') {
browse_session.v += 1
}
}
} else {
browse_session = {
v: 1,
time: current_time
}
}
if (method == 'set' || new_session) localStorage.setItem('bs', JSON.stringify(browse_session));
return browse_session
}
return false
},
executeScripts: function(node) {
var scriptElements = node.querySelectorAll("script");
var ScriptScr = [];
var ScriptTxt = [];
Array.from(scriptElements).forEach((scriptElement) => {
if (!scriptElement.getAttribute('run')) {
scriptElement.setAttribute('run', '1');
if (scriptElement.getAttribute('src')) {
ScriptScr.push(scriptElement)
} else {
ScriptTxt.push(scriptElement)
}
}
});
if (ScriptScr.length > 0) {
ScriptScr.forEach(function(scriptElement, k) {
const clonedElement = document.createElement("script");
Array.from(scriptElement.attributes).forEach((attribute) => {
clonedElement.setAttribute(attribute.name, attribute.value)
});
clonedElement.async = true;
if (k == ScriptScr.length - 1) {
clonedElement.onload = function() {
ScriptTxt.forEach(function(v, k2) {
var cl = document.createElement("script");
Array.from(v.attributes).forEach((attribute) => {
cl.setAttribute(attribute.name, attribute.value)
});
cl.text = v.text;
v.parentNode.replaceChild(cl, v)
})
}
}
scriptElement.parentNode.replaceChild(clonedElement, scriptElement)
});
ScriptScr = []
} else {
ScriptTxt.forEach(function(v, k2) {
var cl = document.createElement("script");
Array.from(v.attributes).forEach((attribute) => {
cl.setAttribute(attribute.name, attribute.value)
});
cl.text = v.text;
v.parentNode.replaceChild(cl, v)
});
ScriptTxt = []
}
},
nodeScriptReplace: function(node) {
var t = this;
if (t.nodeScriptIs(node) === true) {
if (!node.getAttribute('run')) {
node.setAttribute('run', 'true');
node.parentNode.replaceChild(t.nodeScriptClone(node), node)
}
} else {
var i = -1,
children = node.childNodes;
while (++i < children.length) {
t.nodeScriptReplace(children[i])
}
}
return node
},
nodeScriptClone: function(node) {
var script = document.createElement("script");
script.text = node.innerHTML;
var i = -1,
attrs = node.attributes,
attr;
while (++i < attrs.length) {
script.setAttribute((attr = attrs[i]).name, attr.value)
}
return script
},
nodeScriptIs: function(node) {
return node.tagName === 'SCRIPT'
},
dh: function() {
return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight
},
dw: function() {
return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth
},
wh: function() {
return window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight
},
ww: function() {
return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth
},
find: function(a, b) {
a = this.getnode(a);
return this.getnodes(b, a)
},
docready: function(fn) {
if (document.readyState === "complete" || (document.readyState !== "loading" && !document.documentElement.doScroll)) {
fn()
} else {
var completed = function() {
document.removeEventListener("DOMContentLoaded", completed);
window.removeEventListener("load", completed);
fn()
};
document.addEventListener("DOMContentLoaded", completed);
window.addEventListener("load", completed)
}
},
getnodes: function(a, b) {
b = b || document;
return b.querySelectorAll(a)
},
getnode: function(a, b) {
try {
if (a === window) {
return a
}
if (!(a instanceof Element)) {
b = b || document;
a = b.querySelector(a)
}
return a
} catch (_0) {}
},
append: function(a, b, c) {
var n = this.getnode(a, c);
try {
if (n) {
n.insertAdjacentHTML('beforeend', b);
if (b.indexOf("<script") >= 0) {
this.nodeScriptReplace(n)
}
}
} catch (_0) {}
},
prepend: function(a, b, c) {
var n = this.getnode(a, c);
try {
if (n) {
n.insertAdjacentHTML('afterbegin', b);
if (b.indexOf("<script") >= 0) {
this.nodeScriptReplace(n)
}
}
} catch (_0) {}
return n
},
html: function(a, b, c) {
try {
var e = this.getnode(a, c);
if (e) {
if (b == null || typeof(b) == 'undefined') {
return e.innerHTML
} else {
var d = e.lastElementChild;
while (d) {
e.removeChild(d);
d = e.lastElementChild
}
if (typeof b == 'string') {
e.innerHTML = b;
if (b.indexOf("<script") >= 0) {
this.nodeScriptReplace(el)
}
} else {
e.parentNode.appendChild(b)
}
}
}
} catch (_0) {}
},
isvisible: function(a) {
try {
a = this.getnode(a);
return !!(a.offsetWidth || a.offsetHeight || a.getClientRects().length)
} catch (_0) {
return false
}
},
findall: function(a, b) {
var c = [];
var t = this;
if (typeof a == 'string') {
return t.getnodes(a)
}
if (a instanceof Element) {
c.push(a)
} else if (typeof a == 'object') {
try {
a.forEach(function(v, k) {
t.findall(v).forEach(function(e, i) {
c.push(e)
})
})
} catch (_0) {}
}
return c
},
remove: function(a) {
if (a instanceof Element) {
a.parentNode.removeChild(a)
} else {
this.findall(a).forEach(function(v, k) {
v.parentNode.removeChild(v)
})
}
},
attr: function(a, b, c) {
this.findall(a).forEach(function(v, k) {
if (c) {
v.setAttribute(b, c)
} else {
return v.getAttribute(b)
}
})
},
now: function() {
return Date.now()
},
show: function(a) {
this.css(a, {
"display": ''
})
},
hide: function(a) {
this.css(a, {
"display": 'none'
})
},
on: function(a, b, c) {
if (!(a instanceof Element)) {} else if (a === screen) {}
document.body.addEventListener(a, function(e) {
if (e.target.matches(b)) {
c(e)
}
})
},
hasWebP: function(cb) {
var img = document.createElement("img");
img.onload = function() {
if (img.width === 2 && img.height === 1) {
cb(true)
} else {
cb(false)
}
};
img.onerror = function() {
cb(false)
};
img.src = "data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="
},
parents: function(a) {
a = this.getnode(a);
var aret = [];
if (a) {
while (a.parentNode) {
aret.push(a.parentNode);
a = a.parentNode
}
}
return aret
},
width: function(a) {
if (a === window) {
return a.innerWidth
} else if (a === screen) {
return screen.width
}
if (typeof a == 'string') {
a = this.getnode(a)
}
if (a) {
return a.getBoundingClientRect().width
}
},
height: function(a) {
if (a === window) {
return a.innerHeight
} else if (a === screen) {
return screen.height
}
var n = this.getnode(a);
if (n) {
return n.getBoundingClientRect().height
}
},
css: function(a, b) {
a = this.getnode(a);
if (a) {
for (const k in b) {
a.style[k] = b[k]
}
}
},
domrect: function(a) {
try {
a = this.getnode(a);
const domRect = a.getBoundingClientRect();
return domRect
} catch (_0) {}
},
hover: function(a, b, c) {
a = this.getnode(a);
if (!a) {
return
}
a.setAttribute('aria-expanded', 'false');
var time = Date.now() - 10;
var mhover = function() {
if (time > Date.now() - 2 || a.getAttribute("aria-expanded") == 'true') {
return
}
a.setAttribute('aria-expanded', 'true');
time = Date.now();
b()
};
var mout = function(event) {
var e = event.toElement || event.relatedTarget;
while (e && e.parentNode && e.parentNode != window) {
if (e.parentNode == this || e == this) {
if (e.preventDefault) e.preventDefault();
return false
}
e = e.parentNode
}
a.setAttribute('aria-expanded', 'false');
c()
};
a.addEventListener('mouseover', mhover, true);
a.addEventListener('mouseout', mout, true)
},
animateDown: function(a, time, c) {
var slider = this.getnode(a);
var mx = this.height(a);
var min = 10;
var timer = null;
var toggled = false;
var maxheight = 100;
console.log(mx);
clearInterval(timer);
var height = parseInt(slider.style.height);
slider.style.height = '0px';
var init = (new Date()).getTime();
var disp = height - parseInt(slider.style.height);
timer = setInterval(function() {
var instance = (new Date()).getTime() - init;
if (instance <= time) {
var pos = min + Math.floor(disp * instance / time);
slider.style.height = pos + 'px'
} else {
slider.style.height = height + 'px';
clearInterval(timer);
try {
c()
} catch (_0) {}
}
}, 1)
},
slideDown: function(a, b, c) {
var duration = b || 1000;
a = this.getnode(a);
try {
a.style.transitionProperty = 'height, margin, padding';
a.style.transitionDuration = `${duration}ms`;
a.style.boxSizing = 'border-box';
a.style.overflow = 'hidden';
a.style.height = `${a.offsetHeight}px`;
a.setAttribute('aria-expanded', 'false');
a.setAttribute('aria-hidden', 'true');
a.offsetHeight;
a.style.height = '0';
a.style.paddingTop = '0';
a.style.paddingBottom = '0';
a.style.marginTop = '0';
a.style.marginBottom = '0';
return new Promise(resolve => {
setTimeout(() => {
a.style.display = 'none';
a.style.removeProperty('height');
a.style.removeProperty('box-sizing');
a.style.removeProperty('padding-top');
a.style.removeProperty('padding-bottom');
a.style.removeProperty('margin-top');
a.style.removeProperty('margin-bottom');
a.style.removeProperty('overflow');
a.style.removeProperty('transition-duration');
a.style.removeProperty('transition-property');
a.removeAttribute('data-slide-moving');
resolve('done');
if (c != null) {
c()
}
}, duration)
})
} catch (_0) {
console.log(_0)
}
},
slideUp: function(a, b, c) {
try {
var duration = b || 1000;
var el = this.getnode(a);
el.style.removeProperty('display');
const originDisplay = window.getComputedStyle(el).display;
el.style.display = (originDisplay === 'none') ? 'block' : originDisplay;
const originHeight = el.offsetHeight;
el.style.overflow = 'hidden';
el.style.height = '0';
el.style.paddingTop = '0';
el.style.paddingBottom = '0';
el.style.marginTop = '0';
el.style.marginBottom = '0';
el.offsetHeight;
el.style.boxSizing = 'border-box';
el.style.transitionProperty = 'height, margin, padding';
el.style.transitionDuration = `${duration}ms`;
el.setAttribute('aria-expanded', 'true');
el.setAttribute('aria-hidden', 'false');
el.style.height = `${originHeight}px`;
el.style.removeProperty('padding-top');
el.style.removeProperty('padding-bottom');
el.style.removeProperty('margin-top');
el.style.removeProperty('margin-bottom');
return new Promise(resolve => {
setTimeout(() => {
el.style.removeProperty('box-sizing');
el.style.removeProperty('height');
el.style.removeProperty('overflow');
el.style.removeProperty('transition-duration');
el.style.removeProperty('transition-property');
el.removeAttribute('data-slide-moving');
resolve('done');
if (c != null) {
c()
}
}, duration)
})
} catch (_0) {
console.log(_0)
}
},
fadeIn: function(a, ms, c) {
var el = this.getnode(a);
if (!el) return;
el.style.opacity = 0;
el.style.filter = "alpha(opacity=0)";
el.style.visibility = "visible";
if (el.style.display == 'none') {
el.style.display = ''
}
if (ms) {
var opacity = 0;
var timer = setInterval(function() {
opacity += 50 / ms;
if (opacity >= 1) {
clearInterval(timer);
opacity = 1;
if (c) {
c()
}
}
el.style.opacity = opacity;
el.style.filter = "alpha(opacity=" + opacity * 100 + ")"
}, 50)
} else {
el.style.opacity = 1;
el.style.filter = "alpha(opacity=1)";
if (c) {
c()
}
}
},
fadeOut: function(a, ms, c) {
var el = this.getnode(a);
if (!el) {
return
}
if (ms) {
var opacity = 1;
var timer = setInterval(function() {
opacity -= 50 / ms;
if (opacity <= 0) {
clearInterval(timer);
opacity = 0;
el.style.display = "none";
el.style.visibility = "hidden";
if (c) {
c()
}
}
el.style.opacity = opacity;
el.style.filter = "alpha(opacity=" + opacity * 100 + ")"
}, 50)
} else {
el.style.opacity = 0;
el.style.filter = "alpha(opacity=0)";
el.style.display = "none";
el.style.visibility = "hidden";
if (c) {
c()
}
}
}
};
eaCtrl.inpage_video = {
aProcs: [],
getVersion: function() {
return "1.0"
},
display: function(ii, json) {
console.log("inpage video display called");
var ob = this;
ob.aProcs[ii] = new ob.proc();
if (ob.aProcs[ii].init(ii, json.settings)) {
ob.aProcs[ii].dc(ii, json)
}
},
proc: function() {
return {
popsid: 0,
cl: false,
IsLoaded: false,
bi: 0,
aSet: null,
sTag: "",
dTagId: "",
hide: function() {
var t = this;
console.log('hide called', t.dTagId);
eaCtrl.Tools.html('#' + t.sTag + '_4', '');
eaCtrl.Tools.remove('#' + t.dTagId)
},
dc: function(ii, json) {
var o = this;
var u = 'undefined';
if (o.bi == 0) {
o.bi = ii
} else {
if (o.bi != ii) {
eaCtrl.i("Videoslider plugin got called more than one time, will be ignored");
return
}
}
eaCtrl.ad(-1, 'video', function() {
var u = 'undefined';
var ad = json;
var pl = eaCtrl.video.videoCtrl();
pl.isSlider = true;
pl.bi = ii;
pl.iActionId = 0;
pl.playerid = o.sTag + '_1';
var ai = eaCtrl.c[ii];
pl.playerNode = eaCtrl.Tools.getnode("#" + ai.display);
if (pl.playerNode === null) {
console.log("adtag inpage video not found");
return
}
o.dTagId = ai.display;
var run = function() {
var isp = false;
pl.LoadActions(json, function(aActions) {
eaCtrl.Tools.append('body', '<div id="notifications_' + pl.playerid + '"></div>');
var file = "";
if (typeof aActions != u && typeof aActions.mediafile != u && aActions.mediafile != '') {
file = aActions.mediafile
} else {
if (typeof ad != u && typeof ad.video_url != u && ad.video_url != "") {
file = ad.video_url
}
}
if (file == '') {
ai.data = json;
ai.plugin = 'inpage_video';
eaCtrl.logImp(pl.bi, 'inpage_video', '', ai);
pl.sendNotifications(aActions.impression, 'impression');
o.hide();
return
}
eaCtrl.Tools.css(pl.playerNode, {
position: 'relative',
display: 'none'
});
eaCtrl.Tools.html(pl.playerNode, '<video id="' + o.sTag + '_4" style="width:calc(100%);height:calc(100%);cursor:pointer" muted="muted" preload="auto" src="' + file + '" autoplay webkit-playsinline playsinline></video>');
pl.player = eaCtrl.Tools.getnode("#" + o.sTag + '_4');
eaCtrl.Tools.show('#' + ai.display);
eaCtrl.Tools.prepend(pl.playerNode, '<div id="btn_close_inpage_' + ii + '" style="position:absolute;z-index:1000;right:0px">' + eaCtrl.sCloseButtonHtml + '</div>');
eaCtrl.Tools.getnode('#btn_close_inpage_' + ii).addEventListener('click', function(e) {
o.hide()
});
var ch = function() {
eaCtrl.Tools.getnode('#' + o.sTag + '_4').addEventListener('click', function(e) {
if (isp) {
e.stopImmediatePropagation();
var url = '';
url = eaCtrl.getItem(ad, 'destinationurl', '');
if (aActions.clickthrough_url != '') {
url = aActions.clickthrough_url
}
if (url != '') {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
})
} else {
return
}
if (aActions.clickthrough_tracking != '') {
var arr = [];
arr.push(aActions.clickthrough_tracking);
pl.sendNotifications(arr, 'clicktrack')
}
pl.open(url);
var ai = eaCtrl.c[ii];
ai.data = ad;
ai.plugin = 'inpage_video';
eaCtrl.bkLog('click', ii, {
isiframe: 0
}, ai);
return false
} else {
pl.player.play();
return false
}
})
};
pl.player.addEventListener("play", function(e) {
isp = true;
setTimeout(function() {
ch()
}, 500)
});
pl.player.addEventListener('timeupdate', function(e) {
isp = true;
var i = parseInt(e.target.currentTime);
var d = parseInt(e.target.duration);
var firtsQuartile = (d / 4);
var midPoint = (d / 2);
var thirdQuartile = (firtsQuartile + midPoint);
if (typeof aActions.trackingevents.start != u && aActions.trackingevents.start.done == false) {
aActions.trackingevents.start.done = true;
pl.sendNotifications(aActions.trackingevents.start.items, 'start')
}
if (typeof aActions.trackingevents.progress != u) {
for (a = 0; a < aActions.trackingevents.progress.items.length; a++) {
item = aActions.trackingevents.progress.items[a];
if (item.done == false) {
if (item.offset <= i) {
aActions.trackingevents.progress.items[a].done = true;
var items = [];
items.push(item.url);
pl.sendNotifications(items, 'progress')
}
}
}
}
if (i >= firtsQuartile && i < (firtsQuartile + 1)) {
if (typeof aActions.trackingevents.firstquartile != u && aActions.trackingevents.firstquartile.done == false) {
aActions.trackingevents.firstquartile.done = true;
pl.sendNotifications(aActions.trackingevents.firstquartile.items, 'firstquartile')
}
} else if (i >= midPoint && i < (midPoint + 1)) {
if (typeof aActions.trackingevents.midpoint != u && aActions.trackingevents.midpoint.done == false) {
aActions.trackingevents.midpoint.done = true;
pl.sendNotifications(aActions.trackingevents.midpoint.items, 'midpoint')
}
} else if (i >= thirdQuartile && i < (thirdQuartile + 1)) {
if (typeof aActions.trackingevents.thirdquartile != u && aActions.trackingevents.thirdquartile.done == false) {
aActions.trackingevents.thirdquartile.done = true;
pl.sendNotifications(aActions.trackingevents.thirdquartile.items, 'thirdquartile')
}
}
if (i <= 10) {
if (i >= 2) {
if (!pl.bImplogged) {
pl.bImplogged = true;
var ai = eaCtrl.c[ii];
ai.data = json;
ai.plugin = 'inpage_video';
eaCtrl.logImp(pl.bi, 'inpage_video', '', ai);
pl.sendNotifications(aActions.impression, 'impression');
if (typeof json.imp_trackingurl != 'undefined' && json.imp_trackingurl != '') {
var sPx = '<img width="0" height="0" src="' + json.imp_trackingurl + '" border="0"/>';
eaCtrl.Tools.append("body", sPx)
}
}
}
}
});
pl.player.addEventListener("ended", function(e) {
if (typeof aActions.trackingevents.complete != u) {
pl.sendNotifications(aActions.trackingevents.complete.items, 'complete')
}
setTimeout(function() {
o.hide()
}, 5000)
})
})
};
try {
var n = pl.playerNode;
n.insertAdjacentHTML('afterend', '<div id="trigger_' + ai.display + '" style="height:200px;"></div>');
var waypoint = new Waypoint({
element: document.getElementById('trigger_' + ai.display),
handler: function(direction) {
eaCtrl.i('Ad ' + ai.display + ' visible');
eaCtrl.Tools.remove('#trigger_' + ai.display);
run();
this.destroy()
},
offset: 'bottom-in-view'
})
} catch (_0) {
eaCtrl.Tools.remove('#trigger_' + ai.display);
run()
}
})
},
init: function(ii, aSett) {
var ob = this;
var ai = eaCtrl.c[ii];
var node = eaCtrl.Tools.getnode("#" + ai.display);
if (node === null) {
console.log('no adtag found for inpage video');
return false
}
ob.bi = ii;
ob.sTag = "in_" + ii;
if (this.cl) {
return
}
this.cl = true;
eaCtrl.Tools.remove("[id^=" + this.sTag + "]");
this.aSet = aSett;
return true
},
}
},
};
eaCtrl.skin = {
getVersion: function() {
return "1.0"
},
display: function(ii, ad) {
var ai = eaCtrl.c[ii];
var s = eaCtrl.getItem(ai, "bindto", "body");
var node = eaCtrl.Tools.getnode(s);
var simg = ad.imagepath;
if (node) {
if (eaCtrl.abDetected) {
eaCtrl.loadBin(simg, function(ok, sd) {
if (ok) {
eaCtrl.Tools.css(s, {
'background-image': 'url("' + sd + '")',
'background-repeat': 'repeat'
})
}
})
} else {
eaCtrl.Tools.css(s, {
'background-image': 'url("' + simg + '")',
'background-repeat': 'repeat'
})
}
eaCtrl.ch(ad.hash);
eaCtrl.bkLog('view', ii);
node.addEventListener('click', function(e) {
try {
if (e.path[0] == node) {
var lc = eaCtrl.getItem(ad, 'logclick', '0') == "1";
if (lc) {
url = eaCtrl.getItem(ad, 'destinationurl', '')
} else {
var sDomain = "";
var u = "undefined";
if (typeof eaCtrl.ca.ctrl_domain != u && eaCtrl.ca.ctrl_domain != "") {
sDomain = eaCtrl.ca.ctrl_domain
}
url = sDomain + "/click.go?xref=" + ad.hash
}
eaCtrl.open(url, function(ok) {
if (ok) {
if (lc) {
var uri = 'act=logclick&xref=' + ad.hash;
eaCtrl.o('logclick', uri, 0, {
result: function(a) {}
})
}
eaCtrl.bkLog('click', ii)
}
})
}
} catch (_0) {
console.log(_0)
}
})
}
}
};