diff --git a/README.md b/README.md index 1f1eb7a..320ed96 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ [Baltimore Sun](https://www.baltimoresun.com)\ [Barron's](https://www.barrons.com)\ [Bloomberg](https://www.bloomberg.com)\ +[Bloomberg Quint]('https://www.bloombergquint.com)\ [Business Insider](https://www.businessinsider.com)\ [Caixin](https://www.caixinglobal.com)\ [Chemical & Engineering News](https://cen.acs.org)\ @@ -53,6 +54,7 @@ [Parool](https://www.parool.nl)\ [Quartz](https://qz.com)\ [Quora](https://www.quora.com)\ +[Scientific American](https://scientificamerican.com)\ [Statista](https://www.statista.com)\ [SunSentinel](https://www.sun-sentinel.com)\ [Telegraaf](https://telegraaf.nl)\ @@ -66,6 +68,7 @@ [The Diplomat](https://www.thediplomat.com)\ [The Globe and Mail](https://www.theglobeandmail.com)\ [The Herald](https://www.theherald.com.au)\ +[The Hindu](https://www.thehindu.com)\ [The Japan Times](https://www.japantimes.co.jp)\ [TheMarker](https://www.themarker.com)\ [The Mercury News](https://www.mercurynews.com)\ diff --git a/background.js b/background.js index d7d2536..c747260 100644 --- a/background.js +++ b/background.js @@ -5,6 +5,7 @@ var defaultSites = { 'Baltimore Sun': 'baltimoresun.com', 'Barron\'s': 'barrons.com', 'Bloomberg': 'bloomberg.com', + 'Bloomberg Quint': 'bloombergquint.com', 'Business Insider': 'businessinsider.com', 'Caixin': 'caixinglobal.com', 'Chemical & Engineering News': 'cen.acs.org', @@ -31,7 +32,7 @@ var defaultSites = { 'Inc.com': 'inc.com', 'Investors Chronicle': 'investorschronicle.co.uk', 'La Repubblica': 'repubblica.it', - 'Le Monde': 'lemonde.fr', + 'Le Monde': 'lemonde.fr', 'Le Temps': 'letemps.ch', 'Los Angeles Times': 'latimes.com', 'Medium': 'medium.com', @@ -50,9 +51,10 @@ var defaultSites = { 'Parool': 'parool.nl', 'Quartz': 'qz.com', 'Quora': 'quora.com', + 'Scientific American': 'scientificamerican.com', 'Statista': 'statista.com', - 'Telegraaf': 'telegraaf.nl', 'SunSentinel': 'sun-sentinel.com', + 'Telegraaf': 'telegraaf.nl', 'The Advocate': 'theadvocate.com.au', 'The Age': 'theage.com.au', 'The Atlantic': 'theatlantic.com', @@ -63,6 +65,7 @@ var defaultSites = { 'The Diplomat': 'thediplomat.com', 'The Globe and Mail': 'theglobeandmail.com', 'The Herald': 'theherald.com.au', + 'The Hindu': 'thehindu.com', 'The Japan Times': 'japantimes.co.jp', 'TheMarker': 'themarker.com', 'The Mercury News': 'mercurynews.com', @@ -115,6 +118,7 @@ const allow_cookies = [ 'ocregister.com', 'parool.nl', 'qz.com', +'scientificamerican.com', 'spectator.co.uk', 'telegraaf.nl', 'theadvocate.com.au', @@ -152,6 +156,7 @@ const remove_cookies = [ 'nytimes.com', 'ocregister.com', 'qz.com', +'scientificamerican.com', 'spectator.co.uk', 'telegraaf.nl', 'theadvocate.com.au', @@ -162,6 +167,7 @@ const remove_cookies = [ 'vn.nl', 'washingtonpost.com', 'wsj.com', +'bloombergquint.com' ] // select specific cookie(s) to hold from remove_cookies domains @@ -179,6 +185,7 @@ const remove_cookies_select_drop = { // Override User-Agent with Googlebot const use_google_bot = [ 'barrons.com', +'lemonde.fr', 'nytimes.com', 'quora.com', 'telegraph.co.uk', diff --git a/contentScript.js b/contentScript.js index 4cca61b..57c4a63 100644 --- a/contentScript.js +++ b/contentScript.js @@ -91,9 +91,24 @@ if (window.location.href.indexOf("bizjournals.com") !== -1) { } } +if (window.location.href.indexOf("medium.com") !== -1) { + const bottomMessageText = 'Get one more story in your member preview when you sign up. It’s free.'; + const DOMElementsToTextDiv = pageContains('div', bottomMessageText); + + if (DOMElementsToTextDiv[2]) removeDOMElement(DOMElementsToTextDiv[2]); +} + +if (window.location.href.indexOf("bloombergquint.com") !== -1) { + const articlesLeftModal = document.getElementsByClassName('paywall-meter-module__story-paywall-container__1UgCE')[0]; + const paywall = document.getElementById('paywallDmp'); + removeDOMElement(articlesLeftModal, paywall); +} + if (window.location.href.indexOf("bloomberg.com") !== -1) { - const paywall = document.getElementById('paywall-banner'); - removeDOMElement(paywall); + document.addEventListener('DOMContentLoaded', () => { + const paywall = document.getElementById('paywall-banner'); + removeDOMElement(paywall); + }); } if (window.location.href.indexOf('telegraaf.nl') !== -1) { @@ -150,4 +165,12 @@ function removeClassesByPrefix(el, prefix) el.classList.remove(el.classList[i]); } } + +function pageContains(selector, text) { + let elements = document.querySelectorAll(selector); + + return Array.prototype.filter.call(elements, function(element){ + return RegExp(text).test(element.textContent); + }); + } diff --git a/manifest.json b/manifest.json index 052c628..c3b085a 100644 --- a/manifest.json +++ b/manifest.json @@ -138,7 +138,9 @@ "*://*.telegraaf.nl/*", "*://*.trouw.nl/*", "*://*.vn.nl/*", - "*://*.lemonde.fr/*" + "*://*.lemonde.fr/*", + "*://*.scientificamerican.com/*", + "*://*.thehindu.com/*" ], "version": "1.6.0" } diff --git a/options.js b/options.js index 19a0d34..fbb3d3d 100644 --- a/options.js +++ b/options.js @@ -3,6 +3,7 @@ var defaultSites = { 'Baltimore Sun': 'baltimoresun.com', 'Barron\'s': 'barrons.com', 'Bloomberg': 'bloomberg.com', + 'Bloomberg Quint': 'bloombergquint.com', 'Business Insider': 'businessinsider.com', 'Caixin': 'caixinglobal.com', 'Chemical & Engineering News': 'cen.acs.org', @@ -48,6 +49,7 @@ var defaultSites = { 'Parool': 'parool.nl', 'Quartz': 'qz.com', 'Quora': 'quora.com', + 'Scientific American': 'scientificamerican.com', 'Statista': 'statista.com', 'SunSentinel': 'sun-sentinel.com', 'Telegraaf': 'telegraaf.nl', @@ -61,6 +63,7 @@ var defaultSites = { 'The Diplomat': 'thediplomat.com', 'The Globe and Mail (javascript disabled)': 'theglobeandmail.com', 'The Herald': 'theherald.com.au', + 'The Hindu': 'thehindu.com', 'The Japan Times': 'japantimes.co.jp', 'TheMarker': 'themarker.com', 'The Mercury News': 'mercurynews.com', @@ -130,7 +133,7 @@ function renderOptions() { inputEl.type = 'checkbox'; inputEl.dataset.key = key; inputEl.dataset.value = value; - inputEl.checked = key in sites; + inputEl.checked = (key in sites) || (key.replace(/\s\(.*\)/, '') in sites); labelEl.appendChild(inputEl); labelEl.appendChild(document.createTextNode(' '+key));