// proxyBlockAds.js.txt // (c) Andrew Nosenko // http://www.nozillium.com/adblock var proxyBlock = "PROXY 127.0.0.1:0"; var proxyDefault = "DIRECT"; var reStaticData = /^[^\?#]+\.(gif|png|jpeg|jpg|mp3|mpg|avi|wav|swf|pdf|zip|cab)/i var listBlockedHosts = new Array( "fotomir.com.ua", "repka.tv", "adriver.ru", "bbn.img.com.ua", "megaban.com.ua", "madbanner.ru", "holder.com.ua", "mbn.com.ua" ); var reBlockedHosts = /(^|\.)(ad[sv]?[0-9]*|x10)\./i // match "ad.", ".ad." etc., but not "mad." var reAdFolders = /(\/ad[sv]?[0-9]*(\.|\/|\?|$))/i var listReBlockedUrls = new Array( /\/us\.yimg\.com\/a\//i, /\/us\.a1\.yimg\.com\/us\.yimg\.com\/a\//i, /ads.asp|advertising\.htm|messenger\.armx|ADSAdClient31\.dll|adxml_main\.asp|global\.msads\.net/i ); function FindProxyForURL(url, host) { // local if (isPlainHostName(host)) return "DIRECT"; var bStatic = !!reStaticData.test(url); // block hosts if ( IsOneOf(host, listBlockedHosts) || reBlockedHosts.test(host) ) return proxyBlock; // blocked URLs if ( bStatic && reAdFolders.test(url) || IsOneOfRe(url, listReBlockedUrls) ) return proxyBlock; return proxyDefault; } function IsOneOf(host, list) { for ( i = 0; i < list.length; i++ ) if ( shExpMatch(host, list[i]) ) return true; return false; } function IsOneOfRe(url, list) { for ( i = 0; i < list.length; i++ ) if ( list[i].test(url) ) return true; return false; }