diff --git a/background.js b/background.js index 295ee16e..867fa907 100644 --- a/background.js +++ b/background.js @@ -11,9 +11,7 @@ var currentTabUrl = ''; var csDone = false; var optin_setcookie = false; -// Cookies from this list are blocked by default (obsolete) // defaultSites are loaded from sites.js at installation extension -// var defaultSites = {}; const restrictions = { 'adweek.com': /^((?!\.adweek\.com\/(.+\/)?(amp|agencyspy|tvnewser|tvspy)\/).)*$/, @@ -37,408 +35,47 @@ const restrictions = { 'timeshighereducation.com': /.+\.timeshighereducation\.com\/(sites\/default\/files\/|.+((\w)+(\-)+){3,}.+)/ } -// Don't remove cookies before page load -// allow_cookies are completed with domains in custom sites (default allow/remove_cookies) -var allow_cookies_default = [ - 'aachener-zeitung.de', - 'abc.es', - 'abril.com.br', - 'ajc.com', - 'apollo-magazine.com', - 'asiatimes.com', - 'atlantico.fr', - 'augsburger-allgemeine.de', - 'belfasttelegraph.co.uk', - 'berliner-zeitung.de', - 'berlingske.dk', - 'billboard.com', - 'bostonglobe.com', - 'business-standard.com', - 'businessoffashion.com', - 'charliehebdo.fr', - 'chronicle.com', - 'cicero.de', - 'clarin.com', - 'cmjornal.pt', - 'corriere.it', - 'dallasnews.com', - 'df.cl', - 'di.se', - 'dn.se', - 'dvhn.nl', - 'editorialedomani.it', - 'elcomercio.pe', - 'elconfidencial.com', - 'elespanol.com', - 'elle.fr', - 'elmercurio.com', - 'elpais.com', - 'elperiodico.com', - 'entrepreneur.com', - 'esprit.presse.fr', - 'euobserver.com', - 'eurekareport.com.au', - 'faz.net', - 'financialpost.com', - 'forbes.com', - 'fortune.com', - 'freiepresse.de', - 'ftm.nl', - 'gestion.pe', - 'haaretz.co.il', - 'haaretz.com', - 'handelsblatt.com', - 'hilltimes.com', - 'hindustantimes.com', - 'ilfattoquotidiano.it', - 'inc42.com', - 'independent.ie', - 'infzm.com', - 'intelligentinvestor.com.au', - 'jpost.com', - 'knack.be', - 'kurier.at', - 'la-croix.com', - 'lanouvellerepublique.fr', - 'latribune.fr', - 'lavanguardia.com', - 'lc.nl', - 'lejdd.fr', - 'lesechos.fr', - 'letelegramme.fr', - 'lexpress.fr', - 'livelaw.in', - 'loeildelaphotographie.com', - 'lrb.co.uk', - 'marianne.net', - 'marketwatch.com', - 'medianama.com', - 'medium.com', - 'nation.africa', - 'nationalgeographic.com', - 'nationalpost.com', - 'nationalreview.com', - 'newleftreview.org', - 'newrepublic.com', - 'newsday.com', - 'nouvelobs.com', - 'noz.de', - 'nwzonline.de', - 'nybooks.com', - 'nyteknik.se', - 'nytimes.com', - 'nzz.ch', - 'observador.pt', - 'parismatch.com', - 'piqd.de', - 'politicaexterior.com', - 'prospectmagazine.co.uk', - 'quora.com', - 'reuters.com', - 'rhein-zeitung.de', - 'rheinpfalz.de', - 'rollingstone.com', - 'ruhrnachrichten.de', - 'saechsische.de', - 'scientificamerican.com', - 'scribd.com', - 'seekingalpha.com', - 'shz.de', - 'si.com', - 'staradvertiser.com', - 'startribune.com', - 'stocknews.com', - 'stratfor.com', - 'study.com', - 'sudouest.fr', - 'svz.de', - 'tampabay.com', - 'techinasia.com', - 'telegraaf.nl', - 'telerama.fr', - 'the-american-interest.com', - 'theartnewspaper.com', - 'thehindu.com', - 'thehindubusinessline.com', - 'theintercept.com', - 'themarker.com', - 'themarket.ch', - 'thenewatlantis.com', - 'thewest.com.au', - 'thewrap.com', - 'time.com', - 'timeshighereducation.com', - 'towardsdatascience.com', - 'usatoday.com', - 'usinenouvelle.com', - 'variety.com', - 'velonews.com', - 'venturebeat.com', - 'washingtonpost.com', - 'westfalen-blatt.de', - 'wn.de', - 'worldpoliticsreview.com', - 'zeit.de', -]; -var allow_cookies = allow_cookies_default.slice(); - -// select specific cookie(s) to hold from remove_cookies domains -var remove_cookies_select_hold = { - 'barrons.com': ['wsjregion'], - 'bloomberg.com': ['bb_geo_info'], - 'groene.nl': ['accept-cookies', 'popunder-hidden'], - 'newstatesman.com': ['STYXKEY_nsversion'], - 'qz.com': ['gdpr'], - 'seattletimes.com': ['st_newsletter_splash_seen'], - 'wsj.com': ['wsjregion', 'ResponsiveConditional_initialBreakpoint'] -} - -// select only specific cookie(s) to drop from remove_cookies domains -var remove_cookies_select_drop = { - 'ambito.com': ['TDNotesRead'], - 'caixinglobal.com': ['CAIXINGLB_LOGIN_UUID'], - 'fd.nl': ['socialread'], - 'griffithreview.com': ['issuem_lp'], - 'nrc.nl': ['counter'], - 'theatlantic.com': ['articleViews'], - 'thepointmag.com': ['monthly_history'] -} - -var cookies_select_domains = Object.keys(remove_cookies_select_hold).concat(Object.keys(remove_cookies_select_drop)); - -// Removes cookies after page load -// remove_cookies are completed with domains of custom sites (default allow/remove_cookies) -var remove_cookies_default = ['medium.com', 'scientificamerican.com']; -var remove_cookies = remove_cookies_default.concat(cookies_select_domains); - -allow_cookies = allow_cookies.concat(cookies_select_domains); - -// Override User-Agent with Googlebot -var use_google_bot_default = [ - 'abc.es', - 'barrons.com', - 'berlingske.dk', - 'deutsche-wirtschafts-nachrichten.de', - 'df.cl', - 'di.se', - 'dn.se', - 'editorialedomani.it', - 'elmercurio.com', - 'euobserver.com', - 'eurekareport.com.au', - 'fnlondon.com', - 'ft.com', - 'handelsblatt.com', - 'hilltimes.com', - 'intelligentinvestor.com.au', - 'lanouvellerepublique.fr', - 'leparisien.fr', - 'nationalreview.com', - 'newleftreview.org', - 'nknews.org', - 'nouvelobs.com', - 'nzz.ch', - 'piqd.de', - 'quora.com', - 'rhein-zeitung.de', - 'rheinpfalz.de', - 'ruhrnachrichten.de', - 'seekingalpha.com', - 'telerama.fr', - 'themarket.ch', - 'thetimes.co.uk', - 'usatoday.com', - 'usinenouvelle.com', - 'westfalen-blatt.de', - 'wired.com', - 'wn.de', - 'worldpoliticsreview.com', - 'wsj.com', - 'zeit.de', -]; -var use_google_bot = use_google_bot_default.slice(); - -// Override User-Agent with Bingbot -var use_bing_bot_default = [ - 'haaretz.co.il', - 'haaretz.com', - 'nzherald.co.nz', - 'stratfor.com', - 'themarker.com', -]; -var use_bing_bot = use_bing_bot_default.slice(); - -var use_facebook_referer_default = ['clarin.com', 'fd.nl', 'ilmanifesto.it', 'law.com', 'sloanreview.mit.edu']; -var use_facebook_referer = use_facebook_referer_default.slice(); -var use_google_referer_default = ['statista.com']; -var use_google_referer = use_google_referer_default.slice(); -var use_twitter_referer_default = ['law360.com', 'medium.com', 'towardsdatascience.com']; -var use_twitter_referer = use_twitter_referer_default.slice(); +// Don't remove cookies before/after page load +var allow_cookies = []; +var remove_cookies = []; +// select specific cookie(s) to hold/drop from remove_cookies domains +var remove_cookies_select_hold, remove_cookies_select_drop; + +// Set User-Agent +var use_google_bot, use_bing_bot; +// Set Referer +var use_facebook_referer, use_google_referer, use_twitter_referer; +// Set random IP-address var use_random_ip = ['esprit.presse.fr']; -var change_headers = use_google_bot.concat(use_bing_bot, use_facebook_referer, use_google_referer, use_twitter_referer, use_random_ip); +// concat all sites with change of headers (useragent, referer or random ip) +var change_headers; // block paywall-scripts individually -var blockedRegexes = { - 'aachener-zeitung.de': /cdn\.ampproject\.org\/v\d\/amp-(ad|analytics|consent|subscriptions)-.+\.js/, - 'abc.es': /\.evolok\.net\//, - 'abril.com.br': /\.abril\.com\.br\/.+\/abril-paywall\/js\/abril-paywall\.js/, - 'adweek.com': /\.lightboxcdn\.com\//, - 'afr.com': /api\.afr\.com\/graphql\?query=.+PaywallRuleQuery/, - 'ajc.com': /loader-cdn\.azureedge\.net\//, - 'alternatives-economiques.fr': /\.poool\.fr\//, - 'americanbanker.com': /\.tinypass\.com\//, - 'apollo-magazine.com': /\.tinypass\.com\//, - 'asiatimes.com': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics)-.+\.(m)?js/, - 'atlantico.fr': /\.poool\.fr\//, - 'augsburger-allgemeine.de':/(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js)/, - 'barrons.com': /(cdn\.cxense\.com\/.+|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js)/, - 'belfasttelegraph.co.uk': /(cdn\.flip-pay\.com\/clients\/inm\/flip-pay\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/, - 'billboard.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'bizjournals.com': /(assets\.bizjournals\.com\/static\/js\/app\/cxense\.js|cdn\.cxense\.com\/)/, - 'bloomberg.com': /\.tinypass\.com\//, - 'bostonglobe.com': /\.blueconic\.net\//, - 'businessinsider.com': /\.tinypass\.com\//, - 'challenges.fr': /\.poool\.fr\//, - 'charliehebdo.fr': /\.poool\.fr\//, - 'chronicle.com': /(\.blueconic\.net\/|\.chronicle\.com\/(common\/)?(che-auth0-user|script)\.js)/, - 'clarin.com': /js\.matheranalytics\.com\//, - 'cmjornal.pt': /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad)-.+\.js/, - 'commentary.org': /\.commentary\.org\/.+\/js\/dg-locker-public\.js/, - 'corriere.it': /(\.tinypass\.com\/|\.corriereobjects\.it\/.+\/js\/_paywall\.sjs)/, - 'dallasnews.com': /(\.blueconic\.net\/|js\.matheranalytics\.com\/)/, - 'digiday.com': /cdn.\.tinypass\.com\//, - 'dvhn.nl': /\.evolok\.net\//, - 'economist.com': /(\.tinypass\.com\/cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/, - 'editorialedomani.it': /(\.editorialedomani\.it\/pelcro\.js|js\.pelcro\.com\/)/, - 'elcomercio.pe': /\/elcomercio\.pe\/pf\/dist\/engine\/react\.js/, - 'elconfidencial.com': /\.tinypass\.com\//, - 'elespanol.com': /\.eestatic\.com\/assets_js\/web\/v\d\/historia.*\.min\.js/, - 'elle.fr': /\.poool\.fr\//, - 'elmercurio.com': /\.(elmercurio\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/, - 'elpais.com': /(\.epimg\.net\/js\/.+\/(noticia|user)\.min\.js|\/elpais\.com\/arc\/subs\/p\.min\.js|cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|consent)-.+\.js)/, - 'elperiodico.com': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/, - 'estadao.com.br': /acesso\.estadao\.com\.br\/paywall\/.+\/.+\.js/, - 'estrellavalpo.cl': /(\.mercuriovalpo\.cl\/impresa\/.+\/assets\/(vendor|\d)\.js|pram\.pasedigital\.cl\/API\/User\/Status\?)/, - 'exame.com': /\/exame\.com\/.+\/js\/pywll-dyn\.js/, - 'financialpost.com': /\.tinypass\.com\//, - 'forbes.com': /\.tinypass\.com\//, - 'foreignaffairs.com': /\.foreignaffairs\.com\/sites\/default\/files\/js\/js_[^y].+\.js/, - 'foreignpolicy.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'fortune.com': /\.tinypass\.com\//, - 'freiepresse.de': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/, - 'ft.com': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js/, - 'ftm.nl': /\.ftm\.nl\/js\/routing\?/, - 'gestion.pe': /\/gestion\.pe\/pf\/dist\/engine\/react\.js/, - 'globes.co.il': /\.tinypass\.com\//, - 'globo.com': /\.tinypass\.com\//, - 'griffithreview.com': /\.griffithreview\.com\/.+\/leaky-paywall\//, - 'haaretz.co.il': /haaretz\.co\.il\/htz\/js\/inter\.js/, - 'haaretz.com': /haaretz\.com\/hdc\/web\/js\/minified\/header-scripts-int.js/, - 'hbr.org': /\.tinypass\.com\//, - 'hilltimes.com': /\.hilltimes\.com\/.+\/js\/loadingoverlay\/loadingoverlay\.min\.js/, - 'historyextra.com': /\.evolok\.net\//, - 'houstonchronicle.com': /\.blueconic\.net\//, - 'ilfattoquotidiano.it': /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/, - 'inc.com': /\.tinypass\.com\//, - 'inc42.com': /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics)-.+\.(m)?js)/, - 'independent.ie': /(cdn\.flip-pay\.com\/clients\/inm\/flip-pay\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/, - 'inquirer.com': /\.tinypass\.com\//, - 'japantimes.co.jp': /\.piano\.io\//, - 'jpost.com': /\.jpost\.com\/bundles\/js_article\?/, - 'knack.be': /(\.knack\.be\/js\/responsive\/rmg(Modal|Paywall)\.js|\.blueconic\.net\/)/, - 'kurier.at': /\.tinypass\.com\//, - 'la-croix.com': /(\.la-croix\.com\/build\/lacroix\/article.+\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/, - 'lasegunda.com': /\.(lasegunda\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/, - 'latercera.com': /(\.latercera\.com\/arc\/subs\/p\.js|cdn\.cxense\.com\/)/, - 'latimes.com': /metering\.platform\.latimes\.com\/v\d\/meter/, - 'latribune.fr': /\.poool\.fr\//, - 'lavanguardia.com': /(\.evolok\.net\/|\.lavanguardia\.com\/(js\/)?godo-)/, - 'lc.nl': /\.evolok\.net\//, - 'lejdd.fr': /\.poool\.fr\//, - 'leparisien.fr': /\.tinypass\.com\//, - 'lesechos.fr': /\.tinypass\.com\//, - 'letelegramme.fr': /\.poool\.fr\//, - 'lexpress.fr': /\.poool\.fr\//, - 'livemint.com': /(\.livemint\.com\/js\/localWorker\.js|analytics\.htmedia\.in\/analytics-js\/.+\.js)/, - 'loeildelaphotographie.com': /cdn\.loeildelaphotographie\.com\/wp-content\/.+\/hague-child\/js\/script-.+\.js/, - 'lopinion.fr': /\.poool\.fr\//, - 'lrb.co.uk': /\.tinypass\.com\//, - 'marianne.net': /\.poool\.fr\//, - 'marketwatch.com': /(cdn\.cxense\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js)/, - 'mercuriovalpo.cl': /(.+\.mercuriovalpo\.cl\/impresa\/.+\/assets\/(vendor|\d)\.js|pram\.pasedigital\.cl\/API\/User\/Status\?)/, - 'mexiconewsdaily.com': /\.mexiconewsdaily\.com\/c\/assets\/pigeon\.js/, - 'nation.africa': /(\.evolok\.net\/|nation\.africa\/resource\/themes\/nation-.+\/js\/.+\.js)/, - 'nationalgeographic.com': /\.blueconic\.net\//, - 'nationalpost.com': /\.tinypass\.com\//, - 'nationalreview.com': /(\.blueconic\.net\/|\.nationalreview\.com\/script\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/, - 'newrepublic.com': /\.onecount\.net\/js\//, - 'newsday.com': /(loader-cdn\.azureedge\.net\/|js\.matheranalytics\.com\/)/, - 'newsweek.com': /js\.pelcro\.com\//, - 'newyorker.com': /\.newyorker\.com\/verso\/static\/presenter-articles.+\.js/, - 'nknews.org': /\.nknews\.org\/wp-content\/themes\/nknews\/js\/bootstrap\.min\.js/, - 'noz.de': /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/, - 'nwzonline.de': /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/, - 'nyteknik.se': /\.nyteknik\.se\/.+\/static\/js\/site\.min\.js/, - 'nytimes.com': /(meter-svc\.nytimes\.com\/meter\.js|mwcm\.nyt\.com\/.+\.js)/, - 'observador.pt': /\.tinypass\.com\//, - 'parismatch.com': /\.poool\.fr\//, - 'post-gazette.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'qz.com': /\.tinypass\.com\//, - 'reuters.com': /\.reuters\.com\/(arc\/subs\/p\.min|pf\/resources\/dist\/reuters\/js\/index)\.js/, - 'rollingstone.com': /cdn\.cxense\.com\//, - 'ruhrnachrichten.de': /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|consent|subscriptions)-.+\.js)/, - 'saechsische.de': /\.tinypass\.com\//, - 'sandiegouniontribune.com': /metering\.platform\.sandiegouniontribune\.com\/v\d\/meter/, - 'science-et-vie.com': /\.qiota\.com\//, - 'sciencesetavenir.fr': /\.poool\.fr\//, - 'scmp.com': /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics|consent|fx-flying-carpet)-.+\.js)/, - 'seekingalpha.com': /(\.tinypass\.com\/|cdn\.ampproject\.org(\/.+)?\/v\d\/amp-(access|ad|loader)-.+\.js)/, - 'sfchronicle.com': /\.blueconic\.net\//, - 'shz.de': /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/, - 'si.com': /\.blueconic\.net\//, - 'slate.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'sloanreview.mit.edu': /(\.tinypass\.com\/|\/sloanreview\.mit\.edu\/.+\/welcome-ad\.js)/, - 'spectator.co.uk': /\.tinypass\.com\//, - 'spectator.com.au': /\.tinypass\.com\//, - 'spectator.us': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'svz.de': /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/, - 'tampabay.com': /(loader-cdn\.azureedge\.net\/|js\.matheranalytics\.com\/)/, - 'technologyreview.com': /\.blueconic\.net\//, - 'telegraph.co.uk': /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js|\.telegraph\.co\.uk\/.+\/piano.+\.js|assets\.adobedtm\.com\/.+\.js)/, - 'theartnewspaper.com': /\.amazonaws.com\/production-website-scripts\/bouncer\.js/, - 'thedailybeast.com': /\.tinypass\.com\//, - 'theglobeandmail.com': /(\.theglobeandmail\.com\/pf\/dist\/engine\/react\.js|smartwall\.theglobeandmail\.com\/)/, - 'thehindu.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'thehindubusinessline.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/, - 'theintercept.com': /\.theintercept\.com\/api\/tinypass\.min\.js/, - 'thenation.com': /\.tinypass\.com\//, - 'thenewatlantis.com': /\.thenewatlantis\.com\/.+\/thenewatlantis\/js\/(gate|donate)\.js/, - 'thesaturdaypaper.com.au': /\.thesaturdaypaper\.com\.au\/sites\/all\/modules\/custom\/node_meter\/pw\.js/, - 'thewrap.com': /\.wallkit\.net\/js\//, - 'time.com': /\/time\.com\/dist\/meter-wall-client-js\..+\.js/, - 'timeshighereducation.com': /\.timeshighereducation\.com\/sites\/default\/files\/.+\/js__.+\.js/, - 'valeursactuelles.com': /\.qiota\.com\//, - 'variety.com': /cdn\.cxense\.com\//, - 'velonews.com': /\.velonews\.com\/.+\/scripts\/contentGate.+\.js/, - 'venturebeat.com': /\.wallkit\.net\/js\//, - 'washingtonpost.com': /\.washingtonpost\.com\/pwapiv2\/article/, - 'westfalen-blatt.de': /cdn\.ampproject\.org\/.+\/v\d\/amp-(ad|subscriptions)-.+\.js/, - 'wired.com': /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/, - 'wn.de': /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/, - 'wsj.com': /(cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js|cdn\.cxense\.com\/)/ -}; -var blockedRegexesCustom = {}; - -var amp_unhide = []; - -// grouped domains in sites.js (for options) - -// grouped domains (rules only) -const au_nine_domains = ['brisbanetimes.com.au', 'smh.com.au', 'theage.com.au', 'watoday.com.au']; -const es_unidad_domains = ['elmundo.es', 'expansion.com', 'marca.com']; -const it_repubblica_domains = ['gelocal.it', 'ilsecoloxix.it', 'lanuovasardegna.it', 'lastampa.it', 'limesonline.com', 'repubblica.it'].concat(['lescienze.it']); -const nl_pg_domains = ['parool.nl', 'trouw.nl', 'volkskrant.nl', 'humo.be', 'demorgen.be']; -const usa_genomeweb_domains = ['genomeweb.com', '360dx.com', 'precisiononcologynews.com']; +var blockedRegexes = {}; + +// unhide text on amp-page +var amp_unhide; + +// custom: block javascript +var block_js_custom = []; +var block_js_custom_ext = []; + +function initSetRules() { + allow_cookies = []; + remove_cookies = []; + remove_cookies_select_drop = {}; + remove_cookies_select_hold = {}; + use_google_bot = []; + use_bing_bot = []; + use_facebook_referer = []; + use_google_referer = []; + use_twitter_referer = []; + change_headers = []; + amp_unhide = []; + block_js_custom = []; + block_js_custom_ext = []; + blockedRegexes = {}; +} const userAgentDesktopG = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" const userAgentMobileG = "Chrome/80.0.3987.92 Mobile Safari/537.36 (compatible ; Googlebot/2.1 ; +http://www.google.com/bot.html)" @@ -448,6 +85,7 @@ const userAgentMobileB = "Chrome/80.0.3987.92 Mobile Safari/537.36 (compatible; var enabledSites = []; var disabledSites = []; +var optionSites = {}; var customSites = {}; var customSites_domains = []; var excludedSites = []; @@ -455,44 +93,135 @@ var excludedSites = []; function setDefaultOptions() { ext_api.storage.local.set({ sites: filterObject(defaultSites, function (val, key) { - return !val.includes('#options_disable_') + return !val.domain.match(/^(###$|#options_disable_)/) + }, + function (val, key) { + return [key, val.domain] }) }, function () { ext_api.runtime.openOptionsPage(); }); } -var grouped_sites = { -'###_au_comm_media': au_comm_media_domains, -'###_au_news_corp': au_news_corp_domains, -'###_br_folha': br_folha_domains, -'###_ca_torstar': ca_torstar_domains, -'###_de_funke_medien': de_funke_media_domains, -'###_de_madsack': de_madsack_domains, -'###_economictimes': economictimes_domains, -'###_es_epiberica': es_epiberica_domains, -'###_es_grupo_vocento': es_grupo_vocento_domains, -'###_fi_alma_talent': fi_alma_talent_domains, -'###_fi_sanoma': fi_sanoma_domains, -'###_fr_be_groupe_rossel': fr_be_groupe_rossel_domains, -'###_fr_groupe_ebra': fr_groupe_ebra_domains, -'###_fr_groupe_la_depeche': fr_groupe_la_depeche_domains, -'###_it_ilmessaggero': it_ilmessaggero_domains, -'###_it_quotidiano': it_quotidiano_domains, -'###_nl_ad_region': nl_ad_region_domains, -'###_nl_mediahuis_region': nl_mediahuis_region_domains, -'###_no_nhst_media': no_nhst_media_domains, -'###_timesofindia': timesofindia_domains, -'###_usa_craincomm': usa_craincomm_domains, -'###_usa_lee_ent': usa_lee_ent_domains, -'###_usa_mcc': usa_mcc_domains, -'###_usa_mng': usa_mng_domains, -'###_usa_nymag': usa_nymag_domains, -'###_usa_tribune': usa_tribune_domains, -'###_usa_theathletic': usa_theathletic_domains -}; - -function add_grouped__enabled_domains(groups) { +function set_rules(sites, sites_custom) { + initSetRules(); + for (let site in sites) { + let site_domain = sites[site].toLowerCase(); + let custom = false; + if (!site_domain.match(/^(###$|#options_)/)) { + let rule = {}; + if (defaultSites.hasOwnProperty(site)) { + rule = defaultSites[site]; + } else { // custom sites + rule = sites_custom[site]; + custom = true; + } + let domains = [site_domain]; + let group = false; + if (rule.hasOwnProperty('group')) { + domains = rule.group; + group = true; + } + let rule_default = {}; + if (rule.hasOwnProperty('exception')) { + for (let key in rule) + rule_default[key] = rule[key]; + } + for (let domain of domains) { + let custom_in_group = false; + if (rule_default.hasOwnProperty('exception')) { + let exception_rule = rule_default.exception.filter(x => domain === x.domain); + if (exception_rule.length > 0) + rule = exception_rule[0]; + else + rule = rule_default; + } + // custom domain for default site(group) + if (!custom) { + let isCustomSite = matchDomain(customSites_domains, domain); + let customSite_title = isCustomSite ? Object.keys(customSites).find(key => customSites[key].domain === isCustomSite) : ''; + if (customSite_title) { + // add default block_regex + let block_regex_default = ''; + if (rule.hasOwnProperty('block_regex')) + block_regex_default = rule.block_regex; + + rule = sites_custom[customSite_title]; + if (block_regex_default) { + if (rule.hasOwnProperty('block_regex')) { + if (block_regex_default instanceof RegExp) + block_regex_default = block_regex_default.source; + rule.block_regex = '(' + block_regex_default + '|' + rule.block_regex.replace(/(^\/|\/$)/g, '') + ')'; + } else + rule.block_regex = block_regex_default; + } + if (group) + custom_in_group = true; + else + custom = true; + } + } + addCookieRules(rule, custom || custom_in_group); + + if (rule.allow_cookies > 0 && !allow_cookies.includes(domain)) + allow_cookies.push(domain); + if (rule.remove_cookies > 0 && !remove_cookies.includes(domain)) + remove_cookies.push(domain); + if (rule.hasOwnProperty('remove_cookies_select_drop')) + remove_cookies_select_drop[domain] = rule.remove_cookies_select_drop; + if (rule.hasOwnProperty('remove_cookies_select_hold')) + remove_cookies_select_hold[domain] = rule.remove_cookies_select_hold; + if (rule.hasOwnProperty('block_regex')) { + if (rule.block_regex instanceof RegExp) + blockedRegexes[domain] = rule.block_regex; + else + blockedRegexes[domain] = new RegExp(rule.block_regex.replace('{domain}', domain.replace('.', '\\.').replace(/(^\/|\/$)/g, ''))); + } + if (rule.useragent) { + switch (rule.useragent) { + case 'googlebot': + if (!use_google_bot.includes(domain)) + use_google_bot.push(domain); + break; + case 'bingbot': + if (!use_bing_bot.includes(domain)) + use_bing_bot.push(domain); + break; + } + } + if (rule.referer) { + switch (rule.referer) { + case 'facebook': + if (!use_facebook_referer.includes(domain)) + use_facebook_referer.push(domain); + break; + case 'google': + if (!use_google_referer.includes(domain)) + use_google_referer.push(domain); + break; + case 'twitter': + if (!use_twitter_referer.includes(domain)) + use_twitter_referer.push(domain); + break; + } + } + // custom + if (rule.googlebot > 0) + use_google_bot.push(domain); + if (rule.block_javascript > 0) + block_js_custom.push(domain); + if (rule.block_javascript_ext > 0) + block_js_custom_ext.push(domain); + if (rule.amp_unhide > 0) + amp_unhide.push(domain); + } + } + } + change_headers = use_google_bot.concat(use_bing_bot, use_facebook_referer, use_google_referer, use_twitter_referer, use_random_ip); + disableJavascriptOnListedSites(); +} + +function add_grouped_enabled_domains(groups) { for (let key in groups) { if (enabledSites.includes(key)) enabledSites = enabledSites.concat(groups[key]); @@ -507,162 +236,16 @@ function add_grouped__enabled_domains(groups) { } } -// add grouped sites to en/disabledSites & init rules (optional) -function add_grouped_sites(init_rules) { - add_grouped__enabled_domains(grouped_sites); - if (init_rules) { - for (let domain of au_comm_media_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn-au\.piano\.io\/api\/tinypass.+\.js/; - } - for (let domain of au_news_corp_domains) { - allow_cookies.push(domain); - use_google_bot.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-(access|ad|iframe)-.+\.js/; - } - for (let domain of br_folha_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(\.folha\.uol\.com\.br\/paywall\/js\/.+\/publicidade\.ads\.js|paywall\.folha\.uol\.com\.br\/|js\.matheranalytics\.com\/)/; - } - for (let domain of ca_torstar_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /\.(ca|com)\/api\/overlaydata/; - } - for (let domain of de_funke_media_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(cdn\.cxense\.com\/|\.tinypass\.com\/)/; - use_google_bot.push(domain); - } - for (let domain of de_madsack_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/; - } - for (let domain of economictimes_domains) { - allow_cookies.push(domain); - use_google_bot.push(domain); - } - for (let domain of es_epiberica_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-(access|analytics|consent)-.+\.js/; - } - for (let domain of es_grupo_vocento_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js/; - } - for (let domain of fi_alma_talent_domains) { - if (!['mediuutiset.fi'].includes(domain)) - blockedRegexes[domain] = /\.fi\/static\/vendor\..+\.chunk\.js/; - use_google_bot.push(domain); - } - for (let domain of fi_sanoma_domains) { - allow_cookies.push(domain); - use_google_bot.push(domain); - } - for (let domain of fr_be_groupe_rossel_domains) { - if (!['lecho.be'].includes(domain)) { - allow_cookies.push(domain); - use_google_bot.push(domain); - } - } - for (let domain of fr_groupe_ebra_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(\.poool\.fr\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/; - } - for (let domain of fr_groupe_la_depeche_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(\.poool\.fr\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js)/;//|iframe - } - for (let domain of it_ilmessaggero_domains) - blockedRegexes[domain] = /utils\.cedsdigital\.it\/js\/PaywallMeter\.js/; - for (let domain of nl_ad_region_domains) { - allow_cookies.push(domain); - remove_cookies.push(domain); - remove_cookies_select_drop[domain] = ['temptationTrackingId']; - } - for (let domain of it_quotidiano_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(cdn\.cxense\.com\/|\.tinypass\.com\/)/; - } - for (let domain of nl_mediahuis_region_domains) - allow_cookies.push(domain); - for (let domain of no_nhst_media_domains) { - allow_cookies.push(domain); - use_facebook_referer.push(domain); - } - for (let domain of timesofindia_domains) { - allow_cookies.push(domain); - use_google_bot.push(domain); - if (domain === 'timesofindia.com') - blockedRegexes[domain] = /\.timesofindia\.com\/jsrender\.cms/; - else - blockedRegexes[domain] = /timesofindia\.indiatimes\.com\/jsrender\/version-1\.cms/; - } - for (let domain of usa_craincomm_domains) { - if (domain !== 'autonews.com') - allow_cookies.push(domain); - blockedRegexes[domain] = new RegExp('(\.tinypass\.com\/|\.' + domain + '\/.+\/js\/js_.+\.js)'); - } - for (let domain of usa_lee_ent_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /api\.bntech\.io\/js\//; - } - for (let domain of usa_mcc_domains) - blockedRegexes[domain] = /(js\.matheranalytics\.com\/|cdn\.ampproject\.org\/v\d\/amp-subscriptions-.+\.js)/; - for (let domain of usa_tribune_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /\.tribdss\.com\//; - } - for (let domain of usa_mng_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(\.blueconic\.net\/|\.tinypass\.com\/|\.com\/.+\/loader\.min\.js|cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|subscriptions)-.+\.js)/; - } - for (let domain of usa_nymag_domains) { - allow_cookies.push(domain); - remove_cookies.push(domain); - remove_cookies_select_drop[domain] = ['nymcid']; - blockedRegexes[domain] = /fosse\.nymag\.com\/fosse\/.+\/scripts\/.+\.js/; - } - for (let domain of usa_theathletic_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-subscriptions-.+\.js/; - } - - // rules only - for (let domain of au_nine_domains) - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|subscriptions)-.+\.js/; - for (let domain of es_unidad_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|consent)-.+\.js/; - } - for (let domain of it_repubblica_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /(scripts\.repubblica\.it\/pw\/pw\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|user-notification)-.+\.js)/; - } - for (let domain of nl_pg_domains) { - allow_cookies.push(domain); - remove_cookies.push(domain); - remove_cookies_select_drop[domain] = ['TID_ID']; - blockedRegexes[domain] = new RegExp('\.' + domain + '\/temptation\/resolve'); - } - for (let domain of usa_genomeweb_domains) { - allow_cookies.push(domain); - blockedRegexes[domain] = /crain-platform-.+-prod\.s3\.amazonaws\.com\/s3fs-public\/js\/js_.+\.js/; - } - - use_google_bot_default = use_google_bot.slice(); - use_bing_bot_default = use_bing_bot.slice(); - use_facebook_referer_default = use_facebook_referer.slice(); - use_google_referer_default = use_google_referer.slice(); - use_twitter_referer_default = use_twitter_referer.slice(); - change_headers = use_google_bot.concat(use_bing_bot, use_facebook_referer, use_google_referer, use_twitter_referer, use_random_ip); - } +// add grouped sites to en/disabledSites (and exclude sites) +function add_grouped_sites(grouped_sites, sites, sites_custom) { + add_grouped_enabled_domains(grouped_sites); + set_rules(sites, sites_custom); } -// Get the enabled sites (from local storage) & add to allow/remove_cookies (if not already in one of these arrays) -// Add user-agent/referer and block_javascript-settings for custom sites +// Get the enabled sites (from local storage) & set_rules for sites ext_api.storage.local.get({ sites: {}, - sites_default: Object.keys(defaultSites).filter(x => !defaultSites[x].match(/^(#options_|###$)/)), + sites_default: Object.keys(defaultSites).filter(x => !defaultSites[x].domain.match(/^(#options_|###$)/)), sites_custom: {}, sites_excluded: [], ext_version_old: '2.3.9.0', @@ -684,7 +267,7 @@ ext_api.storage.local.get({ // Enable new sites by default (opt-in) if (ext_version > ext_version_old) { if (enabledSites.includes('#options_enable_new_sites')) { - var sites_new = Object.keys(defaultSites).filter(x => !defaultSites[x].match(/^(#options_|###$)/) && !sites_default.includes(x)); + var sites_new = Object.keys(defaultSites).filter(x => !defaultSites[x].domain.match(/^(#options_|###$)/) && !sites_default.includes(x)); for (let site_new of sites_new) { sites[site_new] = defaultSites[site_new]; } @@ -692,7 +275,7 @@ ext_api.storage.local.get({ sites: sites }); } - sites_default = Object.keys(defaultSites).filter(x => !defaultSites[x].match(/^(#options_|###$)/)); + sites_default = Object.keys(defaultSites).filter(x => !defaultSites[x].domain.match(/^(#options_|###$)/)); ext_api.storage.local.set({ sites_default: sites_default, ext_version_old: ext_version @@ -702,56 +285,8 @@ ext_api.storage.local.get({ customSites = sites_custom; customSites_domains = Object.values(sites_custom).map(x => x.domain); disabledSites = defaultSites_domains.concat(customSites_domains).filter(x => !enabledSites.includes(x) && x !== '###'); - add_grouped_sites(true); //and exclude sites - - for (let key in sites_custom) { - var domainVar = sites_custom[key]['domain'].toLowerCase(); - if (sites_custom[key]['googlebot'] > 0 && !use_google_bot.includes(domainVar)) - use_google_bot.push(domainVar); - switch (sites_custom[key]['useragent']) { - case 'googlebot': - if (!use_google_bot.includes(domainVar)) - use_google_bot.push(domainVar); - break; - case 'bingbot': - if (!use_bing_bot.includes(domainVar)) - use_bing_bot.push(domainVar); - break; - } - if (sites_custom[key]['allow_cookies'] > 0 && !allow_cookies.includes(domainVar) && !defaultSites_domains.includes(domainVar)) - allow_cookies.push(domainVar); - if (sites_custom[key]['block_javascript'] > 0) - block_js_custom.push(domainVar); - if (sites_custom[key]['block_javascript_ext'] > 0) - block_js_custom_ext.push(domainVar); - if (sites_custom[key]['block_regex']) { - if (sites_custom[key]['block_regex'].match(/^\/.+\/$/)) - sites_custom[key]['block_regex'] = sites_custom[key]['block_regex'].replace(/(^\/|\/$)/g, ''); - blockedRegexesCustom[domainVar] = new RegExp(sites_custom[key]['block_regex']); - } - if (sites_custom[key]['amp_unhide'] > 0) - amp_unhide.push(domainVar); - switch (sites_custom[key]['referer']) { - case 'facebook': - use_facebook_referer.push(domainVar); - break; - case 'google': - use_google_referer.push(domainVar); - break; - case 'twitter': - use_twitter_referer.push(domainVar); - } - } - - for (let domainVar of enabledSites) { - if (!allow_cookies.includes(domainVar) && !remove_cookies.includes(domainVar) && !defaultSites_domains.includes(domainVar)) { - allow_cookies.push(domainVar); - remove_cookies.push(domainVar); - } - } - - change_headers = use_google_bot.concat(use_bing_bot, use_facebook_referer, use_google_referer, use_twitter_referer, use_random_ip); - disableJavascriptOnListedSites(); + add_grouped_enabled_domains(grouped_sites); + set_rules(sites, customSites); }); // Listen for changes to options @@ -762,107 +297,45 @@ ext_api.storage.onChanged.addListener(function (changes, namespace) { var storageChange = changes[key]; if (key === 'sites') { var sites = storageChange.newValue; + optionSites = sites; enabledSites = Object.keys(sites).filter(function (key) { return (sites[key] !== '' && sites[key] !== '###'); }).map(function (key) { return sites[key]; }); disabledSites = defaultSites_domains.concat(customSites_domains).filter(x => !enabledSites.includes(x) && x !== '###'); - add_grouped_sites(false); - - for (let domainVar of enabledSites) { - if (!allow_cookies.includes(domainVar) && !remove_cookies.includes(domainVar) && !defaultSites_domains.includes(domainVar)) { - allow_cookies.push(domainVar); - remove_cookies.push(domainVar); - } - } + add_grouped_enabled_domains(grouped_sites); + set_rules(sites, customSites); } if (key === 'sites_custom') { var sites_custom = storageChange.newValue ? storageChange.newValue : {}; var sites_custom_old = storageChange.oldValue ? storageChange.oldValue : {}; customSites = sites_custom; customSites_domains = Object.values(sites_custom).map(x => x.domain); - - // add/remove custom sites in options - var sites_custom_added = Object.keys(sites_custom).filter(x => !Object.keys(sites_custom_old).includes(x) && !defaultSites.hasOwnProperty(x)); - var sites_custom_removed = Object.keys(sites_custom_old).filter(x => !Object.keys(sites_custom).includes(x) && !defaultSites.hasOwnProperty(x)); - + + // add/remove custom sites in options (not for default site(group)) + var sites_custom_added = Object.keys(sites_custom).filter(x => !Object.keys(sites_custom_old).includes(x) && !defaultSites.hasOwnProperty(x) && !defaultSites_domains.includes(sites_custom[x].domain)); + var sites_custom_removed = Object.keys(sites_custom_old).filter(x => !Object.keys(sites_custom).includes(x) && !defaultSites.hasOwnProperty(x) && !defaultSites_domains.includes(sites_custom_old[x].domain)); + ext_api.storage.local.get({ sites: {} }, function (items) { var sites = items.sites; - for (let key of sites_custom_added) - sites[key] = sites_custom[key].domain; - for (let key of sites_custom_removed) - delete sites[key]; - - ext_api.storage.local.set({ - sites: sites - }, function () { - true; - }); + if (sites_custom_added.concat(sites_custom_removed).length > 0) { + for (let key of sites_custom_added) + sites[key] = sites_custom[key].domain; + for (let key of sites_custom_removed) + delete sites[key]; + + ext_api.storage.local.set({ + sites: sites + }, function () { + true; + }); + } else + set_rules(sites, customSites); }); - - use_google_bot = use_google_bot_default.slice(); - use_bing_bot = use_bing_bot_default.slice(); - use_facebook_referer = use_facebook_referer_default.slice(); - use_google_referer = use_google_referer_default.slice(); - use_twitter_referer = use_twitter_referer_default.slice(); - block_js_custom = []; - block_js_custom_ext = []; - blockedRegexesCustom = {}; - amp_unhide = []; - for (let key in sites_custom) { - var domainVar = sites_custom[key]['domain'].toLowerCase(); - if (sites_custom[key]['googlebot'] > 0 && !use_google_bot.includes(domainVar)) { - use_google_bot.push(domainVar); - } - switch (sites_custom[key]['useragent']) { - case 'googlebot': - if (!use_google_bot.includes(domainVar)) - use_google_bot.push(domainVar); - break; - case 'bingbot': - if (!use_bing_bot.includes(domainVar)) - use_bing_bot.push(domainVar); - break; - } - if (!defaultSites_domains.includes(domainVar)) { - if (sites_custom[key]['allow_cookies'] > 0) { - if (allow_cookies.includes(domainVar)) { - if (remove_cookies.includes(domainVar)) - remove_cookies.splice(remove_cookies.indexOf(domainVar), 1); - } else - allow_cookies.push(domainVar); - } else if (allow_cookies.includes(domainVar) && !remove_cookies.includes(domainVar)) - remove_cookies.push(domainVar); - } - if (sites_custom[key]['block_javascript'] > 0) { - block_js_custom.push(domainVar); - } - if (sites_custom[key]['block_javascript_ext'] > 0) { - block_js_custom_ext.push(domainVar); - } - if (sites_custom[key]['block_regex']) { - if (sites_custom[key]['block_regex'].match(/^\/.+\/$/)) - sites_custom[key]['block_regex'] = sites_custom[key]['block_regex'].replace(/(^\/|\/$)/g, ''); - blockedRegexesCustom[domainVar] = new RegExp(sites_custom[key]['block_regex']); - } - if (sites_custom[key]['amp_unhide'] > 0) { - amp_unhide.push(domainVar); - } - switch (sites_custom[key]['referer']) { - case 'facebook': - use_facebook_referer.push(domainVar); - break; - case 'google': - use_google_referer.push(domainVar); - break; - case 'twitter': - use_twitter_referer.push(domainVar); - } - } - change_headers = use_google_bot.concat(use_bing_bot, use_facebook_referer, use_google_referer, use_twitter_referer, use_random_ip); + } if (key === 'sites_excluded') { var sites_excluded = storageChange.newValue ? storageChange.newValue : []; @@ -1078,10 +551,7 @@ ext_api.webRequest.onHeadersReceived.addListener(function (details) { }, ['blocking', 'responseHeaders']); -var block_js_default = ["*://cdn.tinypass.com/*", "*://*.piano.io/*", "*://*.poool.fr/*", "*://cdn.ampproject.org/v*/amp-access-*.js", "*://cdn.ampproject.org/v*/amp-subscriptions-*.js", "*://loader-cdn.azureedge.net/prod/*/loader.min.js*", "*://*.blueconic.net/*", "*://*.cxense.com/*", "*://*.evolok.net/*", "*://js.matheranalytics.com/*", "*://*.newsmemory.com/*", "*://*.onecount.net/*", "*://js.pelcro.com/*", "*://*.qiota.com/*", "*://*.tribdss.com/*"]; -var block_js_custom = []; -var block_js_custom_ext = []; -var block_js = block_js_default.concat(block_js_custom); +var block_js = ["*://cdn.tinypass.com/*", "*://*.piano.io/*", "*://*.poool.fr/*", "*://cdn.ampproject.org/v*/amp-access-*.js", "*://cdn.ampproject.org/v*/amp-subscriptions-*.js", "*://loader-cdn.azureedge.net/prod/*/loader.min.js*", "*://*.blueconic.net/*", "*://*.cxense.com/*", "*://*.evolok.net/*", "*://js.matheranalytics.com/*", "*://*.newsmemory.com/*", "*://*.onecount.net/*", "*://js.pelcro.com/*", "*://*.qiota.com/*", "*://*.tribdss.com/*"]; // Disable javascript for these sites/general paywall-scripts function disableJavascriptOnListedSites() { @@ -1140,6 +610,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // remove cookies for sites medium platform (custom domains) + var medium_custom_domains = []; var medium_custom_domain = (matchUrlDomain('cdn-client.medium.com', details.url) && ['script'].includes(details.type) && !matchUrlDomain(medium_custom_domains.concat(['medium.com', 'towardsdatascience.com']), header_referer) && enabledSites.includes('###_medium_custom')); if (medium_custom_domain) { let mc_domain = urlHost(header_referer).replace(/^(www|m)\./, '');; @@ -1153,6 +624,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // set googlebot-useragent for Gannett sites + var usa_gannett_domains = []; var usa_gannett_domain = (matchUrlDomain('gannett-cdn.com', details.url) && ['xmlhttprequest'].includes(details.type) && !matchUrlDomain(usa_gannett_domains.concat(['usatoday.com']), header_referer) && enabledSites.includes('###_usa_gannett')); if (usa_gannett_domain) { let gn_domain = urlHost(header_referer).replace(/^(www|eu)\./, '');; @@ -1166,6 +638,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // block script for additional Lee Enterprises sites (opt-in to custom sites) + var usa_lee_ent_domains = grouped_sites['###_usa_lee_ent']; var usa_lee_ent_domain = (details.url.match(/\.com\/shared-content\/art\/tncms\/.+\.js/) && ['script'].includes(details.type) && !matchUrlDomain(usa_lee_ent_domains, header_referer) && enabledSites.includes('###_usa_lee_ent')); if (usa_lee_ent_domain) { @@ -1177,6 +650,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // block script for additional McClatchy sites (opt-in to custom sites) + var usa_mcc_domains = grouped_sites['###_usa_mcc']; var usa_mcc_domain = ((matchUrlDomain('mcclatchyinteractive.com', details.url) && ['script'].includes(details.type)) || (matchUrlDomain('mcclatchy-wires.com', details.url) && ['image'].includes(details.type)) && !matchUrlDomain(usa_mcc_domains, header_referer) && enabledSites.includes('###_usa_mcc')); @@ -1189,6 +663,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // block script for additional MediaNews Group sites (opt-in to custom sites) + var usa_mng_domains = grouped_sites['###_usa_mng']; var usa_mng_domain = (details.url.match(/\.com\/wp-content\/plugins\/dfm(-pushly|_zeus)\/.+\.js/) && ['script'].includes(details.type) && !matchUrlDomain(usa_mng_domains, header_referer) && enabledSites.includes('###_usa_mng')); if (usa_mng_domain) { @@ -1200,6 +675,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // block script for additional Madsack/RND sites (opt-in to custom sites) + var de_madsack_domains = grouped_sites['###_de_madsack']; var de_rnd_domain = (matchUrlDomain('rndtech.de', details.url) && ['script'].includes(details.type) && !matchUrlDomain(de_madsack_domains.concat(['madsack.de', 'madsack-medien-campus.de', 'rnd.de']), header_referer) && enabledSites.includes('###_de_madsack')); if (de_rnd_domain) { let rnd_domain = urlHost(header_referer).replace(/^(www|m)\./, ''); @@ -1213,6 +689,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { } // set user-agent to GoogleBot for additional Snamoma Media Finland (opt-in to custom sites) + var fi_sanoma_domains = grouped_sites['###_fi_sanoma']; var fi_sanoma_sndp_domain = (matchUrlDomain('sanoma-sndp.fi', details.url) && ['xmlhttprequest'].includes(details.type) && !matchUrlDomain(fi_sanoma_domains, header_referer) && enabledSites.includes('###_fi_sanoma')); if (fi_sanoma_sndp_domain) { let sanoma_domain = urlHost(header_referer).replace(/^www\./, ''); @@ -1237,9 +714,7 @@ ext_api.webRequest.onBeforeSendHeaders.addListener(function(details) { // check for blocked regular expression: domain enabled, match regex, block on an internal or external regex var blockedDomains = Object.keys(blockedRegexes); var domain = matchUrlDomain(blockedDomains, header_referer); - var blockedDomainsCustom = Object.keys(blockedRegexesCustom); - var domainCustom = matchUrlDomain(blockedDomainsCustom, header_referer); - if (((domain && details.url.match(blockedRegexes[domain])) || (domainCustom && details.url.match(blockedRegexesCustom[domainCustom]))) && isSiteEnabled({url: header_referer})) + if (domain && details.url.match(blockedRegexes[domain]) && isSiteEnabled({url: header_referer})) return { cancel: true }; // load toggleIcon.js (icon for dark or incognito mode in Chrome)) @@ -1517,7 +992,7 @@ function site_switch() { if (isDefaultSiteGroup) isDefaultSite = Object.keys(grouped_sites).find(key => grouped_sites[key].includes(isDefaultSiteGroup)); } - let defaultSite_title = isDefaultSite ? Object.keys(defaultSites).find(key => defaultSites[key] === isDefaultSite) : ''; + let defaultSite_title = isDefaultSite ? Object.keys(defaultSites).find(key => defaultSites[key].domain === isDefaultSite) : ''; let isCustomSite = matchUrlDomain(Object.values(customSites_domains), currentUrl); let customSite_title = isCustomSite ? Object.keys(customSites).find(key => customSites[key].domain === isCustomSite) : ''; let site_title = defaultSite_title || customSite_title; @@ -1722,9 +1197,11 @@ if (typeof browser !== 'object') { }); } -function filterObject(obj, callback) { +function filterObject(obj, filterFn, mapFn = function (val, key) { + return [key, val]; +}) { return Object.fromEntries(Object.entries(obj). - filter(([key, val]) => callback(val, key))); + filter(([key, val]) => filterFn(val, key)).map(([key, val]) => mapFn(val, key))); } function isSiteEnabled(details) { diff --git a/changelog.txt b/changelog.txt index 87929565..c2ff25e9 100644 --- a/changelog.txt +++ b/changelog.txt @@ -6,6 +6,7 @@ Fix Lee Enterprises Group Fix LesEchos.fr (json) Fix WaPo (images) Fix WSJ (timing) +Refactor (custom) site rules * v2.4.2.0 (2021-10-31) Fix Barron's (timing) diff --git a/manifest.json b/manifest.json index 1a6f128e..962aa662 100644 --- a/manifest.json +++ b/manifest.json @@ -557,5 +557,5 @@ "*://*.wallkit.net/*", "*://*.wsj.net/*" ], - "version": "2.4.2.3" + "version": "2.4.2.4" } \ No newline at end of file diff --git a/options/options.js b/options/options.js index 0768b01a..d8aa14f3 100644 --- a/options/options.js +++ b/options/options.js @@ -40,7 +40,7 @@ function renderOptions() { if (!defaultSites.hasOwnProperty(key)) { continue; } - var value = defaultSites[key]; + var value = defaultSites[key].domain; labelEl = document.createElement('label'); var inputEl = document.createElement('input'); inputEl.type = 'checkbox'; diff --git a/options/options_custom.html b/options/options_custom.html index 45cde50d..017cf1fa 100644 --- a/options/options_custom.html +++ b/options/options_custom.html @@ -21,7 +21,7 @@
To add a new site, enter an unique title/domain (without www.).
Select options for useragent (like Googlebot), set referer (ignored when Googlebot is set), block Javascript (on (sub)domain(s) of site and/or external domains), block regular expression and/or unhide text on amp-page.
- Custom sites are enabled automatically in (cookies will be removed by default unless you enable allow_cookies; cookie settings for default sites are ignored).
+ Custom sites (new) are enabled automatically in (cookies will be removed by default unless you enable allow_cookies).
If you want to use custom sites (for non-listed sites) enable it in Custom sites enabled:
You can also just request permissions for the custom sites you added yourself (below).
diff --git a/sites.js b/sites.js index 435659e5..ea4d0401 100644 --- a/sites.js +++ b/sites.js @@ -1,359 +1,1735 @@ -var defaultSites = -{ - "360Dx": "360dx.com", - "Aachener Zeitung": "aachener-zeitung.de", - "ABC.es": "abc.es", - "Adweek": "adweek.com", - "Algemeen Dagblad (+ regional)": "###_nl_ad_region", - "Alma Talent (Finland)": "###_fi_alma_talent", - "Alternatives Economiques": "alternatives-economiques.fr", - "Ámbito": "ambito.com", - "American Affairs": "americanaffairsjournal.org", - "American Banker": "americanbanker.com", - "Apollo Magazine": "apollo-magazine.com", - "Asia Times": "asiatimes.com", - "Atavist Magazine": "atavist.com", - "Atlantico.fr": "atlantico.fr", - "Augsburger Allgemeine": "augsburger-allgemeine.de", - "Australia News Corp": "###_au_news_corp", - "Australian Community Media (daily)": "###_au_comm_media", - "Barron's": "barrons.com", - "BBC History Extra": "historyextra.com", - "Belfast Telegraph (opt-in)": "belfasttelegraph.co.uk", - "Berliner Zeitung": "berliner-zeitung.de", - "Berlingske": "berlingske.dk", - "Billboard": "billboard.com", - "Bloomberg": "bloomberg.com", - "Bloomberg Quint (free articles only)": "bloombergquint.com", - "Brisbane Times": "brisbanetimes.com.au", - "Business Insider": "businessinsider.com", - "Business Standard": "business-standard.com", - "Caixin Global": "caixinglobal.com", - "Challenges": "challenges.fr", - "Charlie Hebdo": "charliehebdo.fr", - "Chemical & Engineering News": "cen.acs.org", - "Chronicle of Higher Education": "chronicle.com", - "Cicero.de": "cicero.de", - "Clarín": "clarin.com", - "Commentary Magazine": "commentary.org", - "CommonWealth Magazine Taiwan": "cw.com.tw", - "Correio da Manhã": "cmjornal.pt", - "Corriere della Sera": "corriere.it", - "Crain Communications": "###_usa_craincomm", - "Dagblad van het Noorden": "dvhn.nl", - "Dagens Industri": "di.se", - "Dagens Nyheter": "dn.se", - "Daily Nation": "nation.africa", - "Dark Reading": "darkreading.com", - "De Tijd": "tijd.be", - "DeMorgen": "demorgen.be", - "Deutsche Wirtschafts Nachrichten": "deutsche-wirtschafts-nachrichten.de", - "Diario Financiero": "df.cl", - "Die Rheinpfalz": "rheinpfalz.de", - "Die Zeit": "zeit.de", - "Digiday": "digiday.com", - "Discover Magazine": "discovermagazine.com", - "Domani": "editorialedomani.it", - "El Comercio": "elcomercio.pe", - "El Confidencial": "elconfidencial.com", - "El Diario.es": "eldiario.es", - "El Español": "elespanol.com", - "El Mercurio": "elmercurio.com", - "El Mercurio de Valparaíso": "mercuriovalpo.cl", - "El Mundo": "elmundo.es", - "El País": "elpais.com", - "El Periódico (de Catalunya)": "elperiodico.com", - "Elle.fr": "elle.fr", - "Encyclopedia Britannica": "britannica.com", - "Entrepreneur": "entrepreneur.com", - "Esprit": "esprit.presse.fr", - "EUobserver": "euobserver.com", - "Eureka Report": "eurekareport.com.au", - "Exame": "exame.com", - "Expansión": "expansion.com", - "Financial News (London)": "fnlondon.com", - "Financial Post": "financialpost.com", - "Financial Times (not Chinese)": "ft.com", - "Financieele Dagblad (fd.nl)": "fd.nl", - "First Things": "firstthings.com", - "Folha de S. Paulo": "###_br_folha", - "Follow the Money (ftm.nl)": "ftm.nl", - "Forbes": "forbes.com", - "Foreign Affairs": "foreignaffairs.com", - "Foreign Policy": "foreignpolicy.com", - "Fortune": "fortune.com", - "Frankfurter Allgemeine Zeitung": "faz.net", - "Freie Presse": "freiepresse.de", - "Funke Mediengruppe": "###_de_funke_medien", - "Gannett Group (local USA Today) (opt-in to custom sites)": "###_usa_gannett", - "GElocal.it": "gelocal.it", - "GenomeWeb": "genomeweb.com", - "Gestión": "gestion.pe", - "Glassdoor": "glassdoor.com", - "Globes": "globes.co.il", - "Griffith Review": "griffithreview.com", - "Groene Amsterdammer": "groene.nl", - "Groupe EBRA (France)": "###_fr_groupe_ebra", - "Groupe La Dépêche (France)": "###_fr_groupe_la_depeche", - "Groupe Rossel (France/Belgium)": "###_fr_be_groupe_rossel", - "Grupo Abril": "abril.com.br", - "Grupo Prensa Ibérica": "###_es_epiberica", - "Grupo Vocento (Spain, regional daily)": "###_es_grupo_vocento", - "Haaretz English": "haaretz.com", - "Haaretz": "haaretz.co.il", - "Handelsblatt (only non-premium articles)": "handelsblatt.com", - "Harper's Magazine": "harpers.org", - "Harvard Business Review": "hbr.org", - "Harvard Business Review Taiwan": "hbrtaiwan.com", - "Hindustan Times": "hindustantimes.com", - "Honolulu Star-Advertiser": "staradvertiser.com", - "Houston Chronicle": "houstonchronicle.com", - "Humo.be": "humo.be", - "Il Fatto Quotidiano": "ilfattoquotidiano.it", - "Il Manifesto": "ilmanifesto.it", - "Il Messaggero (+ regional)": "###_it_ilmessaggero", - "Il Secolo XIX": "ilsecoloxix.it", - "Inc.com": "inc.com", - "Inc42": "inc42.com", - "Inkl": "inkl.com", - "Intelligent Investor": "intelligentinvestor.com.au", - "Irish Independent (opt-in)": "independent.ie", - "Knack.be": "knack.be", - "Krautreporter.de": "krautreporter.de", - "Kurier.at": "kurier.at", - "L'Express": "lexpress.fr", - "L'Obs": "nouvelobs.com", - "L'Oeil de la Photographie": "loeildelaphotographie.com", - "L'Opinion": "lopinion.fr", - "L'Orient-Le Jour": "lorientlejour.com", - "L'Usine Nouvelle": "usinenouvelle.com", - "La Croix": "la-croix.com", - "La Estrella de Valparaíso": "estrellavalpo.cl", - "La Nación": "lanacion.com.ar", - "La Nouvelle République du Centre-Ouest": "lanouvellerepublique.fr", - "La Nuova Sardegna": "lanuovasardegna.it", - "La Repubblica": "repubblica.it", - "La Segunda": "lasegunda.com", - "La Stampa": "lastampa.it", - "La Tercera": "latercera.com", - "La Tribune": "latribune.fr", - "La Vanguardia": "lavanguardia.com", - "Law.com (free articles only)": "law.com", - "Law360 (free articles only)": "law360.com", - "Le Devoir": "ledevoir.com", - "Le Journal du Dimanche": "lejdd.fr", - "Le Journal du Net": "journaldunet.com", - "Le Parisien": "leparisien.fr", - "Le Scienze": "lescienze.it", - "Le Télégramme": "letelegramme.fr", - "Lee Enterprises Group": "###_usa_lee_ent", - "Leeuwarder Courant": "lc.nl", - "Les Échos": "lesechos.fr", - "Libération (free articles only)": "liberation.fr", - "LimesOnline": "limesonline.com", - "Live Law": "livelaw.in", - "LiveMint": "livemint.com", - "Loeb Classical Library": "loebclassics.com", - "London Review of Books": "lrb.co.uk", - "Los Angeles Business Journal": "labusinessjournal.com", - "Los Angeles Times": "latimes.com", - "Madsack Mediengruppe (Germany)": "###_de_madsack", - "Marca": "marca.com", - "Marianne.net": "marianne.net", - "MarketWatch": "marketwatch.com", - "McClatchy Group": "###_usa_mcc", - "Mediahuis Nederland Regional": "###_nl_mediahuis_region", - "MediaNama": "medianama.com", - "MediaNews Group": "###_usa_mng", - "Medium": "medium.com", - "Medium custom domains": "###_medium_custom", - "Mexico News Daily": "mexiconewsdaily.com", - "MIT Sloan Management Review": "sloanreview.mit.edu", - "MIT Technology Review": "technologyreview.com", - "Mountain View Voice": "mv-voice.com", - "National Geographic USA": "nationalgeographic.com", - "National Post": "nationalpost.com", - "National Review": "nationalreview.com", - "Nautilus": "nautil.us", - "Neue Osnabrücker Zeitung": "noz.de", - "Neue Zürcher Zeitung": "nzz.ch", - "New Left Review": "newleftreview.org", - "New York Magazine (+ Curbed, Grub Street, The Cut & Vulture)": "###_usa_nymag", - "New Zealand Herald": "nzherald.co.nz", - "Newsday": "newsday.com", - "Newsweek": "newsweek.com", - "NHST Media Group": "###_no_nhst_media", - "Nikkei Asian Review": "asia.nikkei.com", - "NK News (free articles only)": "nknews.org", - "Nordwest Zeitung": "nwzonline.de", - "NRC Handelsblad": "nrc.nl", - "NyTeknik": "nyteknik.se", - "O Estado de S. Paulo": "estadao.com.br", - "O Globo (& Valor Econômico)": "globo.com", - "Observador.pt": "observador.pt", - "Palo Alto Online": "paloaltoonline.com", - "Paris Match": "parismatch.com", - "Parool": "parool.nl", - "Philosophy Now": "philosophynow.org", - "Piqd.de": "piqd.de", - "Pittsburgh Post Gazette": "post-gazette.com", - "Política Exterior": "politicaexterior.com", - "Precision Oncology News": "precisiononcologynews.com", - "Prospect Magazine": "prospectmagazine.co.uk", - "Quartz (free articles only)": "qz.com", - "Quora": "quora.com", - "Quotidiano.net (+ regional)": "###_it_quotidiano", - "Reuters": "reuters.com", - "Rhein-Zeitung": "rhein-zeitung.de", - "Rolling Stone": "rollingstone.com", - "Ruhr Nachrichten": "ruhrnachrichten.de", - "Sächsische Zeitung": "saechsische.de", - "San Diego Union Tribune": "sandiegouniontribune.com", - "San Francisco Chronicle": "sfchronicle.com", - "Sanoma Media Finland (+ regional/opt-in to custom sites)": "###_fi_sanoma", - "Schleswig-Holsteinischer Zeitungsverlag": "shz.de", - "Schweriner Volkszeitung": "svz.de", - "Science & Vie": "science-et-vie.com", - "Sciences et Avenir": "sciencesetavenir.fr", - "Scientific American (free articles only)": "scientificamerican.com", - "Scribd (documents only)": "scribd.com", - "Seeking Alpha": "seekingalpha.com", - "Slate": "slate.com", - "SOFREP": "sofrep.com", - "South China Morning Post": "scmp.com", - "Southern Weekly": "infzm.com", - "Sports Illustrated": "si.com", - "Star Tribune": "startribune.com", - "Statista": "statista.com", - "Stock News": "stocknews.com", - "Stratfor": "stratfor.com", - "Study.com (no videos)": "study.com", - "Sud Ouest": "sudouest.fr", - "Tampa Bay Times": "tampabay.com", - "Tech in Asia": "techinasia.com", - "Telegraaf": "telegraaf.nl", - "Télérama": "telerama.fr", - "The Age": "theage.com.au", - "The American Interest": "the-american-interest.com", - "The Art Newspaper": "theartnewspaper.com", - "The Athletic": "###_usa_theathletic", - "The Atlanta Journal-Constitution": "ajc.com", - "The Atlantic": "theatlantic.com", - "The Australian Financial Review": "afr.com", - "The Boston Globe": "bostonglobe.com", - "The Business Journals": "bizjournals.com", - "The Business of Fashion": "businessoffashion.com", - "The Christian Science Monitor": "csmonitor.com", - "The Daily Beast": "thedailybeast.com", - "The Dallas Morning News": "dallasnews.com", - "The Diplomat": "thediplomat.com", - "The Economic Times (ET Prime)": "###_economictimes", - "The Economist": "economist.com", - "The Globe and Mail": "theglobeandmail.com", - "The Hill Times": "hilltimes.com", - "The Hindu": "thehindu.com", - "The Hindu BusinessLine": "thehindubusinessline.com", - "The Intercept": "theintercept.com", - "The Japan Times": "japantimes.co.jp", - "The Jerusalem Post": "jpost.com", - "The Logic": "thelogic.co", - "The Marker": "themarker.com", - "The Market.ch": "themarket.ch", - "The Nation": "thenation.com", - "The New Atlantis": "thenewatlantis.com", - "The New Republic": "newrepublic.com", - "The New Statesman": "newstatesman.com", - "The New York Review of Books": "nybooks.com", - "The New York Times": "nytimes.com", - "The New Yorker": "newyorker.com", - "The Philadelphia Inquirer": "inquirer.com", - "The Point Magazine": "thepointmag.com", - "The Saturday Paper": "thesaturdaypaper.com.au", - "The Seattle Times": "seattletimes.com", - "The Spectator (UK)": "spectator.co.uk", - "The Spectator Australia": "spectator.com.au", - "The Spectator USA": "spectator.us", - "The Sydney Morning Herald": "smh.com.au", - "The Telegraph": "telegraph.co.uk", - "The Times": "thetimes.co.uk", - "The Times Literary Supplement": "the-tls.co.uk", - "The Toronto Star (+ local TorStar sites)": "###_ca_torstar", - "The Wall Street Journal": "wsj.com", - "The Washington Post": "washingtonpost.com", - "The West Australian (+ regional)": "thewest.com.au", - "The Wrap": "thewrap.com", - "Time Magazine": "time.com", - "Times Higher Education": "timeshighereducation.com", - "Times of India": "###_timesofindia", - "Towards Data Science": "towardsdatascience.com", - "Tribune Publishing Company": "###_usa_tribune", - "Trouw": "trouw.nl", - "USA Today": "usatoday.com", - "Valeurs Actuelles": "valeursactuelles.com", - "Vanity Fair": "vanityfair.com", - "Variety": "variety.com", - "VeloNews": "velonews.com", - "VentureBeat": "venturebeat.com", - "Volkskrant": "volkskrant.nl", - "WAtoday": "watoday.com.au", - "Westfalen-Blatt": "westfalen-blatt.de", - "Westfälische Nachrichten": "wn.de", - "Winston-Salem Journal": "journalnow.com", - "Wired": "wired.com", - "World Politics Review": "worldpoliticsreview.com", - "* Block Paywall-scripts (opt-in to custom sites to enable also for non-listed sites)": "###", - "Amp-access": "cdn.ampproject.org", - "AzureEdge": "loader-cdn.azureedge.net", - "BlueConic": "blueconic.net", - "Cxense": "cxense.com", - "Evolok": "evolok.net", - "MatherAnalytics": "matheranalytics.com", - "NewsMemory": "newsmemory.com", - "OneCount": "onecount.net", - "Pelcro": "pelcro.com", - "Piano.io": "piano.io", - "Poool.fr": "poool.fr", - "Qiota": "qiota.com", - "TinyPass": "tinypass.com", - "TribDss": "tribdss.com", - "* BPC settings": "###", - "Show options on update": "#options_on_update", - "Enable new sites by default": "#options_enable_new_sites", - "Restore opt-in for custom sites (on reload; Chrome-only)": "#options_restore_custom", - "Barron's - no Googlebot (http error 500)": "#options_disable_gb_barrons", - "The Australian - no Googlebot (http error 403)": "#options_disable_gb_theaustralian", - "The Wall Street Journal - no Googlebot (http error 500)": "#options_disable_gb_wsj" +var defaultSites = { + "360Dx": { + domain: "360dx.com", + group_rule: "usa_genomeweb_domains" + }, + "Aachener Zeitung": { + domain: "aachener-zeitung.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(ad|analytics|consent|subscriptions)-.+\.js/ + }, + "ABC.es": { + domain: "abc.es", + allow_cookies: 1, + block_regex: /\.evolok\.net\//, + useragent: "googlebot" + }, + "Adweek": { + domain: "adweek.com", + block_regex: /\.lightboxcdn\.com\// + }, + "Algemeen Dagblad (+ regional)": { + domain: "###_nl_ad_region", + group: [ + "ad.nl", + "bd.nl", + "ed.nl", + "tubantia.nl", + "bndestem.nl", + "pzc.nl", + "destentor.nl", + "gelderlander.nl" + ], + remove_cookies_select_drop: ['temptationTrackingId'] + }, + "Alma Talent (Finland)": { + domain: "###_fi_alma_talent", + group: [ + "arvopaperi.fi", + "iltalehti.fi", + "kauppalehti.fi", + "marmai.fi", + "mediuutiset.fi", + "mikrobitti.fi", + "talouselama.fi", + "tekniikkatalous.fi", + "tivi.fi", + "uusisuomi.fi" + ], + block_regex: /\.fi\/static\/vendor\..+\.chunk\.js/, + useragent: "googlebot", + exception: [{ + domain: "mediuutiset.fi", + useragent: "googlebot" + } + ] + }, + "Alternatives Economiques": { + domain: "alternatives-economiques.fr", + block_regex: /\.poool\.fr\// + }, + "Ámbito": { + domain: "ambito.com", + remove_cookies_select_drop: ['TDNotesRead'] + }, + "American Affairs": { + domain: "americanaffairsjournal.org" + }, + "American Banker": { + domain: "americanbanker.com", + block_regex: /\.tinypass\.com\// + }, + "Apollo Magazine": { + domain: "apollo-magazine.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Asia Times": { + domain: "asiatimes.com", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics)-.+\.(m)?js/ + }, + "Atavist Magazine": { + domain: "atavist.com" + }, + "Atlantico.fr": { + domain: "atlantico.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Augsburger Allgemeine": { + domain: "augsburger-allgemeine.de", + allow_cookies: 1, + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js)/ + }, + "Australia News Corp": { + domain: "###_au_news_corp", + group: [ + "adelaidenow.com.au", + "cairnspost.com.au", + "couriermail.com.au", + "dailytelegraph.com.au", + "geelongadvertiser.com.au", + "goldcoastbulletin.com.au", + "heraldsun.com.au", + "ntnews.com.au", + "theaustralian.com.au", + "thechronicle.com.au", + "themercury.com.au", + "townsvillebulletin.com.au", + "weeklytimesnow.com.au" + ], + allow_cookies: 1, + useragent: "googlebot", + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|iframe)-.+\.js/ + }, + "Australian Community Media (daily)": { + domain: "###_au_comm_media", + group: [ + "bendigoadvertiser.com.au", + "bordermail.com.au", + "canberratimes.com.au", + "centralwesterndaily.com.au", + "dailyadvertiser.com.au", + "dailyliberal.com.au", + "examiner.com.au", + "illawarramercury.com.au", + "newcastleherald.com.au", + "northerndailyleader.com.au", + "portnews.com.au", + "standard.net.au", + "theadvocate.com.au", + "thecourier.com.au", + "westernadvocate.com.au" + ], + allow_cookies: 1, + block_regex: /cdn-au\.piano\.io\/api\/tinypass.+\.js/ + }, + "Barron's": { + domain: "barrons.com", + block_regex: /(cdn\.cxense\.com\/.+|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js)/, + remove_cookies_select_hold: ['wsjregion'], + useragent: "googlebot" + }, + "BBC History Extra": { + domain: "historyextra.com", + block_regex: /\.evolok\.net\// + }, + "Belfast Telegraph (opt-in)": { + domain: "belfasttelegraph.co.uk", + allow_cookies: 1, + block_regex: /(cdn\.flip-pay\.com\/clients\/inm\/flip-pay\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/ + }, + "Berliner Zeitung": { + domain: "berliner-zeitung.de", + allow_cookies: 1 + }, + "Berlingske": { + domain: "berlingske.dk", + allow_cookies: 1, + useragent: "googlebot" + }, + "Billboard": { + domain: "billboard.com", + allow_cookies: 1, + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "Bloomberg": { + domain: "bloomberg.com", + block_regex: /\.tinypass\.com\//, + remove_cookies_select_hold: ['bb_geo_info'] + }, + "Bloomberg Quint (free articles only)": { + domain: "bloombergquint.com" + }, + "Brisbane Times": { + domain: "brisbanetimes.com.au", + group_rule: "au_nine_domains" + }, + "Business Insider": { + domain: "businessinsider.com", + block_regex: /\.tinypass\.com\// + }, + "Business Standard": { + domain: "business-standard.com", + allow_cookies: 1 + }, + "Caixin Global": { + domain: "caixinglobal.com", + remove_cookies_select_drop: ['CAIXINGLB_LOGIN_UUID'] + }, + "Challenges": { + domain: "challenges.fr", + block_regex: /\.poool\.fr\// + }, + "Charlie Hebdo": { + domain: "charliehebdo.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Chemical & Engineering News": { + domain: "cen.acs.org" + }, + "Chronicle of Higher Education": { + domain: "chronicle.com", + allow_cookies: 1, + block_regex: /(\.blueconic\.net\/|\.chronicle\.com\/(common\/)?(che-auth0-user|script)\.js)/ + }, + "Cicero.de": { + domain: "cicero.de", + allow_cookies: 1 + }, + "Clarín": { + domain: "clarin.com", + allow_cookies: 1, + block_regex: /js\.matheranalytics\.com\//, + referer: "facebook" + }, + "Commentary Magazine": { + domain: "commentary.org", + block_regex: /\.commentary\.org\/.+\/js\/dg-locker-public\.js/ + }, + "CommonWealth Magazine Taiwan": { + domain: "cw.com.tw" + }, + "Correio da Manhã": { + domain: "cmjornal.pt", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad)-.+\.js/ + }, + "Corriere della Sera": { + domain: "corriere.it", + allow_cookies: 1, + block_regex: /(\.tinypass\.com\/|\.corriereobjects\.it\/.+\/js\/_paywall\.sjs)/ + }, + "Crain Communications": { + domain: "###_usa_craincomm", + group: [ + "adage.com", + "autonews.com", + "chicagobusiness.com", + "crainscleveland.com", + "crainsdetroit.com", + "crainsnewyork.com", + "modernhealthcare.com" + ], + allow_cookies: 1, + block_regex: "(\\.tinypass\\.com\\/|\\.{domain}\\/.+\\/js\\/js_.+\\.js)", + exception: [{ + domain: "autonews.com", + block_regex: "(\\.tinypass\\.com\\/|\\.{domain}\\/.+\\/js\\/js_.+\\.js)" + } + ] + }, + "Dagblad van het Noorden": { + domain: "dvhn.nl", + allow_cookies: 1, + block_regex: /\.evolok\.net\// + }, + "Dagens Industri": { + domain: "di.se", + allow_cookies: 1, + useragent: "googlebot" + }, + "Dagens Nyheter": { + domain: "dn.se", + allow_cookies: 1, + useragent: "googlebot" + }, + "Daily Nation": { + domain: "nation.africa", + allow_cookies: 1, + block_regex: /(\.evolok\.net\/|nation\.africa\/resource\/themes\/nation-.+\/js\/.+\.js)/ + }, + "Dark Reading": { + domain: "darkreading.com" + }, + "De Tijd": { + domain: "tijd.be" + }, + "DeMorgen": { + domain: "demorgen.be", + group_rule: "nl_pg_domains" + }, + "Deutsche Wirtschafts Nachrichten": { + domain: "deutsche-wirtschafts-nachrichten.de", + useragent: "googlebot" + }, + "Diario Financiero": { + domain: "df.cl", + allow_cookies: 1, + useragent: "googlebot" + }, + "Die Rheinpfalz": { + domain: "rheinpfalz.de", + allow_cookies: 1, + useragent: "googlebot" + }, + "Die Zeit": { + domain: "zeit.de", + allow_cookies: 1, + useragent: "googlebot" + }, + "Digiday": { + domain: "digiday.com", + block_regex: /cdn.\.tinypass\.com\// + }, + "Discover Magazine": { + domain: "discovermagazine.com" + }, + "Domani": { + domain: "editorialedomani.it", + allow_cookies: 1, + block_regex: /(\.editorialedomani\.it\/pelcro\.js|js\.pelcro\.com\/)/, + useragent: "googlebot" + }, + "El Comercio": { + domain: "elcomercio.pe", + allow_cookies: 1, + block_regex: /\/elcomercio\.pe\/pf\/dist\/engine\/react\.js/ + }, + "El Confidencial": { + domain: "elconfidencial.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "El Diario.es": { + domain: "eldiario.es" + }, + "El Español": { + domain: "elespanol.com", + allow_cookies: 1, + block_regex: /\.eestatic\.com\/assets_js\/web\/v\d\/historia.*\.min\.js/ + }, + "El Mercurio": { + domain: "elmercurio.com", + allow_cookies: 1, + block_regex: /\.(elmercurio\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/, + useragent: "googlebot" + }, + "El Mercurio de Valparaíso": { + domain: "mercuriovalpo.cl", + block_regex: /(.+\.mercuriovalpo\.cl\/impresa\/.+\/assets\/(vendor|\d)\.js|pram\.pasedigital\.cl\/API\/User\/Status\?)/ + }, + "El Mundo": { + domain: "elmundo.es", + group_rule: "es_unidad_domains" + }, + "El País": { + domain: "elpais.com", + allow_cookies: 1, + block_regex: /(\.epimg\.net\/js\/.+\/(noticia|user)\.min\.js|\/elpais\.com\/arc\/subs\/p\.min\.js|cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|consent)-.+\.js)/ + }, + "El Periódico (de Catalunya)": { + domain: "elperiodico.com", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/ + }, + "Elle.fr": { + domain: "elle.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Encyclopedia Britannica": { + domain: "britannica.com" + }, + "Entrepreneur": { + domain: "entrepreneur.com", + allow_cookies: 1 + }, + "Esprit": { + domain: "esprit.presse.fr", + allow_cookies: 1 + }, + "EUobserver": { + domain: "euobserver.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "Eureka Report": { + domain: "eurekareport.com.au", + allow_cookies: 1, + useragent: "googlebot" + }, + "Exame": { + domain: "exame.com", + block_regex: /\/exame\.com\/.+\/js\/pywll-dyn\.js/ + }, + "Expansión": { + domain: "expansion.com", + group_rule: "es_unidad_domains" + }, + "Financial News (London)": { + domain: "fnlondon.com", + useragent: "googlebot" + }, + "Financial Post": { + domain: "financialpost.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Financial Times (not Chinese)": { + domain: "ft.com", + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js/, + useragent: "googlebot" + }, + "Financieele Dagblad (fd.nl)": { + domain: "fd.nl", + referer: "facebook", + remove_cookies_select_drop: ['socialread'] + }, + "First Things": { + domain: "firstthings.com" + }, + "Folha de S. Paulo": { + domain: "###_br_folha", + group: [ + "folha.uol.com.br", + "blogfolha.uol.com.br" + ], + allow_cookies: 1, + block_regex: /(\.folha\.uol\.com\.br\/paywall\/js\/.+\/publicidade\.ads\.js|paywall\.folha\.uol\.com\.br\/|js\.matheranalytics\.com\/)/ + }, + "Follow the Money (ftm.nl)": { + domain: "ftm.nl", + allow_cookies: 1, + block_regex: /\.ftm\.nl\/js\/routing\?/ + }, + "Forbes": { + domain: "forbes.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Foreign Affairs": { + domain: "foreignaffairs.com", + block_regex: /\.foreignaffairs\.com\/sites\/default\/files\/js\/js_[^y].+\.js/ + }, + "Foreign Policy": { + domain: "foreignpolicy.com", + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "Fortune": { + domain: "fortune.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Frankfurter Allgemeine Zeitung": { + domain: "faz.net", + allow_cookies: 1 + }, + "Freie Presse": { + domain: "freiepresse.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/ + }, + "Funke Mediengruppe": { + domain: "###_de_funke_medien", + group: [ + "abendblatt.de", + "braunschweiger-zeitung.de", + "morgenpost.de", + "nrz.de", + "otz.de", + "thueringer-allgemeine.de", + "tlz.de", + "waz.de", + "wp.de", + "wr.de" + ], + allow_cookies: 1, + useragent: "googlebot", + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "Gannett Group (local USA Today) (opt-in to custom sites)": { + domain: "###_usa_gannett" + }, + "GElocal.it": { + domain: "gelocal.it", + group_rule: "it_repubblica_domains" + }, + "GenomeWeb": { + domain: "genomeweb.com", + group_rule: "usa_genomeweb_domains" + }, + "Gestión": { + domain: "gestion.pe", + allow_cookies: 1, + block_regex: /\/gestion\.pe\/pf\/dist\/engine\/react\.js/ + }, + "Glassdoor": { + domain: "glassdoor.com" + }, + "Globes": { + domain: "globes.co.il", + block_regex: /\.tinypass\.com\// + }, + "Griffith Review": { + domain: "griffithreview.com", + block_regex: /\.griffithreview\.com\/.+\/leaky-paywall\//, + remove_cookies_select_drop: ['issuem_lp'] + }, + "Groene Amsterdammer": { + domain: "groene.nl", + remove_cookies_select_hold: ['accept-cookies', 'popunder-hidden'] + }, + "Groupe EBRA (France)": { + domain: "###_fr_groupe_ebra", + group: [ + "bienpublic.com", + "dna.fr", + "estrepublicain.fr", + "lalsace.fr", + "ledauphine.com", + "lejsl.com", + "leprogres.fr", + "republicain-lorrain.fr", + "vosgesmatin.fr" + ], + allow_cookies: 1, + block_regex: /(\.poool\.fr\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/ + }, + "Groupe La Dépêche (France)": { + domain: "###_fr_groupe_la_depeche", + group: [ + "centrepresseaveyron.fr", + "ladepeche.fr", + "lindependant.fr", + "midi-olympique.fr", + "midilibre.fr", + "nrpyrenees.fr", + "petitbleu.fr" + ], + allow_cookies: 1, + block_regex: /(\.poool\.fr\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js)/ + }, + "Groupe Rossel (France/Belgium)": { + domain: "###_fr_be_groupe_rossel", + group: [ + "aisnenouvelle.fr", + "courrier-picard.fr", + "lardennais.fr", + "lavoixdunord.fr", + "lecho.be", + "lesoir.be", + "lest-eclair.fr", + "liberation-champagne.fr", + "lunion.fr", + "nordeclair.fr", + "nordlittoral.fr", + "paris-normandie.fr", + "sudinfo.be" + ], + allow_cookies: 1, + useragent: "googlebot", + exception: [{ + domain: "lecho.be" + } + ] + }, + "Grupo Abril": { + domain: "abril.com.br", + allow_cookies: 1, + block_regex: /\.abril\.com\.br\/.+\/abril-paywall\/js\/abril-paywall\.js/ + }, + "Grupo Prensa Ibérica": { + domain: "###_es_epiberica", + group: [ + "diariodeibiza.es", + "diariodemallorca.es", + "eldia.es", + "elperiodicomediterraneo.com", + "farodevigo.es", + "informacion.es", + "laprovincia.es", + "levante-emv.com", + "lne.es" + ], + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|analytics|consent)-.+\.js/ + }, + "Grupo Vocento (Spain, regional daily)": { + domain: "###_es_grupo_vocento", + group: [ + "diariosur.es", + "diariovasco.com", + "elcomercio.es", + "elcorreo.com", + "eldiariomontanes.es", + "elnortedecastilla.es", + "hoy.es", + "ideal.es", + "larioja.com", + "lasprovincias.es", + "laverdad.es", + "lavozdigital.es" + ], + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js/ + }, + "Haaretz English": { + domain: "haaretz.com", + allow_cookies: 1, + block_regex: /haaretz\.com\/hdc\/web\/js\/minified\/header-scripts-int.js/, + useragent: "bingbot" + }, + "Haaretz": { + domain: "haaretz.co.il", + allow_cookies: 1, + block_regex: /haaretz\.co\.il\/htz\/js\/inter\.js/, + useragent: "bingbot" + }, + "Handelsblatt (only non-premium articles)": { + domain: "handelsblatt.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "Harper's Magazine": { + domain: "harpers.org" + }, + "Harvard Business Review": { + domain: "hbr.org", + block_regex: /\.tinypass\.com\// + }, + "Harvard Business Review Taiwan": { + domain: "hbrtaiwan.com" + }, + "Hindustan Times": { + domain: "hindustantimes.com", + allow_cookies: 1 + }, + "Honolulu Star-Advertiser": { + domain: "staradvertiser.com", + allow_cookies: 1 + }, + "Houston Chronicle": { + domain: "houstonchronicle.com", + block_regex: /\.blueconic\.net\// + }, + "Humo.be": { + domain: "humo.be", + group_rule: "nl_pg_domains" + }, + "Il Fatto Quotidiano": { + domain: "ilfattoquotidiano.it", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/ + }, + "Il Manifesto": { + domain: "ilmanifesto.it", + referer: "facebook" + }, + "Il Messaggero (+ regional)": { + domain: "###_it_ilmessaggero", + group: [ + "corriereadriatico.it", + "ilgazzettino.it", + "ilmattino.it", + "ilmessaggero.it", + "quotidianodipuglia.it" + ], + block_regex: /utils\.cedsdigital\.it\/js\/PaywallMeter\.js/ + }, + "Il Secolo XIX": { + domain: "ilsecoloxix.it", + group_rule: "it_repubblica_domains" + }, + "Inc.com": { + domain: "inc.com", + block_regex: /\.tinypass\.com\// + }, + "Inc42": { + domain: "inc42.com", + allow_cookies: 1, + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics)-.+\.(m)?js)/ + }, + "Inkl": { + domain: "inkl.com" + }, + "Intelligent Investor": { + domain: "intelligentinvestor.com.au", + allow_cookies: 1, + useragent: "googlebot" + }, + "Irish Independent (opt-in)": { + domain: "independent.ie", + allow_cookies: 1, + block_regex: /(cdn\.flip-pay\.com\/clients\/inm\/flip-pay\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js)/ + }, + "Knack.be": { + domain: "knack.be", + allow_cookies: 1, + block_regex: /(\.knack\.be\/js\/responsive\/rmg(Modal|Paywall)\.js|\.blueconic\.net\/)/ + }, + "Krautreporter.de": { + domain: "krautreporter.de" + }, + "Kurier.at": { + domain: "kurier.at", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "L'Express": { + domain: "lexpress.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "L'Obs": { + domain: "nouvelobs.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "L'Oeil de la Photographie": { + domain: "loeildelaphotographie.com", + allow_cookies: 1, + block_regex: /cdn\.loeildelaphotographie\.com\/wp-content\/.+\/hague-child\/js\/script-.+\.js/ + }, + "L'Opinion": { + domain: "lopinion.fr", + block_regex: /\.poool\.fr\// + }, + "L'Orient-Le Jour": { + domain: "lorientlejour.com" + }, + "L'Usine Nouvelle": { + domain: "usinenouvelle.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "La Croix": { + domain: "la-croix.com", + allow_cookies: 1, + block_regex: /(\.la-croix\.com\/build\/lacroix\/article.+\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/ + }, + "La Estrella de Valparaíso": { + domain: "estrellavalpo.cl", + block_regex: /(\.mercuriovalpo\.cl\/impresa\/.+\/assets\/(vendor|\d)\.js|pram\.pasedigital\.cl\/API\/User\/Status\?)/ + }, + "La Nación": { + domain: "lanacion.com.ar" + }, + "La Nouvelle République du Centre-Ouest": { + domain: "lanouvellerepublique.fr", + allow_cookies: 1, + useragent: "googlebot" + }, + "La Nuova Sardegna": { + domain: "lanuovasardegna.it", + group_rule: "it_repubblica_domains" + }, + "La Repubblica": { + domain: "repubblica.it", + group_rule: "it_repubblica_domains" + }, + "La Segunda": { + domain: "lasegunda.com", + block_regex: /\.(lasegunda\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/ + }, + "La Stampa": { + domain: "lastampa.it", + group_rule: "it_repubblica_domains" + }, + "La Tercera": { + domain: "latercera.com", + block_regex: /(\.latercera\.com\/arc\/subs\/p\.js|cdn\.cxense\.com\/)/ + }, + "La Tribune": { + domain: "latribune.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "La Vanguardia": { + domain: "lavanguardia.com", + allow_cookies: 1, + block_regex: /(\.evolok\.net\/|\.lavanguardia\.com\/(js\/)?godo-)/ + }, + "Law.com (free articles only)": { + domain: "law.com", + referer: "facebook" + }, + "Law360 (free articles only)": { + domain: "law360.com", + referer: "twitter" + }, + "Le Devoir": { + domain: "ledevoir.com" + }, + "Le Journal du Dimanche": { + domain: "lejdd.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Le Journal du Net": { + domain: "journaldunet.com" + }, + "Le Parisien": { + domain: "leparisien.fr", + block_regex: /\.tinypass\.com\//, + useragent: "googlebot" + }, + "Le Scienze": { + domain: "lescienze.it", + group_rule: "it_repubblica_domains" + }, + "Le Télégramme": { + domain: "letelegramme.fr", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Lee Enterprises Group": { + domain: "###_usa_lee_ent", + group: [ + "buffalonews.com", + "richmond.com", + "tucson.com", + "tulsaworld.com" + ], + allow_cookies: 1, + block_regex: /api\.bntech\.io\/js\// + }, + "Leeuwarder Courant": { + domain: "lc.nl", + allow_cookies: 1, + block_regex: /\.evolok\.net\// + }, + "Les Échos": { + domain: "lesechos.fr", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Libération (free articles only)": { + domain: "liberation.fr" + }, + "LimesOnline": { + domain: "limesonline.com", + group_rule: "it_repubblica_domains" + }, + "Live Law": { + domain: "livelaw.in", + allow_cookies: 1 + }, + "LiveMint": { + domain: "livemint.com", + block_regex: /(\.livemint\.com\/js\/localWorker\.js|analytics\.htmedia\.in\/analytics-js\/.+\.js)/ + }, + "Loeb Classical Library": { + domain: "loebclassics.com" + }, + "London Review of Books": { + domain: "lrb.co.uk", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Los Angeles Business Journal": { + domain: "labusinessjournal.com" + }, + "Los Angeles Times": { + domain: "latimes.com", + block_regex: /metering\.platform\.latimes\.com\/v\d\/meter/ + }, + "Madsack Mediengruppe (Germany)": { + domain: "###_de_madsack", + group: [ + "haz.de", + "kn-online.de", + "ln-online.de", + "lvz.de", + "maz-online.de", + "neuepresse.de", + "ostsee-zeitung.de" + ], + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/ + }, + "Marca": { + domain: "marca.com", + group_rule: "es_unidad_domains" + }, + "Marianne.net": { + domain: "marianne.net", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "MarketWatch": { + domain: "marketwatch.com", + allow_cookies: 1, + block_regex: /(cdn\.cxense\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|subscriptions)-.+\.js)/ + }, + "McClatchy Group": { + domain: "###_usa_mcc", + group: [ + "bnd.com", + "charlotteobserver.com", + "fresnobee.com", + "kansas.com", + "kansascity.com", + "kentucky.com", + "miamiherald.com", + "newsobserver.com", + "sacbee.com", + "star-telegram.com", + "thestate.com", + "tri-cityherald.com" + ], + block_regex: /(js\.matheranalytics\.com\/|cdn\.ampproject\.org\/v\d\/amp-subscriptions-.+\.js)/ + }, + "Mediahuis Nederland Regional": { + domain: "###_nl_mediahuis_region", + group: [ + "gooieneemlander.nl", + "haarlemsdagblad.nl", + "ijmuidercourant.nl", + "leidschdagblad.nl", + "noordhollandsdagblad.nl" + ], + allow_cookies: 1 + }, + "MediaNama": { + domain: "medianama.com", + allow_cookies: 1 + }, + "MediaNews Group": { + domain: "###_usa_mng", + group: [ + "denverpost.com", + "eastbaytimes.com", + "mercurynews.com", + "ocregister.com", + "pe.com", + "twincities.com" + ], + allow_cookies: 1, + block_regex: /(\.blueconic\.net\/|\.tinypass\.com\/|\.com\/.+\/loader\.min\.js|cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|subscriptions)-.+\.js)/ + }, + "Medium": { + domain: "medium.com", + allow_cookies: 1, + remove_cookies: 1, + referer: "twitter" + }, + "Medium custom domains": { + domain: "###_medium_custom" + }, + "Mexico News Daily": { + domain: "mexiconewsdaily.com", + block_regex: /\.mexiconewsdaily\.com\/c\/assets\/pigeon\.js/ + }, + "MIT Sloan Management Review": { + domain: "sloanreview.mit.edu", + block_regex: /(\.tinypass\.com\/|\/sloanreview\.mit\.edu\/.+\/welcome-ad\.js)/, + referer: "facebook" + }, + "MIT Technology Review": { + domain: "technologyreview.com", + block_regex: /\.blueconic\.net\// + }, + "Mountain View Voice": { + domain: "mv-voice.com" + }, + "National Geographic USA": { + domain: "nationalgeographic.com", + allow_cookies: 1, + block_regex: /\.blueconic\.net\// + }, + "National Post": { + domain: "nationalpost.com", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "National Review": { + domain: "nationalreview.com", + allow_cookies: 1, + block_regex: /(\.blueconic\.net\/|\.nationalreview\.com\/script\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/, + useragent: "googlebot" + }, + "Nautilus": { + domain: "nautil.us" + }, + "Neue Osnabrücker Zeitung": { + domain: "noz.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/ + }, + "Neue Zürcher Zeitung": { + domain: "nzz.ch", + allow_cookies: 1, + useragent: "googlebot" + }, + "New Left Review": { + domain: "newleftreview.org", + allow_cookies: 1, + useragent: "googlebot" + }, + "New York Magazine (+ Curbed, Grub Street, The Cut & Vulture)": { + domain: "###_usa_nymag", + group: [ + "curbed.com", + "grubstreet.com", + "nymag.com", + "thecut.com", + "vulture.com" + ], + remove_cookies_select_drop: ['nymcid'], + block_regex: /fosse\.nymag\.com\/fosse\/.+\/scripts\/.+\.js/ + }, + "New Zealand Herald": { + domain: "nzherald.co.nz", + useragent: "bingbot" + }, + "Newsday": { + domain: "newsday.com", + allow_cookies: 1, + block_regex: /(loader-cdn\.azureedge\.net\/|js\.matheranalytics\.com\/)/ + }, + "Newsweek": { + domain: "newsweek.com", + block_regex: /js\.pelcro\.com\// + }, + "NHST Media Group": { + domain: "###_no_nhst_media", + group: [ + "intrafish.com", + "rechargenews.com", + "tradewindsnews.com", + "upstreamonline.com" + ], + allow_cookies: 1, + referer: "facebook" + }, + "Nikkei Asian Review": { + domain: "asia.nikkei.com" + }, + "NK News (free articles only)": { + domain: "nknews.org", + block_regex: /\.nknews\.org\/wp-content\/themes\/nknews\/js\/bootstrap\.min\.js/, + useragent: "googlebot" + }, + "Nordwest Zeitung": { + domain: "nwzonline.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/ + }, + "NRC Handelsblad": { + domain: "nrc.nl", + remove_cookies_select_drop: ['counter'] + }, + "NyTeknik": { + domain: "nyteknik.se", + allow_cookies: 1, + block_regex: /\.nyteknik\.se\/.+\/static\/js\/site\.min\.js/ + }, + "O Estado de S. Paulo": { + domain: "estadao.com.br", + block_regex: /acesso\.estadao\.com\.br\/paywall\/.+\/.+\.js/ + }, + "O Globo (& Valor Econômico)": { + domain: "globo.com", + block_regex: /\.tinypass\.com\// + }, + "Observador.pt": { + domain: "observador.pt", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "Palo Alto Online": { + domain: "paloaltoonline.com" + }, + "Paris Match": { + domain: "parismatch.com", + allow_cookies: 1, + block_regex: /\.poool\.fr\// + }, + "Parool": { + domain: "parool.nl", + group_rule: "nl_pg_domains" + }, + "Philosophy Now": { + domain: "philosophynow.org" + }, + "Piqd.de": { + domain: "piqd.de", + allow_cookies: 1, + useragent: "googlebot" + }, + "Pittsburgh Post Gazette": { + domain: "post-gazette.com", + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "Política Exterior": { + domain: "politicaexterior.com", + allow_cookies: 1 + }, + "Precision Oncology News": { + domain: "precisiononcologynews.com", + group_rule: "usa_genomeweb_domains" + }, + "Prospect Magazine": { + domain: "prospectmagazine.co.uk", + allow_cookies: 1 + }, + "Quartz (free articles only)": { + domain: "qz.com", + block_regex: /\.tinypass\.com\//, + remove_cookies_select_hold: ['gdpr'] + }, + "Quora": { + domain: "quora.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "Quotidiano.net (+ regional)": { + domain: "###_it_quotidiano", + group: [ + "ilgiorno.it", + "ilrestodelcarlino.it", + "iltelegrafolivorno.it", + "lanazione.it", + "quotidiano.net" + ], + allow_cookies: 1, + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "Reuters": { + domain: "reuters.com", + allow_cookies: 1, + block_regex: /\.reuters\.com\/(arc\/subs\/p\.min|pf\/resources\/dist\/reuters\/js\/index)\.js/ + }, + "Rhein-Zeitung": { + domain: "rhein-zeitung.de", + allow_cookies: 1, + useragent: "googlebot" + }, + "Rolling Stone": { + domain: "rollingstone.com", + allow_cookies: 1, + block_regex: /cdn\.cxense\.com\// + }, + "Ruhr Nachrichten": { + domain: "ruhrnachrichten.de", + allow_cookies: 1, + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|consent|subscriptions)-.+\.js)/, + useragent: "googlebot" + }, + "Sächsische Zeitung": { + domain: "saechsische.de", + allow_cookies: 1, + block_regex: /\.tinypass\.com\// + }, + "San Diego Union Tribune": { + domain: "sandiegouniontribune.com", + block_regex: /metering\.platform\.sandiegouniontribune\.com\/v\d\/meter/ + }, + "San Francisco Chronicle": { + domain: "sfchronicle.com", + block_regex: /\.blueconic\.net\// + }, + "Sanoma Media Finland (+ regional/opt-in to custom sites)": { + domain: "###_fi_sanoma", + group: [ + "aamulehti.fi", + "hs.fi" + ], + allow_cookies: 1, + useragent: "googlebot", + }, + "Schleswig-Holsteinischer Zeitungsverlag": { + domain: "shz.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/ + }, + "Schweriner Volkszeitung": { + domain: "svz.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|fx-flying-carpet)-.+\.js/ + }, + "Science & Vie": { + domain: "science-et-vie.com", + block_regex: /\.qiota\.com\// + }, + "Sciences et Avenir": { + domain: "sciencesetavenir.fr", + block_regex: /\.poool\.fr\// + }, + "Scientific American (free articles only)": { + domain: "scientificamerican.com", + allow_cookies: 1, + remove_cookies: 1 + }, + "Scribd (documents only)": { + domain: "scribd.com", + allow_cookies: 1 + }, + "Seeking Alpha": { + domain: "seekingalpha.com", + allow_cookies: 1, + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org(\/.+)?\/v\d\/amp-(access|ad|loader)-.+\.js)/, + useragent: "googlebot" + }, + "Slate": { + domain: "slate.com", + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "SOFREP": { + domain: "sofrep.com" + }, + "South China Morning Post": { + domain: "scmp.com", + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|analytics|consent|fx-flying-carpet)-.+\.js)/ + }, + "Southern Weekly": { + domain: "infzm.com", + allow_cookies: 1 + }, + "Sports Illustrated": { + domain: "si.com", + allow_cookies: 1, + block_regex: /\.blueconic\.net\// + }, + "Star Tribune": { + domain: "startribune.com", + allow_cookies: 1 + }, + "Statista": { + domain: "statista.com", + referer: "google" + }, + "Stock News": { + domain: "stocknews.com", + allow_cookies: 1 + }, + "Stratfor": { + domain: "stratfor.com", + allow_cookies: 1, + useragent: "bingbot" + }, + "Study.com (no videos)": { + domain: "study.com", + allow_cookies: 1 + }, + "Sud Ouest": { + domain: "sudouest.fr", + allow_cookies: 1 + }, + "Tampa Bay Times": { + domain: "tampabay.com", + allow_cookies: 1, + block_regex: /(loader-cdn\.azureedge\.net\/|js\.matheranalytics\.com\/)/ + }, + "Tech in Asia": { + domain: "techinasia.com", + allow_cookies: 1 + }, + "Telegraaf": { + domain: "telegraaf.nl", + allow_cookies: 1 + }, + "Télérama": { + domain: "telerama.fr", + allow_cookies: 1, + useragent: "googlebot" + }, + "The Age": { + domain: "theage.com.au", + group_rule: "au_nine_domains" + }, + "The American Interest": { + domain: "the-american-interest.com", + allow_cookies: 1 + }, + "The Art Newspaper": { + domain: "theartnewspaper.com", + allow_cookies: 1, + block_regex: /\.amazonaws.com\/production-website-scripts\/bouncer\.js/ + }, + "The Athletic": { + domain: "###_usa_theathletic", + group: [ + "theathletic.com", + "theathletic.co.uk" + ], + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-subscriptions-.+\.js/ + }, + "The Atlanta Journal-Constitution": { + domain: "ajc.com", + allow_cookies: 1, + block_regex: /loader-cdn\.azureedge\.net\// + }, + "The Atlantic": { + domain: "theatlantic.com", + remove_cookies_select_drop: ['articleViews'] + }, + "The Australian Financial Review": { + domain: "afr.com", + block_regex: /api\.afr\.com\/graphql\?query=.+PaywallRuleQuery/ + }, + "The Boston Globe": { + domain: "bostonglobe.com", + allow_cookies: 1, + block_regex: /\.blueconic\.net\// + }, + "The Business Journals": { + domain: "bizjournals.com", + block_regex: /(assets\.bizjournals\.com\/static\/js\/app\/cxense\.js|cdn\.cxense\.com\/)/ + }, + "The Business of Fashion": { + domain: "businessoffashion.com", + allow_cookies: 1 + }, + "The Christian Science Monitor": { + domain: "csmonitor.com" + }, + "The Daily Beast": { + domain: "thedailybeast.com", + block_regex: /\.tinypass\.com\// + }, + "The Dallas Morning News": { + domain: "dallasnews.com", + allow_cookies: 1, + block_regex: /(\.blueconic\.net\/|js\.matheranalytics\.com\/)/ + }, + "The Diplomat": { + domain: "thediplomat.com" + }, + "The Economic Times (ET Prime)": { + domain: "###_economictimes", + group: [ + "economictimes.com", + "economictimes.indiatimes.com" + ], + allow_cookies: 1, + useragent: "googlebot" + }, + "The Economist": { + domain: "economist.com", + block_regex: /(\.tinypass\.com\/cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/ + }, + "The Globe and Mail": { + domain: "theglobeandmail.com", + block_regex: /(\.theglobeandmail\.com\/pf\/dist\/engine\/react\.js|smartwall\.theglobeandmail\.com\/)/ + }, + "The Hill Times": { + domain: "hilltimes.com", + allow_cookies: 1, + block_regex: /\.hilltimes\.com\/.+\/js\/loadingoverlay\/loadingoverlay\.min\.js/, + useragent: "googlebot" + }, + "The Hindu": { + domain: "thehindu.com", + allow_cookies: 1, + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "The Hindu BusinessLine": { + domain: "thehindubusinessline.com", + allow_cookies: 1, + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "The Intercept": { + domain: "theintercept.com", + allow_cookies: 1, + block_regex: /\.theintercept\.com\/api\/tinypass\.min\.js/ + }, + "The Japan Times": { + domain: "japantimes.co.jp", + block_regex: /\.piano\.io\// + }, + "The Jerusalem Post": { + domain: "jpost.com", + allow_cookies: 1, + block_regex: /\.jpost\.com\/bundles\/js_article\?/ + }, + "The Logic": { + domain: "thelogic.co" + }, + "The Marker": { + domain: "themarker.com", + allow_cookies: 1, + useragent: "bingbot" + }, + "The Market.ch": { + domain: "themarket.ch", + allow_cookies: 1, + useragent: "googlebot" + }, + "The Nation": { + domain: "thenation.com", + block_regex: /\.tinypass\.com\// + }, + "The New Atlantis": { + domain: "thenewatlantis.com", + allow_cookies: 1, + block_regex: /\.thenewatlantis\.com\/.+\/thenewatlantis\/js\/(gate|donate)\.js/ + }, + "The New Republic": { + domain: "newrepublic.com", + allow_cookies: 1, + block_regex: /\.onecount\.net\/js\// + }, + "The New Statesman": { + domain: "newstatesman.com", + remove_cookies_select_hold: ['STYXKEY_nsversion'] + }, + "The New York Review of Books": { + domain: "nybooks.com", + allow_cookies: 1 + }, + "The New York Times": { + domain: "nytimes.com", + allow_cookies: 1, + block_regex: /(meter-svc\.nytimes\.com\/meter\.js|mwcm\.nyt\.com\/.+\.js)/ + }, + "The New Yorker": { + domain: "newyorker.com", + block_regex: /\.newyorker\.com\/verso\/static\/presenter-articles.+\.js/ + }, + "The Philadelphia Inquirer": { + domain: "inquirer.com", + block_regex: /\.tinypass\.com\// + }, + "The Point Magazine": { + domain: "thepointmag.com", + remove_cookies_select_drop: ['monthly_history'] + }, + "The Saturday Paper": { + domain: "thesaturdaypaper.com.au", + block_regex: /\.thesaturdaypaper\.com\.au\/sites\/all\/modules\/custom\/node_meter\/pw\.js/ + }, + "The Seattle Times": { + domain: "seattletimes.com", + remove_cookies_select_hold: ['st_newsletter_splash_seen'] + }, + "The Spectator (UK)": { + domain: "spectator.co.uk", + block_regex: /\.tinypass\.com\// + }, + "The Spectator Australia": { + domain: "spectator.com.au", + block_regex: /\.tinypass\.com\// + }, + "The Spectator USA": { + domain: "spectator.us", + block_regex: /(cdn\.cxense\.com\/|\.tinypass\.com\/)/ + }, + "The Sydney Morning Herald": { + domain: "smh.com.au", + group_rule: "au_nine_domains" + }, + "The Telegraph": { + domain: "telegraph.co.uk", + block_regex: /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js|\.telegraph\.co\.uk\/.+\/piano.+\.js|assets\.adobedtm\.com\/.+\.js)/ + }, + "The Times": { + domain: "thetimes.co.uk", + useragent: "googlebot" + }, + "The Times Literary Supplement": { + domain: "the-tls.co.uk" + }, + "The Toronto Star (+ local TorStar sites)": { + domain: "###_ca_torstar", + group: [ + "niagarafallsreview.ca", + "stcatharinesstandard.ca", + "thepeterboroughexaminer.com", + "therecord.com", + "thespec.com", + "thestar.com", + "wellandtribune.ca" + ], + allow_cookies: 1, + block_regex: /\.(ca|com)\/api\/overlaydata/ + }, + "The Wall Street Journal": { + domain: "wsj.com", + block_regex: /(cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent|subscriptions)-.+\.js|cdn\.cxense\.com\/)/, + remove_cookies_select_hold: ['wsjregion', 'ResponsiveConditional_initialBreakpoint'], + useragent: "googlebot" + }, + "The Washington Post": { + domain: "washingtonpost.com", + allow_cookies: 1, + block_regex: /\.washingtonpost\.com\/pwapiv2\/article/ + }, + "The West Australian (+ regional)": { + domain: "thewest.com.au", + allow_cookies: 1 + }, + "The Wrap": { + domain: "thewrap.com", + allow_cookies: 1, + block_regex: /\.wallkit\.net\/js\// + }, + "Time Magazine": { + domain: "time.com", + allow_cookies: 1, + block_regex: /\/time\.com\/dist\/meter-wall-client-js\..+\.js/ + }, + "Times Higher Education": { + domain: "timeshighereducation.com", + allow_cookies: 1, + block_regex: /\.timeshighereducation\.com\/sites\/default\/files\/.+\/js__.+\.js/ + }, + "Times of India": { + domain: "###_timesofindia", + group: [ + "timesofindia.com", + "timesofindia.indiatimes.com" + ], + allow_cookies: 1, + useragent: "googlebot", + block_regex: /\.timesofindia\.com\/jsrender\.cms/, + exception: [{ + domain: "timesofindia.indiatimes.com", + allow_cookies: 1, + useragent: "googlebot", + block_regex: /timesofindia\.indiatimes\.com\/jsrender\/version-1\.cms/ + } + ] + }, + "Towards Data Science": { + domain: "towardsdatascience.com", + allow_cookies: 1, + referer: "twitter" + }, + "Tribune Publishing Company": { + domain: "###_usa_tribune", + group: [ + "baltimoresun.com", + "chicagotribune.com", + "courant.com", + "dailypress.com", + "mcall.com", + "nydailynews.com", + "orlandosentinel.com", + "pilotonline.com", + "sun-sentinel.com" + ], + allow_cookies: 1, + block_regex: /\.tribdss\.com\// + }, + "Trouw": { + domain: "trouw.nl", + group_rule: "nl_pg_domains" + }, + "USA Today": { + domain: "usatoday.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "Valeurs Actuelles": { + domain: "valeursactuelles.com", + block_regex: /\.qiota\.com\// + }, + "Vanity Fair": { + domain: "vanityfair.com" + }, + "Variety": { + domain: "variety.com", + allow_cookies: 1, + block_regex: /cdn\.cxense\.com\// + }, + "VeloNews": { + domain: "velonews.com", + allow_cookies: 1, + block_regex: /\.velonews\.com\/.+\/scripts\/contentGate.+\.js/ + }, + "VentureBeat": { + domain: "venturebeat.com", + allow_cookies: 1, + block_regex: /\.wallkit\.net\/js\// + }, + "Volkskrant": { + domain: "volkskrant.nl", + group_rule: "nl_pg_domains" + }, + "WAtoday": { + domain: "watoday.com.au", + group_rule: "au_nine_domains" + }, + "Westfalen-Blatt": { + domain: "westfalen-blatt.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/.+\/v\d\/amp-(ad|subscriptions)-.+\.js/, + useragent: "googlebot" + }, + "Westfälische Nachrichten": { + domain: "wn.de", + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/, + useragent: "googlebot" + }, + "Winston-Salem Journal": { + domain: "journalnow.com" + }, + "Wired": { + domain: "wired.com", + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(ad|subscriptions)-.+\.js/, + useragent: "googlebot" + }, + "World Politics Review": { + domain: "worldpoliticsreview.com", + allow_cookies: 1, + useragent: "googlebot" + }, + "* Block Paywall-scripts (opt-in to custom sites to enable also for non-listed sites)": { + domain: "###" + }, + "Amp-access": { + domain: "cdn.ampproject.org" + }, + "AzureEdge": { + domain: "loader-cdn.azureedge.net" + }, + "BlueConic": { + domain: "blueconic.net" + }, + "Cxense": { + domain: "cxense.com" + }, + "Evolok": { + domain: "evolok.net" + }, + "MatherAnalytics": { + domain: "matheranalytics.com" + }, + "NewsMemory": { + domain: "newsmemory.com" + }, + "OneCount": { + domain: "onecount.net" + }, + "Pelcro": { + domain: "pelcro.com" + }, + "Piano.io": { + domain: "piano.io" + }, + "Poool.fr": { + domain: "poool.fr" + }, + "Qiota": { + domain: "qiota.com" + }, + "TinyPass": { + domain: "tinypass.com" + }, + "TribDss": { + domain: "tribdss.com" + }, + "* BPC settings": { + domain: "###" + }, + "Show options on update": { + domain: "#options_on_update" + }, + "Enable new sites by default": { + domain: "#options_enable_new_sites" + }, + "Restore opt-in for custom sites (on reload; Chrome-only)": { + domain: "#options_restore_custom" + }, + "Barron's - no Googlebot (http error 500)": { + domain: "#options_disable_gb_barrons" + }, + "The Australian - no Googlebot (http error 403)": { + domain: "#options_disable_gb_theaustralian" + }, + "The Wall Street Journal - no Googlebot (http error 500)": { + domain: "#options_disable_gb_wsj" + } } -const au_comm_media_domains = ['bendigoadvertiser.com.au', 'bordermail.com.au', 'canberratimes.com.au', 'centralwesterndaily.com.au', 'dailyadvertiser.com.au', 'dailyliberal.com.au', 'examiner.com.au', 'illawarramercury.com.au', 'newcastleherald.com.au', 'northerndailyleader.com.au', 'portnews.com.au', 'standard.net.au', 'theadvocate.com.au', 'thecourier.com.au', 'westernadvocate.com.au']; -const au_news_corp_domains = ['adelaidenow.com.au', 'cairnspost.com.au', 'couriermail.com.au', 'dailytelegraph.com.au', 'geelongadvertiser.com.au', 'goldcoastbulletin.com.au', 'heraldsun.com.au', 'ntnews.com.au', 'theaustralian.com.au', 'thechronicle.com.au', 'themercury.com.au', 'townsvillebulletin.com.au', 'weeklytimesnow.com.au']; -const br_folha_domains = ['folha.uol.com.br', 'blogfolha.uol.com.br']; -const ca_torstar_domains = ['niagarafallsreview.ca', 'stcatharinesstandard.ca', 'thepeterboroughexaminer.com', 'therecord.com', 'thespec.com', 'thestar.com', 'wellandtribune.ca']; -const de_funke_media_domains = ['abendblatt.de', 'braunschweiger-zeitung.de', 'morgenpost.de', 'nrz.de', 'otz.de', 'thueringer-allgemeine.de', 'tlz.de', 'waz.de', 'wp.de', 'wr.de']; -const de_madsack_domains = ['haz.de', 'kn-online.de', 'ln-online.de', 'lvz.de', 'maz-online.de', 'neuepresse.de', 'ostsee-zeitung.de']; -const economictimes_domains = ['economictimes.com', 'economictimes.indiatimes.com']; -const es_epiberica_domains = ['diariodeibiza.es', 'diariodemallorca.es', 'eldia.es', 'elperiodicomediterraneo.com', 'farodevigo.es', 'informacion.es', 'laprovincia.es', 'levante-emv.com', 'lne.es']; -const es_grupo_vocento_domains = ['diariosur.es', 'diariovasco.com', 'elcomercio.es', 'elcorreo.com', 'eldiariomontanes.es', 'elnortedecastilla.es', 'hoy.es', 'ideal.es', 'larioja.com', 'lasprovincias.es', 'laverdad.es', 'lavozdigital.es']; -const fi_alma_talent_domains = ['arvopaperi.fi', 'iltalehti.fi', 'kauppalehti.fi', 'marmai.fi', 'mediuutiset.fi', 'mikrobitti.fi', 'talouselama.fi', 'tekniikkatalous.fi', 'tivi.fi', 'uusisuomi.fi']; -const fi_sanoma_domains = ['aamulehti.fi', 'hs.fi']; -const fr_be_groupe_rossel_domains = ['aisnenouvelle.fr', 'courrier-picard.fr', 'lardennais.fr', 'lavoixdunord.fr', 'lecho.be', 'lesoir.be', 'lest-eclair.fr', 'liberation-champagne.fr', 'lunion.fr', 'nordeclair.fr', 'nordlittoral.fr', 'paris-normandie.fr', 'sudinfo.be']; -const fr_groupe_ebra_domains = ['bienpublic.com', 'dna.fr', 'estrepublicain.fr', 'lalsace.fr', 'ledauphine.com', 'lejsl.com', 'leprogres.fr', 'republicain-lorrain.fr', 'vosgesmatin.fr']; -const fr_groupe_la_depeche_domains = ['centrepresseaveyron.fr', 'ladepeche.fr', 'lindependant.fr', 'midi-olympique.fr', 'midilibre.fr', 'nrpyrenees.fr', 'petitbleu.fr']; -const it_ilmessaggero_domains = ['corriereadriatico.it', 'ilgazzettino.it', 'ilmattino.it', 'ilmessaggero.it', 'quotidianodipuglia.it']; -const it_quotidiano_domains = ['ilgiorno.it', 'ilrestodelcarlino.it', 'iltelegrafolivorno.it', 'lanazione.it', 'quotidiano.net']; -const medium_custom_domains = []; -const nl_ad_region_domains = ['ad.nl', 'bd.nl', 'ed.nl', 'tubantia.nl', 'bndestem.nl', 'pzc.nl', 'destentor.nl', 'gelderlander.nl']; -const nl_mediahuis_region_domains = ['gooieneemlander.nl', 'haarlemsdagblad.nl', 'ijmuidercourant.nl', 'leidschdagblad.nl', 'noordhollandsdagblad.nl']; -const no_nhst_media_domains = ['intrafish.com', 'rechargenews.com', 'tradewindsnews.com', 'upstreamonline.com']; -const timesofindia_domains = ['timesofindia.com', 'timesofindia.indiatimes.com']; -const usa_craincomm_domains = ['adage.com', 'autonews.com', 'chicagobusiness.com', 'crainscleveland.com', 'crainsdetroit.com', 'crainsnewyork.com', 'modernhealthcare.com']; -const usa_gannett_domains = []; -const usa_lee_ent_domains = ['buffalonews.com', 'richmond.com', 'tucson.com', 'tulsaworld.com']; -const usa_mcc_domains = ['bnd.com', 'charlotteobserver.com', 'fresnobee.com', 'kansas.com', 'kansascity.com', 'kentucky.com', 'miamiherald.com', 'newsobserver.com', 'sacbee.com', 'star-telegram.com', 'thestate.com', 'tri-cityherald.com']; -const usa_mng_domains = ['denverpost.com', 'eastbaytimes.com', 'mercurynews.com', 'ocregister.com', 'pe.com', 'twincities.com']; -const usa_nymag_domains = ['curbed.com', 'grubstreet.com', 'nymag.com', 'thecut.com', 'vulture.com']; -const usa_tribune_domains = ['baltimoresun.com', 'chicagotribune.com', 'courant.com', 'dailypress.com', 'mcall.com', 'nydailynews.com', 'orlandosentinel.com', 'pilotonline.com', 'sun-sentinel.com']; -const usa_theathletic_domains = ['theathletic.com', 'theathletic.co.uk']; +var defaultSites_grouped_domains = Object.values(defaultSites).map(x => x.domain); +var defaultSites_groups_domains = [].concat.apply([], Object.values(defaultSites).filter(function (value) { + return value.hasOwnProperty('group'); + }).map(x => x.group)); +var defaultSites_domains = defaultSites_grouped_domains.concat(defaultSites_groups_domains); -var defaultSites_grouped_domains = Object.values(defaultSites); -var defaultSites_domains = defaultSites_grouped_domains.concat(au_comm_media_domains, au_news_corp_domains, br_folha_domains, ca_torstar_domains, de_funke_media_domains, de_madsack_domains, economictimes_domains, es_epiberica_domains, es_grupo_vocento_domains, fi_alma_talent_domains, fi_sanoma_domains, fr_be_groupe_rossel_domains, fr_groupe_ebra_domains, fr_groupe_la_depeche_domains, it_ilmessaggero_domains, it_quotidiano_domains, nl_ad_region_domains, nl_mediahuis_region_domains, no_nhst_media_domains, timesofindia_domains, usa_craincomm_domains, usa_lee_ent_domains, usa_mcc_domains, usa_mng_domains, usa_nymag_domains, usa_tribune_domains, usa_theathletic_domains); +// grouped domains (rules only) +var au_nine_domains = ['brisbanetimes.com.au', 'smh.com.au', 'theage.com.au', 'watoday.com.au']; +var es_unidad_domains = ['elmundo.es', 'expansion.com', 'marca.com']; +var it_repubblica_domains = ['gelocal.it', 'ilsecoloxix.it', 'lanuovasardegna.it', 'lastampa.it', 'limesonline.com', 'repubblica.it'].concat(['lescienze.it']); +var nl_pg_domains = ['parool.nl', 'trouw.nl', 'volkskrant.nl', 'humo.be', 'demorgen.be']; +var usa_genomeweb_domains = ['genomeweb.com', '360dx.com', 'precisiononcologynews.com']; + +var group_rules = { + au_nine_domains: { + block_regex: /cdn\.ampproject\.org\/v\d\/amp-((sticky-)?ad|subscriptions)-.+\.js/ + }, + es_unidad_domains: { + allow_cookies: 1, + block_regex: /cdn\.ampproject\.org\/v\d\/amp-(access|(sticky-)?ad|consent)-.+\.js/ + }, + it_repubblica_domains: { + allow_cookies: 1, + block_regex: /(scripts\.repubblica\.it\/pw\/pw\.js|cdn\.ampproject\.org\/v\d\/amp-(access|ad|user-notification)-.+\.js)/ + }, + nl_pg_domains: { + remove_cookies_select_drop: ['TID_ID'], + block_regex: "\\.{domain}\\/temptation\\/resolve" + }, + usa_genomeweb_domains: { + allow_cookies: 1, + block_regex: /crain-platform-.+-prod\.s3\.amazonaws\.com\/s3fs-public\/js\/js_.+\.js/ + } +} + +function addCookieRules(rule, custom) { + if (rule.hasOwnProperty('remove_cookies_select_drop') || rule.hasOwnProperty('remove_cookies_select_hold') || (custom && !rule.hasOwnProperty('allow_cookies'))) { + rule.allow_cookies = 1; + rule.remove_cookies = 1; + } +} + +function expandSiteRules(sites, custom = false) { + for (let site in sites) { + let rule = sites[site]; + let domain = rule.domain; + if (rule.hasOwnProperty('group_rule')) { + let rules = group_rules[rule.group_rule]; + for (key in rules) + sites[site][key] = rules[key]; + sites[site].domain = domain; + //delete sites[site].group_rule; + } + if (rule.hasOwnProperty('group')) + grouped_sites[domain] = rule.group + } +} + +var grouped_sites = {}; +expandSiteRules(defaultSites); + +// grouped domains (dompurify) +var nl_mediahuis_region_domains = grouped_sites['###_nl_mediahuis_region']; +var no_nhst_media_domains = grouped_sites['###_no_nhst_media']; +var usa_theathletic_domains = grouped_sites['###_usa_theathletic']; \ No newline at end of file