Compare commits

...

109 Commits

Author SHA1 Message Date
Adam
c66fb6d18a Fix bloomberg.com 2023-10-19 21:51:19 -07:00
Adam
7029ba34ef Fix theatlantic.com 2023-10-15 14:08:06 -07:00
Adam
a93a4beb34 Fix latimes.com 2023-10-15 13:57:55 -07:00
Adam
badfe3685a Fix nytimes.com 2023-10-15 13:41:19 -07:00
Adam
97b84f0951 Fix nytimes.com 2023-06-17 22:02:54 -07:00
Adam
747dddda71 Merge branch 'master' of https://github.com/iamadamdev/bypass-paywalls-chrome 2023-06-10 21:15:56 -07:00
InterAl
38027f3840
[PATCH] fix themarker/haaretz user agent (#1254)
* update UA for haaretz, themarker

* remove paywall for fortune.com

* [PATCH] fix themarker/haaretz user agent
2023-06-10 21:15:26 -07:00
Alon Nachshon
416bf48643 [PATCH] fix themarker/haaretz user agent 2023-03-13 12:36:30 +02:00
InterAl
3c737d3f4b
Merge branch 'iamadamdev:master' into master 2023-03-13 12:36:21 +02:00
InterAl
5bb7dc1665
Remove fortune.com paywall (#1252)
* update UA for haaretz, themarker

* remove paywall for fortune.com
2023-02-19 11:05:20 -08:00
InterAl
29b2089437
Merge branch 'iamadamdev:master' into master 2023-02-14 14:42:49 +02:00
Alon Nachshon
fbe4106b0c remove paywall for fortune.com 2023-02-14 14:42:04 +02:00
Thom Wiggers
997f83c778
Remove DPG Media websites (#1251)
These sites have switched to having to sign up to view premium articles,
no longer keeping track of a certain number of visits.
2023-02-04 14:21:09 -08:00
InterAl
d7a511000b
update UA for haaretz, themarker (#1249) 2022-12-23 22:36:36 -08:00
Alon Nachshon
5726649002 update UA for haaretz, themarker 2022-12-04 22:18:13 +02:00
Adam
66e3afed16 Prepare for v1.8.1 release 2022-11-30 22:43:03 -08:00
Adam
94c8ab1b4c Fix wapo.com 2022-11-30 22:36:40 -08:00
Adam
fc159b5b7e Fix spectator.co.uk 2022-11-30 22:30:14 -08:00
Francesco Truzzi
ce655fc33d
Add support for ilmessaggero.it (#1248) 2022-11-14 21:36:57 -08:00
Adam
7fb401d4d1 Add scmp.com 2022-09-26 22:58:48 -07:00
Adam
780c7854a0 Fix japantimes.co.jp 2022-09-08 23:22:57 -07:00
Adam
de3051da61 Revert "Remove japantimes.co.jp"
This reverts commit 348310235aab00322a21d53091e215675a639316.
2022-09-08 22:36:25 -07:00
Adam
02063e0032 Fix theathletic.com 2022-09-08 22:29:32 -07:00
Adam
17ef75f259 Remove worldpoliticsreview.com 2022-09-08 22:22:01 -07:00
Adam
d72c4ee7fb Fix latimes.com 2022-09-08 22:19:59 -07:00
Adam
e15bc95ae4 Fix NY Times Cooking 2022-09-08 11:20:53 -07:00
Adam
5adc770a05 Add hbrchina.org (Harvard Business Review China) 2022-06-06 20:45:12 -07:00
Adam
ecb7c22ddd Remove handelsblatt.com 2022-06-06 20:32:57 -07:00
Adam
348310235a Remove japantimes.co.jp 2022-05-15 21:01:22 -07:00
Adam
88715d1187 Prepare for v1.8.0 release 2022-04-17 18:21:02 -07:00
laur
b7a7fe0906 add theolivepress.es 2022-04-17 18:21:02 -07:00
Jimmy Yuen Ho Wong
b30fbf0471
Fix wapo (#1244)
* fix wapo infinite redirect issue

* remove wapo softwall
2022-04-14 20:34:34 -07:00
Jane Jeon
4b6a389715
Fix bloomberg.com (#1243)
Co-authored-by: Jane Jeon <heavy.job5173@janejeon.com>
2022-04-11 22:04:51 -07:00
Adam
0e81cdacfe Fix Repubblica.it (remember to also disable uBlock Origin for this site) 2022-04-11 21:27:25 -07:00
Adam
3a837ab312 Add theathletic.com/co.uk 2022-04-11 21:05:29 -07:00
laur89
dc2da541ad
fix postimees.ee (#1241) 2022-04-10 17:13:02 -07:00
Adam
4506b13240 Fix theglobeandmail.com 2021-12-05 23:42:46 -08:00
Adam
9181725487 Remove asia.nikkei.com (can use Cookie Remover) 2021-11-18 17:57:04 -08:00
Adam
9370072a21 Fix barrons.com and wapo.com 2021-11-12 13:30:03 -08:00
Adam
586e48d65b Fix medium.com 2021-10-25 22:05:00 -07:00
Adam
c5d321b13c Fix medium.com 2021-08-31 19:31:51 -07:00
Adam
ae7703fdfc Run semistandard linter 2021-08-01 19:02:44 -07:00
Cole Manning // RVRX
efc397e6f2
Add nationalgeographic.com (#1227)
* Add National Geographic

* revert change to blockElement()

* add nationalgeographic to manifest-ff.json
2021-08-01 19:01:55 -07:00
Adam
1b18c8f766 Fix wapo.com 2021-07-06 18:44:08 -07:00
Adam
e51bc6ac10 Remove thetimes.co.uk 2021-07-06 18:28:01 -07:00
Adam
d5b191dc8f Fix wapo.com 2021-07-04 11:25:12 -07:00
Adam
78b75141f3 Update Firefox download link 2021-07-04 10:30:13 -07:00
Adam
6d5a47d34e Run semistandard style formatter 2021-07-02 19:20:21 -07:00
billatq
8aa8f4ed1e
Fix Boston Globe support without cookie tampering, is relatively fast. (#1220)
Co-authored-by: billatq <8d8k@anmt.net>
2021-07-02 19:12:54 -07:00
Adam
167d1420d3 Fix foreignpolicy.com 2021-06-24 22:04:41 -07:00
Cole Manning // RVRX
ccafc3d5b6
Update latimes.com (#1202)
* Add latimes.com

* Fix latimes.com
2021-06-07 19:30:47 -07:00
Adam
b57c72d41b Fix dailytelegraph.com.au 2021-05-25 21:54:23 -07:00
Adam
6e78f24f74 Fix wapo comments 2021-05-25 21:28:28 -07:00
Adam
58a88498c0 Fix chicagobusiness.com 2021-05-25 21:22:40 -07:00
Adam
17504c5a45 Add expansion.com 2021-05-23 14:16:12 -07:00
Adam
7c9163ae66 Merge branch 'master' of https://github.com/iamadamdev/bypass-paywalls-chrome 2021-05-23 14:01:38 -07:00
Adam
5a861cc1c4 Remove delfi.ee 2021-05-23 14:01:26 -07:00
mendel5
87e64c495d
Le Parisien: Update link from HTTP to HTTPS (#1193) 2021-05-21 21:06:11 -07:00
Adam
e2d95e8d1a Fix repubblica.it 2021-05-19 20:41:03 -07:00
Adam
f9ae3fba66 Add reuters.com 2021-05-17 18:06:37 -07:00
Adam
1948b580f9 Fix americanbanker.com 2021-05-08 14:56:17 -07:00
Adam
a9387ba409 Fix wsj.com for Firefox 2021-05-06 22:43:00 -07:00
Adam
416d0c11ab Add zeit.de 2021-04-14 22:01:46 -07:00
Adam
a6eacfb4c0 Fix elpais.com 2021-04-08 20:27:41 -07:00
Adam
d2ec215627 Fix thestar.com 2021-04-04 16:03:13 -07:00
Adam
767c100d12 Prepare for v1.7.9 release 2021-03-30 23:06:27 -07:00
Adam
85266f2f67 Fix mexiconewsdaily.com 2021-03-30 20:44:22 -07:00
Adam
d0ceb4346c Remove washingtonpost.com from googlebotsites 2021-03-25 20:38:52 -07:00
Adam
fc346f0641 Add time.com 2021-03-25 20:30:16 -07:00
Adam
0f2975ecff Fix wired.com 2021-03-24 20:13:29 -07:00
Adam
a521b432d6 Fix lastampa.it 2021-03-24 20:09:36 -07:00
Adam
4052a3203c Fix ft.com errors 2021-03-22 12:08:03 -07:00
Thom Wiggers
1f5e6b214d
Add Speld.nl (Dutch parody news site) (#1151)
* Add Speld.nl (Dutch parody news site)

Speld.nl is a popular parody new site in The Netherlands, not unlike The Onion.

The paywall is a max-number-of-visits type. The visits are tracked in a cookie, which this PR selectively removes to not trigger the cookie consent forms each time. We also remove a popup that says how many visits you've got left.

* typo in removeDOMElement

* Fix Speld.nl support
2021-03-22 11:56:14 -07:00
laur89
45ab0e86ab
fix rules for delfi.ee (#1150)
- update ad-block element properties
2021-03-08 20:37:59 -08:00
Adam
dac780498d Fix techinasia.com 2021-02-25 22:55:08 -08:00
Adam
ef0d40be15 Add elmundo.es (most articles) 2021-02-25 22:48:41 -08:00
Ruben Sanchez
6f652eedf2
Add elperiodico.com (#1144) 2021-02-25 22:32:04 -08:00
Adam
5c85219e78 Fix gelocal.it 2021-02-16 20:09:06 -08:00
InterAl
7e97ffaac9
haaretz, themarker (Israeli news websites): remove paywall ads (#1138)
* themarker.com: Remove popups

* haaretz.co.il: Remove notifications

* haaretz.com: Remove paywall banner

* themarker.com, haaretz.co.il: remove banners

* haaretz.co.il, themarker.com: Remove banners
2021-02-15 14:32:41 -08:00
Lychfindel
782a297666
Support for gelocal group (italian newspapers) (#1134)
* Add support for gelocal group (italian local newspapers)

* Fix wrong edit on version number

* Removed console logs
2021-02-15 14:31:42 -08:00
Nguyễn Kim Kha
28acbaad77
Update cookie banner of ft.com (#1133) 2021-02-10 12:27:34 -08:00
JuanM04
9165b3ede9
Added Medium Bypass for only-members articles (#1130) 2021-02-06 14:04:08 -08:00
Adam
ef837f80cc Fix humo.be for Firefox 2021-01-31 10:53:42 -08:00
Adam
a9238013e6 Fix adweek.com 2021-01-30 13:28:00 -08:00
Adam
a13aa7c514 Update Firefox link, update id 2021-01-19 20:54:46 -08:00
Adam
36e46ffc04 Add spectator.us 2021-01-18 12:48:21 -08:00
Adam
5bb50e82f3 Fix nzherald.co.nz 2021-01-18 12:10:02 -08:00
Adam
74b11cd8b6 Remove main source dir updates files 2021-01-17 10:34:35 -08:00
Adam
19c8554c12 Add sueddeutsche.de 2021-01-17 10:30:13 -08:00
Adam
f5a21be23e
Update README.md 2021-01-16 20:49:01 -08:00
Nicolas Cisco
5a37f29fef
Added ambito.com (#1097) 2021-01-16 20:44:33 -08:00
ajs256
4ed27cd374
Add <details> tag to README (#1082)
The README is a bit long in the tooth with the full list of sites. Using the `<details>` tag helps by making the list collapsible.
2021-01-07 17:08:36 -08:00
Calvin Wu
af8b6ce081
Remove error popping up on nytimes.com (#1079) 2020-12-13 17:12:18 -08:00
Calvin Wu
312c36f415
newyorker.com: Always block bottom paywall bar (#1070) 2020-12-10 19:56:08 -08:00
Calvin Wu
ddc315b0ca
Fix bloomberg.com (#1060) 2020-12-05 17:38:21 -08:00
Calvin Wu
4d50bc78e6
New Yorker: Fixed article images not loading (#1053) 2020-12-05 17:35:52 -08:00
6mon
fd17b82387
Add lavoixdunord.fr (#1050) 2020-12-05 17:35:01 -08:00
Adam
5d919d7db6 Fix lesechos.fr 2020-12-03 21:02:24 -08:00
Calvin Wu
c23d1ea34c
NYTimes fix (#1040) 2020-11-30 17:39:23 -08:00
Erik Swan
e6addf4ee1 Add installation instructions for Microsoft Edge (#1039)
The instructions for the new Chromium-based Edge are the same as those for Chrome. This updates the README to explicitly spell that out.
2020-11-21 20:42:19 -08:00
Adam
1b2b9733fc Fix seattletimes.com 2020-11-21 13:11:33 -08:00
Adam
2cd984c897 Prepare for v1.7.8 release 2020-11-20 18:19:56 -08:00
Adam
9523440d22 Fix naming and ordering 2020-11-18 21:03:25 -08:00
Thom Wiggers
f8675eeaf0
Add dPG media group publications (#1008) 2020-11-16 21:29:36 -08:00
Adam
fff7f483db Fix newyorker.com 2020-11-12 18:16:10 -08:00
Adam
db35e85f1f Fix haaretz.com/.co.il and themarker.com 2020-11-11 17:58:56 -08:00
Adam
44f3d1b114 Fix lesechos.fr 2020-11-10 18:33:24 -08:00
Calvin Wu
0cbe35992f
Revert "Reload iframes after window is loaded to fix iframes not loading (#981)" (#1006)
This reverts commit 936be59d4314bd27417e2ad856b828dae0b609e2.
2020-11-10 18:29:16 -08:00
Gábor Lipták
c0efe01ce2
Add Github Actions build (#1000) 2020-11-10 18:29:02 -08:00
11 changed files with 714 additions and 377 deletions

17
.github/workflows/ci.yml vendored Normal file
View File

@ -0,0 +1,17 @@
name: ci
on:
push:
branches:
- master
pull_request:
jobs:
build:
runs-on: ubuntu-latest
name: Build
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build
run: cd build && ./build.sh

53
README.md Normal file → Executable file
View File

@ -7,10 +7,10 @@
*Bypass Paywalls is a web browser extension to help bypass paywalls for selected sites.* *Bypass Paywalls is a web browser extension to help bypass paywalls for selected sites.*
### Installation Instructions ### Installation Instructions
**Google Chrome** (Custom sites supported) **Google Chrome / Microsoft Edge** (Custom sites supported)
1. Download this repo as a [ZIP file from GitHub](https://github.com/iamadamdev/bypass-paywalls-chrome/archive/master.zip). 1. Download this repo as a [ZIP file from GitHub](https://github.com/iamadamdev/bypass-paywalls-chrome/archive/master.zip).
1. Unzip the file and you should have a folder named `bypass-paywalls-chrome-master`. 1. Unzip the file and you should have a folder named `bypass-paywalls-chrome-master`.
1. In Chrome go to the extensions page (`chrome://extensions`). 1. In Chrome/Edge go to the extensions page (`chrome://extensions` or `edge://extensions`).
1. Enable Developer Mode. 1. Enable Developer Mode.
1. Drag the `bypass-paywalls-chrome-master` folder anywhere on the page to import it (do not delete the folder afterwards). 1. Drag the `bypass-paywalls-chrome-master` folder anywhere on the page to import it (do not delete the folder afterwards).
@ -21,17 +21,18 @@
* Every time you open Chrome it may warn you about running extensions in developer mode, just click &#10005; to keep the extension enabled. * Every time you open Chrome it may warn you about running extensions in developer mode, just click &#10005; to keep the extension enabled.
* You will be logged out for any site you have checked. * You will be logged out for any site you have checked.
* This extension works best alongside the adblocker uBlock Origin. * This extension works best alongside the adblocker uBlock Origin.
* On the Firefox version automatic updates are enabled. * The Firefox version supports automatic updates.
### Bypass the following sites' paywalls with this extension: ### Bypass the following sites' paywalls with this extension:
[Adweek](https://www.adweek.com)\ [Adweek](https://www.adweek.com)\
[Algemeen Dagblad](https://www.ad.nl)\
[American Banker](https://www.americanbanker.com)\ [American Banker](https://www.americanbanker.com)\
[Ámbito](https://www.ambito.com)\
[Baltimore Sun](https://www.baltimoresun.com)\ [Baltimore Sun](https://www.baltimoresun.com)\
[Barron's](https://www.barrons.com)\ [Barron's](https://www.barrons.com)\
[Bloomberg Quint](https://www.bloombergquint.com)\ [Bloomberg Quint](https://www.bloombergquint.com)\
[Bloomberg](https://www.bloomberg.com)\ [Bloomberg](https://www.bloomberg.com)\
[Boston Globe](https://www.bostonglobe.com)\
[Brisbane Times](https://www.brisbanetimes.com.au)\ [Brisbane Times](https://www.brisbanetimes.com.au)\
[Business Insider](https://www.businessinsider.com)\ [Business Insider](https://www.businessinsider.com)\
[Caixin](https://www.caixinglobal.com)\ [Caixin](https://www.caixinglobal.com)\
@ -42,21 +43,22 @@
[Crain's Chicago Business](https://www.chicagobusiness.com)\ [Crain's Chicago Business](https://www.chicagobusiness.com)\
[Daily Press](https://www.dailypress.com)\ [Daily Press](https://www.dailypress.com)\
[De Groene Amsterdammer](https://www.groene.nl)\ [De Groene Amsterdammer](https://www.groene.nl)\
[De Speld](https://speld.nl)\
[De Tijd](https://www.tijd.be)\ [De Tijd](https://www.tijd.be)\
[De Volkskrant](https://www.volkskrant.nl)\ [De Volkskrant](https://www.volkskrant.nl)\
[DELFI](https://www.delfi.ee)\
[DeMorgen](https://www.demorgen.be)\ [DeMorgen](https://www.demorgen.be)\
[Denver Post](https://www.denverpost.com)\ [Denver Post](https://www.denverpost.com)\
[Diario Financiero](https://www.df.cl)\ [Diario Financiero](https://www.df.cl)\
[Domani](https://www.editorialedomani.it/)\ [Domani](https://www.editorialedomani.it)\
[Dynamed Plus](https://www.dynamed.com)\ [Dynamed Plus](https://www.dynamed.com)\
[Eindhovens Dagblad](https://www.ed.nl)\
[El Mercurio](https://www.elmercurio.com)\ [El Mercurio](https://www.elmercurio.com)\
[El Pais](https://www.elpais.com/)\ [El Pais](https://www.elpais.com)\
[El Periodico](https://www.elperiodico.com)\
[Elu24](https://www.elu24.ee)\ [Elu24](https://www.elu24.ee)\
[Encyclopedia Britannica](https://www.britannica.com)\ [Encyclopedia Britannica](https://www.britannica.com)\
[Estadão](https://www.estadao.com.br)\ [Estadão](https://www.estadao.com.br)\
[Examiner](https://www.examiner.com.au)\ [Examiner](https://www.examiner.com.au)\
[Expansión](https://www.expansion.com)\
[Financial News](https://www.fnlondon.com)\ [Financial News](https://www.fnlondon.com)\
[Financial Post](https://www.financialpost.com)\ [Financial Post](https://www.financialpost.com)\
[Financial Times](https://www.ft.com)\ [Financial Times](https://www.ft.com)\
@ -69,15 +71,16 @@
[Grubstreet](https://www.grubstreet.com)\ [Grubstreet](https://www.grubstreet.com)\
[Haaretz.co.il](https://www.haaretz.co.il)\ [Haaretz.co.il](https://www.haaretz.co.il)\
[Haaretz.com](https://www.haaretz.com)\ [Haaretz.com](https://www.haaretz.com)\
[Handelsblatt](https://www.handelsblatt.com)\
[Harper's Magazine](https://harpers.org)\ [Harper's Magazine](https://harpers.org)\
[Hartford Courant](https://www.courant.com)\ [Hartford Courant](https://www.courant.com)\
[Harvard Business Review](https://www.hbr.org)\ [Harvard Business Review](https://www.hbr.org)\
[Harvard Business Review China](https://www.hbrchina.org)\
[Herald Sun](https://www.heraldsun.com.au)\ [Herald Sun](https://www.heraldsun.com.au)\
[Het Financieel Dagblad](https://fd.nl)\ [Het Financieel Dagblad](https://fd.nl)\
[History Extra](https://www.historyextra.com)\ [History Extra](https://www.historyextra.com)\
[Humo](https://www.humo.be)\ [Humo](https://www.humo.be)\
[Il Manifesto](https://www.ilmanifesto.it)\ [Il Manifesto](https://www.ilmanifesto.it)\
[Il Messaggero](https://www.ilmessaggero.it)\
[Inc.com](https://www.inc.com)\ [Inc.com](https://www.inc.com)\
[Interest.co.nz](https://www.interest.co.nz)\ [Interest.co.nz](https://www.interest.co.nz)\
[Investors Chronicle](https://www.investorschronicle.co.uk) [Investors Chronicle](https://www.investorschronicle.co.uk)
@ -87,8 +90,9 @@
[La Repubblica](https://www.repubblica.it)\ [La Repubblica](https://www.repubblica.it)\
[La Stampa](https://www.lastampa.it)\ [La Stampa](https://www.lastampa.it)\
[La Tercera](https://www.latercera.com)\ [La Tercera](https://www.latercera.com)\
[La Voix du Nord](https://www.lavoixdunord.fr)\
[Le Devoir](https://www.ledevoir.com)\ [Le Devoir](https://www.ledevoir.com)\
[Le Parisien](http://www.leparisien.fr)\ [Le Parisien](https://www.leparisien.fr)\
[Les Échos](https://www.lesechos.fr)\ [Les Échos](https://www.lesechos.fr)\
[Loeb Classical Library](https://www.loebclassics.com)\ [Loeb Classical Library](https://www.loebclassics.com)\
[London Review of Books](https://www.lrb.co.uk)\ [London Review of Books](https://www.lrb.co.uk)\
@ -99,14 +103,14 @@
[Medscape](https://www.medscape.com)\ [Medscape](https://www.medscape.com)\
[Mexicon News Daily](https://mexiconewsdaily.com)\ [Mexicon News Daily](https://mexiconewsdaily.com)\
[Mountain View Voice](https://www.mv-voice.com)\ [Mountain View Voice](https://www.mv-voice.com)\
[New York Daily News](https://www.nydailynews.com/)\ [National Geographic](https://www.nationalgeographic.com)\
[New York Daily News](https://www.nydailynews.com)\
[NRC Handelsblad](https://www.nrc.nl)\ [NRC Handelsblad](https://www.nrc.nl)\
[NT News](https://www.ntnews.com.au)\ [NT News](https://www.ntnews.com.au)\
[National Post](https://www.nationalpost.com)\ [National Post](https://www.nationalpost.com)\
[Neue Zürcher Zeitung](https://www.nzz.ch)\ [Neue Zürcher Zeitung](https://www.nzz.ch)\
[New York Magazine](https://www.nymag.com)\ [New York Magazine](https://www.nymag.com)\
[New Zealand Herald](https://www.nzherald.co.nz)\ [New Zealand Herald](https://www.nzherald.co.nz)\
[Nikkei Asian Review](https://asia.nikkei.com)\
[Orange County Register](https://www.ocregister.com)\ [Orange County Register](https://www.ocregister.com)\
[Orlando Sentinel](https://www.orlandosentinel.com)\ [Orlando Sentinel](https://www.orlandosentinel.com)\
[Palo Alto Online](https://www.paloaltoonline.com)\ [Palo Alto Online](https://www.paloaltoonline.com)\
@ -114,7 +118,9 @@
[Postimees](https://www.postimees.ee)\ [Postimees](https://www.postimees.ee)\
[Quartz](https://qz.com)\ [Quartz](https://qz.com)\
[Quora](https://www.quora.com)\ [Quora](https://www.quora.com)\
[Quotidiani Gelocal](https://quotidiani.gelocal.it)\
[Republic.ru](https://republic.ru)\ [Republic.ru](https://republic.ru)\
[Reuters](https://www.reuters.com)\
[San Diego Union Tribune](https://www.sandiegouniontribune.com)\ [San Diego Union Tribune](https://www.sandiegouniontribune.com)\
[San Francisco Chronicle](https://www.sfchronicle.com)\ [San Francisco Chronicle](https://www.sfchronicle.com)\
[Scientific American](https://www.scientificamerican.com)\ [Scientific American](https://www.scientificamerican.com)\
@ -131,6 +137,8 @@
[The Advocate](https://www.theadvocate.com.au)\ [The Advocate](https://www.theadvocate.com.au)\
[The Age](https://www.theage.com.au)\ [The Age](https://www.theage.com.au)\
[The American Interest](https://www.the-american-interest.com)\ [The American Interest](https://www.the-american-interest.com)\
[The Athletic](https://www.theathletic.com)\
[The Athletic (UK)](https://www.theathletic.co.uk)\
[The Atlantic](https://www.theatlantic.com)\ [The Atlantic](https://www.theatlantic.com)\
[The Australian Financial Review](https://www.afr.com)\ [The Australian Financial Review](https://www.afr.com)\
[The Australian](https://www.theaustralian.com.au)\ [The Australian](https://www.theaustralian.com.au)\
@ -157,6 +165,7 @@
[The New York Times](https://www.nytimes.com)\ [The New York Times](https://www.nytimes.com)\
[The New Yorker](https://www.newyorker.com)\ [The New Yorker](https://www.newyorker.com)\
[The News-Gazette](https://www.news-gazette.com)\ [The News-Gazette](https://www.news-gazette.com)\
[The Olive Press](https://www.theolivepress.es)\
[The Philadelphia Inquirer](https://www.inquirer.com)\ [The Philadelphia Inquirer](https://www.inquirer.com)\
[The Saturday Paper](https://www.thesaturdaypaper.com.au)\ [The Saturday Paper](https://www.thesaturdaypaper.com.au)\
[The Seattle Times](https://www.seattletimes.com)\ [The Seattle Times](https://www.seattletimes.com)\
@ -164,7 +173,6 @@
[The Spectator](https://www.spectator.co.uk)\ [The Spectator](https://www.spectator.co.uk)\
[The Sydney Morning Herald](https://www.smh.com.au)\ [The Sydney Morning Herald](https://www.smh.com.au)\
[The Telegraph](https://www.telegraph.co.uk)\ [The Telegraph](https://www.telegraph.co.uk)\
[The Times](https://www.thetimes.co.uk)\
[The Toronto Star](https://www.thestar.com)\ [The Toronto Star](https://www.thestar.com)\
[The Wall Street Journal](https://www.wsj.com)\ [The Wall Street Journal](https://www.wsj.com)\
[The Washington Post](https://www.washingtonpost.com)\ [The Washington Post](https://www.washingtonpost.com)\
@ -175,17 +183,16 @@
[Trouw](https://www.trouw.nl)\ [Trouw](https://www.trouw.nl)\
[Vanity Fair](https://www.vanityfair.com)\ [Vanity Fair](https://www.vanityfair.com)\
[Vrij Nederland](https://www.vn.nl)\ [Vrij Nederland](https://www.vn.nl)\
[Vulture](https://www.vulture.com/)\ [Vulture](https://www.vulture.com)\
[Winston-Salem Journal](https://journalnow.com)\ [Winston-Salem Journal](https://journalnow.com)\
[Wired](https://www.wired.com)\ [Wired](https://www.wired.com)\
[World Politics Review](https://www.worldpoliticsreview.com) [Zeit Online](https://www.zeit.de)
### Sites with limited number of free articles ### Sites with limited number of free articles
The free article limit can normally be bypassed by removing cookies for the site.* The free article limit can normally be bypassed by removing cookies for the site.*
Install the Cookie Remover extension [for Google Chrome](https://chrome.google.com/webstore/detail/cookie-remover/kcgpggonjhmeaejebeoeomdlohicfhce) or [for Mozilla Firefox](https://addons.mozilla.org/en-US/firefox/addon/cookie-remover/). Please rate it 5 stars if you find it useful. Install the Cookie Remover extension [for Google Chrome](https://chrome.google.com/webstore/detail/cookie-remover/kcgpggonjhmeaejebeoeomdlohicfhce) or [for Mozilla Firefox](https://addons.mozilla.org/en-US/firefox/addon/cookie-remover/). Please rate it 5 stars if you find it useful.
When coming across a paywall click the cookie icon to remove the cookies then refresh the page. When coming across a paywall click the cookie icon to remove the cookies then refresh the page.
_*May not always succeed_ _*May not always succeed_
@ -204,7 +211,7 @@ Only large or major sites will be considered. Usually premium articles cannot be
### Troubleshooting ### Troubleshooting
* This extension works best alongside uBlock Origin [for Google Chrome](https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm) or [for Mozilla Firefox](https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/). * This extension works best alongside uBlock Origin [for Google Chrome](https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm) or [for Mozilla Firefox](https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/).
* If a site doesn't work, try turning off uBlock and refreshing. * If a site doesn't work, try turning off uBlock and refreshing.
* Make sure the site is checked under Options (on macOS sometimes the sites get unselected). * Try clearing [cookies](https://chrome.google.com/webstore/detail/cookie-remover/kcgpggonjhmeaejebeoeomdlohicfhce).
* Make sure you're running the latest version of Bypass Paywalls. * Make sure you're running the latest version of Bypass Paywalls.
* If a site is having problems try unchecking "\*General Paywall Bypass\*" in Options. * If a site is having problems try unchecking "\*General Paywall Bypass\*" in Options.
* If none of these work, you can submit an issue [here](https://github.com/iamadamdev/bypass-paywalls-chrome/issues/new/choose). * If none of these work, you can submit an issue [here](https://github.com/iamadamdev/bypass-paywalls-chrome/issues/new/choose).
@ -218,4 +225,14 @@ PRs are welcome.
### Show your support ### Show your support
* Follow me on Twitter [@iamadamdev](https://twitter.com/iamadamdev) for updates. * Follow me on Twitter [@iamadamdev](https://twitter.com/iamadamdev) for updates.
* I am not asking for donations or anything like that, all I ask is that you star this repo. * I do not ask for donations, all I ask is that you star this repo.
### Disclaimer
* This software is provided for educational purposes only and
is provided "AS IS", without warranty of any kind, express or
implied, including but not limited to the warranties of merchantability,
fitness for a particular purpose and noninfringement. in no event shall the
authors or copyright holders be liable for any claim, damages or other
liability, whether in an action of contract, tort or otherwise, arising from,
out of or in connection with the software or the use or other dealings in the
software.

52
manifest-ff.json Normal file → Executable file
View File

@ -9,32 +9,34 @@
"content_scripts": [ "content_scripts": [
{ {
"matches": [ "matches": [
"*://*.ad.nl/*",
"*://*.afr.com/*", "*://*.afr.com/*",
"*://*.americanbanker.com/*", "*://*.americanbanker.com/*",
"*://*.ambito.com/*",
"*://*.bizjournals.com/*", "*://*.bizjournals.com/*",
"*://*.bloomberg.com/*", "*://*.bloomberg.com/*",
"*://*.bloombergquint.com/*", "*://*.bloombergquint.com/*",
"*://*.businessinsider.com/*", "*://*.businessinsider.com/*",
"*://*.caixinglobal.com/*", "*://*.caixinglobal.com/*",
"*://*.canberratimes.com.au/*", "*://*.canberratimes.com.au/*",
"*://*.delfi.ee/*",
"*://*.economist.com/*", "*://*.economist.com/*",
"*://*.ed.nl/*",
"*://*.editorialedomani.it/*", "*://*.editorialedomani.it/*",
"*://*.elmercurio.com/*", "*://*.elmercurio.com/*",
"*://*.elpais.com/*", "*://*.elpais.com/*",
"*://*.elperiodico.com/*",
"*://*.elu24.ee/*", "*://*.elu24.ee/*",
"*://*.estadao.com.br/*", "*://*.estadao.com.br/*",
"*://*.examiner.com.au/*", "*://*.examiner.com.au/*",
"*://*.firstthings.com/*", "*://*.firstthings.com/*",
"*://*.ft.com/*", "*://*.ft.com/*",
"*://*.gelocal.it/*",
"*://*.grubstreet.com/*", "*://*.grubstreet.com/*",
"*://*.haaretz.co.il/*", "*://*.haaretz.co.il/*",
"*://*.humo.be/*", "*://*.humo.be/*",
"*://*.ilmessaggero.it/*",
"*://*.interest.co.nz/*", "*://*.interest.co.nz/*",
"*://*.ledevoir.com/*", "*://*.ledevoir.com/*",
"*://*.leparisien.fr/*", "*://*.leparisien.fr/*",
"*://*.lavoixdunord.fr/*",
"*://*.medium.com/*", "*://*.medium.com/*",
"*://*.medscape.com/*", "*://*.medscape.com/*",
"*://*.mexiconewsdaily.com/*", "*://*.mexiconewsdaily.com/*",
@ -56,6 +58,7 @@
"*://*.theglobeandmail.com/*", "*://*.theglobeandmail.com/*",
"*://*.thehindu.com/*", "*://*.thehindu.com/*",
"*://*.thenational.scot/*", "*://*.thenational.scot/*",
"*://*.theolivepress.es/*",
"*://*.thestar.com/*", "*://*.thestar.com/*",
"*://*.thewrap.com/*", "*://*.thewrap.com/*",
"*://*.trouw.nl/*", "*://*.trouw.nl/*",
@ -64,14 +67,24 @@
"*://*.washingtonpost.com/*", "*://*.washingtonpost.com/*",
"*://*.wsj.com/*", "*://*.wsj.com/*",
"*://*.hbr.org/*", "*://*.hbr.org/*",
"*://*.financialpost.com/*" "*://*.financialpost.com/*",
"*://*.sueddeutsche.de/*",
"*://*.elmundo.es/*",
"*://*.time.com/*",
"*://*.expansion.com/*",
"*://*.foreignpolicy.com/*",
"*://*.bostonglobe.com/*",
"*://*.theathletic.com/*",
"*://*.theathletic.co.uk/*",
"*://*.hbrchina.org/*",
"*://*.scmp.com/*"
], ],
"js": ["src/js/contentScript.js"] "js": ["src/js/contentScript.js"]
} }
], ],
"applications": { "applications": {
"gecko": { "gecko": {
"id": "bypasspaywalls@bypasspaywalls.weebly.com", "id": "bypasspaywalls@bypasspaywalls",
"update_url": "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/src/updates/updates.json" "update_url": "https://raw.githubusercontent.com/iamadamdev/bypass-paywalls-chrome/master/src/updates/updates.json"
} }
}, },
@ -110,11 +123,9 @@
"*://*.poool.fr/*", "*://*.poool.fr/*",
"*://*.qiota.com/*", "*://*.qiota.com/*",
"*://*.tinypass.com/*", "*://*.tinypass.com/*",
"*://*.ad.nl/*",
"*://*.adelaidenow.com.au/*", "*://*.adelaidenow.com.au/*",
"*://*.adweek.com/*", "*://*.adweek.com/*",
"*://*.afr.com/*", "*://*.afr.com/*",
"*://*.asia.nikkei.com/*",
"*://*.baltimoresun.com/*", "*://*.baltimoresun.com/*",
"*://*.barrons.com/*", "*://*.barrons.com/*",
"*://*.bizjournals.com/*", "*://*.bizjournals.com/*",
@ -139,7 +150,6 @@
"*://*.denverpost.com/*", "*://*.denverpost.com/*",
"*://*.dynamed.com/*", "*://*.dynamed.com/*",
"*://*.economist.com/*", "*://*.economist.com/*",
"*://*.ed.nl/*",
"*://*.elmercurio.com/*", "*://*.elmercurio.com/*",
"*://*.elu24.ee/*", "*://*.elu24.ee/*",
"*://*.examiner.com.au/*", "*://*.examiner.com.au/*",
@ -149,12 +159,12 @@
"*://*.fortune.com/*", "*://*.fortune.com/*",
"*://*.ft.com/*", "*://*.ft.com/*",
"*://*.genomeweb.com/*", "*://*.genomeweb.com/*",
"*://*.gelocal.it/*",
"*://*.glassdoor.com/*", "*://*.glassdoor.com/*",
"*://*.globes.co.il/*", "*://*.globes.co.il/*",
"*://*.groene.nl/*", "*://*.groene.nl/*",
"*://*.haaretz.co.il/*", "*://*.haaretz.co.il/*",
"*://*.haaretz.com/*", "*://*.haaretz.com/*",
"*://*.handelsblatt.com/*",
"*://*.harpers.org/*", "*://*.harpers.org/*",
"*://*.hbr.org/*", "*://*.hbr.org/*",
"*://*.heraldsun.com.au/*", "*://*.heraldsun.com.au/*",
@ -172,6 +182,7 @@
"*://*.lastampa.it/*", "*://*.lastampa.it/*",
"*://*.latercera.com/*", "*://*.latercera.com/*",
"*://*.latimes.com/*", "*://*.latimes.com/*",
"*://*.lavoixdunord.fr/*",
"*://*.lecho.be/*", "*://*.lecho.be/*",
"*://*.leparisien.fr/*", "*://*.leparisien.fr/*",
"*://*.lesechos.fr/*", "*://*.lesechos.fr/*",
@ -182,6 +193,7 @@
"*://*.medscape.com/*", "*://*.medscape.com/*",
"*://*.mercurynews.com/*", "*://*.mercurynews.com/*",
"*://*.mv-voice.com/*", "*://*.mv-voice.com/*",
"*://*.nationalgeographic.com",
"*://*.nationalpost.com/*", "*://*.nationalpost.com/*",
"*://*.news-gazette.com/*", "*://*.news-gazette.com/*",
"*://*.newstatesman.com/*", "*://*.newstatesman.com/*",
@ -209,6 +221,7 @@
"*://*.sofrep.com/*", "*://*.sofrep.com/*",
"*://*.spectator.co.uk/*", "*://*.spectator.co.uk/*",
"*://*.spectator.com.au/*", "*://*.spectator.com.au/*",
"*://*.speld.nl/",
"*://*.statista.com/*", "*://*.statista.com/*",
"*://*.stuff.co.nz/*", "*://*.stuff.co.nz/*",
"*://*.sun-sentinel.com/*", "*://*.sun-sentinel.com/*",
@ -229,9 +242,9 @@
"*://*.themercury.com.au/*", "*://*.themercury.com.au/*",
"*://*.thenation.com/*", "*://*.thenation.com/*",
"*://*.thenational.scot/*", "*://*.thenational.scot/*",
"*://*.theolivepress.es/*",
"*://*.thesaturdaypaper.com.au/*", "*://*.thesaturdaypaper.com.au/*",
"*://*.thestar.com/*", "*://*.thestar.com/*",
"*://*.thetimes.co.uk/*",
"*://*.thewrap.com/*", "*://*.thewrap.com/*",
"*://*.tijd.be/*", "*://*.tijd.be/*",
"*://*.towardsdatascience.com/*", "*://*.towardsdatascience.com/*",
@ -241,7 +254,6 @@
"*://*.volkskrant.nl/*", "*://*.volkskrant.nl/*",
"*://*.washingtonpost.com/*", "*://*.washingtonpost.com/*",
"*://*.wired.com/*", "*://*.wired.com/*",
"*://*.worldpoliticsreview.com/*",
"*://*.wsj.com/*", "*://*.wsj.com/*",
"*://*.nzz.ch/*", "*://*.nzz.ch/*",
"*://*.republic.ru/*", "*://*.republic.ru/*",
@ -249,7 +261,21 @@
"*://*.netdna-ssl.com/*", "*://*.netdna-ssl.com/*",
"*://*.startribune.com/*", "*://*.startribune.com/*",
"*://*.df.cl/*", "*://*.df.cl/*",
"*://*.financialpost.com/*" "*://*.financialpost.com/*",
"*://*.ambito/*",
"*://*.sueddeutsche.de/*",
"*://*.spectator.us/*",
"*://*.humo.be/*",
"*://*.elmundo.es/*",
"*://*.time.com/*",
"*://*.zeit.de/*",
"*://*.ampproject.org/*",
"*://*.reuters.com/*",
"*://*.expansion.com/*",
"*://*.theathletic.com/*",
"*://*.theathletic.co.uk/*",
"*://*.hbrchina.org/*",
"*://*.scmp.com/*"
], ],
"version": "1.7.7" "version": "1.8.1"
} }

View File

@ -34,5 +34,5 @@
"webRequestBlocking", "webRequestBlocking",
"<all_urls>" "<all_urls>"
], ],
"version": "1.7.7" "version": "1.8.1"
} }

195
src/js/background.js Normal file → Executable file
View File

@ -1,24 +1,26 @@
'use strict'; 'use strict';
const restrictions = { const restrictions = {
'barrons.com': /.+barrons\.com\/(amp\/)?article(s)?\/.+/, 'adweek.com': /^((?!\.adweek\.com\/(.+\/)?(amp|agencyspy|tvnewser|tvspy)\/).)*$/,
'barrons.com': /.+\.barrons\.com\/(amp\/)?article(s)?\/.+/,
'economist.com': /.+economist\.com\/.+\/\d{1,4}\/\d{1,2}\/\d{2}\/.+/, 'economist.com': /.+economist\.com\/.+\/\d{1,4}\/\d{1,2}\/\d{2}\/.+/,
'seekingalpha.com': /.+seekingalpha\.com\/article\/.+/ 'seekingalpha.com': /.+seekingalpha\.com\/article\/.+/,
'techinasia.com': /\.techinasia\.com\/.+/,
'ft.com': /.+\.ft.com\/content\//,
'nytimes.com': /^((?!\/timesmachine\.nytimes\.com\/).)*$/,
'theatlantic.com': /^((?!\/newsletters\.theatlantic\.com\/).)*$/,
'bloomberg.com': /^((?!\.bloomberg\.com\/news\/terminal\/).)*$/
}; };
// Don't remove cookies before page load // Don't remove cookies before page load
const allowCookies = [ const allowCookies = [
'ad.nl',
'asia.nikkei.com',
'brisbanetimes.com.au', 'brisbanetimes.com.au',
'canberratimes.com.au', 'canberratimes.com.au',
'cen.acs.org', 'cen.acs.org',
'chicagobusiness.com',
'demorgen.be', 'demorgen.be',
'denverpost.com', 'denverpost.com',
'ed.nl',
'examiner.com.au', 'examiner.com.au',
'ft.com', 'gelocal.it',
'grubstreet.com', 'grubstreet.com',
'harpers.org', 'harpers.org',
'hbr.org', 'hbr.org',
@ -27,7 +29,6 @@ const allowCookies = [
'lrb.co.uk', 'lrb.co.uk',
'medium.com', 'medium.com',
'mercurynews.com', 'mercurynews.com',
'mexiconewsdaily.com',
'newstatesman.com', 'newstatesman.com',
'nrc.nl', 'nrc.nl',
'nymag.com', 'nymag.com',
@ -39,6 +40,7 @@ const allowCookies = [
'seekingalpha.com', 'seekingalpha.com',
'sofrep.com', 'sofrep.com',
'spectator.co.uk', 'spectator.co.uk',
'speld.nl',
'techinasia.com', 'techinasia.com',
'telegraaf.nl', 'telegraaf.nl',
'the-american-interest.com', 'the-american-interest.com',
@ -49,43 +51,45 @@ const allowCookies = [
'thecut.com', 'thecut.com',
'thediplomat.com', 'thediplomat.com',
'themercury.com.au', 'themercury.com.au',
'thestar.com',
'towardsdatascience.com', 'towardsdatascience.com',
'trouw.nl', 'trouw.nl',
'vn.nl', 'vn.nl',
'volkskrant.nl', 'volkskrant.nl',
'vulture.com', 'vulture.com',
'washingtonpost.com',
'wired.com',
'nzz.ch', 'nzz.ch',
'handelsblatt.com',
'thehindu.com', 'thehindu.com',
'financialpost.com' 'financialpost.com',
'haaretz.co.il',
'haaretz.com',
'themarker.com',
'sueddeutsche.de',
'gelocal.it',
'elmundo.es',
'time.com',
'zeit.de',
'expansion.com',
'dailytelegraph.com.au',
'washingtonpost.com',
'nytimes.com'
]; ];
// Removes cookies after page load // Removes cookies after page load
const removeCookies = [ const removeCookies = [
'ad.nl', 'bloomberg.com',
'asia.nikkei.com',
'bloombergquint.com', 'bloombergquint.com',
'brisbanetimes.com.au', 'brisbanetimes.com.au',
'canberratimes.com.au', 'canberratimes.com.au',
'cen.acs.org', 'cen.acs.org',
'chicagobusiness.com',
'demorgen.be', 'demorgen.be',
'denverpost.com', 'denverpost.com',
'ed.nl',
'examiner.com.au', 'examiner.com.au',
'ft.com',
'globes.co.il', 'globes.co.il',
'grubstreet.com', 'grubstreet.com',
'harpers.org', 'harpers.org',
'hbr.org', 'hbr.org',
'humo.be', 'humo.be',
'lesechos.fr', 'lesechos.fr',
'medium.com',
'mercurynews.com', 'mercurynews.com',
'mexiconewsdaily.com',
'newstatesman.com', 'newstatesman.com',
'nrc.nl', 'nrc.nl',
'nymag.com', 'nymag.com',
@ -95,18 +99,20 @@ const removeCookies = [
'seattletimes.com', 'seattletimes.com',
'sofrep.com', 'sofrep.com',
'spectator.co.uk', 'spectator.co.uk',
'speld.nl',
'telegraaf.nl', 'telegraaf.nl',
'theadvocate.com.au', 'theadvocate.com.au',
'theage.com.au', 'theage.com.au',
'theatlantic.com', 'theatlantic.com',
'thecut.com', 'thecut.com',
'thediplomat.com', 'thediplomat.com',
'thestar.com',
'towardsdatascience.com', 'towardsdatascience.com',
'vulture.com',
'vn.nl', 'vn.nl',
'wired.com', 'vulture.com',
'wsj.com' 'wsj.com',
'medium.com',
'washingtonpost.com',
'japantimes.co.jp'
]; ];
// Contains remove cookie sites above plus any custom sites // Contains remove cookie sites above plus any custom sites
@ -115,17 +121,18 @@ let _removeCookies = removeCookies;
// select specific cookie(s) to hold from removeCookies domains // select specific cookie(s) to hold from removeCookies domains
const removeCookiesSelectHold = { const removeCookiesSelectHold = {
'qz.com': ['gdpr'], 'qz.com': ['gdpr'],
'wsj.com': ['wsjregion'] 'wsj.com': ['wsjregion'],
'seattletimes.com': ['st_newsletter_splash_seen']
}; };
// select only specific cookie(s) to drop from removeCookies domains // select only specific cookie(s) to drop from removeCookies domains
const removeCookiesSelectDrop = { const removeCookiesSelectDrop = {
'ad.nl': ['temptationTrackingId'], 'ambito.com': ['TDNotesRead'],
'ed.nl': ['temptationTrackingId'],
'demorgen.be': ['TID_ID'], 'demorgen.be': ['TID_ID'],
'humo.be': ['TID_ID'],
'fd.nl': ['socialread'], 'fd.nl': ['socialread'],
'nrc.nl': ['counter'] 'humo.be': ['TID_ID'],
'nrc.nl': ['counter'],
'speld.nl': ['speld-paywall']
}; };
// Override User-Agent with Googlebot // Override User-Agent with Googlebot
@ -133,29 +140,35 @@ const useGoogleBotSites = [
'adelaidenow.com.au', 'adelaidenow.com.au',
'barrons.com', 'barrons.com',
'couriermail.com.au', 'couriermail.com.au',
'dailytelegraph.com.au',
'fd.nl', 'fd.nl',
'genomeweb.com', 'genomeweb.com',
'haaretz.co.il',
'haaretz.com',
'heraldsun.com.au', 'heraldsun.com.au',
'mexiconewsdaily.com', 'lavoixdunord.fr',
'ntnews.com.au', 'ntnews.com.au',
'quora.com', 'quora.com',
'seekingalpha.com', 'seekingalpha.com',
'telegraph.co.uk', 'telegraph.co.uk',
'theaustralian.com.au', 'theaustralian.com.au',
'themarker.com',
'themercury.com.au', 'themercury.com.au',
'thenational.scot', 'thenational.scot',
'thetimes.co.uk',
'wsj.com', 'wsj.com',
'kansascity.com', 'kansascity.com',
'republic.ru', 'republic.ru',
'nzz.ch', 'nzz.ch',
'handelsblatt.com', 'df.cl',
'washingtonpost.com', 'ft.com',
'df.cl' 'wired.com',
'zeit.de',
'nytimes.com'
];
// Override User-Agent with Bingbot
const useBingBot = [];
const useMsnBot = [
'haaretz.co.il',
'haaretz.com',
'themarker.com'
]; ];
// Contains google bot sites above plus any custom sites // Contains google bot sites above plus any custom sites
@ -177,14 +190,13 @@ const blockedRegexes = {
'chicagotribune.com': /.+:\/\/.+\.tribdss\.com\//, 'chicagotribune.com': /.+:\/\/.+\.tribdss\.com\//,
'economist.com': /(.+\.tinypass\.com\/.+|economist\.com\/engassets\/_next\/static\/chunks\/framework.+\.js)/, 'economist.com': /(.+\.tinypass\.com\/.+|economist\.com\/engassets\/_next\/static\/chunks\/framework.+\.js)/,
'editorialedomani.it': /(js\.pelcro\.com\/.+|editorialedomani.it\/pelcro\.js)/, 'editorialedomani.it': /(js\.pelcro\.com\/.+|editorialedomani.it\/pelcro\.js)/,
'foreignpolicy.com': /.+\.tinypass\.com\/.+/, 'foreignpolicy.com': /(cdn\.cxense\.com\/|\.tinypass\.com\/)/,
'fortune.com': /.+\.tinypass\.com\/.+/, 'fortune.com': /.+\.tinypass\.com\/.+/,
'haaretz.co.il': /haaretz\.co\.il\/htz\/js\/inter\.js/, 'haaretz.co.il': /haaretz\.co\.il\/htz\/js\/inter\.js/,
'haaretz.com': /haaretz\.com\/hdc\/web\/js\/minified\/header-scripts-int.js.+/, 'haaretz.com': /haaretz\.com\/hdc\/web\/js\/minified\/header-scripts-int.js.+/,
'inquirer.com': /.+\.tinypass\.com\/.+/, 'inquirer.com': /.+\.tinypass\.com\/.+/,
'lastampa.it': /.+\.repstatic\.it\/minify\/sites\/lastampa\/.+\/config\.cache\.php\?name=social_js/, 'lastampa.it': /.+\.repstatic\.it\/minify\/sites\/lastampa\/.+\/config\.cache\.php\?name=social_js/,
'lrb.co.uk': /.+\.tinypass\.com\/.+/, 'lrb.co.uk': /.+\.tinypass\.com\/.+/,
'nzherald.co.nz': /(.+nzherald\.co\.nz\/.+\/subs\/p\.js|.+nzherald\.co\.nz\/.+\/react\.js|.+nzherald\.co\.nz\/.+\/appear\.js|.+nzherald\.co\.nz\/.+\/tracking\/.+|.+nzherald\.co\.nz\/.+\/default\.js|.+\/newsbarscript\.js)/,
'medscape.com': /.+\.medscapestatic\.com\/.*medscape-library\.js/, 'medscape.com': /.+\.medscapestatic\.com\/.*medscape-library\.js/,
'interest.co.nz': /(.+\.presspatron\.com.+|.+interest\.co\.nz.+pp-ablock-banner\.js)/, 'interest.co.nz': /(.+\.presspatron\.com.+|.+interest\.co\.nz.+pp-ablock-banner\.js)/,
'repubblica.it': /scripts\.repubblica\.it\/pw\/pw\.js.+/, 'repubblica.it': /scripts\.repubblica\.it\/pw\/pw\.js.+/,
@ -203,13 +215,34 @@ const blockedRegexes = {
'sloanreview.mit.edu': /(.+\.tinypass\.com\/.+|.+\.netdna-ssl\.com\/wp-content\/themes\/smr\/assets\/js\/libs\/welcome-ad\.js)/, 'sloanreview.mit.edu': /(.+\.tinypass\.com\/.+|.+\.netdna-ssl\.com\/wp-content\/themes\/smr\/assets\/js\/libs\/welcome-ad\.js)/,
'latercera.com': /.+\.cxense\.com\/+/, 'latercera.com': /.+\.cxense\.com\/+/,
'lesechos.fr': /.+\.tinypass\.com\/.+/, 'lesechos.fr': /.+\.tinypass\.com\/.+/,
'washingtonpost.com': /.+\.washingtonpost\.com\/.+\/pwapi-proxy\.min\.js/,
'thehindu.com': /ajax\.cloudflare\.com\/cdn-cgi\/scripts\/.+\/cloudflare-static\/rocket-loader\.min\.js/, 'thehindu.com': /ajax\.cloudflare\.com\/cdn-cgi\/scripts\/.+\/cloudflare-static\/rocket-loader\.min\.js/,
'technologyreview.com': /.+\.blueconic\.net\/.+/ 'technologyreview.com': /.+\.blueconic\.net\/.+/,
'spectator.us': /(cdn\.cxense\.com\/.+|\.tinypass\.com\/.+)/,
'gelocal.it': /(\.repstatic\.it\/minify\/sites\/gelocal\/.+\/config\.cache(_\d)?\.php|cdn\.ampproject\.org\/v\d\/amp-(access|ad)-.+\.js)/,
'elmundo.es': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/,
'time.com': /\/time\.com\/dist\/meter-wall-client-js\..+\.js/,
'thestar.com': /\.com\/api\/overlaydata/,
'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)/,
'expansion.com': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/,
'chicagobusiness.com': /(\.tinypass\.com\/|\.chicagobusiness\.com\/.+\/js\/js_.+\.js)/,
'dailytelegraph.com.au': /cdn\.ampproject\.org\/v\d\/amp-(access|ad|consent)-.+\.js/,
'theglobeandmail.com': /(\.theglobeandmail\.com\/pf\/dist\/engine\/react\.js|smartwall\.theglobeandmail\.com\/)/,
'nytimes.com': /(\.nytimes\.com\/meter\.js|mwcm\.nyt\.com\/.+\.js|cooking\.nytimes\.com\/api\/.+\/access)/,
'latimes.com': /\.californiatimes\.com\/meteringjs/,
'theathletic.com': /cdn\.ampproject\.org\/v\d\/amp-(access|subscriptions)-.+\.js/,
'japantimes.co.jp': /cdn\.cxense\.com\//,
'scmp.com': /(\.tinypass\.com\/|cdn\.ampproject\.org\/v\d\/amp-access-.+\.js)/,
'ilmessaggero.it': /(utils\.cedsdigital\.it\/js\/PaywallMeter\.js)/,
'washingtonpost.com': /\.washingtonpost\.com\/tetro\/metering\/evaluate/,
'theatlantic.com': /cdn\.theatlantic\.com\/_next\/static\/chunks\/pages\/.+\/archive\//,
'bloomberg.com': /(\.cm\.bloomberg\.com\/|assets\.bwbx\.io\/s\d\/javelin\/.+\/transporter\/)/
}; };
const userAgentDesktop = 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'; const userAgentDesktop = 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)';
const userAgentMobile = 'Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible ; Googlebot/2.1 ; +http://www.google.com/bot.html)'; const userAgentMobile = 'Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible ; Googlebot/2.1 ; +http://www.google.com/bot.html)';
const userAgentDesktopBingBot = 'Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)';
const userAgentMobileBingBot = 'Chrome/80.0.3987.92 Mobile Safari/537.36 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)';
const userAgentMsnBot = 'msnbot/2.0b (+http://search.msn.com/msnbot.htm)';
let enabledSites = []; let enabledSites = [];
@ -256,7 +289,7 @@ extensionApi.tabs.onActivated.addListener(function (activeInfo) {
}); });
function updateBadge (activeTab) { function updateBadge (activeTab) {
if (!activeTab) { return; } if (extensionApi.runtime.lastError || !activeTab) { return; }
const badgeText = getBadgeText(activeTab.url); const badgeText = getBadgeText(activeTab.url);
extensionApi.browserAction.setBadgeBackgroundColor({ color: 'blue' }); extensionApi.browserAction.setBadgeBackgroundColor({ color: 'blue' });
extensionApi.browserAction.setBadgeText({ text: badgeText }); extensionApi.browserAction.setBadgeText({ text: badgeText });
@ -266,9 +299,40 @@ function getBadgeText (currentUrl) {
return currentUrl && isSiteEnabled({ url: currentUrl }) ? 'ON' : ''; return currentUrl && isSiteEnabled({ url: currentUrl }) ? 'ON' : '';
} }
// AMP redirect for dailytelegraph.com.au
extensionApi.webRequest.onBeforeRequest.addListener(function (details) {
if (!isSiteEnabled(details)) {
return;
}
const updatedUrl = decodeURIComponent(details.url.split('&dest=')[1].split('&')[0]).replace('www.', 'amp.');
return { redirectUrl: updatedUrl };
},
{ urls: ['*://www.dailytelegraph.com.au/subscribe/*'], types: ['main_frame'] },
['blocking']
);
// nytimes.com
extensionApi.webRequest.onHeadersReceived.addListener(function (details) {
if (!isSiteEnabled(details)) {
return;
}
let headers = details.responseHeaders;
headers = headers.map(function (header) {
if (header.name === 'x-frame-options') { header.value = 'SAMEORIGIN'; }
return header;
});
return {
responseHeaders: headers
};
}, {
urls: ['*://*.nytimes.com/*']
},
['blocking', 'responseHeaders']);
// Disable javascript for these sites // Disable javascript for these sites
extensionApi.webRequest.onBeforeRequest.addListener(function (details) { extensionApi.webRequest.onBeforeRequest.addListener(function (details) {
if (!isSiteEnabled(details) && !enabledSites.includes('generalpaywallbypass')) { const headerReferer = details.originUrl ? details.originUrl : details.initiator;
if (!isSiteEnabled(details) && (!enabledSites.includes('generalpaywallbypass') || matchUrlDomain('japantimes.co.jp', headerReferer))) {
return; return;
} }
return { cancel: true }; return { cancel: true };
@ -310,7 +374,7 @@ extensionApi.webRequest.onBeforeSendHeaders.addListener(function (details) {
return { cancel: true }; return { cancel: true };
} }
if (!isSiteEnabled(details)) { if (!isSiteEnabled(details) && !matchUrlDomain('cdn.ampproject.org', details.url)) {
return; return;
} }
@ -327,6 +391,8 @@ extensionApi.webRequest.onBeforeSendHeaders.addListener(function (details) {
requestHeader.value = 'https://cooking.nytimes.com'; requestHeader.value = 'https://cooking.nytimes.com';
} else if (matchUrlDomain('fd.nl', details.url)) { } else if (matchUrlDomain('fd.nl', details.url)) {
requestHeader.value = 'https://www.facebook.com/'; requestHeader.value = 'https://www.facebook.com/';
} else if (matchUrlDomain('medium.com', details.url)) {
requestHeader.value = 'https://t.co/x?amp=1';
} else { } else {
requestHeader.value = 'https://www.google.com/'; requestHeader.value = 'https://www.google.com/';
} }
@ -346,6 +412,11 @@ extensionApi.webRequest.onBeforeSendHeaders.addListener(function (details) {
name: 'Referer', name: 'Referer',
value: 'https://www.facebook.com/' value: 'https://www.facebook.com/'
}); });
} else if (matchUrlDomain('medium.com', details.url)) {
requestHeaders.push({
name: 'Referer',
value: 'https://t.co/x?amp=1'
});
} else { } else {
requestHeaders.push({ requestHeaders.push({
name: 'Referer', name: 'Referer',
@ -370,6 +441,22 @@ extensionApi.webRequest.onBeforeSendHeaders.addListener(function (details) {
}); });
} }
// override User-Agent to use Bingbot
if (matchUrlDomain(useBingBot, details.url)) {
requestHeaders.push({
name: 'User-Agent',
value: useUserAgentMobile ? userAgentMobileBingBot : userAgentDesktopBingBot
});
}
// override User-Agent to use Google AdsBot Mobile Web
if (matchUrlDomain(useMsnBot, details.url)) {
requestHeaders.push({
name: 'User-Agent',
value: userAgentMsnBot
});
}
// remove cookies before page load // remove cookies before page load
const enabledCookies = allowCookies.some(function (site) { const enabledCookies = allowCookies.some(function (site) {
return matchUrlDomain(site, details.url); return matchUrlDomain(site, details.url);
@ -444,6 +531,24 @@ extensionApi.webRequest.onCompleted.addListener(function (details) {
urls: ['<all_urls>'] urls: ['<all_urls>']
}); });
// nytimes.com fix
extensionApi.webRequest.onHeadersReceived.addListener(function (details) {
if (!isSiteEnabled(details)) {
return;
}
let headers = details.responseHeaders;
headers = headers.map(function (header) {
if (header.name === 'x-frame-options') { header.value = 'SAMEORIGIN'; }
return header;
});
return {
responseHeaders: headers
};
}, {
urls: ['*://*.nytimes.com/*']
},
['blocking', 'responseHeaders']);
// Google Analytics to anonymously track DAU (Chrome only) // Google Analytics to anonymously track DAU (Chrome only)
function initGA () { function initGA () {
(function (i, s, o, g, r, a, m) { (function (i, s, o, g, r, a, m) {

716
src/js/contentScript.js Normal file → Executable file
View File

@ -1,4 +1,4 @@
if (!matchDomain(['seekingalpha.com', 'sfchronicle.com', 'cen.acs.org', 'thetimes.co.uk'])) { if (!matchDomain(['seekingalpha.com', 'sfchronicle.com', 'cen.acs.org', 'elmundo.es', 'scmp.com', 'nytimes.com'])) {
window.localStorage.clear(); window.localStorage.clear();
} }
@ -20,24 +20,24 @@ if (matchDomain('elmercurio.com')) {
body.removeAttribute('style'); body.removeAttribute('style');
}, 300); // Delay (in milliseconds) }, 300); // Delay (in milliseconds)
} else if (matchDomain('rep.repubblica.it')) { } else if (matchDomain('rep.repubblica.it')) {
if (window.location.href.includes('/pwa/')) { window.setTimeout(function () {
setTimeout(function () { if (window.location.href.includes('/pwa/')) {
window.location.href = window.location.href.replace('/pwa/', '/ws/detail/'); window.location.href = window.location.href.replace('/pwa/', '/ws/detail/');
}, 400); }
} }, 500);
if (window.location.href.includes('/ws/detail/')) { if (window.location.href.includes('/ws/detail/')) {
const paywall = document.querySelector('.paywall[subscriptions-section="content"]'); const paywall = document.querySelector('.paywall');
if (paywall) { if (paywall) {
paywall.removeAttribute('subscriptions-section'); ampUnhideSubscriptionsSection();
const preview = document.querySelector('div[subscriptions-section="content-not-granted"]');
if (preview) {
preview.remove();
}
} }
} }
} else if (matchDomain('americanbanker.com')) { } else if (matchDomain('americanbanker.com')) {
const paywall = document.getElementsByClassName('embargo-content')[0]; const inlineGate = document.querySelector('.inline-gate');
if (paywall) { paywall.classList.remove('embargo-content'); } if (inlineGate) {
inlineGate.classList.remove('inline-gate');
const inlineGated = document.querySelectorAll('.inline-gated');
for (const elem of inlineGated) { elem.classList.remove('inline-gated'); }
}
} else if (matchDomain('telegraaf.nl')) { } else if (matchDomain('telegraaf.nl')) {
if (window.location.href.startsWith('https://www.telegraaf.nl/error?ref=/')) { if (window.location.href.startsWith('https://www.telegraaf.nl/error?ref=/')) {
window.location.href = window.location.href.split('&')[0].replace('error?ref=/', ''); window.location.href = window.location.href.split('&')[0].replace('error?ref=/', '');
@ -73,13 +73,11 @@ if (matchDomain('elmercurio.com')) {
} }
} }
} }
} else if (matchDomain(['ad.nl', 'ed.nl'])) {
const paywall = document.querySelector('.article__component.article__component--paywall-module-notification');
removeDOMElement(paywall);
} else if (matchDomain('washingtonpost.com')) { } else if (matchDomain('washingtonpost.com')) {
const leaderboard = document.querySelector('#leaderboard-wrapper'); const leaderboard = document.querySelector('#leaderboard-wrapper');
const adverts = document.querySelectorAll('div[data-qa="article-body-ad"]'); const adverts = document.querySelectorAll('div[data-qa="article-body-ad"]');
removeDOMElement(leaderboard, ...adverts); const softwall = document.querySelector('[id^="softwall"]');
removeDOMElement(leaderboard, softwall, ...adverts);
if (window.location.href.includes('/gdpr-consent/')) { if (window.location.href.includes('/gdpr-consent/')) {
const freeButton = document.querySelector('.gdpr-consent-container .continue-btn.button.free'); const freeButton = document.querySelector('.gdpr-consent-container .continue-btn.button.free');
if (freeButton) { freeButton.click(); } if (freeButton) { freeButton.click(); }
@ -91,6 +89,18 @@ if (matchDomain('elmercurio.com')) {
document.querySelector('.gdpr-consent-container .consent-page:not(.hide) .continue-btn.button.accept-consent').click(); document.querySelector('.gdpr-consent-container .consent-page:not(.hide) .continue-btn.button.accept-consent').click();
} }
}, 300); // Delay (in milliseconds) }, 300); // Delay (in milliseconds)
} else {
const url = window.location.href;
function main (element) {
removeDOMElement(element);
window.location.href = url.split('?')[0] + '?outputType=amp';
}
if (!url.includes('outputType=amp')) {
waitDOMElement('div[id^="paywall-"]', 'DIV', main, false);
} else {
const subscriptionsSections = document.querySelectorAll('[subscriptions-section="content"]');
for (const subscriptionsSection of subscriptionsSections) { subscriptionsSection.removeAttribute('subscriptions-section'); }
}
} }
} else if (matchDomain('wsj.com') && !matchDomain('cn.wsj.com')) { } else if (matchDomain('wsj.com') && !matchDomain('cn.wsj.com')) {
if (window.location.href.includes('/articles/')) { if (window.location.href.includes('/articles/')) {
@ -115,19 +125,39 @@ if (matchDomain('elmercurio.com')) {
readMore.click(); readMore.click();
} }
} else if (matchDomain('mexiconewsdaily.com')) { } else if (matchDomain('mexiconewsdaily.com')) {
document.addEventListener('DOMContentLoaded', () => { window.setTimeout(function () {
const sideNotification = document.querySelector('.pigeon-widget-prompt'); const popup = document.querySelector('div.pigeon-widget-prompt');
const subMessage = document.querySelector('.sub_message_container'); const cproOverlay = document.querySelector('.cpro-overlay');
const popup = document.querySelector('.popupally-pro-outer-full-width-7-fluid_qemskqa'); removeDOMElement(popup, cproOverlay);
const bgFocusRemoverId = document.getElementById('popup-box-pro-gfcr-7'); }, 500); // Delay (in milliseconds)
removeDOMElement(sideNotification, subMessage, popup, bgFocusRemoverId);
});
} else if (matchDomain('the-american-interest.com')) { } else if (matchDomain('the-american-interest.com')) {
const counter = document.getElementById('article-counter'); const counter = document.getElementById('article-counter');
removeDOMElement(counter); removeDOMElement(counter);
} else if (matchDomain('nzherald.co.nz')) { } else if (matchDomain('nzherald.co.nz')) {
NZHerald(); const articleContent = document.querySelector('.article__content');
if (articleContent) {
const articleOffer = document.querySelector('.article-offer');
if (articleOffer) {
const cssSelector = articleContent.querySelectorAll('p')[5].getAttribute('class');
const hiddenNotPars = articleContent.querySelectorAll('.' + cssSelector + ':not(p)');
for (const hiddenNotPar of hiddenNotPars) {
hiddenNotPar.classList.remove(cssSelector);
hiddenNotPar.removeAttribute('style');
}
const hiddenPars = articleContent.querySelectorAll('p.' + cssSelector);
const parser = new DOMParser();
for (const hiddenPar of hiddenPars) {
const parHtml = parser.parseFromString('<div style="margin: 10px 0px; font-size: 17px">' + hiddenPar.innerHTML + '</div>', 'text/html');
const parDom = parHtml.querySelector('div');
articleContent.insertBefore(parDom, hiddenPar);
}
const firstSpan = document.querySelector('p > span');
if (firstSpan) { firstSpan.removeAttribute('class'); }
removeDOMElement(articleOffer);
}
}
const premiumToaster = document.querySelector('#premium-toaster');
removeDOMElement(premiumToaster);
} else if (matchDomain('interest.co.nz')) { } else if (matchDomain('interest.co.nz')) {
const wrapper = document.getElementById('pp-ablock-banner-wrapper'); const wrapper = document.getElementById('pp-ablock-banner-wrapper');
const overlay = document.querySelector('.black-overlay'); const overlay = document.querySelector('.black-overlay');
@ -174,58 +204,35 @@ if (matchDomain('elmercurio.com')) {
const paywall = document.getElementsByClassName('paywall')[0]; const paywall = document.getElementsByClassName('paywall')[0];
removeDOMElement(paywall); removeDOMElement(paywall);
} else if (matchDomain('bloomberg.com')) { } else if (matchDomain('bloomberg.com')) {
document.addEventListener('DOMContentLoaded', () => { const paywall = document.querySelectorAll('div[id^="fortress-"]');
const fence = document.querySelector('.fence-body'); const leaderboard = document.querySelector('div[id^="leaderboard"], div[class^="leaderboard"], div.canopy-container');
if (fence) { const ads = document.querySelectorAll('div[data-ad-status], div.dvz-v0-ad, div[class^="FullWidthAd_"]');
fence.classList.remove('fence-body'); hideDOMElement(...paywall, leaderboard, ...ads);
} if (window.location.pathname.startsWith('/live/')) {
const paywall = document.getElementById('paywall-banner'); setInterval(function () {
removeDOMElement(paywall); window.localStorage.clear();
}); }, 15 * 60 * 1000);
}
} else if (matchDomain('bloombergquint.com')) { } else if (matchDomain('bloombergquint.com')) {
const articlesLeftModal = document.getElementsByClassName('paywall-meter-module__story-paywall-container__1UgCE')[0]; const articlesLeftModal = document.getElementsByClassName('paywall-meter-module__story-paywall-container__1UgCE')[0];
const paywall = document.getElementById('paywallDmp'); const paywall = document.getElementById('paywallDmp');
removeDOMElement(articlesLeftModal, paywall); removeDOMElement(articlesLeftModal, paywall);
} else if (matchDomain('medium.com')) { } else if (matchDomain('medium.com') || document.querySelector('script[src^="https://cdn-client.medium.com/"]')) {
const bottomMessageText = 'Get one more story in your member preview when you sign up. Its free.'; const paywall = document.querySelector('div#paywall-background-color');
const DOMElementsToTextDiv = pageContains('div', bottomMessageText); removeDOMElement(paywall);
if (DOMElementsToTextDiv[2]) removeDOMElement(DOMElementsToTextDiv[2]); if (paywall) {
extensionApi.runtime.sendMessage({ request: 'refreshCurrentTab' });
}
window.setTimeout(function () {
const meter = document.querySelector('[id*="highlight-meter-"]');
if (meter) {
meter.hidden = true;
}
}, 500); // Delay (in milliseconds)
} else if (matchDomain('theglobeandmail.com')) { } else if (matchDomain('theglobeandmail.com')) {
document.addEventListener('DOMContentLoaded', () => { const articleBodySubscribed = document.querySelector('.c-article-body--subscribed');
const realArticle = document.querySelector('.js-c-article-body'); if (articleBodySubscribed) {
let decoyArticle = document.querySelector('.decoy-article'); articleBodySubscribed.removeAttribute('class');
if (realArticle && !decoyArticle) {
decoyArticle = document.createElement('div');
decoyArticle.classList.add('js-c-article-body');
decoyArticle.classList.add('decoy-article');
decoyArticle.hidden = true;
realArticle.parentElement.insertBefore(decoyArticle, realArticle);
for (var child = realArticle.firstChild; child !== null; child = child.nextSibling) {
if (child.style) {
child.style.display = 'block';
}
}
}
const regWall = document.querySelector('#regwall');
const lightBox = document.querySelector('.c-lightbox');
if (regWall && lightBox) {
regWall.hidden = true;
lightBox.hidden = true;
}
const subscribed = document.querySelector('html.story-subscribed');
if (subscribed && !window.location.href.includes('?ref=premium')) {
window.setTimeout(function () {
window.location.href = new URL(window.location.href).pathname + '?ref=premium';
}, 100);
}
});
const cCards = document.querySelectorAll('div.c-card');
for (const cCard of cCards) {
const aLink = cCard.querySelector('a');
const key = cCard.querySelector('span.c-indicator-icon--key');
if (key && aLink && !aLink.href.includes('?ref=premium')) {
aLink.href = aLink.href + '?ref=premium';
}
} }
} else if (matchDomain(['examiner.com.au', 'thecourier.com.au', 'theadvocate.com.au'])) { } else if (matchDomain(['examiner.com.au', 'thecourier.com.au', 'theadvocate.com.au'])) {
const subscribeTruncate = document.querySelector('.subscribe-truncate'); const subscribeTruncate = document.querySelector('.subscribe-truncate');
@ -243,15 +250,14 @@ if (matchDomain('elmercurio.com')) {
for (const el of content) { for (const el of content) {
el.classList.remove('subscriber-hider'); el.classList.remove('subscriber-hider');
} }
} else if (matchDomain('asia.nikkei.com')) {
const cookieBanner = document.querySelector('.pw-widget');
removeDOMElement(cookieBanner);
} else if (matchDomain('ledevoir.com')) { } else if (matchDomain('ledevoir.com')) {
const counter = document.querySelector('.full.hidden-print.popup-msg'); const counter = document.querySelector('.full.hidden-print.popup-msg');
removeDOMElement(counter); removeDOMElement(counter);
} else if (matchDomain('ft.com')) { } else if (matchDomain('ft.com')) {
const cookieBanner = document.querySelector('.cookie-banner'); const cookieBanner = document.querySelector('.o-banner__outer');
removeDOMElement(cookieBanner); const ribbon = document.querySelector('.js-article-ribbon');
const ads = document.querySelector('.o-ads');
removeDOMElement(cookieBanner, ads, ribbon);
} else if (matchDomain('thehindu.com')) { } else if (matchDomain('thehindu.com')) {
document.addEventListener('DOMContentLoaded', () => { document.addEventListener('DOMContentLoaded', () => {
const counter = document.querySelector('#test'); const counter = document.querySelector('#test');
@ -260,38 +266,8 @@ if (matchDomain('elmercurio.com')) {
removeDOMElement(counter, coBanner, support); removeDOMElement(counter, coBanner, support);
}); });
} else if (matchDomain('nytimes.com')) { } else if (matchDomain('nytimes.com')) {
const previewButton = document.querySelector('.css-3s1ce0'); const banners = document.querySelectorAll('div[data-testid="inline-message"], div[id^="ad-"], div.expanded-dock, div.pz-ad-box');
if (previewButton) { previewButton.click(); } removeDOMElement(...banners);
// Prevent bottom dock from appearing
new window.MutationObserver(function (mutations) {
for (const mutation of mutations) {
for (const node of mutation.addedNodes) {
if (node instanceof window.HTMLElement) {
if (node.matches('.css-3fbowa')) {
removeDOMElement(node);
this.disconnect();
}
}
}
}
}).observe(document, { subtree: true, childList: true });
// Reload iframes after window is loaded to fix iframes not loading
document.addEventListener('readystatechange', event => {
if (event.target.readyState === 'complete') {
const iframes = document.querySelectorAll('iframe');
iframes.forEach(iframe =>
window.fetch(iframe.src).then(function (response) {
// The API call was successful!
return response.text();
}).then(function (html) {
// This is the HTML from our response as a text string
iframe.outerHTML = html;
}).catch(function (err) {
// There was an error
console.warn('Something went wrong.', err);
}));
}
});
} else if (matchDomain('technologyreview.com')) { } else if (matchDomain('technologyreview.com')) {
window.setTimeout(function () { window.setTimeout(function () {
const bodyObscured = document.querySelector('body[class*="body__obscureContent"]'); const bodyObscured = document.querySelector('body[class*="body__obscureContent"]');
@ -341,14 +317,17 @@ if (matchDomain('elmercurio.com')) {
} else if (matchDomain('cen.acs.org')) { } else if (matchDomain('cen.acs.org')) {
const paywall = document.querySelector('.meteredBar'); const paywall = document.querySelector('.meteredBar');
removeDOMElement(paywall); removeDOMElement(paywall);
} else if (matchDomain('elpais.com')) { } else if (matchDomain('elperiodico.com')) {
setTimeout(function () { setTimeout(function () {
const paywall = document.querySelector('.fc-ab-root'); const unavailableArea = document.querySelector('.closed');
const body = document.querySelector('.salida_articulo'); const infoBox = document.querySelector('.ep-masPeriodico-info');
if (unavailableArea) {
removeDOMElement(paywall); unavailableArea.classList.remove('closed');
body.removeAttribute('style'); }
}, 500); // Delay (in milliseconds) if (infoBox) {
infoBox.parentNode.removeChild(infoBox);
}
}, 1000);
} else if (matchDomain('techinasia.com')) { } else if (matchDomain('techinasia.com')) {
const paywall = document.querySelector('.paywall-content'); const paywall = document.querySelector('.paywall-content');
if (paywall) { if (paywall) {
@ -369,33 +348,33 @@ if (matchDomain('elmercurio.com')) {
const banner = document.querySelector('.persistent-banner'); const banner = document.querySelector('.persistent-banner');
removeDOMElement(banner); removeDOMElement(banner);
} else if (matchDomain('spectator.co.uk')) { } else if (matchDomain('spectator.co.uk')) {
const container = document.querySelector('.HardPayWallContainer-module__overlay'); const banner = document.querySelector('#subscribe-ribbon');
window.setTimeout(function () { removeDOMElement(banner);
if (container && window.location.href.includes('/www.spectator.co.uk/')) {
window.location.href = window.location.href + '/amp';
}
}, 500);
} else if (matchDomain('barrons.com')) { } else if (matchDomain('barrons.com')) {
document.addEventListener('DOMContentLoaded', () => { const url = window.location.href;
if (!url.includes('barrons.com/amp/')) {
const bodyContinuous = document.querySelector('body.is-continuous'); const bodyContinuous = document.querySelector('body.is-continuous');
const snippet = document.querySelector('meta[content="snippet"]'); const snippet = document.querySelector('meta[content="snippet"]');
if (bodyContinuous && snippet) { if (bodyContinuous && snippet) {
window.location.href = window.location.href.replace('barrons.com', 'barrons.com/amp'); removeDOMElement(snippet);
window.location.href = url.replace('barrons.com', 'barrons.com/amp');
} }
}); const signinLinks = document.querySelectorAll('a.primary-button--link[href*="target="]');
if (!window.location.href.includes('barrons.com/amp/')) {
let href = '';
const signinLinks = document.querySelectorAll('a.primary-button--link');
for (const signinLink of signinLinks) { for (const signinLink of signinLinks) {
href = signinLink.href; signinLink.href = decodeURIComponent(signinLink.href.split('target=')[1]).split('?')[0];
if (href.includes('target=')) { signinLink.text = 'Click';
href = href.split('target')[1].split('%3F')[0]; }
href = href.replace('=', '').replace('%3A', ':').replace(/%2F/g, '/'); const barronsAds = document.querySelectorAll('.barrons-body-ad-placement');
signinLink.href = href; removeDOMElement(...barronsAds);
signinLink.text = 'Click'; } else {
} const preview = document.querySelector('section[subscriptions-section="content-not-granted"]');
removeDOMElement(preview);
const subscrSection = document.querySelector('section[subscriptions-section="content"]');
if (subscrSection) {
subscrSection.removeAttribute('subscriptions-section');
} }
} }
removeDOMElement(document.querySelector('.login-section-container'));
} else if (matchDomain('nzz.ch')) { } else if (matchDomain('nzz.ch')) {
const paywall = document.querySelector('.dynamic-regwall'); const paywall = document.querySelector('.dynamic-regwall');
removeDOMElement(paywall); removeDOMElement(paywall);
@ -410,42 +389,45 @@ if (matchDomain('elmercurio.com')) {
removeDOMElement(paywall); removeDOMElement(paywall);
} else if (matchDomain('lesechos.fr') && window.location.href.match(/-\d{6,}/)) { } else if (matchDomain('lesechos.fr') && window.location.href.match(/-\d{6,}/)) {
window.setTimeout(function () { window.setTimeout(function () {
const url = window.location.href; const aboBanner = document.querySelector('[class^="pgxf3b"]');
const html = document.documentElement.outerHTML; const adBlocks = document.querySelectorAll('[class*="jzxvkd"');
const split1 = html.split('window.__PRELOADED_STATE__')[1]; for (const adBlock of adBlocks) { adBlock.setAttribute('style', 'display:none'); }
const split2 = split1.split('</script>')[0].trim(); if (aboBanner) {
const state = split2.substr(1, split2.length - 2); removeDOMElement(aboBanner);
try { const url = window.location.href;
const data = JSON.parse(state); const html = document.documentElement.outerHTML;
const article = data.article.data.stripes[0].mainContent[0].data.description; let state;
const urlLoaded = data.article.data.path; const split1 = html.split('window.__PRELOADED_STATE__=')[1];
if (!url.includes(urlLoaded)) { document.location.reload(true); } const split2 = split1.split('</script>')[0].trim();
const paywallNode = document.querySelector('.post-paywall'); if (split2.includes('; window.__DATA__=')) { state = split2.split('; window.__DATA__=')[0].trim(); } else { state = split2.substr(0, split2.length - 1); }
if (paywallNode) { try {
const contentNode = document.createElement('div'); const data = JSON.parse(state);
const parser = new DOMParser(); const article = data.article.data.stripes[0].mainContent[0].data.description;
const articleHtml = parser.parseFromString('<div id="bypass">' + article + '</div>', 'text/html'); const urlLoaded = data.article.data.path;
const articlePar = articleHtml.querySelector('div#bypass'); if (!url.includes(urlLoaded)) { window.location.reload(true); }
if (articlePar) { const paywallNode = document.querySelector('.post-paywall');
contentNode.appendChild(articlePar); if (paywallNode) {
contentNode.className = paywallNode.className; const contentNode = document.createElement('div');
paywallNode.parentNode.insertBefore(contentNode, paywallNode); const parser = new DOMParser();
removeDOMElement(paywallNode); const articleHtml = parser.parseFromString('<div>' + article + '</div>', 'text/html');
const paywallLastChildNode = document.querySelector('.post-paywall > :last-child'); const articlePar = articleHtml.querySelector('div');
if (paywallLastChildNode) { if (articlePar) {
paywallLastChildNode.setAttribute('style', 'height: auto !important; overflow: hidden !important; max-height: none !important;'); contentNode.appendChild(articlePar);
contentNode.className = paywallNode.className;
paywallNode.parentNode.insertBefore(contentNode, paywallNode);
removeDOMElement(paywallNode);
const paywallLastChildNode = document.querySelector('.post-paywall > :last-child');
if (paywallLastChildNode) {
paywallLastChildNode.setAttribute('style', 'height: auto !important; overflow: hidden !important; max-height: none !important;');
}
} }
} }
const styleElem = document.head.appendChild(document.createElement('style'));
styleElem.innerHTML = '.post-paywall::after {height: auto !important;}';
} catch (err) {
window.location.reload(true);
} }
} catch (err) {
console.warn(err);
} }
const adBlocks = document.querySelectorAll('.jzxvkd-1');
for (const adBlock of adBlocks) {
adBlock.setAttribute('style', 'display:none');
}
const aboBanner = document.querySelector('[class^="pgxf3b"]');
removeDOMElement(aboBanner);
}, 500); // Delay (in milliseconds) }, 500); // Delay (in milliseconds)
} else if (matchDomain('startribune.com')) { } else if (matchDomain('startribune.com')) {
// remove active class from all elements // remove active class from all elements
@ -470,38 +452,270 @@ if (matchDomain('elmercurio.com')) {
.forEach(function (el) { .forEach(function (el) {
el.removeAttribute('class'); el.removeAttribute('class');
}); });
}, 2000); // Delay (in milliseconds) }, 1000); // Delay (in milliseconds)
} else if (matchDomain('theatlantic.com')) { } else if (matchDomain('theatlantic.com')) {
// Remove all nudge elements const images = document.querySelectorAll('img[class*="Image_lazy__"]');
document.querySelectorAll('div[class*="c-nudge"]').forEach(function (el) { for (const elem of images) { removeClassesByPrefix(elem, 'Image_lazy__'); }
removeDOMElement(el); const banners = document.querySelectorAll('.c-nudge__container, .c-non-metered-nudge, div[class^="ArticleInjector_"]');
}); hideDOMElement(...banners);
// Remove all FancyBox ads } else if (matchDomain('theathletic.com')) {
document.querySelectorAll('div[class*="fancybox"]').forEach(function (el) { if (!window.location.search.match(/(\?|&)amp/)) {
removeDOMElement(el); const paywall = document.querySelector('div#slideup-paywall');
}); if (paywall) {
const overlays = document.querySelectorAll('div[id*="overlay"], div:empty:not([data-rjs])');
removeDOMElement(paywall, ...overlays);
const body = document.querySelector('body');
if (body) {
body.style.overflow = 'visible';
body.style.position = 'relative';
}
} else {
const headlinePaywall = document.querySelectorAll('a.headline-paywall');
const amphtml = document.querySelector('link[rel="amphtml"]');
if (headlinePaywall.length && amphtml) {
removeDOMElement(...headlinePaywall);
window.setTimeout(function () {
window.location.href = amphtml.href;
}, 1000);
}
}
} else {
ampUnhideSubscriptionsSection();
}
const apron = document.querySelector('div#free-apron-cta, div.slideup-free-apron-container');
removeDOMElement(apron);
} else if (matchDomain('newyorker.com')) { } else if (matchDomain('newyorker.com')) {
const paywall = document.querySelector('.paywall-bar'); blockElement('.paywall-bar', true);
removeDOMElement(paywall); blockElement('.paywall-modal');
} else if (matchDomain('vanityfair.com')) { } else if (matchDomain('vanityfair.com')) {
const paywall = document.querySelector('.paywall-bar'); const paywall = document.querySelector('.paywall-bar');
removeDOMElement(paywall); removeDOMElement(paywall);
} else if (matchDomain('delfi.ee')) {
// Remove 'adblocker-detected' notification overlay
document.body.classList.remove('adb-curtain');
const el = document.getElementById('ab--notification-header');
removeDOMElement(el);
} else if (matchDomain(['postimees.ee', 'elu24.ee'])) { } else if (matchDomain(['postimees.ee', 'elu24.ee'])) {
setTimeout(function () { setTimeout(function () {
// Remove 'adblocker-detected' footer notification // Remove 'adblocker-detected' footer notification
const adblockNotif = document.querySelector('.adblock-notif'); const adblockNotif = document.querySelector('.ad-block-notification-overlay');
removeDOMElement(adblockNotif); removeDOMElement(adblockNotif);
document.body.removeAttribute('style');
}, 800); // Delay (in milliseconds) }, 800); // Delay (in milliseconds)
} else if (matchDomain('thetimes.co.uk')) { } else if (matchDomain('theolivepress.es')) {
const block = document.querySelector('.subscription-block'); const modalBackdrop = document.querySelector('.modal-backdrop');
const adBlock = document.getElementById('ad-article-inline'); const paywall = document.querySelector('.ev-open-modal-paywall-REQUIRE_LOGIN_WITH_ENTITLEMENT');
const adHeader = document.getElementById('sticky-ad-header'); removeDOMElement(modalBackdrop, paywall);
removeDOMElement(block, adBlock, adHeader);
for (const clazz of ['ev-modals', 'modal-open']) {
document.body.classList.remove(clazz);
}
} else if (matchDomain('themarker.com')) {
setTimeout(function () {
const paywall = document.querySelector('[data-test="bottomStrip"]');
const notifications = document.querySelector('#pwSubscribePopup');
const banner = document.querySelector('#themarker\\.com\\.billboard\\.desktop');
const newsBanner = document.querySelector('#themarker\\.com\\.news\\.banner');
const midBanner = document.querySelector('#themarker\\.com.headline\\.banner\\.desktop');
const financeBanner = document.querySelector('#themarker\\.com\\.finance\\.banner');
const topStrip = document.querySelector('[data-test="topStrip"]');
const otherBanners = Array.from(document.querySelectorAll('[data-audtarget]'));
removeDOMElement(paywall, notifications, banner, topStrip, midBanner, newsBanner, financeBanner, ...otherBanners);
}, 500);
} else if (matchDomain('haaretz.co.il')) {
setTimeout(function () {
const notifications = document.querySelector('#pwSubscribePopup');
const paywall = document.querySelector('[data-test="bottomStrip"]');
const banner = document.querySelector('#haaretz\\.co\\.il\\.billboard\\.desktop');
const editorsBanner = document.querySelector('#haaretz\\.co\\.il\\.editors\\.banner');
const headlinesBanner = document.querySelector('#haaretz\\.co\\.il\\.headline\\.box\\.desktop');
const topStrip = document.querySelector('[data-test="topStrip"]');
const otherBanners = Array.from(document.querySelectorAll('[data-audtarget]'));
removeDOMElement(paywall, notifications, banner, editorsBanner, topStrip, headlinesBanner, ...otherBanners);
}, 500);
} else if (matchDomain('sueddeutsche.de')) {
const url = window.location.href;
document.addEventListener('DOMContentLoaded', () => {
const offerPage = document.querySelector('div.offer-page');
if (url.startsWith('https://www.sueddeutsche.de') && (url.includes('reduced=true') || offerPage)) { window.location.href = url.split('?')[0].replace('www.', 'amphtml.'); } else if (url.startsWith('https://sz-magazin.sueddeutsche.de')) {
if (url.includes('reduced=true') || offerPage) { window.location.href = new URL(url).pathname + '!amp'; }
}
});
window.setTimeout(function () {
if (url.includes('!amp')) {
const paragraphReduced = document.querySelector('.paragraph--reduced');
if (paragraphReduced) { paragraphReduced.classList.remove('paragraph--reduced'); }
const paragraphHidden = document.querySelectorAll('.paragraph--hidden');
for (const parHidden of paragraphHidden) { parHidden.classList.remove('paragraph--hidden'); }
const paragraphDynamic = document.querySelector('.paragraph--dynamic');
if (paragraphDynamic) { paragraphDynamic.classList.remove('paragraph--dynamic'); }
const ampOfferpage = document.querySelector('.amp-offerpage');
removeDOMElement(ampOfferpage);
}
}, 500); // Delay (in milliseconds)
} else if (matchDomain('adweek.com')) {
const bodySingle = document.querySelector('body.single');
const ampHtml = document.querySelector('link[rel="amphtml"]');
if (bodySingle && ampHtml) {
bodySingle.classList.remove('single');
window.location.href = ampHtml.href;
}
} else if (matchDomain('gelocal.it')) {
if (!window.location.href.includes('/amp/')) {
const paywallAdagio = document.querySelector('.paywall-adagio');
removeDOMElement(paywallAdagio);
} else {
const paywall = document.querySelector('div[amp-access="showContent"]');
if (paywall) { paywall.removeAttribute('amp-access-hide'); }
const ampAds = document.querySelectorAll('amp-ad');
removeDOMElement(...ampAds);
}
} else if (matchDomain('elmundo.es')) {
const premium = document.querySelector('.ue-c-article__premium');
const url = window.location.href;
if (!url.includes('/amp.' + 'elmundo.es' + '/')) {
if (premium) {
removeDOMElement(premium);
window.location.href = window.location.href.replace('/www.', '/amp.');
}
} else {
const paywall = document.querySelector('div[amp-access="authorized!=true"]');
if (paywall) {
removeDOMElement(paywall);
const divHidden = document.querySelector('div[amp-access="authorized=true"]');
if (divHidden) {
divHidden.removeAttribute('amp-access-hide');
}
}
const advertising = document.querySelectorAll('.advertising, amp-embed');
removeDOMElement(...advertising);
}
} else if (matchDomain('speld.nl')) {
const paywallPopup = document.querySelector('.c-paywall-notice');
removeDOMElement(paywallPopup);
} else if (matchDomain('lastampa.it')) {
const url = window.location.href;
if (!url.includes('/amp/')) {
const premium = document.querySelector('.paywall-adagio');
removeDOMElement(premium);
window.setTimeout(function () {
if (premium) {
window.location.href = url.split('?')[0] + '/amp/';
}
const articleBody = document.querySelector('div#article-body[style]');
if (articleBody) {
articleBody.removeAttribute('style');
}
}, 500);
} else {
const paywall = document.querySelector('div[id^="paywall-banner"]');
removeDOMElement(paywall);
const subscriptionSection = document.querySelector('[subscriptions-section="content"]');
if (subscriptionSection) {
subscriptionSection.removeAttribute('subscriptions-section');
const preview = document.querySelector('div[subscriptions-section="content-not-granted"]');
removeDOMElement(preview);
}
const ampAds = document.querySelectorAll('amp-ad, amp-embed');
removeDOMElement(...ampAds);
}
} else if (matchDomain('time.com')) {
const body = document.querySelector('body');
if (body) {
body.setAttribute('style', 'position:relative !important;');
}
} else if (matchDomain('expansion.com')) {
const premium = document.querySelector('.ue-c-article__premium');
const url = window.location.href;
if (!url.includes('/amp.' + 'expansion.com' + '/')) {
if (premium) {
removeDOMElement(premium);
window.location.href = window.location.href.replace('/www.', '/amp.');
}
} else {
const paywall = document.querySelector('div[amp-access="authorized!=true"]');
if (paywall) {
removeDOMElement(paywall);
const divHidden = document.querySelector('div[amp-access="authorized=true"]');
if (divHidden) {
divHidden.removeAttribute('amp-access-hide');
}
}
const advertising = document.querySelectorAll('.advertising, amp-embed');
removeDOMElement(...advertising);
}
} else if (matchDomain('chicagobusiness.com')) {
const body = document.querySelector('body[class]');
if (body) {
body.removeAttribute('class');
}
} else if (matchDomain('latimes.com')) {
const ads = document.querySelectorAll('div.enhancement, div.google-dfp-ad-wrapper');
hideDOMElement(...ads);
} else if (matchDomain('foreignpolicy.com')) {
const contentUngated = document.querySelector('div.content-ungated');
removeDOMElement(contentUngated);
const contentGated = document.querySelector('div.content-gated');
if (contentGated) {
contentGated.classList.remove('content-gated');
}
} else if (matchDomain('bostonglobe.com')) {
// Remove the portion covering the paywall
const paywall = document.querySelector('div.meter-paywall');
if (paywall) {
removeDOMElement(paywall);
}
// Re-enable scrolling
const body = document.querySelector('body');
if (body) {
document.body.removeAttribute('style');
}
// Click the button to reveal the rest of the article
const buttonDiv = document.querySelector('[id="continue_button"]');
if (buttonDiv) {
const button = buttonDiv.querySelector('button');
if (button) {
button.click();
}
}
} else if (matchDomain('nationalgeographic.com')) {
// prevent modal from showing up, then remove scroll-locking, and article blur
new window.MutationObserver(function (mutations) {
for (const mutation of mutations) {
for (const node of mutation.addedNodes) {
if (node instanceof window.HTMLElement) {
if (node.matches('#fittPortal_0')) {
removeDOMElement(node);
const body = document.body;
body.removeAttribute('class');
body.removeAttribute('style');
body.removeAttribute('overflow');
const blur = document.querySelector('#natgeo-template1-frame-1-module-1 > div > div > section > article > section > div.Article__Content__Overlay--gated');
if (blur) removeDOMElement(blur);
this.disconnect(); // Stop watching for element being added after one removal
}
}
}
}
}).observe(document, { subtree: true, childList: true });
} else if (matchDomain('hbrchina.org')) {
const hiddenDiv = document.querySelector('div#the_content');
if (hiddenDiv) {
hiddenDiv.removeAttribute('style');
}
} else if (matchDomain('scmp.com')) {
if (window.location.href.includes('/amp.')) {
const divHidden = document.querySelectorAll('div.article-body[amp-access][amp-access-hide]');
for (const elem of divHidden) {
elem.removeAttribute('amp-access-hide');
}
const defaultMeters = document.querySelectorAll('div.default-meter, div#archive-article-meter');
const ads = document.querySelectorAll('amp-ad, div.ad-banner, div.advert-fly-carpet-container, div.inline-advert');
removeDOMElement(...defaultMeters, ...ads);
}
} else if (matchDomain('fortune.com')) {
const paywalledArticle = document.querySelector('.paywall.paywallActive');
if (paywalledArticle) {
for (const clazz of ['paywall', 'paywallActive']) {
paywalledArticle.classList.remove(clazz);
}
}
} }
function matchDomain (domains) { function matchDomain (domains) {
@ -510,6 +724,24 @@ function matchDomain (domains) {
return domains.some(domain => hostname === domain || hostname.endsWith('.' + domain)); return domains.some(domain => hostname === domain || hostname.endsWith('.' + domain));
} }
function waitDOMElement (selector, tagName = '', callback, multiple = false) {
new window.MutationObserver(function (mutations) {
for (const mutation of mutations) {
for (const node of mutation.addedNodes) {
if (!tagName || (node.tagName === tagName)) {
if (node.matches(selector)) {
callback(node);
if (!multiple) { this.disconnect(); }
}
}
}
}
}).observe(document, {
subtree: true,
childList: true
});
}
function removeDOMElement (...elements) { function removeDOMElement (...elements) {
for (const element of elements) { for (const element of elements) {
if (element) { element.remove(); } if (element) { element.remove(); }
@ -524,87 +756,31 @@ function removeClassesByPrefix (el, prefix) {
} }
} }
function pageContains (selector, text) { // Prevent element from being added the first time to the DOM
const elements = document.querySelectorAll(selector); function blockElement (selector, blockAlways = false) {
return Array.prototype.filter.call(elements, function (element) { new window.MutationObserver(function (mutations) {
return RegExp(text).test(element.textContent); for (const mutation of mutations) {
}); for (const node of mutation.addedNodes) {
} if (node instanceof window.HTMLElement) {
if (node.matches(selector)) {
function NZHerald () { removeDOMElement(node);
const video = document.querySelector('.video-js'); if (!blockAlways) {
if (video) { this.disconnect(); // Stop watching for element being added after one removal
const s = document.getElementsByTagName('script')[0]; }
if (s.src === '') { }
const vId = video.getAttribute('data-account'); }
const vPlay = video.getAttribute('data-player');
const vScript = document.createElement('script');
vScript.type = 'text/javascript';
vScript.async = true;
vScript.src = 'https://players.brightcove.net/' + vId + '/' + vPlay + '_default/index.min.js';
s.parentNode.insertBefore(vScript, s);
const ticker = document.querySelector('.vcTicker');
if (ticker) {
ticker.style.display = 'none';
}
const msg = document.querySelector('.vcMsg');
if (msg) {
msg.style.display = 'none';
}
const overlay = document.querySelector('.vcOverlay');
if (overlay) {
overlay.style.display = 'none';
} }
} }
}).observe(document, { subtree: true, childList: true });
}
function ampUnhideSubscriptionsSection (ampAdsSel = 'amp-ad, .ad') {
const preview = document.querySelector('[subscriptions-section="content-not-granted"]');
removeDOMElement(preview);
const subscriptionsSection = document.querySelectorAll('[subscriptions-section="content"]');
for (const elem of subscriptionsSection) {
elem.removeAttribute('subscriptions-section');
} }
const ampAds = document.querySelectorAll(ampAdsSel);
window.setTimeout(function () { removeDOMElement(...ampAds);
const articleBody = document.querySelector('.article__body');
if (articleBody) {
const childItems = articleBody.getElementsByTagName('*');
let classHidden = '';
for (const el of childItems) {
if (el.getAttribute('class') !== null && el.getAttribute('style') !== null && classHidden === '') {
classHidden = el.getAttribute('class');
}
}
if (classHidden !== '') {
for (const el of childItems) {
el.classList.remove(classHidden);
el.removeAttribute('style');
}
}
}
const overlay = document.querySelector('#premium-toaster');
if (overlay) {
overlay.style.display = 'none';
}
const advert = document.querySelector('.section-iframe.both');
if (advert) {
advert.style.display = 'none';
}
const els = document.querySelectorAll('.header__navigation-toggle-button');
for (let i = 0; i < els.length; i++) {
els[i].addEventListener('click', function (ev) {
document.querySelector('.container').classList.toggle('container--sidebar-is-active');
ev.stopImmediatePropagation();
});
}
const subEls = document.querySelectorAll('.subnavigation');
for (let i = 0; i < subEls.length; i++) {
subEls[i].addEventListener('mouseover', function () {
this.childNodes[1].classList.add('subnavigation__item-wrapper--is-active');
});
subEls[i].addEventListener('mouseleave', function () {
this.childNodes[1].classList.remove('subnavigation__item-wrapper--is-active');
});
}
const accEls = document.querySelectorAll('.accordion__button');
for (let i = 0; i < accEls.length; i++) {
accEls[i].addEventListener('click', function (ev) {
this.parentNode.classList.toggle('accordion--is-expanded');
ev.stopImmediatePropagation();
});
}
}, 1000);
} }

31
src/js/sites.js Normal file → Executable file
View File

@ -1,12 +1,13 @@
// Cookies from this list are blocked by default // Cookies from this list are blocked by default
const defaultSites = { const defaultSites = {
'Adweek': 'adweek.com', 'Adweek': 'adweek.com',
'Algemeen Dagblad': 'ad.nl', '\u00C1mbito': 'ambito.com',
'American Banker': 'americanbanker.com', 'American Banker': 'americanbanker.com',
'Baltimore Sun': 'baltimoresun.com', 'Baltimore Sun': 'baltimoresun.com',
'Barron\'s': 'barrons.com', 'Barron\'s': 'barrons.com',
'Bloomberg': 'bloomberg.com', 'Bloomberg': 'bloomberg.com',
'Bloomberg Quint (free articles only)': 'bloombergquint.com', 'Bloomberg Quint (free articles only)': 'bloombergquint.com',
'Boston Globe': 'bostonglobe.com',
'Brisbane Times': 'brisbanetimes.com.au', 'Brisbane Times': 'brisbanetimes.com.au',
'Business Insider': 'businessinsider.com', 'Business Insider': 'businessinsider.com',
'Caixin': 'caixinglobal.com', 'Caixin': 'caixinglobal.com',
@ -19,19 +20,21 @@ const defaultSites = {
'De Groene Amsterdammer': 'groene.nl', 'De Groene Amsterdammer': 'groene.nl',
'DeMorgen': 'demorgen.be', 'DeMorgen': 'demorgen.be',
'Denver Post': 'denverpost.com', 'Denver Post': 'denverpost.com',
'De Speld': 'speld.nl',
'De Tijd': 'tijd.be', 'De Tijd': 'tijd.be',
'de Volkskrant': 'volkskrant.nl', 'de Volkskrant': 'volkskrant.nl',
'DELFI': 'delfi.ee',
'Diario Financiero': 'df.cl', 'Diario Financiero': 'df.cl',
'Domani': 'editorialedomani.it', 'Domani': 'editorialedomani.it',
'Dynamed Plus': 'dynamed.com', 'Dynamed Plus': 'dynamed.com',
'Eindhovens Dagblad': 'ed.nl', 'El Mercurio': 'elmercurio.com',
'El Mercurio':'elmercurio.com', 'El Mundo': 'elmundo.es',
'El Pais': 'elpais.com', 'El Pais': 'elpais.com',
'El Periodico': 'elperiodico.com',
'Elu24': 'elu24.ee', 'Elu24': 'elu24.ee',
'Encyclopedia Britannica': 'britannica.com', 'Encyclopedia Britannica': 'britannica.com',
'Estadão': 'estadao.com.br', 'Estadão': 'estadao.com.br',
'Examiner': 'examiner.com.au', 'Examiner': 'examiner.com.au',
'Expansión': 'expansion.com',
'Financial News': 'fnlondon.com', 'Financial News': 'fnlondon.com',
'Financial Post':'financialpost.com', 'Financial Post':'financialpost.com',
'Financial Times': 'ft.com', 'Financial Times': 'ft.com',
@ -44,15 +47,16 @@ const defaultSites = {
'Grubstreet' : 'grubstreet.com', 'Grubstreet' : 'grubstreet.com',
'Haaretz English': 'haaretz.com', 'Haaretz English': 'haaretz.com',
'Haaretz': 'haaretz.co.il', 'Haaretz': 'haaretz.co.il',
'Handelsblatt': 'handelsblatt.com',
'Harper\'s Magazine': 'harpers.org', 'Harper\'s Magazine': 'harpers.org',
'Hartford Courant': 'courant.com', 'Hartford Courant': 'courant.com',
'Harvard Business Review': 'hbr.org', 'Harvard Business Review': 'hbr.org',
'Harvard Business Review China': 'hbrchina.org',
'Herald Sun': 'heraldsun.com.au', 'Herald Sun': 'heraldsun.com.au',
'Het Financieele Dagblad': 'fd.nl', 'Het Financieele Dagblad': 'fd.nl',
'History Extra': 'historyextra.com', 'History Extra': 'historyextra.com',
'Humo': 'humo.be', 'Humo': 'humo.be',
'Il Manifesto': 'ilmanifesto.it', 'Il Manifesto': 'ilmanifesto.it',
'Il Messaggero': 'ilmessaggero.it',
'Inc.com': 'inc.com', 'Inc.com': 'inc.com',
'Interest NZ': 'interest.co.nz', 'Interest NZ': 'interest.co.nz',
'Investors Chronicle': 'investorschronicle.co.uk', 'Investors Chronicle': 'investorschronicle.co.uk',
@ -60,6 +64,7 @@ const defaultSites = {
'La Repubblica': 'repubblica.it', 'La Repubblica': 'repubblica.it',
'La Stampa': 'lastampa.it', 'La Stampa': 'lastampa.it',
'La Tercera': 'latercera.com', 'La Tercera': 'latercera.com',
'La Voix du Nord': 'lavoixdunord.fr',
'L\'Echo': 'lecho.be', 'L\'Echo': 'lecho.be',
'Le Devoir': 'ledevoir.com', 'Le Devoir': 'ledevoir.com',
'Le Parisien': 'leparisien.fr', 'Le Parisien': 'leparisien.fr',
@ -74,13 +79,13 @@ const defaultSites = {
'MIT Sloan Management Review': 'sloanreview.mit.edu', 'MIT Sloan Management Review': 'sloanreview.mit.edu',
'MIT Technology Review': 'technologyreview.com', 'MIT Technology Review': 'technologyreview.com',
'Mountain View Voice': 'mv-voice.com', 'Mountain View Voice': 'mv-voice.com',
'National Geographic': 'nationalgeographic.com',
'National Post': 'nationalpost.com', 'National Post': 'nationalpost.com',
'Neue Zürcher Zeitung': 'nzz.ch', 'Neue Zürcher Zeitung': 'nzz.ch',
'New Statesman': 'newstatesman.com', 'New Statesman': 'newstatesman.com',
'New York Daily News': 'nydailynews.com', 'New York Daily News': 'nydailynews.com',
'New York Magazine': 'nymag.com', 'New York Magazine': 'nymag.com',
'New Zealand Herald': 'nzherald.co.nz', 'New Zealand Herald': 'nzherald.co.nz',
'Nikkei Asian Review': 'asia.nikkei.com',
'NRC': 'nrc.nl', 'NRC': 'nrc.nl',
'NT News': 'ntnews.com.au', 'NT News': 'ntnews.com.au',
'Orange County Register': 'ocregister.com', 'Orange County Register': 'ocregister.com',
@ -90,7 +95,9 @@ const defaultSites = {
'Postimees': 'postimees.ee', 'Postimees': 'postimees.ee',
'Quartz (free articles only)': 'qz.com', 'Quartz (free articles only)': 'qz.com',
'Quora': 'quora.com', 'Quora': 'quora.com',
'Quotidiani Gelocal': 'gelocal.it',
'Republic.ru': 'republic.ru', 'Republic.ru': 'republic.ru',
'Reuters': 'reuters.com',
'San Diego Union Tribune': 'sandiegouniontribune.com', 'San Diego Union Tribune': 'sandiegouniontribune.com',
'San Francisco Chronicle': 'sfchronicle.com', 'San Francisco Chronicle': 'sfchronicle.com',
'Scientific American': 'scientificamerican.com', 'Scientific American': 'scientificamerican.com',
@ -100,13 +107,18 @@ const defaultSites = {
'Star Tribune': 'startribune.com', 'Star Tribune': 'startribune.com',
'Statista': 'statista.com', 'Statista': 'statista.com',
'Stuff': 'stuff.co.nz', 'Stuff': 'stuff.co.nz',
"Süddeutsche Zeitung": "sueddeutsche.de",
"South China Morning Post": "scmp.com",
'SunSentinel': 'sun-sentinel.com', 'SunSentinel': 'sun-sentinel.com',
'Tech in Asia': 'techinasia.com', 'Tech in Asia': 'techinasia.com',
'Telegraaf': 'telegraaf.nl', 'Telegraaf': 'telegraaf.nl',
'Time': 'time.com',
'The Advertiser': 'adelaidenow.com.au', 'The Advertiser': 'adelaidenow.com.au',
'The Advocate': 'theadvocate.com.au', 'The Advocate': 'theadvocate.com.au',
'The Age': 'theage.com.au', 'The Age': 'theage.com.au',
'The American Interest': 'the-american-interest.com', 'The American Interest': 'the-american-interest.com',
'The Athletic': 'theathletic.com',
'The Athletic (UK)': 'theathletic.co.uk',
'The Atlantic': 'theatlantic.com', 'The Atlantic': 'theatlantic.com',
'The Australian Financial Review': 'afr.com', 'The Australian Financial Review': 'afr.com',
'The Australian': 'theaustralian.com.au', 'The Australian': 'theaustralian.com.au',
@ -133,14 +145,15 @@ const defaultSites = {
'The News-Gazette': 'news-gazette.com', 'The News-Gazette': 'news-gazette.com',
'The New Yorker': 'newyorker.com', 'The New Yorker': 'newyorker.com',
'The New York Times': 'nytimes.com', 'The New York Times': 'nytimes.com',
'The Olive Press': 'theolivepress.es',
'The Philadelphia Inquirer': 'inquirer.com', 'The Philadelphia Inquirer': 'inquirer.com',
'The Saturday Paper': 'thesaturdaypaper.com.au', 'The Saturday Paper': 'thesaturdaypaper.com.au',
'The Seattle Times': 'seattletimes.com', 'The Seattle Times': 'seattletimes.com',
'The Spectator Australia': 'spectator.com.au', 'The Spectator Australia': 'spectator.com.au',
'The Spectator': 'spectator.co.uk', 'The Spectator (U.K.)': 'spectator.co.uk',
'The Spectator (U.S.)': 'spectator.us',
'The Sydney Morning Herald': 'smh.com.au', 'The Sydney Morning Herald': 'smh.com.au',
'The Telegraph': 'telegraph.co.uk', 'The Telegraph': 'telegraph.co.uk',
'The Times': 'thetimes.co.uk',
'The Toronto Star': 'thestar.com', 'The Toronto Star': 'thestar.com',
'The Wall Street Journal': 'wsj.com', 'The Wall Street Journal': 'wsj.com',
'The Washington Post': 'washingtonpost.com', 'The Washington Post': 'washingtonpost.com',
@ -153,6 +166,6 @@ const defaultSites = {
'Vulture': 'vulture.com', 'Vulture': 'vulture.com',
'Winston-Salem Journal': 'journalnow.com', 'Winston-Salem Journal': 'journalnow.com',
'Wired': 'wired.com', 'Wired': 'wired.com',
'World Politics Review': 'worldpoliticsreview.com', 'Zeit Online': 'zeit.de',
'*General Paywall Bypass*': 'generalpaywallbypass' '*General Paywall Bypass*': 'generalpaywallbypass'
}; };

View File

@ -1,9 +1,9 @@
{ {
"addons": { "addons": {
"bypasspaywalls@bypasspaywalls.weebly.com": { "bypasspaywalls@bypasspaywalls": {
"updates": [ "updates": [
{ "version": "1.7.7", { "version": "1.7.9",
"update_link": "https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.7/bypass-paywalls-firefox.xpi" } "update_link": "https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.9/bypass-paywalls-firefox.xpi" }
] ]
} }
} }

View File

@ -1,6 +1,6 @@
<?xml version='1.0' encoding='UTF-8'?> <?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'> <gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='dcpihecpambacapedldabdbpakmachpb'> <app appid='dcpihecpambacapedldabdbpakmachpb'>
<updatecheck codebase='https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.7/bypass-paywalls-chrome.crx' version='1.7.7' /> <updatecheck codebase='https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.9/bypass-paywalls-chrome.crx' version='1.7.9' />
</app> </app>
</gupdate> </gupdate>

View File

@ -1,11 +0,0 @@
{
"addons": {
"bypasspaywalls@bypasspaywalls.weebly.com": {
"updates": [
{ "version": "1.7.4",
"update_link": "https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.4/bypass-paywalls-firefox.xpi" }
]
}
}
}

View File

@ -1,6 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
<app appid='dcpihecpambacapedldabdbpakmachpb'>
<updatecheck codebase='https://github.com/iamadamdev/bypass-paywalls-chrome/releases/download/v1.7.4/bypass-paywalls-chrome.crx' version='1.7.4' />
</app>
</gupdate>