Skip to content

Instantly share code, notes, and snippets.

@tahajahangir
Forked from cpdean/Tracer.js
Created February 7, 2012 09:26
Show Gist options
  • Save tahajahangir/1758636 to your computer and use it in GitHub Desktop.
Save tahajahangir/1758636 to your computer and use it in GitHub Desktop.
Unobfuscated version of tynt Tracer.js
//v26 © 2011 Tynt
Tynt = window.Tynt || [];
if (typeof Tynt.TIL != "undefined") {
} else {
(function () {
var mainTynt = function () {
var body = document.body,
documentElement = document.documentElement,
isIE = eval("/*@cc_on!@*/false"),
repeat = function (a, b) {
for (var c = "", f = 0; f < b; f++) c += a;
return c
},
a50 = repeat("a", 50),
ic_tynt_com = (Tynt.e || "") + "ic.tynt.com",
de_tynt_com = (Tynt.e || "") + "de.tynt.com/deb/?id=" + a50,
now = function () {
return (new Date).getTime()
},
trim = function (a) {
return a.replace(/^\s+|\s+$/g, "")
},
copyObj = function (a, b) {
for (var c in a) if (a.hasOwnProperty(c)) b[c] = a[c]
},
createElem = function (tag, attrs, styles) {
tag = document.createElement(tag);
copyObj(attrs, tag);
copyObj(styles, tag.style);
return tag
},
myAddEvent, myRemoveEvent;
// Define myAddEvent and myRemoveEvent based on browser (IE/nonIE)
if (window.addEventListener) {
myAddEvent = function (a, b, c) {
a.addEventListener(b, c, false)
};
myRemoveEvent = function (a, b, c) {
a.removeEventListener(b, c, false)
}
} else {
myAddEvent = function (a, b, c) {
a.attachEvent("on" + b, c)
};
myRemoveEvent = function (a, b, c) {
a.detachEvent("on" + b, c)
}
}
var setCookie = function (key, value) {
var c = location.hostname.split("."),
f = 2;
do {
var d = c.slice(c.length - f, c.length).join(".");
document.cookie = key + ";path=/;domain=." + d + ";" + value;
f++
} while (document.cookie.indexOf(key) == -1 && f <= c.length);
if (document.cookie.indexOf(key) == -1) document.cookie = key + ";path=/;" + value
},
addLoadEvent = function (a) {
document.readyState == "complete" ? a() : myAddEvent(window, "load", function () {
setTimeout(function () {
if (typeof document.readyState == "undefined" && !isIE) document.readyState = "complete";
a()
}, 10)
})
},
sendRequestAfterLoad = function (source, errorHandler2) {
var sendQueue = [],
makeImage = function (src, errorHandler) {
// Tynt.join("~") is user id
var url = "http://" + src.replace("id=" + a50, "id=" + Tynt.join("~"));
if (url.indexOf(ic_tynt_com + "/b/p?") > -1 && typeof Tynt.b == "string") url += "&b=" + Tynt.b;
var imgTag = new Image(1, 1);
if (errorHandler) imgTag.onerror = errorHandler;
imgTag.src = url
};
sendRequestAfterLoad = function (d, e) {
sendQueue.push([d, e])
};
addLoadEvent(function () {
sendRequestAfterLoad = makeImage;
for (var d = 0; d < sendQueue.length; d++) sendRequestAfterLoad(sendQueue[d][0], sendQueue[d][1]);
sendQueue = null
});
sendRequestAfterLoad(source, errorHandler2)
},
ca = function (a) {
var b = [],
c = "",
f;
for (f in a) if (a.hasOwnProperty(f)) {
b.push(c, f, "=", a[f]);
c = "&"
}
return b.join("")
},
getHash = function (a) {
// Returns a base62 9-byte hash of input
for (var b = 0, c = a.length < 100 ? a.length : 100, f = 0; f < c; f++) b += a.charCodeAt(f);
a = Math.floor(Math.random() * 3844);
c = Math.abs(now() - 12281184E5);
return da(c, 7) + da((b + a) % 3844, 2)
},
ea = function (a) {
if (a < 62) return "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(this);
else {
var b = Math.floor(a / 62);
a = a - b * 62;
return b >= 62 ? ea(b) + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(a) : "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(b) + "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(a)
}
},
da = function (a, b) {
var c = ea(a);
return repeat("0", b - c.length) + c
},
numOfWords = function (a) {
return (a = trim(a)) ? a.split(/\s+/i).length : 0
},
documentTitle = trim((document.title || location.hostname).toString()).replace(RegExp(location.hash, "g"), ""),
removeSchema = function (a) {
return a.replace(/^https?:\/\//, "")
},
getCookie = function (a, b) {
for (var c = b + "=", f = a.split(";"), d = 0; d < f.length; d++) {
for (var e = f[d]; e.charAt(0) == " ";) e = e.substring(1, e.length);
if (e.indexOf(c) == 0) return e.substring(c.length, e.length)
}
return null
},
checkAndPush3 = function () {
// an implementation of queue of length 3!
// myfun = checkAndPush3()
// myfun(1) -> true
// myfun(2) -> true
// myfun(1) -> false
// myfun(10) -> true
// myfun(2) -> false
// myfun(3) -> true
// myfun(1) -> true // memory size is 3!
var list = [];
return function (value) {
for (var c = list.length - 1; c >= 0; c--)
if (list[c] == value) return false;
list.unshift(value);
list.length > 3 && list.pop();
return true
}
},
copyAlreadyProccessed = checkAndPush3(),
imgSrcAlreadyProccessed = checkAndPush3(),
contextMenuListener = function () {
var targetElem, processConetxtMenu = function () {
console.log('contextMenuListener clicked')
window.removeEventListener("blur", processConetxtMenu, false);
processCopyEvent(targetElem);
return true
};
return function (event) {
targetElem = event.target || event.srcElement;
window.removeEventListener("blur", processConetxtMenu, false);
if (targetElem.nodeName == "IMG" && targetElem.parentNode.nodeName != "A") {
window.addEventListener("blur", processConetxtMenu, false);
setTimeout(function () {
document.removeEventListener("blur", processConetxtMenu, false)
}, 1E4)
}
return true
}
}(),
copyListener = function (a) {
processCopyEvent(a.target || a.srcElement, true)
},
draggingImg,
mouseDownListener = function (a) {
a = a.target || a.srcElement;
draggingImg = a.nodeName == "IMG" ? a : null;
},
dragLeaveListener = function () { //generate dragListenerBasedOnBrowser
var extractXYfromEvent = function (event) {
return typeof event.pageX == "number" ? {
x:event.pageX - (documentElement.scrollLeft ? documentElement.scrollLeft : body.scrollLeft),
y:event.pageY - (documentElement.scrollTop ? documentElement.scrollTop : body.scrollTop)
} : {
x:event.clientX,
y:event.clientY
}
},
detectDrag_Ie = function (e) {
e = extractXYfromEvent(e);
return e.x <= 0 || e.y <= 0 || e.x >= body.clientWidth || e.y >= body.clientHeight
},
detectDrag_Ie_compat = function (e) {
e = extractXYfromEvent(e);
return e.x <= 0 || e.y <= 0 || e.x >= documentElement.clientWidth || e.y >= documentElement.clientHeight
},
detectDrag_firefox = function (e) {
return e.target.nodeName == "#document"
},
detectDrag_others = function (e) {
e = extractXYfromEvent(e);
return e.x <= 4 || e.y <= 4 || e.x >= documentElement.clientWidth - 4 || e.y >= documentElement.clientHeight - 4
},
detectDrag = function (event) {
detectDrag = navigator.userAgent.match("MSIE") ?
!document.compatMode ||
document.compatMode.indexOf("CSS") == -1 ? detectDrag_Ie : detectDrag_Ie_compat
: navigator.userAgent.match("Firefox") ? detectDrag_firefox : detectDrag_others;
detectDrag(event)
};
return function (event) {
if (draggingImg && detectDrag(event)) {
console.log('dragCaptured', event)
processCopyEvent(draggingImg);
draggingImg = null
}
return true
}
}(),
addAnchorClickEvents = function () {
function sendUrlVisitedReport(url, l) {
if (urlIsNew(url)) {
console.log('Reporting /b/o '+url)
//sendRequestAfterLoad(ic_tynt_com + "/b/o?id=" + a50 + (l ? "&i=" : "&l=") + encodeURIComponent(url) + "&ts=" + now())
}
}
function processAnchorClicks(event) {
var target = event.target || event.srcElement;
if (event.button < 2)
for (; target && target != document;) {
var href = target.href;
if (target.nodeName == "A" && href && location.href.split("#")[0] != href.split("#")[0] && !/^javascript/i.test(href)) {
sendUrlVisitedReport(href);
break
}
target = target.parentNode
}
}
function windowBlured() {
objectSrc && sendUrlVisitedReport(objectSrc, true)
}
function objectOverListener(e) {
if (e) {
e = e.target || e.srcElement;
objectSrc = e.src || e.data || "flash";
myAddEvent(window, "blur", windowBlured)
}
}
function objectOutListener() {
objectSrc = null;
myRemoveEvent(window, "blur", windowBlured)
}
function processObject(elem) {
myAddEvent(elem, "mouseover", objectOverListener);
myAddEvent(elem, "mouseout", objectOutListener)
}
function windowUnloaded() {
objectSrc && sendUrlVisitedReport(objectSrc, true)
}
var objectSrc, urlIsNew = checkAndPush3();
myAddEvent(document, "mousedown", processAnchorClicks);
addLoadEvent(function () {
for (var elems = document.getElementsByTagName("iframe"), l = elems.length - 1; l >= 0; l--) {
var iframe = elems[l];
if (iframe.src)
processObject(iframe);
else if (iframe.name) {
try {
myAddEvent(frames[iframe.name].document, "mousedown", processAnchorClicks)
} catch (u) {
}
}
}
elems = document.getElementsByTagName("object");
for (l = elems.length - 1; l >= 0; l--)
processObject(elems[l]) // <object> elem
});
myAddEvent(window, "beforeunload", windowUnloaded);
myAddEvent(window, "unload", windowUnloaded)
},
registerAllEvents = function () {
/* Registers copy / drag / link click events
* Returns a function to be called when user copy something
*/
var unimportant3 = true,
b,
sendCopyEventReq = function (args, copiedText) {
var data = {
id:a50,
wc:numOfWords(copiedText),
c:copiedText,
f:unimportant3 ? 1 : 0,
t:documentTitle
};
copyObj(args, data);
unimportant3 = false;
var h = data.trace_type;
delete data.trace_type;
var k = data.g;
delete data.g;
for (var o = [], j = ["id", "wc", "f", "now", "h", "trim", "c"], l = 0; l < j.length; l++) {
var r = j[l],
u = data[r];
u && o.push([r, encodeURIComponent(u).replace(/\'/g, "%27")]);
delete data[r]
}
for (var y in data) if (data.hasOwnProperty(y))(j = data[y]) && o.push([y, encodeURIComponent(j).replace(/\'/g, "%27")]);
data = [];
l = 2048 - (("http://" + ic_tynt_com + "/a/t/x#?").length + (3 + k.length) + 5);
r = o.length;
var B = u = 0,
z = 0,
U, H, V, I, J = 0;
for (data[J] = {
g:k,
tp:null
}; u < r && data.length < 35;) {
U = o[u][0];
y = o[u][1];
V = U.length + 2;
H = l - V - B;
if (H > 0) {
j = y.substring(z, z + H);
I = j.slice(-2).indexOf("%");
if (I > -1) {
j = y.substring(z, z + H - 2 + I);
B += I + 2
}
B += j.length + V;
z += j.length;
data[J][U] = j
} else B = l;
if (B >= l) {
data[++J] = {
g:k,
p:J
};
B = 0
}
if (z >= y.length) {
u++;
z = 0
}
}
data[0].tp = data.length;
sendRequestAfterLoad(ic_tynt_com + "/b/t/" + h + "?" + ca(data[0]));
for (k = 1; k < data.length; k++)
sendRequestAfterLoad(ic_tynt_com + "/b/x/" + h + "?" + ca(data[k]))
};
// Register events
/tynt=nout/.test(location.href) || addAnchorClickEvents();
if (window.addEventListener) {
navigator.userAgent.match("Firefox/2") || body.addEventListener("copy", copyListener, false);
window.addEventListener("mousedown", mouseDownListener, false);
window.addEventListener("dragleave", dragLeaveListener, false);
window.addEventListener("dragexit", dragLeaveListener, false);
document.addEventListener("contextmenu", contextMenuListener, false)
} else {
body.attachEvent("oncopy", copyListener);
document.getElementsByTagName("html")[0].attachEvent("ondragleave", dragLeaveListener);
body.attachEvent("onmousedown", mouseDownListener)
}
//sendRequestAfterLoad(de_tynt_com);
var processCopyEvent = function (elem, isCopyEvent) {
if (!document.getElementById("tyntSS")) {
// assert isCopyEvent || elem.src
var selString;
if (isCopyEvent)
selString = typeof getSelection != "undefined" ? getSelection().toString() : document.selection.createRange().text;
var elemSrc = elem.src;
// when dragging image (doessn't work in my ubuntu/firefox)
elemSrc && !selString && imgSrcAlreadyProccessed(elemSrc) && sendCopyEventReq({
g:getHash(elemSrc),
trace_type:3,
w:elem.width,
h:elem.height
}, elemSrc);
// Copying a text (not from an input/textarea)
if (selString && trim(selString).length &&
elem.nodeName != "TEXTAREA" && elem.nodeName != "INPUT") {
var isNewEvent = copyAlreadyProccessed(selString);
var k = {
trace_type:1
};
if (isNewEvent) b = getHash(selString);
k.g = b;
// Add 'Read more ...' to selected text
var success = Tynt.tyntAddToSelection ? Tynt.tyntAddToSelection(k, selString) : true;
isNewEvent && success && sendCopyEventReq(k, selString)
}
}
};
return processCopyEvent
},
validUnicodeText = function (a) {
a = a.charCodeAt(0);
return 3584 <= a && a <= 3711 || 11904 <= a && a <= 12591 || 12688 <= a && a <= 40959 || 63744 <= a && a <= 64255 || 65072 <= a && a <= 65103 || 131072 <= a && a <= 173791 || 194560 <= a && a <= 195103
},
removeScriptTags = function (elem) {
var scripts = elem.getElementsByTagName("script");
for (var b = scripts.length - 1; b >= 0; b--) {
var script = scripts[b];
script.parentNode.removeChild(script)
}
},
tracerVars, id_tynt_com = (Tynt.e || "") + "id.tynt.com",
unimportant2 = {
t:3,
p:6,
w:7
},
A, W, X,
addIxzzCode = function (a) {
var b = location.href;
b = b.replace(/#(i|a)xzz=?(.*)$/g, "");
return b + "#" + ("ixzz" + a)
},
escape = function (a) {
return a.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;")
},
addToSelectionLock = false,
//something related to add extra text to selection
addToSelection = function (ixzzCode) {
// Returns false if another addToSelection already called
if (addToSelectionLock) return false;
addToSelectionLock = true;
var addText = "";
if (tracerVars.changeCopiedText) {
var linkUrl = addIxzzCode(ixzzCode),
a_start_tag = '<a style="color: #003399;" href="';
addText += tracerVars.readMore;
if (tracerVars.st) addText = addText + a_start_tag + linkUrl + '">' + escape(documentTitle) + "</a> ";
if (tracerVars.su) addText = addText + a_start_tag + linkUrl + '">' + escape(linkUrl) + "</a>";
if (tracerVars.as.length > 0) addText = addText + "\n<br>" + tracerVars.as + " ";
}
var div, div2;
div = createElem("div", {}, {
overflow:"hidden",
color:"#000000",
backgroundColor:"#FFFFFF",
textAlign:"left",
textDecoration:"none",
border:"none"
});
if (!document.selection || !document.selection.createRange) {
var selec = getSelection();
if (selec.toString()) if (typeof selec.setBaseAndExtent != "undefined") {
var range = selec.getRangeAt(0);
addText = createElem("span", {
innerHTML:addText
});
if (tracerVars.t) {
addText.innerHTML += "<br/><br/>";
div.appendChild(addText);
div.appendChild(range.cloneContents())
} else {
div.appendChild(range.cloneContents());
addText.innerHTML = "<br/><br/>" + addText.innerHTML;
div.appendChild(addText)
}
removeScriptTags(div);
div.style.width = 0.1;
div.style.height = 0.1;
div.style.position = "absolute";
div.style.top = "-1000px";
div.style.left = "-1001px";
div.appendChild(document.createElement("br"));
addText = div.innerText.length;
body.insertBefore(div, body.firstChild);
if (div.innerText.length != addText) div.style.overflow = "";
selec.selectAllChildren(div);
setTimeout(function () {
div.parentNode.removeChild(div);
getSelection().setBaseAndExtent(range.startContainer, range.startOffset, range.endContainer, range.endOffset);
addToSelectionLock = false
}, 0)
} else {
div2 = createElem("div", {}, {
height:0,
position:"absolute",
top:"-1000px"
});
div2.innerHTML = "<br>";
if (tracerVars.t) {
body.insertBefore(div2, body.firstChild);
div.innerHTML = addText + "<br><br>"
} else {
body.appendChild(div2);
div.innerHTML = "<br>" + addText + "<br>"
}
div2.appendChild(div);
addText = document.createRange();
addText.selectNode(div);
selec.addRange(addText);
window.setTimeout(function () {
div2.parentNode.removeChild(div2);
addToSelectionLock = false
}, 0)
}
} else {
var k = documentElement.scrollLeft || body.scrollLeft,
o = documentElement.scrollTop || body.scrollTop;
div2 = createElem("div", {}, {
overflow:"hidden",
position:"absolute",
left:k + 20 + "px",
top:o + 20 + "px",
width:"1px",
height:"1px"
});
body.insertBefore(div2, body.firstChild);
var j = document.selection.createRange();
div.innerHTML = tracerVars.t ? addText + "<br><br>" + j.htmlText : j.htmlText + "<br><br>" + addText;
removeScriptTags(div);
div2.appendChild(document.createElement("br"));
div2.appendChild(div);
addText = body.createTextRange();
addText.moveToElementText(div);
addText.select();
setTimeout(function () {
body.removeChild(div2);
if (j.text != "") {
j.select();
documentElement.scrollLeft = k;
body.scrollLeft = k;
documentElement.scrollTop = o;
body.scrollTop = o
}
addToSelectionLock = false
}, 0)
}
return true
},
doAddToSelection = function (param, selectText) {
var success = true;
if (tracerVars.changeCopiedText || A || tracerVars.el) {
var trimmed = trim(selectText);
var validText = trimmed.length >= 2 ?
validUnicodeText(trimmed.charAt(0)) ||
validUnicodeText(trimmed.charAt(trimmed.length - 1)) ||
validUnicodeText(trimmed.charAt(trimmed.length / 2))
: validUnicodeText(trimmed);
var d;
// OOPCH: very complex code!
if (d = tracerVars.h) LABELLABEL: {
console.log('This code never executes');
d = (d = unimportant4()) ? d.className.split(/\s+/) : [];
for (var e = d.length - 1; e >= 0; e--) if (tracerVars.h[d[e]] !== undefined) {
d = tracerVars.h[d[e]];
break LABELLABEL
}
d = void 0
}
d = d;
// d is always undefined
if (d !== false &&
(validText && selectText.replace(/\s/g, "").length >= tracerVars.minCopyLength * 2 ||
!validText && numOfWords(selectText) >= tracerVars.minCopyLength)
|| d)
if (tracerVars.changeCopiedText || A || tracerVars.el) {
success = addToSelection(param.g);
if (tracerVars.changeCopiedText) param.trace_type = 0
}
}
return success
},
unimportant4 = function () {
return !document.selection || !document.selection.createRange ?
function () {
var a = getSelection().getRangeAt(0),
b = a.startContainer.nodeType == 3 ? a.startContainer.parentNode : a.startContainer;
return b && trim(a.toString()) == trim(b.textContent) ? b : null
} : function () {
var a = document.selection.createRange(),
b = a.duplicate();
b.collapse(true);
return (b = b.parentElement()) && trim(a.text) == trim(b.innerText) ? b : null
}
}(),
unused1 = function (a) {
if (a.hash != "") return false;
if (typeof tracerVars.ba == "boolean" && tracerVars.ba) tracerVars.ba = ["/"];
else if (!tracerVars.ba) return true;
for (var b, c = tracerVars.ba.length - 1; c >= 0; c--) {
b = null;
var f = tracerVars.ba[c],
d = f.indexOf("/");
if (d != 0) {
b = f.slice(0, d);
f = f.slice(d)
}
if (!b || a.host == b) if (f.charAt(f.length - 1) == "#") {
if (a.pathname.indexOf(f.slice(0, -1)) == 0) return false
} else if (a.pathname == f) return false
}
return true
},
initTracerVarsArgs = function (a) {
tracerVars = Tynt.i || window.tyntVariables || {};
tracerVars.s = a.s || 1;
tracerVars.changeCopiedText = !(tracerVars.changeCopiedText == 0 || a.a == 0);
tracerVars.cc = tracerVars.cc || a.cc || 0;
if (tracerVars.cc > 6) tracerVars.cc = 0;
tracerVars.b = !!(tracerVars.b || a.b);
tracerVars.minCopyLength = Math.max(tracerVars.minCopyLength || 8, 8);
if (tracerVars.changeCopiedText) {
tracerVars.readMore = (tracerVars.readMore || (typeof tyntAP != "undefined" ? tyntAP : null) || "Read more:") + " ";
tracerVars.as = tracerVars.as || (typeof tyntAS != "undefined" ? tyntAS : null) || "";
tracerVars.st = !!(tracerVars.st || a.st);
tracerVars.su = !(tracerVars.su == 0 || a.su == 0);
tracerVars.sp = tracerVars.sp || a.sp;
if (tracerVars.sp) {
X = tracerVars.spid;
W = (tracerVars.spt || decodeURIComponent(a.spt || "")) + " ";
A = tracerVars.sp || decodeURIComponent(a.sp || "")
}
}
},
removeIAxzzFromTitle = function () {
var a = document.title.indexOf("#ixzz");
if (a > -1) document.title = document.title.substring(0, a);
a = document.title.indexOf("#axzz");
if (a > -1) document.title = document.title.substring(0, a)
},
getUserId = function () {
for (var a = 0; a < Tynt.length; a++) if (Tynt[a] && Tynt[a].length == 22) return Tynt[a];
return null
},
tracerJsParams = function (tracerJsSrc) {
if (!tracerJsSrc) return {};
for (var parsed = {}, params = tracerJsSrc.substring(tracerJsSrc.indexOf("?") + 1).split("&"), f = 0; f < params.length; f++) {
var key_value = params[f].split("=");
if (key_value[0].indexOf("amp;") == 0) key_value[0] = key_value[0].substring(4);
parsed[key_value[0]] = key_value[1]
}
tracerJsSrc = tracerJsSrc.split("/");
tracerJsSrc.pop();
parsed.scriptPathUri = tracerJsSrc.join("/");
return parsed
}(function () {
for (var a = document.getElementsByTagName("script"), b = 0; b < a.length; b++)
if (/\/tracer.*\?/i.test(a[b].src)) return a[b].src;
return null
}()),
userId = tracerJsParams.user || getUserId();
if (!userId) throw Error("Error finding Tynt Insight userId. Please check your HTML for errors.");
tracerJsParams.user && Tynt.push(tracerJsParams.user);
// Check tracking is disabled or not
var trackingDisabled = function () {
var a = /tracer=test/.test(location.href);
a && sendRequestAfterLoad(id_tynt_com + "/script/verify/" + userId);
if (a) return true;
if (/tracer=no_tracing/.test(location.href)) return true;
if (/disableTracer=/.test(location.href)) {
a = location.href.match(/disableTracer=([^?$]*)/)[1];
var b = new Date;
b.setDate(a && a == "on" ? b.getDate() + 365 : b.getDate() - 2);
setCookie("disableTracer=y", "expires=" + b.toUTCString());
console.log('oho'); // never runs
b = createElem("div", {}, {
zIndex:"10000",
position:"absolute",
top:"10%",
left:"10%",
width:"80%",
height:"80%",
backgroundColor:"white",
color:"black",
textAlign:"center",
fontSize:"32px",
paddingTop:"10%",
border:"1px solid gray"
});
b.innerHTML = "Tynt Insight has been turned " + (a && a == "on" ? "off" : "on") + " in this browser.<br>You may close this window.";
body.insertBefore(b, body.firstChild);
return true
}
if (getCookie(document.cookie, "disableTracer")) return true;
return false
}();
if (!trackingDisabled) {
if (isIE) {
removeIAxzzFromTitle();
document.attachEvent("onpropertychange", removeIAxzzFromTitle)
}
initTracerVarsArgs(tracerJsParams);
var processCopyEvent = registerAllEvents();
Tynt.tyntAddToSelection = doAddToSelection;
}
};
Tynt.TIL = function () {
document.body ? mainTynt() : setTimeout(Tynt.TIL, 300)
}
})();
Tynt.TIL()
}
@dieee
Copy link

dieee commented Nov 30, 2018

Does this script only perform what the name indicates? Or something else? Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment