mirror of
https://github.com/Oreolek/TrackMeNot-Chrome.git
synced 2024-05-16 16:08:19 +03:00
jshint error fixes
This commit is contained in:
parent
b4754e437f
commit
b03e76e328
|
@ -10,6 +10,7 @@ insert_final_newline = true
|
||||||
charset = utf-8
|
charset = utf-8
|
||||||
indent_style = space
|
indent_style = space
|
||||||
indent_size = 2
|
indent_size = 2
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
# Tab indentation (no size specified)
|
# Tab indentation (no size specified)
|
||||||
[Makefile]
|
[Makefile]
|
||||||
|
|
344
tmn_search.js
344
tmn_search.js
|
@ -29,7 +29,7 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
function getYahooId() {
|
function getYahooId() {
|
||||||
var id = "A0geu";
|
var id = "A0geu";
|
||||||
while (id.length < 24) {
|
while (id.length < 24) {
|
||||||
var lower = Math.random() < .5;
|
var lower = Math.random() < 0.5;
|
||||||
var num = parseInt(Math.random() * 38);
|
var num = parseInt(Math.random() * 38);
|
||||||
if (num === 37) {
|
if (num === 37) {
|
||||||
id += '_';
|
id += '_';
|
||||||
|
@ -50,72 +50,82 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
return id;
|
return id;
|
||||||
}
|
}
|
||||||
var testAd_google = function(anchorClass,anchorlink) {
|
var testAd_google = function(anchorClass,anchorlink) {
|
||||||
return ( anchorlink
|
return (
|
||||||
&& (anchorClass=='l' || anchorClass=='l vst')
|
anchorlink &&
|
||||||
&& anchorlink.indexOf('http')==0
|
(
|
||||||
&& anchorlink.indexOf('https')!=0);
|
anchorClass=='l' ||
|
||||||
}
|
anchorClass=='l vst'
|
||||||
|
) &&
|
||||||
|
anchorlink.indexOf('http') === 0 &&
|
||||||
|
anchorlink.indexOf('https') !== 0
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
var testAd_yahoo= function(anchorClass,anchorlink) {
|
var testAd_yahoo= function(anchorClass,anchorlink) {
|
||||||
return ( anchorClass=='\"yschttl spt\"' || anchorClass=='yschttl spt');
|
return ( anchorClass=='\"yschttl spt\"' || anchorClass=='yschttl spt');
|
||||||
}
|
};
|
||||||
|
|
||||||
var testAd_aol = function(anchorClass,anchorlink) {
|
var testAd_aol = function(anchorClass,anchorlink) {
|
||||||
return (anchorClass=='\"find\"' || anchorClass=='find'
|
return (
|
||||||
&& anchorlink.indexOf('https')!=0 && anchorlink.indexOf('aol')<0 );
|
anchorClass=='\"find\"' ||
|
||||||
}
|
anchorClass=='find' &&
|
||||||
|
anchorlink.indexOf('https') !== 0 &&
|
||||||
|
anchorlink.indexOf('aol')<0
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
var testAd_bing = function(anchorClass,anchorlink) {
|
var testAd_bing = function(anchorClass,anchorlink) {
|
||||||
return ( anchorlink
|
return (
|
||||||
&& anchorlink.indexOf('http')==0
|
anchorlink &&
|
||||||
&& anchorlink.indexOf('https')!=0
|
anchorlink.indexOf('http') === 0 &&
|
||||||
&& anchorlink.indexOf('msn')<0
|
anchorlink.indexOf('https') !== 0 &&
|
||||||
&& anchorlink.indexOf('live')<0
|
anchorlink.indexOf('msn')<0 &&
|
||||||
&& anchorlink.indexOf('bing')<0
|
anchorlink.indexOf('live')<0 &&
|
||||||
&& anchorlink.indexOf('microsoft')<0
|
anchorlink.indexOf('bing')<0 &&
|
||||||
&& anchorlink.indexOf('WindowsLiveTranslator')<0 ) }
|
anchorlink.indexOf('microsoft')<0 &&
|
||||||
|
anchorlink.indexOf('WindowsLiveTranslator')<0
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
var testAd_baidu = function(anchorClass,anchorlink) {
|
var testAd_baidu = function(anchorClass,anchorlink) {
|
||||||
return ( anchorlink
|
return (
|
||||||
&& anchorlink.indexOf('baidu')<0
|
anchorlink &&
|
||||||
&& anchorlink.indexOf('https')!=0 );
|
anchorlink.indexOf('baidu') < 0 &&
|
||||||
}
|
anchorlink.indexOf('https') !== 0
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
var getButton_google =" var getButton = function( ) {var button = getElementsByAttrValue(document,'button', 'name', 'btnG' ); if ( !button ) button = getElementsByAttrValue(document,'button', 'name', 'btnK' );return button;}";
|
||||||
|
var getButton_yahoo= " var getButton = function( ) {return getElementsByAttrValue(document,'input', 'class', 'sbb' ); } ";
|
||||||
|
var getButton_bing= " var getButton = function( ) {return document.getElementById('sb_form_go');} ";
|
||||||
|
var getButton_aol = " var getButton = function ( ) {return document.getElementById('csbbtn1'); }";
|
||||||
|
var getButton_baidu = " var getButton = function ( ){ return getElementsByAttrValue(document,'input', 'value', '????' ); }";
|
||||||
|
|
||||||
var getButton_google =" var getButton = function( ) {var button = getElementsByAttrValue(document,'button', 'name', 'btnG' ); if ( !button ) button = getElementsByAttrValue(document,'button', 'name', 'btnK' );return button;}"
|
SearchBox_google = "var searchbox = function( ) { return getElementsByAttrValue(document,'input', 'name', 'q' ); } ";
|
||||||
var getButton_yahoo= " var getButton = function( ) {return getElementsByAttrValue(document,'input', 'class', 'sbb' ); } "
|
SearchBox_yahoo = "var searchbox = function( ) { return document.getElementById('yschsp');}";
|
||||||
var getButton_bing= " var getButton = function( ) {return document.getElementById('sb_form_go');} "
|
SearchBox_bing= "var searchbox = function( ) {return document.getElementById('sb_form_q'); } ";
|
||||||
var getButton_aol = " var getButton = function ( ) {return document.getElementById('csbbtn1'); }"
|
SearchBox_aol= "var searchbox = function( ) {return document.getElementById('csbquery1'); }";
|
||||||
var getButton_baidu = " var getButton = function ( ){ return getElementsByAttrValue(document,'input', 'value', '????' ); }"
|
SearchBox_baidu= "var searchbox = function( ) {return document.getElementById('kw');}";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
SearchBox_google = "var searchbox = function( ) { return getElementsByAttrValue(document,'input', 'name', 'q' ); } "
|
|
||||||
SearchBox_yahoo = "var searchbox = function( ) { return document.getElementById('yschsp');}"
|
|
||||||
SearchBox_bing= "var searchbox = function( ) {return document.getElementById('sb_form_q'); } "
|
|
||||||
SearchBox_aol= "var searchbox = function( ) {return document.getElementById('csbquery1'); }"
|
|
||||||
SearchBox_baidu= "var searchbox = function( ) {return document.getElementById('kw');}"
|
|
||||||
|
|
||||||
|
|
||||||
var suggest_google = ['gsr' , 'td', function ( elt ) {
|
var suggest_google = ['gsr' , 'td', function ( elt ) {
|
||||||
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'gac_c' )
|
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'gac_c' );
|
||||||
}]
|
}];
|
||||||
|
|
||||||
var suggest_yahoo = ['atgl' , 'a', function ( elt ) {
|
var suggest_yahoo = ['atgl' , 'a', function ( elt ) {
|
||||||
return elt.hasAttribute('gossiptext')
|
return elt.hasAttribute('gossiptext');
|
||||||
}]
|
}];
|
||||||
|
|
||||||
var suggest_bing = ['sa_drw' , 'li', function ( elt ) {
|
var suggest_bing = ['sa_drw' , 'li', function ( elt ) {
|
||||||
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'sa_sg' )
|
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'sa_sg' );
|
||||||
}]
|
}];
|
||||||
|
|
||||||
var suggest_baidu = ['st' , 'tr', function ( elt ) {
|
var suggest_baidu = ['st' , 'tr', function ( elt ) {
|
||||||
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'ml' )
|
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'ml' );
|
||||||
}]
|
}];
|
||||||
|
|
||||||
var suggest_aol = ['ACC' , 'a', function ( elt ) {
|
var suggest_aol = ['ACC' , 'a', function ( elt ) {
|
||||||
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'acs')
|
return (elt.hasAttribute('class') && elt.getAttribute('class') == 'acs');
|
||||||
}]
|
}];
|
||||||
|
|
||||||
var engines = [
|
var engines = [
|
||||||
{'id':'google','name':'Google Search', 'urlmap':"https://www.google.com/search?hl=en&q=|", 'regexmap':"^(https?:\/\/[a-z]+\.google\.(co\\.|com\\.)?[a-z]{2,3}\/(search){1}[\?]?.*?[&\?]{1}q=)([^&]*)(.*)$", "host":"(www\.google\.(co\.|com\.)?[a-z]{2,3})$","testad":"var testad = function(ac,al) {return ( al&& (ac=='l' || ac=='l vst')&& al.indexOf('http')==0 && al.indexOf('https')!=0);}",'box':SearchBox_google,'button':getButton_google} ,
|
{'id':'google','name':'Google Search', 'urlmap':"https://www.google.com/search?hl=en&q=|", 'regexmap':"^(https?:\/\/[a-z]+\.google\.(co\\.|com\\.)?[a-z]{2,3}\/(search){1}[\?]?.*?[&\?]{1}q=)([^&]*)(.*)$", "host":"(www\.google\.(co\.|com\.)?[a-z]{2,3})$","testad":"var testad = function(ac,al) {return ( al&& (ac=='l' || ac=='l vst')&& al.indexOf('http')==0 && al.indexOf('https')!=0);}",'box':SearchBox_google,'button':getButton_google} ,
|
||||||
|
@ -123,7 +133,7 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
{'id':'bing','name':'Bing Search', 'urlmap':"http://www.bing.com/search?q=|", 'regexmap':"^(https?:\/\/www\.bing\.com\/search\?[^&]*q=)([^&]*)(.*)$", "host":"(www\.bing\.com)$","testad":"var testad = function(ac,al) {return ( al&& al.indexOf('http')==0&& al.indexOf('https')!=0 && al.indexOf('msn')<0 && al.indexOf('live')<0 && al.indexOf('bing')<0&& al.indexOf('microsoft')<0 && al.indexOf('WindowsLiveTranslator')<0 ) }",'box':SearchBox_bing,'button':getButton_bing},
|
{'id':'bing','name':'Bing Search', 'urlmap':"http://www.bing.com/search?q=|", 'regexmap':"^(https?:\/\/www\.bing\.com\/search\?[^&]*q=)([^&]*)(.*)$", "host":"(www\.bing\.com)$","testad":"var testad = function(ac,al) {return ( al&& al.indexOf('http')==0&& al.indexOf('https')!=0 && al.indexOf('msn')<0 && al.indexOf('live')<0 && al.indexOf('bing')<0&& al.indexOf('microsoft')<0 && al.indexOf('WindowsLiveTranslator')<0 ) }",'box':SearchBox_bing,'button':getButton_bing},
|
||||||
{'id':'baidu','name':'Baidu Search', 'urlmap':"http://www.baidu.com/s?wd=|", 'regexmap':"^(https?:\/\/www\.baidu\.com\/s\?.*?wd=)([^&]*)(.*)$", "host":"(www\.baidu\.com)$","testad":"var testad = function(ac,al) {return ( al&& al.indexOf('baidu')<0 && al.indexOf('https')!=0 );}",'box':SearchBox_baidu,'button':getButton_baidu},
|
{'id':'baidu','name':'Baidu Search', 'urlmap':"http://www.baidu.com/s?wd=|", 'regexmap':"^(https?:\/\/www\.baidu\.com\/s\?.*?wd=)([^&]*)(.*)$", "host":"(www\.baidu\.com)$","testad":"var testad = function(ac,al) {return ( al&& al.indexOf('baidu')<0 && al.indexOf('https')!=0 );}",'box':SearchBox_baidu,'button':getButton_baidu},
|
||||||
{'id':'aol','name':'Aol Search', 'urlmap':"http://search.aol.com/aol/search?q=|", 'regexmap':"^(https?:\/\/[a-z0-9.]*?search\.aol\.com\/aol\/search\?.*?q=)([^&]*)(.*)$", "host":"([a-z0-9.]*?search\.aol\.com)$","testad":"var testad = function(ac,al){return(ac=='\"find\"'||ac=='find'&& al.indexOf('https')!=0 && al.indexOf('aol')<0 );}",'box':SearchBox_aol,'button':getButton_aol}
|
{'id':'aol','name':'Aol Search', 'urlmap':"http://search.aol.com/aol/search?q=|", 'regexmap':"^(https?:\/\/[a-z0-9.]*?search\.aol\.com\/aol\/search\?.*?q=)([^&]*)(.*)$", "host":"([a-z0-9.]*?search\.aol\.com)$","testad":"var testad = function(ac,al){return(ac=='\"find\"'||ac=='find'&& al.indexOf('https')!=0 && al.indexOf('aol')<0 );}",'box':SearchBox_aol,'button':getButton_aol}
|
||||||
]
|
];
|
||||||
|
|
||||||
function roll(min,max){
|
function roll(min,max){
|
||||||
return Math.floor(Math.random()*(max+1))+min;
|
return Math.floor(Math.random()*(max+1))+min;
|
||||||
|
@ -140,7 +150,11 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function getEngineById( id) {
|
function getEngineById( id) {
|
||||||
return engines.filter(function(a) {return a.id ==id})[0]
|
return engines.filter(
|
||||||
|
function(a) {
|
||||||
|
return a.id === id;
|
||||||
|
}
|
||||||
|
)[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
function stripPhrases(htmlStr) {
|
function stripPhrases(htmlStr) {
|
||||||
|
@ -153,39 +167,33 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
return htmlStr.replace(/(<([^>]+)>)/ig,"");
|
return htmlStr.replace(/(<([^>]+)>)/ig,"");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function pressEnter(elt) {
|
function pressEnter(elt) {
|
||||||
var timers = getTimingArray();
|
var timers = getTimingArray();
|
||||||
var evtDown = new KeyboardEvent("keydown", {"keyCode":13} );
|
var evtDown = new KeyboardEvent("keydown", {"keyCode":13} );
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtDown);
|
elt.dispatchEvent(evtDown);
|
||||||
},timers[0])
|
},timers[0]);
|
||||||
var evtPress = new KeyboardEvent("keypress", {"keyCode":13} );
|
var evtPress = new KeyboardEvent("keypress", {"keyCode":13} );
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtPress);
|
elt.dispatchEvent(evtPress);
|
||||||
},timers[1])
|
},timers[1]);
|
||||||
var evtUp = new KeyboardEvent("keyup", {"keyCode":13} );
|
var evtUp = new KeyboardEvent("keyup", {"keyCode":13} );
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtUp);
|
elt.dispatchEvent(evtUp);
|
||||||
},timers[2])
|
},timers[2]);
|
||||||
window.setTimeout(sendPageLoaded,timers[3])
|
window.setTimeout(sendPageLoaded,timers[3]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function downKey(chara, searchBox) {
|
function downKey(chara, searchBox) {
|
||||||
var charCode = chara[chara.length-1].charCodeAt(0)
|
var charCode = chara[chara.length-1].charCodeAt(0);
|
||||||
var evtDown = new KeyboardEvent("keydown", {"charCode":charCode} );
|
var evtDown = new KeyboardEvent("keydown", {"charCode":charCode} );
|
||||||
searchBox.dispatchEvent(evtDown)
|
searchBox.dispatchEvent(evtDown);
|
||||||
}
|
}
|
||||||
|
|
||||||
function pressKey(chara, searchBox) {
|
function pressKey(chara, searchBox) {
|
||||||
var charCode = chara[chara.length-1].charCodeAt(0)
|
var charCode = chara[chara.length-1].charCodeAt(0);
|
||||||
var evtPress = new KeyboardEvent("keypress", {"charCode":charCode} );
|
var evtPress = new KeyboardEvent("keypress", {"charCode":charCode} );
|
||||||
searchBox.dispatchEvent(evtPress)
|
searchBox.dispatchEvent(evtPress);
|
||||||
}
|
}
|
||||||
|
|
||||||
function inputChar(chara, searchBox) {
|
function inputChar(chara, searchBox) {
|
||||||
|
@ -217,9 +225,9 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
anchorLink = pageLinks[i].getAttribute("href");
|
anchorLink = pageLinks[i].getAttribute("href");
|
||||||
anchorClass = pageLinks[i].getAttribute("class");
|
anchorClass = pageLinks[i].getAttribute("class");
|
||||||
var link = stripTags(pageLinks[i].innerHTML);
|
var link = stripTags(pageLinks[i].innerHTML);
|
||||||
eval (engine.testad)
|
eval (engine.testad);
|
||||||
if ( testad!="undefined" && testad(anchorClass,anchorLink) ) {
|
if ( testad!="undefined" && testad(anchorClass,anchorLink) ) {
|
||||||
j++
|
j++;
|
||||||
if ( j == clickIndex ) {
|
if ( j == clickIndex ) {
|
||||||
var logEntry = JSON.stringify({
|
var logEntry = JSON.stringify({
|
||||||
'type' : 'click',
|
'type' : 'click',
|
||||||
|
@ -227,10 +235,10 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
'query' : link,
|
'query' : link,
|
||||||
'id':tmn_id
|
'id':tmn_id
|
||||||
});
|
});
|
||||||
log(logEntry)
|
log(logEntry);
|
||||||
try {
|
try {
|
||||||
clickElt(pageLinks[i])
|
clickElt(pageLinks[i]);
|
||||||
debug("link clicked")
|
debug("link clicked");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
alert("error opening click-through request for " + e);
|
alert("error opening click-through request for " + e);
|
||||||
}
|
}
|
||||||
|
@ -240,37 +248,33 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function clickButton() {
|
function clickButton() {
|
||||||
eval(engine.button)
|
eval(engine.button);
|
||||||
var button = getButton(document)
|
var button = getButton(document);
|
||||||
clickElt(button);
|
clickElt(button);
|
||||||
debug("send page loaded")
|
debug("send page loaded");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function clickElt(elt) {
|
function clickElt(elt) {
|
||||||
var win = document.defaultView;
|
var win = document.defaultView;
|
||||||
if ( !elt) return;
|
if ( !elt)
|
||||||
|
return;
|
||||||
var timers = getTimingArray();
|
var timers = getTimingArray();
|
||||||
var evtDown = document.createEvent("MouseEvents");
|
var evtDown = document.createEvent("MouseEvents");
|
||||||
evtDown.initMouseEvent("mousedown",true,true,win,0, 0, 0, 0, 0, false, false, false, false, 0, null);
|
evtDown.initMouseEvent("mousedown",true,true,win,0, 0, 0, 0, 0, false, false, false, false, 0, null);
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtDown);
|
elt.dispatchEvent(evtDown);
|
||||||
},timers[0])
|
},timers[0]);
|
||||||
var evtUp = document.createEvent("MouseEvents");
|
var evtUp = document.createEvent("MouseEvents");
|
||||||
evtUp.initMouseEvent("mouseup",true, true,win,0,0,0,0,0, false, false, false, false, 0, null);
|
evtUp.initMouseEvent("mouseup",true, true,win,0,0,0,0,0, false, false, false, false, 0, null);
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtUp);
|
elt.dispatchEvent(evtUp);
|
||||||
},timers[1])
|
},timers[1]);
|
||||||
var evtCl = document.createEvent("MouseEvents");
|
var evtCl = document.createEvent("MouseEvents");
|
||||||
evtCl.initMouseEvent("click",true, true,win,0,0,0,0, 0, false, false, false, false, 0, null);
|
evtCl.initMouseEvent("click",true, true,win,0,0,0,0, 0, false, false, false, false, 0, null);
|
||||||
window.setTimeout(function(){
|
window.setTimeout(function(){
|
||||||
elt.dispatchEvent(evtCl);
|
elt.dispatchEvent(evtCl);
|
||||||
},timers[2])
|
},timers[2]);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -305,9 +309,9 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
suggestElts.push(line);
|
suggestElts.push(line);
|
||||||
}
|
}
|
||||||
var suggestions = suggestElts.map(function(x) {
|
var suggestions = suggestElts.map(function(x) {
|
||||||
return stripTags(x.innerHTML)
|
return stripTags(x.innerHTML);
|
||||||
});
|
});
|
||||||
debug( 'TMN: ' +suggestions)
|
debug( 'TMN: ' +suggestions);
|
||||||
return suggestElts.slice();
|
return suggestElts.slice();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -316,22 +320,24 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
var searched = searchValue.split(' ');
|
var searched = searchValue.split(' ');
|
||||||
var tosearch = nextQuery.split(' ');
|
var tosearch = nextQuery.split(' ');
|
||||||
var result = [];
|
var result = [];
|
||||||
result = result.concat(searched.filter(function(x) {
|
result = result.concat(
|
||||||
return (tosearch.indexOf(x)>=0)
|
searched.filter(
|
||||||
}));
|
function(x) {
|
||||||
|
return (tosearch.indexOf(x) >= 0);
|
||||||
|
}
|
||||||
|
)
|
||||||
|
);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getTimingArray() {
|
function getTimingArray() {
|
||||||
var timers = [];
|
var timers = [];
|
||||||
for (var i=0; i<5; i++) {
|
for (var i=0; i<5; i++) {
|
||||||
timers.push(Math.floor(Math.random()*30))
|
timers.push(Math.floor(Math.random()*30));
|
||||||
}
|
}
|
||||||
return timers.sort();
|
return timers.sort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function typeQuery( queryToSend, currIndex, searchBox, chara,isIncr ) {
|
function typeQuery( queryToSend, currIndex, searchBox, chara,isIncr ) {
|
||||||
var nextPress ;
|
var nextPress ;
|
||||||
tmnCurrentQuery = queryToSend;
|
tmnCurrentQuery = queryToSend;
|
||||||
|
@ -349,56 +355,62 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
var newWord = queryToSend.substring(currIndex).split(" ")[0];
|
var newWord = queryToSend.substring(currIndex).split(" ")[0];
|
||||||
if ( newWord.length>1 && ( currIndex == 0 || queryToSend[currIndex-1]==" ") ) {
|
if (
|
||||||
cout("Checking if "+newWord + " appears in "+searchBox.value)
|
newWord.length>1 &&
|
||||||
if (! (searchBox.value.indexOf(newWord+" ")<0) ) {
|
(
|
||||||
cout("It\s in")
|
currIndex === 0 ||
|
||||||
|
queryToSend[currIndex-1] === " "
|
||||||
|
)
|
||||||
|
) {
|
||||||
|
cout("Checking if "+newWord + " appears in "+searchBox.value);
|
||||||
|
if ( searchBox.value.indexOf(newWord+" ") >= 0 ) {
|
||||||
|
cout("It's in");
|
||||||
if( searchBox.value.indexOf(newWord, currIndex)>=0 ) {
|
if( searchBox.value.indexOf(newWord, currIndex)>=0 ) {
|
||||||
cout("We\re movine of "+ newWord.length+1 )
|
cout("We're moving of "+ newWord.length+1 );
|
||||||
searchBox.selectionEnd+= newWord.length+1;
|
searchBox.selectionEnd+= newWord.length+1;
|
||||||
searchBox.selectionStart =searchBox.selectionEnd;
|
searchBox.selectionStart =searchBox.selectionEnd;
|
||||||
}
|
}
|
||||||
currIndex+= newWord.length;
|
currIndex+= newWord.length;
|
||||||
updateStatus(searchBox.value);
|
updateStatus(searchBox.value);
|
||||||
nextPress = roll(50,250);
|
nextPress = roll(50,250);
|
||||||
window.setTimeout(typeQuery, nextPress, queryToSend,currIndex,searchBox,chara.slice() ,false )
|
window.setTimeout(typeQuery, nextPress, queryToSend,currIndex,searchBox,chara.slice() ,false );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
chara.push(queryToSend[currIndex])
|
chara.push(queryToSend[currIndex]);
|
||||||
var timers = getTimingArray();
|
var timers = getTimingArray();
|
||||||
var textvalue = queryToSend[currIndex];
|
var textvalue = queryToSend[currIndex];
|
||||||
window.setTimeout( function(){
|
window.setTimeout( function(){
|
||||||
return downKey(chara, searchBox)
|
return downKey(chara, searchBox);
|
||||||
}, timers[0]);
|
}, timers[0]);
|
||||||
window.setTimeout( function(){
|
window.setTimeout( function(){
|
||||||
return pressKey(chara, searchBox)
|
return pressKey(chara, searchBox);
|
||||||
}, timers[1]);
|
}, timers[1]);
|
||||||
window.setTimeout( function(){
|
window.setTimeout( function(){
|
||||||
return inputChar(chara, searchBox)
|
return inputChar(chara, searchBox);
|
||||||
}, timers[2]);
|
}, timers[2]);
|
||||||
window.setTimeout( function(){
|
window.setTimeout( function(){
|
||||||
searchBox.value += textvalue
|
searchBox.value += textvalue;
|
||||||
}, timers[3]);
|
}, timers[3]);
|
||||||
window.setTimeout( function(){
|
window.setTimeout( function(){
|
||||||
return releaseKey( chara, searchBox)
|
return releaseKey( chara, searchBox);
|
||||||
}, timers[4]);
|
}, timers[4]);
|
||||||
updateStatus(searchBox.value);
|
updateStatus(searchBox.value);
|
||||||
currIndex++
|
currIndex++;
|
||||||
nextPress = roll(50,250);
|
nextPress = roll(50,250);
|
||||||
window.setTimeout(typeQuery, nextPress, queryToSend,currIndex,searchBox,chara.slice(),false )
|
window.setTimeout(typeQuery, nextPress, queryToSend,currIndex,searchBox,chara.slice(),false );
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
updateStatus(searchBox.value);
|
updateStatus(searchBox.value);
|
||||||
nextPress = roll(10,30);
|
nextPress = roll(10,30);
|
||||||
if (Math.random() <0.5) window.setTimeout( clickButton, nextPress);
|
if (Math.random() <0.5) window.setTimeout( clickButton, nextPress);
|
||||||
else window.setTimeout(pressEnter, nextPress, searchBox)
|
else window.setTimeout(pressEnter, nextPress, searchBox);
|
||||||
// window.setTimeout( sendCurrentURL, nextpress+1)
|
// window.setTimeout( sendCurrentURL, nextpress+1)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendCurrentURL() {
|
function sendCurrentURL() {
|
||||||
debug("The current url is: " +window.location.href)
|
debug("The current url is: " +window.location.href);
|
||||||
var response = {
|
var response = {
|
||||||
url: window.location.href
|
url: window.location.href
|
||||||
};
|
};
|
||||||
|
@ -424,8 +436,8 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
host = "";
|
host = "";
|
||||||
}
|
}
|
||||||
var reg = new RegExp(engine.host,'g')
|
var reg = new RegExp(engine.host,'g');
|
||||||
var encodedUrl = queryToURL(url, queryToSend)
|
var encodedUrl = queryToURL(url, queryToSend);
|
||||||
var logEntry = JSON.stringify({
|
var logEntry = JSON.stringify({
|
||||||
'type' : 'query',
|
'type' : 'query',
|
||||||
"engine" : engine.id,
|
"engine" : engine.id,
|
||||||
|
@ -433,9 +445,9 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
'query' : queryToSend,
|
'query' : queryToSend,
|
||||||
'id' : tmn_id
|
'id' : tmn_id
|
||||||
});
|
});
|
||||||
log(logEntry)
|
log(logEntry);
|
||||||
updateStatus(queryToSend);
|
updateStatus(queryToSend);
|
||||||
if ( host =="" || !host.match(reg) ) {
|
if ( host === "" || !host.match(reg) ) {
|
||||||
try {
|
try {
|
||||||
window.location.href = encodedUrl;
|
window.location.href = encodedUrl;
|
||||||
return encodedUrl;
|
return encodedUrl;
|
||||||
|
@ -448,21 +460,23 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (engine.button) eval(engine.button)
|
if (engine.button)
|
||||||
if (engine.box) eval(engine.box)
|
eval(engine.button);
|
||||||
|
if (engine.box)
|
||||||
|
eval(engine.box);
|
||||||
var searchBox = engine.box ? searchbox() : null;
|
var searchBox = engine.box ? searchbox() : null;
|
||||||
var searchButton = engine.button ? getButton() : null;
|
var searchButton = engine.button ? getButton() : null;
|
||||||
if ( searchBox && searchButton && engine!='aol' ) {
|
if ( searchBox && searchButton && engine!='aol' ) {
|
||||||
debug("The searchbox has been found "+searchBox )
|
debug("The searchbox has been found "+searchBox );
|
||||||
searchBox.value = getCommonWords(searchBox.value,queryToSend).join(' ');
|
searchBox.value = getCommonWords(searchBox.value,queryToSend).join(' ');
|
||||||
searchBox.selectionStart = 0;
|
searchBox.selectionStart = 0;
|
||||||
searchBox.selectionEnd = 0;
|
searchBox.selectionEnd = 0;
|
||||||
var chara = new Array();
|
var chara = [];
|
||||||
typeQuery( queryToSend, 0, searchBox, chara,false );
|
typeQuery( queryToSend, 0, searchBox, chara,false );
|
||||||
return null;
|
return null;
|
||||||
} else {
|
} else {
|
||||||
tmnCurrentURL = encodedUrl;
|
tmnCurrentURL = encodedUrl;
|
||||||
debug("The searchbox can not be found " )
|
debug("The searchbox can not be found " );
|
||||||
try {
|
try {
|
||||||
window.location.href = encodedUrl;
|
window.location.href = encodedUrl;
|
||||||
return encodedUrl;
|
return encodedUrl;
|
||||||
|
@ -473,95 +487,46 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
});
|
});
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//function updateURLRegexp( eng, url) {
|
|
||||||
|
|
||||||
//var result = checkForSearchUrl(url);
|
|
||||||
//if (!result) {
|
|
||||||
//return;
|
|
||||||
//}
|
|
||||||
|
|
||||||
//var pre = result[1];
|
|
||||||
//var query = result[2];
|
|
||||||
//var post = result[3];
|
|
||||||
//var eng = result[4];
|
|
||||||
//var asearch = pre+'|'+post;
|
|
||||||
|
|
||||||
|
|
||||||
//var regex = regexMap[eng];
|
|
||||||
//cout(" regex: "+regex+" ->\n "+url);
|
|
||||||
//result = url.match(regex);
|
|
||||||
//cout("updateURLRegexp")
|
|
||||||
//if (!result) {
|
|
||||||
//cout("Can't find a regexp matching searched url")
|
|
||||||
//return false;
|
|
||||||
//}
|
|
||||||
|
|
||||||
//if (result.length !=4 ){
|
|
||||||
//if (result.length ==6 && eng == "google" ) {
|
|
||||||
//result.splice(2,2);
|
|
||||||
//result.push(eng);
|
|
||||||
//}
|
|
||||||
//cout("REGEX_ERROR: "+url);
|
|
||||||
//for (var i in result)
|
|
||||||
//cout(" **** "+i+")"+result[i])
|
|
||||||
//}
|
|
||||||
|
|
||||||
//// -- EXTRACT DATA FROM THE URL
|
|
||||||
//var pre = result[1];
|
|
||||||
//var post = result[3];
|
|
||||||
//var asearch = pre+'|'+post;
|
|
||||||
|
|
||||||
|
|
||||||
//if(eng=="google" && !url.match("^(https?:\/\/[a-z]+\.google\.(co\\.|com\\.)?[a-z^\/]{2,3}\/(search){1}\?.*?[&\?]{1}q=)([^&]*)(.*)$") || url.indexOf("sclient=psy-ab")>0 || url.indexOf("#")>0 )
|
|
||||||
//return true;
|
|
||||||
//// -- NEW SEARCH URL: ADD TO USER_MAP
|
|
||||||
//if (asearch ){
|
|
||||||
//setCurrentURLMap(eng, asearch);
|
|
||||||
//}
|
|
||||||
|
|
||||||
//return true;
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
function checkForSearchUrl(url) {
|
function checkForSearchUrl(url) {
|
||||||
var result = null;
|
var result = null;
|
||||||
|
var id = null;
|
||||||
for (var i=0;i < engines.length; i++) {
|
for (var i=0;i < engines.length; i++) {
|
||||||
var eng = engines[i]
|
var eng = engines[i];
|
||||||
var regex = eng.regexmap;
|
var regex = eng.regexmap;
|
||||||
debug(" regex: "+regex+" ->\n "+url);
|
debug(" regex: "+regex+" ->\n "+url);
|
||||||
result = url.match(regex);
|
result = url.match(regex);
|
||||||
|
|
||||||
if (result) {
|
if (result) {
|
||||||
cout(regex + " MATCHED! on "+eng.id );
|
cout(regex + " MATCHED! on "+eng.id );
|
||||||
|
id = eng.id;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!result)return null;
|
if (!result)return null;
|
||||||
|
|
||||||
if (result.length !=4 ){
|
if (result.length !=4 ){
|
||||||
if (result.length ==6 && eng.id == "google" ) {
|
if (result.length ==6 && id == "google" ) {
|
||||||
result.splice(2,2);
|
result.splice(2,2);
|
||||||
result.push(eng.id);
|
result.push(id);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
cout("REGEX_ERROR: "+url);
|
cout("REGEX_ERROR: "+url);
|
||||||
/* for (var i in result)
|
/* for (var i in result)
|
||||||
cout(" **** "+i+")"+result[i])*/
|
cout(" **** "+i+")"+result[i])*/
|
||||||
}
|
}
|
||||||
result.push(eng.id);
|
result.push(id);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
function isSafeHost( host ) {
|
function isSafeHost( host ) {
|
||||||
for (var i=0;i< engines.length; i++){
|
for (var i=0;i< engines.length; i++){
|
||||||
var eng = engines[i]
|
var eng = engines[i];
|
||||||
var regex = eng.hostMap;
|
var regex = eng.hostMap;
|
||||||
cout("regex :" +regex)
|
cout("regex :" +regex);
|
||||||
if (host.match(regex)) {
|
if (host.match(regex)) {
|
||||||
return eng;
|
return eng;
|
||||||
}
|
}
|
||||||
|
@ -576,20 +541,20 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
var req = {
|
var req = {
|
||||||
"tmn": "pageLoaded",
|
"tmn": "pageLoaded",
|
||||||
"html": document.defaultView.document.body.innerHTML
|
"html": document.defaultView.document.body.innerHTML
|
||||||
}
|
};
|
||||||
chrome.runtime.sendMessage(req);
|
chrome.runtime.sendMessage(req);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function log(msg) {
|
function log(msg) {
|
||||||
chrome.runtime.sendMessage({tmnLog:msg} )
|
chrome.runtime.sendMessage({tmnLog:msg} );
|
||||||
}
|
}
|
||||||
|
|
||||||
function updateStatus(msg) {
|
function updateStatus(msg) {
|
||||||
var req = {
|
var req = {
|
||||||
"updateStatus": msg
|
"updateStatus": msg
|
||||||
}
|
};
|
||||||
chrome.runtime.sendMessage(req);
|
chrome.runtime.sendMessage(req);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -597,7 +562,7 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
var Eng_URL = eng + "--" + url;
|
var Eng_URL = eng + "--" + url;
|
||||||
var req = {
|
var req = {
|
||||||
setURLMap: Eng_URL
|
setURLMap: Eng_URL
|
||||||
}
|
};
|
||||||
chrome.runtime.sendMessage(req);
|
chrome.runtime.sendMessage(req);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -620,7 +585,7 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
|
|
||||||
function setTMNCurrentURL(url) {
|
function setTMNCurrentURL(url) {
|
||||||
tmnCurrentURL= url;
|
tmnCurrentURL= url;
|
||||||
debug("Current TMN loc: "+ tmnCurrentURL )
|
debug("Current TMN loc: "+ tmnCurrentURL );
|
||||||
var message = {
|
var message = {
|
||||||
"url": tmnCurrentURL
|
"url": tmnCurrentURL
|
||||||
};
|
};
|
||||||
|
@ -628,20 +593,13 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
sendPageLoaded();
|
sendPageLoaded();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function clickResult(request) {
|
function clickResult(request) {
|
||||||
cout("Clicking on engine : "+request.tmn_engine )
|
cout("Clicking on engine : "+request.tmn_engine );
|
||||||
simulateClick(request.tmn_engine);
|
simulateClick(request.tmn_engine);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
handleRequest : function(request, sender, sendResponse) {
|
handleRequest : function(request, sender, sendResponse) {
|
||||||
//debug("Received: "+ request.tmnQuery + " on engine: "+ request.tmnEngine + " mode: " +request.tmnMode)
|
|
||||||
if (request.tmnQuery) {
|
if (request.tmnQuery) {
|
||||||
var tmn_query = request.tmnQuery;
|
var tmn_query = request.tmnQuery;
|
||||||
engine = request.tmnEngine;
|
engine = request.tmnEngine;
|
||||||
|
@ -650,26 +608,23 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
tmn_id = request.tmnID;
|
tmn_id = request.tmnID;
|
||||||
var tmn_URLmap = request.tmnUrlMap;
|
var tmn_URLmap = request.tmnUrlMap;
|
||||||
var encodedurl = sendQuery ( tmn_query, tmn_mode, tmn_URLmap );
|
var encodedurl = sendQuery ( tmn_query, tmn_mode, tmn_URLmap );
|
||||||
if (encodedurl != null) {
|
if (encodedurl !== null) {
|
||||||
debug("scheduling next set url");
|
debug("scheduling next set url");
|
||||||
setTMNCurrentURL(encodedurl);
|
setTMNCurrentURL(encodedurl);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (request.tmn_engine) {
|
if (request.tmn_engine) {
|
||||||
clickResult(request)
|
clickResult(request);
|
||||||
}
|
}
|
||||||
return; // snub them.
|
return; // snub them.
|
||||||
} ,
|
} ,
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
checkIsActiveTab : function() {
|
checkIsActiveTab : function() {
|
||||||
chrome.runtime.sendMessage({
|
chrome.runtime.sendMessage({
|
||||||
tmn: "isActiveTab"
|
tmn: "isActiveTab"
|
||||||
}, function(resp) {
|
}, function(resp) {
|
||||||
if (!resp)
|
if (!resp)
|
||||||
return
|
return;
|
||||||
if (resp.isActive){
|
if (resp.isActive){
|
||||||
TRACKMENOT.TMNInjected.hasLoaded();
|
TRACKMENOT.TMNInjected.hasLoaded();
|
||||||
} else {
|
} else {
|
||||||
|
@ -679,13 +634,13 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
notifyUserSearch(eng, window.location.href);
|
notifyUserSearch(eng, window.location.href);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} )
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
hasLoaded :function(){
|
hasLoaded :function(){
|
||||||
var host = window.location.host;
|
var host = window.location.host;
|
||||||
if (!isSafeHost(host) ) {
|
if (!isSafeHost(host) ) {
|
||||||
cout ("Host "+ host+ " is unsafe")
|
cout ("Host "+ host+ " is unsafe");
|
||||||
window.stop();
|
window.stop();
|
||||||
//history.go(-1);
|
//history.go(-1);
|
||||||
}
|
}
|
||||||
|
@ -696,18 +651,13 @@ TRACKMENOT.TMNInjected = function() {
|
||||||
"tmn": "pageLoaded",
|
"tmn": "pageLoaded",
|
||||||
"html": document.defaultView.document.body.innerHTML,
|
"html": document.defaultView.document.body.innerHTML,
|
||||||
"url" : document.location
|
"url" : document.location
|
||||||
}
|
};
|
||||||
chrome.runtime.sendMessage(req);
|
chrome.runtime.sendMessage(req);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
}
|
};
|
||||||
}();
|
}();
|
||||||
TRACKMENOT.TMNInjected.checkIsActiveTab();
|
TRACKMENOT.TMNInjected.checkIsActiveTab();
|
||||||
chrome.runtime.onMessage.addListener( TRACKMENOT.TMNInjected.handleRequest );
|
chrome.runtime.onMessage.addListener( TRACKMENOT.TMNInjected.handleRequest );
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*self.port.on("TMNTabRequest", TRACKMENOT.TMNInjected.handleRequest );
|
|
||||||
self.port.on("TMNClickResult", TRACKMENOT.TMNInjected.clickResult );*/
|
|
||||||
|
|
Loading…
Reference in a new issue