From 60c48a68ebe6a62bcbd274df31ffb9cbbc5981dc Mon Sep 17 00:00:00 2001 From: magnolia1234 <7676006-magnolia1234@users.noreply.gitlab.com> Date: Fri, 30 Sep 2022 17:40:10 +0200 Subject: [PATCH] Add ArcInfo.ch --- README.md | 1 + background.js | 2 +- changelog.txt | 1 + contentScript.js | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ manifest.json | 3 ++- sites.js | 6 +++++- 6 files changed, 58 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 9b25eb57..a87aeb24 100644 --- a/README.md +++ b/README.md @@ -673,6 +673,7 @@ Grouped in options:\ [NyTeknik](https://www.nyteknik.se) ##### Switzerland +[ArcInfo](https://www.arcinfo.ch) - [Beobachter](https://www.beobachter.ch) - [Handelszeitung](https://www.handelszeitung.ch) - [Neue Zürcher Zeitung (+ regional/opt-in to custom sites)](https://www.nzz.ch) - diff --git a/background.js b/background.js index dac49ad5..6512d8b0 100644 --- a/background.js +++ b/background.js @@ -6,7 +6,7 @@ var ext_name = manifestData.name; var ext_version = manifestData.version; const cs_limit_except = ['elespanol.com', 'faz.net', 'nation.africa', 'nationalgeographic.com'].concat(de_westfalen_medien_domains); -const dompurify_sites = ['asiatimes.com', 'bloomberg.com', 'cicero.de', 'ilmanifesto.it', 'iltalehti.fi', 'iltirreno.it', 'ipolitics.ca', 'italiaoggi.it', 'lanuovasardegna.it', 'lesechos.fr', 'marianne.net', 'newleftreview.org', 'newscientist.com', 'nzherald.co.nz', 'outlookbusiness.com', 'prospectmagazine.co.uk', 'spectator.co.uk', 'stratfor.com', 'techinasia.com', 'timesofindia.com', 'valor.globo.com', 'vn.nl'].concat(be_mediahuis_domains, nl_mediahuis_region_domains, no_nhst_media_domains); +const dompurify_sites = ['arcinfo.ch', 'asiatimes.com', 'bloomberg.com', 'cicero.de', 'ilmanifesto.it', 'iltalehti.fi', 'iltirreno.it', 'ipolitics.ca', 'italiaoggi.it', 'lanuovasardegna.it', 'lesechos.fr', 'marianne.net', 'newleftreview.org', 'newscientist.com', 'nzherald.co.nz', 'outlookbusiness.com', 'prospectmagazine.co.uk', 'spectator.co.uk', 'stratfor.com', 'techinasia.com', 'timesofindia.com', 'valor.globo.com', 'vn.nl'].concat(be_mediahuis_domains, nl_mediahuis_region_domains, no_nhst_media_domains); var currentTabUrl = ''; var csDone = false; var optin_setcookie = false; diff --git a/changelog.txt b/changelog.txt index bf610217..9614f4a2 100644 --- a/changelog.txt +++ b/changelog.txt @@ -3,6 +3,7 @@ Changelog Bypass Paywalls Clean - Firefox Post-release Add Aachener Nachrichten & Zeitung +Add ArcInfo.ch Add NK News (free articles only) Add 5 more Gannett sites Fix NHST Media Group diff --git a/contentScript.js b/contentScript.js index 9412d328..79b8beff 100644 --- a/contentScript.js +++ b/contentScript.js @@ -470,6 +470,47 @@ if (matchDomain('allgaeuer-zeitung.de')) { } } +else if (matchDomain('arcinfo.ch')) { + let paywall = document.querySelector('section#paywall-articles'); + if (paywall && dompurify_loaded) { + removeDOMElement(paywall); + let url = window.location.href; + let html = document.documentElement.outerHTML; + let json; + if (html.includes('window.__NUXT__=')) + json = html.split('window.__NUXT__=')[1].split('')[0].trim(); + let article_old = document.querySelector('section > div > div.html-content'); + let article = document.querySelector('div.html-content'); + if (article && json) { + let content = ''; + if (json.includes('.text_1="')) + content = json.split('.text_1="')[1].split('";')[0]; + else { + let parts = json.split('html:"'); + let search = article.querySelector('p'); + if (search) { + for (let part of parts) { + if (decodeHtmlText(part).includes(search.innerText.slice(20, 50))) { + content = part.split('",has_pre_content')[0]; + break; + } + } + } + } + if (content) { + content = content.replace(/\\u003C/g, '<').replace(/\\u003E/g, '>').replace(/\\u002F/g, '/').replace(/\\"/g, '"').replace(/\\r\\n/g, ''); + let parser = new DOMParser(); + let content_new = parser.parseFromString('