2020-09-08 16:38:18 +02:00
|
|
|
|
"use strict";
|
|
|
|
|
var ext_api = (typeof browser === 'object') ? browser : chrome;
|
|
|
|
|
var domain;
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
// clean local storage of sites (with an exemption for hold-list)
|
2020-09-28 20:43:29 +02:00
|
|
|
|
var arr_localstorage_hold = ['elmundo.es', 'nknews.org', 'seekingalpha.com', 'sfchronicle.com', 'waz.de'];
|
2020-05-06 21:07:57 +02:00
|
|
|
|
if (!matchDomain(arr_localstorage_hold)){
|
2019-12-06 16:15:49 +01:00
|
|
|
|
window.localStorage.clear();
|
|
|
|
|
}
|
2019-12-10 20:08:01 +01:00
|
|
|
|
|
2020-09-08 16:38:18 +02:00
|
|
|
|
// listen to responses from background script
|
|
|
|
|
ext_api.runtime.onMessage.addListener(function (message, sender) {
|
|
|
|
|
// setCookie opt-in
|
|
|
|
|
if (message.optIn) {
|
|
|
|
|
// Australian Provincial Newspapers
|
|
|
|
|
if (domain = matchDomain(['news-mail.com.au', 'frasercoastchronicle.com.au', 'gladstoneobserver.com.au', 'dailyexaminer.com.au', 'dailymercury.com.au', 'themorningbulletin.com.au', 'sunshinecoastdaily.com.au', 'gympietimes.com.au', 'northernstar.com.au', 'qt.com.au', 'thechronicle.com.au', 'warwickdailynews.com.au'])) {
|
|
|
|
|
if (!cookieExists('subscribed')) {
|
|
|
|
|
setCookie('subscribed', 'true', domain, '/', 14);
|
|
|
|
|
}
|
|
|
|
|
} else if (matchDomain('bostonglobe.com')) {
|
|
|
|
|
if (!cookieExists('s_fid')) {
|
|
|
|
|
let s_fid = genHexString(16) + '-' + genHexString(16);
|
|
|
|
|
setCookie('s_fid', s_fid, 'bostonglobe.com', '/', 14);
|
|
|
|
|
}
|
|
|
|
|
} else if (domain = matchDomain(['independent.ie', 'belfasttelegraph.co.uk'])) {
|
|
|
|
|
if (!cookieExists('subscriber')) {
|
|
|
|
|
setCookie('subscriber', '{"subscriptionStatus": true}', domain, '/', 14);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// ask for opt-in confirmation
|
|
|
|
|
ext_api.runtime.sendMessage({});
|
|
|
|
|
|
2020-01-28 23:06:25 +01:00
|
|
|
|
// Content workarounds/domain
|
2020-03-27 21:13:28 +01:00
|
|
|
|
|
2020-08-12 08:37:21 +02:00
|
|
|
|
if (matchDomain("thesaturdaypaper.com.au")) {
|
|
|
|
|
let paywall = document.querySelector('div.paywall-hard-always-show');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-11 18:07:02 +02:00
|
|
|
|
else if (domain = matchDomain(["brisbanetimes.com.au", "smh.com.au", "theage.com.au", "watoday.com.au"])) {
|
2020-09-10 22:01:35 +02:00
|
|
|
|
let url = window.location.href;
|
2020-09-10 22:13:46 +02:00
|
|
|
|
let for_subscribers = document.querySelector('meta[content^="FOR SUBSCRIBERS"]');
|
2020-09-10 22:01:35 +02:00
|
|
|
|
if (for_subscribers) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
window.location.href = url.replace('www.', 'amp.');
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
2020-09-11 18:07:02 +02:00
|
|
|
|
} else if (url.includes('amp.' + domain)) {
|
2020-09-10 22:01:35 +02:00
|
|
|
|
let subscr_sections = document.querySelectorAll('div[subscriptions-section="content"]');
|
|
|
|
|
for (let subscr_section of subscr_sections) {
|
|
|
|
|
subscr_section.removeAttribute('subscriptions-section');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
// Australian Community Media newspapers
|
2020-08-12 08:37:21 +02:00
|
|
|
|
else if (window.location.hostname.endsWith(".com.au") || window.location.hostname.endsWith(".net.au")) {
|
2020-07-06 19:30:48 +02:00
|
|
|
|
let au_sites = ['bendigoadvertiser.com.au', 'bordermail.com.au', 'canberratimes.com.au', 'centralwesterndaily.com.au', 'dailyadvertiser.com.au', 'dailyliberal.com.au', 'examiner.com.au', 'illawarramercury.com.au', 'newcastleherald.com.au', 'northerndailyleader.com.au', 'portnews.com.au', 'standard.net.au', 'theadvocate.com.au', 'thecourier.com.au', 'westernadvocate.com.au'];
|
2020-03-27 21:13:28 +01:00
|
|
|
|
let au_piano_script = document.querySelector('script[src="https://cdn-au.piano.io/api/tinypass.min.js"]');
|
|
|
|
|
if (matchDomain(au_sites) || au_piano_script) {
|
|
|
|
|
const subscribe_truncate = document.querySelector('.subscribe-truncate');
|
|
|
|
|
if (subscribe_truncate)
|
|
|
|
|
subscribe_truncate.classList.remove('subscribe-truncate');
|
2020-07-09 19:52:37 +02:00
|
|
|
|
const subscriber_hiders = document.querySelectorAll('.subscriber-hider');
|
|
|
|
|
for (let subscriber_hider of subscriber_hiders) {
|
|
|
|
|
subscriber_hider.classList.remove('subscriber-hider');
|
2020-03-27 21:13:28 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
else if (matchDomain('rep.repubblica.it')) {
|
2020-04-05 08:33:24 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-03-03 18:15:21 +01:00
|
|
|
|
if (window.location.href.includes('/pwa/')) {
|
|
|
|
|
window.location.href = window.location.href.replace('/pwa/', '/ws/detail/');
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
if (window.location.href.includes('/ws/detail/')) {
|
2019-11-23 05:53:56 +01:00
|
|
|
|
const paywall = document.querySelector('.paywall[subscriptions-section="content"]');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
paywall.removeAttribute('subscriptions-section');
|
|
|
|
|
const preview = document.querySelector('div[subscriptions-section="content-not-granted"]');
|
2020-03-03 18:15:21 +01:00
|
|
|
|
removeDOMElement(preview);
|
2019-11-23 05:53:56 +01:00
|
|
|
|
}
|
2019-11-22 05:17:21 +01:00
|
|
|
|
}
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("americanbanker.com")) {
|
|
|
|
|
const paywall = document.querySelector('.embargo-content');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (paywall)
|
|
|
|
|
paywall.classList.remove('embargo-content');
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain('telegraaf.nl')) {
|
2020-03-29 13:38:26 +02:00
|
|
|
|
if (window.location.href.startsWith('https://www.telegraaf.nl/error?ref=/')) {
|
|
|
|
|
window.location.href = window.location.href.split('&')[0].replace('error?ref=/', '');
|
|
|
|
|
}
|
2020-04-05 08:33:24 +02:00
|
|
|
|
let refresh = document.querySelector('div[id="content"] > meta[http-equiv="refresh"]');
|
|
|
|
|
if (refresh) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
window.location.reload(true);
|
|
|
|
|
}, 500);
|
|
|
|
|
}
|
2020-03-29 13:38:26 +02:00
|
|
|
|
let article_wrapper = document.querySelector('.ArticlePageWrapper__uid');
|
|
|
|
|
let spotx_banner = document.querySelector('.ArticleBodyBlocks__inlineArticleSpotXBanner');
|
|
|
|
|
let paywall = document.querySelector('.PopupBackdrop__block');
|
|
|
|
|
removeDOMElement(spotx_banner, paywall);
|
|
|
|
|
let premium = document.querySelector('.PremiumLabelWithLine__body');
|
|
|
|
|
let article_id = article_wrapper ? article_wrapper.innerText : '123';
|
|
|
|
|
let article_body_done = document.querySelector('#articleBody' + article_id);
|
|
|
|
|
if (premium && !article_body_done) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let article_body_old = document.querySelector('[id^="articleBody"]');
|
2020-03-29 13:38:26 +02:00
|
|
|
|
removeDOMElement(article_body_old);
|
|
|
|
|
let json = document.querySelector('script[type="application/ld+json"][data-react-helmet="true"]');
|
|
|
|
|
if (json) {
|
2020-06-08 16:44:46 +02:00
|
|
|
|
var json_text = JSON.parse(json.text).articleBody;
|
2020-03-29 13:38:26 +02:00
|
|
|
|
let article_body = document.querySelector('section.TextArticlePage__bodyText');
|
|
|
|
|
if (article_body) {
|
|
|
|
|
let div_main = document.createElement("div");
|
|
|
|
|
div_main.setAttribute('id', 'articleBody' + article_id);
|
|
|
|
|
let div_elem = document.createElement("div");
|
|
|
|
|
div_elem.setAttribute('data-element', 'articleBodyBlocks');
|
|
|
|
|
let text_array = json_text.split('\n\n');
|
|
|
|
|
text_array.forEach(p_text => {
|
|
|
|
|
let p_div = document.createElement("p");
|
|
|
|
|
p_div.setAttribute('class', 'ArticleBodyBlocks__paragraph ArticleBodyBlocks__paragraph--nieuws');
|
|
|
|
|
p_div.innerText = p_text;
|
|
|
|
|
div_elem.appendChild(p_div);
|
|
|
|
|
});
|
|
|
|
|
div_main.appendChild(div_elem);
|
|
|
|
|
article_body.appendChild(div_main);
|
|
|
|
|
}
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
2020-03-29 13:38:26 +02:00
|
|
|
|
}
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-04-13 19:11:29 +02:00
|
|
|
|
else if (matchDomain(['ad.nl', 'bd.nl', 'ed.nl', 'tubantia.nl', 'bndestem.nl', 'pzc.nl', 'destentor.nl', 'gelderlander.nl'])) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
let paywall = document.querySelector('.article__component.article__component--paywall-module-notification');
|
2020-04-13 19:11:29 +02:00
|
|
|
|
let modal_login = document.querySelector('.modal--login');
|
|
|
|
|
removeDOMElement(paywall, modal_login);
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("washingtonpost.com")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let leaderboard = document.querySelector('#leaderboard-wrapper');
|
2020-08-22 20:25:53 +02:00
|
|
|
|
let adverts = document.querySelectorAll('div[data-qa="article-body-ad"]');
|
|
|
|
|
removeDOMElement(leaderboard, ...adverts);
|
2019-11-23 05:53:56 +01:00
|
|
|
|
if (location.href.includes('/gdpr-consent/')) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let free_button = document.querySelector('.gdpr-consent-container .continue-btn.button.free');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (free_button)
|
|
|
|
|
free_button.click();
|
2020-04-05 08:33:24 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let gdprcheckbox = document.querySelector('.gdpr-consent-container .consent-page:not(.hide) #agree');
|
2019-11-23 05:53:56 +01:00
|
|
|
|
if (gdprcheckbox) {
|
|
|
|
|
gdprcheckbox.checked = true;
|
|
|
|
|
gdprcheckbox.dispatchEvent(new Event('change'));
|
|
|
|
|
document.querySelector('.gdpr-consent-container .consent-page:not(.hide) .continue-btn.button.accept-consent').click();
|
|
|
|
|
}
|
|
|
|
|
}, 300); // Delay (in milliseconds)
|
|
|
|
|
}
|
2019-06-26 15:37:00 +02:00
|
|
|
|
}
|
2019-10-06 19:28:18 +02:00
|
|
|
|
|
2020-08-15 21:43:54 +02:00
|
|
|
|
else if (matchDomain("wsj.com") && !matchDomain("cn.wsj.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (location.href.includes('/articles/')) {
|
2020-06-22 21:19:35 +02:00
|
|
|
|
const close_button = document.querySelector('div.close-btn[role="button"]');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (close_button)
|
|
|
|
|
close_button.click();
|
|
|
|
|
}
|
2020-09-03 19:13:27 +02:00
|
|
|
|
let wsj_ads = document.querySelectorAll('div.wsj-ad');
|
|
|
|
|
removeDOMElement(...wsj_ads);
|
2020-05-14 20:58:55 +02:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-06-27 11:18:01 +02:00
|
|
|
|
let url = window.location.href;
|
|
|
|
|
let snippet = document.querySelector('.snippet-promotion');
|
2020-06-28 19:15:46 +02:00
|
|
|
|
let wsj_pro = document.querySelector('meta[name="page.site"][content="wsjpro"]');
|
|
|
|
|
if (snippet || wsj_pro) {
|
2020-09-03 19:13:27 +02:00
|
|
|
|
window.location.href = window.location.href.replace('wsj.com', 'wsj.com/amp').replace('#refreshed', '');
|
2020-05-14 20:58:55 +02:00
|
|
|
|
}
|
|
|
|
|
});
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
2019-10-08 17:41:09 +02:00
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("sloanreview.mit.edu")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const read_more = document.querySelector('.btn-read-more');
|
2020-06-15 11:59:34 +02:00
|
|
|
|
if (read_more)
|
|
|
|
|
read_more.click();
|
2019-10-08 17:41:09 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("mexiconewsdaily.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
const sideNotification = document.querySelector('.pigeon-widget-prompt');
|
|
|
|
|
const subMessage = document.querySelector('.sub_message_container');
|
|
|
|
|
const popup = document.querySelector('.popupally-pro-outer-full-width-7-fluid_qemskqa');
|
|
|
|
|
const bgFocusRemoverId = document.getElementById('popup-box-pro-gfcr-7');
|
|
|
|
|
removeDOMElement(sideNotification, subMessage, popup, bgFocusRemoverId);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("the-american-interest.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const counter = document.getElementById('article-counter');
|
|
|
|
|
removeDOMElement(counter);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("nzherald.co.nz")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let article_content = document.getElementById('article-content');
|
|
|
|
|
if (article_content) {
|
|
|
|
|
let premium = document.querySelector('.premium-sub');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
removeDOMElement(premium);
|
2020-07-09 19:52:37 +02:00
|
|
|
|
article_content.classList.remove('premium-content');
|
|
|
|
|
article_content.classList.add('full-content');
|
|
|
|
|
removeClassesByPrefix(article_content, 'QUnW');
|
|
|
|
|
let elems = article_content.querySelectorAll("p, span, h2, div");
|
|
|
|
|
for (let elem of elems){
|
|
|
|
|
removeClassesByPrefix(elem, 'QUnW');
|
|
|
|
|
elem.classList.remove("ellipsis");
|
|
|
|
|
elem.removeAttribute('style');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain(["parool.nl", "trouw.nl", "volkskrant.nl", "humo.be", "demorgen.be"])) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-05-28 18:18:54 +02:00
|
|
|
|
let top_banner = document.querySelector('div[data-temptation-position="PAGE_TOP"]');
|
|
|
|
|
let paywall = document.querySelector('div[data-temptation-position="ARTICLE_BOTTOM"]');
|
|
|
|
|
let hidden_section = document.querySelector('div[data-temptation-position="ARTICLE_INLINE"]');
|
|
|
|
|
let overlay = document.querySelector('div[data-temptation-position="PAGE_BOTTOM"]');
|
|
|
|
|
removeDOMElement(top_banner, paywall, hidden_section, overlay);
|
2020-01-28 23:06:25 +01:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("firstthings.com")) {
|
|
|
|
|
const paywall = document.querySelector('.paywall');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
removeDOMElement(paywall);
|
2019-10-06 19:28:18 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("bloomberg.com")) {
|
2019-11-23 05:53:56 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
const fence = document.querySelector('.fence-body');
|
|
|
|
|
if (fence){
|
|
|
|
|
fence.classList.remove('fence-body');
|
|
|
|
|
}
|
|
|
|
|
});
|
2020-01-05 18:04:40 +01:00
|
|
|
|
const banner = document.getElementById('paywall-banner');
|
|
|
|
|
removeDOMElement(banner);
|
2019-10-05 14:08:57 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("bloombergquint.com")) {
|
|
|
|
|
const articlesLeftModal = document.querySelector('.paywall-meter-module__story-paywall-container__1UgCE');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const paywall = document.getElementById('paywallDmp');
|
|
|
|
|
removeDOMElement(articlesLeftModal, paywall);
|
2019-10-16 10:18:39 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-05-27 22:30:22 +02:00
|
|
|
|
else if (matchDomain(["medium.com", "towardsdatascience.com"])) {
|
2020-09-24 20:50:29 +02:00
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let meter = document.querySelector('[id^="lo-highlight-meter-"]');
|
|
|
|
|
if (meter)
|
|
|
|
|
meter.hidden = true;
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
2019-10-14 14:52:27 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("ledevoir.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const counter = document.querySelector('.popup-msg');
|
|
|
|
|
removeDOMElement(counter);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain('ft.com')) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let cookie_banner = document.querySelector('.o-banner__outer');
|
|
|
|
|
let ribbon = document.querySelector('.js-article-ribbon');
|
|
|
|
|
let ads = document.querySelector('.o-ads');
|
|
|
|
|
removeDOMElement(cookie_banner, ribbon, ads);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
else if (matchDomain("thehindu.com")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-07-09 20:53:36 +02:00
|
|
|
|
let counter = document.querySelector('#test');
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let co_banner = document.querySelector('.co-banner');
|
|
|
|
|
let support = document.querySelector('div.support-jlm');
|
2020-07-09 20:53:36 +02:00
|
|
|
|
removeDOMElement(counter, co_banner, support);
|
2020-07-09 19:52:37 +02:00
|
|
|
|
});
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("nytimes.com")) {
|
2020-07-15 18:45:37 +02:00
|
|
|
|
function nyt_main() {
|
|
|
|
|
navigator.storage.estimate = undefined;
|
|
|
|
|
webkitRequestFileSystem = function () {};
|
|
|
|
|
}
|
|
|
|
|
insert_script(nyt_main);
|
|
|
|
|
let preview_button = document.querySelector('.css-3s1ce0');
|
2019-12-24 14:10:43 +01:00
|
|
|
|
if (preview_button)
|
|
|
|
|
preview_button.click();
|
2019-11-11 22:11:48 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("economist.com")) {
|
2019-12-06 16:15:49 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-01-09 11:44:01 +01:00
|
|
|
|
const subscribe = document.querySelector('.subscription-proposition');
|
|
|
|
|
const wrapper = document.getElementById('bottom-page-wrapper');
|
2020-07-09 19:52:37 +02:00
|
|
|
|
removeDOMElement(subscribe, wrapper);
|
2020-09-09 08:24:02 +02:00
|
|
|
|
const adverts = document.querySelectorAll('div.advert');
|
|
|
|
|
for (let advert of adverts)
|
|
|
|
|
advert.setAttribute('style', 'display:none');
|
2020-04-05 08:33:24 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-01-09 11:44:01 +01:00
|
|
|
|
const paywall = document.querySelector('.layout-article-regwall'); ;
|
|
|
|
|
if (paywall) {
|
|
|
|
|
window.location.reload(true);
|
|
|
|
|
}
|
|
|
|
|
}, 600); // Delay (in milliseconds)
|
2020-07-09 19:52:37 +02:00
|
|
|
|
const p_articles = document.querySelectorAll('p.article__body-text');
|
2020-03-08 23:16:17 +01:00
|
|
|
|
var href;
|
2020-07-09 19:52:37 +02:00
|
|
|
|
for (let p_article of p_articles) {
|
|
|
|
|
const e_anchors = document.querySelectorAll('a');
|
2020-03-08 23:16:17 +01:00
|
|
|
|
href = '';
|
2020-07-09 19:52:37 +02:00
|
|
|
|
for (let e_anchor of e_anchors) {
|
|
|
|
|
if (e_anchor.href) {
|
|
|
|
|
href = e_anchor.href;
|
2020-03-08 23:16:17 +01:00
|
|
|
|
} else {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
e_anchor.href = href;
|
2020-03-08 23:16:17 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-01-09 11:44:01 +01:00
|
|
|
|
});
|
2019-11-27 19:23:00 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("the-tls.co.uk")) {
|
2019-12-05 21:32:20 +01:00
|
|
|
|
const paywall = document.querySelector('.tls-subscriptions-banner__closed-skin');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("caixinglobal.com")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let pay_tips = document.querySelectorAll('.cons-pay-tip');
|
|
|
|
|
for (let pay_tip of pay_tips) {
|
|
|
|
|
pay_tip.removeAttribute('style');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let appContent = document.getElementById('appContent');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (appContent) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let hidden_pars = document.querySelectorAll('p:not([style="display:block;"])');
|
|
|
|
|
for (let hidden_par of hidden_pars) {
|
|
|
|
|
hidden_par.setAttribute('style', 'display:block;');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("nrc.nl")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let mijnnrc_overlay = document.querySelector('#mijnnrc__modal__overlay');
|
|
|
|
|
let subscribe_bar = document.querySelector('.header__subscribe-bar');
|
|
|
|
|
removeDOMElement(mijnnrc_overlay, subscribe_bar);
|
|
|
|
|
let paywall = document.querySelector('.has-paywall');
|
|
|
|
|
if (paywall)
|
|
|
|
|
paywall.classList.remove("has-paywall");
|
|
|
|
|
let paywall_overlay = document.querySelector('.has-paywall-overlay');
|
|
|
|
|
if (paywall_overlay)
|
|
|
|
|
paywall_overlay.classList.remove("has-paywall-overlay");
|
|
|
|
|
}, 100);
|
2019-12-24 14:10:43 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("scribd.com")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let blurred_pages = document.querySelectorAll('.blurred_page');
|
|
|
|
|
for (let blurred_page of blurred_pages) {
|
|
|
|
|
blurred_page.classList.remove('blurred_page');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let portal = document.querySelector('.between_page_portal_root');
|
|
|
|
|
let page_module = document.querySelector('.between_page_module');
|
|
|
|
|
let promo = document.querySelector('.auto__doc_page_webpack_doc_page_body_static_promo_study');
|
|
|
|
|
let ad = document.querySelector('.auto__explain_scribd_v2_advertisement');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
removeDOMElement(portal, page_module, promo, ad);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("thetimes.co.uk")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const block = document.querySelector('.subscription-block');
|
|
|
|
|
const ad_block = document.getElementById('ad-article-inline')
|
|
|
|
|
const ad_header = document.getElementById('sticky-ad-header')
|
|
|
|
|
removeDOMElement(block, ad_block, ad_header);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("technologyreview.com")) {
|
2020-08-27 21:16:38 +02:00
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let body_obscured = document.querySelector('body[class*="body__obscureContent"]');
|
|
|
|
|
if (body_obscured)
|
|
|
|
|
removeClassesByPrefix(body_obscured, 'body__obscureContent');
|
|
|
|
|
let overlay = document.querySelector('div[class*="overlayFooter__wrapper"]');
|
|
|
|
|
if (overlay)
|
|
|
|
|
overlay.setAttribute('style', 'display:none');
|
2020-09-17 20:40:06 +02:00
|
|
|
|
let content_body_hidden = document.querySelector('div[class*="contentBody__contentHidden"]');
|
|
|
|
|
if (content_body_hidden)
|
|
|
|
|
removeClassesByPrefix(content_body_hidden, 'contentBody__contentHidden');
|
|
|
|
|
let content_body_overlay = document.querySelector('div[class*="contentBody__overlay"]');
|
|
|
|
|
if (content_body_overlay)
|
|
|
|
|
content_body_overlay.removeAttribute('class');
|
2020-08-27 21:16:38 +02:00
|
|
|
|
}, 500);
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("asia.nikkei.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const popup = document.querySelector('.pw-widget--popup');
|
|
|
|
|
removeDOMElement(popup);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("hbr.org")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const popup = document.querySelector('.persistent-banner');
|
|
|
|
|
removeDOMElement(popup);
|
2020-01-05 13:02:44 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("techinasia.com")) {
|
2020-01-05 16:31:22 +01:00
|
|
|
|
const paywall = document.querySelector('.paywall-content');
|
|
|
|
|
if (paywall){
|
|
|
|
|
paywall.classList.remove('paywall-content');
|
|
|
|
|
}
|
|
|
|
|
const splash_subscribe = document.querySelector('.splash-subscribe');
|
|
|
|
|
const paywall_hard = document.querySelector('.paywall-hard');
|
|
|
|
|
removeDOMElement(splash_subscribe, paywall_hard);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("thestar.com")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let paywall = document.querySelector('.basic-paywall-new');
|
2020-01-05 17:08:07 +01:00
|
|
|
|
removeDOMElement(paywall);
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let tbcs = document.querySelectorAll('.text-block-container');
|
|
|
|
|
for (let tbc of tbcs) {
|
|
|
|
|
tbc.removeAttribute('style');
|
2020-01-05 17:08:07 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("afr.com")) {
|
2020-01-05 17:16:32 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let hidden_images = document.querySelectorAll('img');
|
|
|
|
|
for (let hidden_image of hidden_images) {
|
|
|
|
|
var src = hidden_image.src;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
if (src.includes(".gif")) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
var data_src = hidden_image.getAttribute("data-src");
|
2020-01-05 17:16:32 +01:00
|
|
|
|
if (data_src)
|
2020-07-09 19:52:37 +02:00
|
|
|
|
hidden_image.setAttribute('src', data_src);
|
2020-01-05 17:16:32 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let plista = document.querySelector('div[data-plista-placement="underArticle_Group"]');
|
2020-01-05 17:16:32 +01:00
|
|
|
|
removeDOMElement(plista);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("theglobeandmail.com")) {
|
2020-09-20 20:54:06 +02:00
|
|
|
|
function tgam_main() {
|
|
|
|
|
document.addEventListener('bpc_event', function (e) {
|
|
|
|
|
if (window.tgam)
|
|
|
|
|
window.tgam.keytar.subscriberPaywallEnabled = false;
|
|
|
|
|
})
|
2020-07-02 16:53:52 +02:00
|
|
|
|
}
|
2020-09-20 20:54:06 +02:00
|
|
|
|
insert_script(tgam_main);
|
|
|
|
|
document.dispatchEvent(new CustomEvent('bpc_event', {}));
|
2020-01-05 17:23:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("sofrep.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const banner = document.getElementById('scrollerCTA');
|
|
|
|
|
removeDOMElement(banner);
|
2020-01-05 17:50:56 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("newstatesman.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const tns_modal_wrapper = document.querySelector('.tns-modal-wrapper');
|
|
|
|
|
removeDOMElement(tns_modal_wrapper);
|
2020-01-05 18:04:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("liberation.fr")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const close_button = document.querySelector('.pw-action-close');
|
|
|
|
|
if (close_button)
|
|
|
|
|
close_button.click();
|
2020-01-05 18:04:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("estadao.com.br")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const paywall = document.getElementById('paywall-wrapper-iframe-estadao');
|
|
|
|
|
removeDOMElement(paywall);
|
2020-01-05 18:04:40 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("folha.uol.com.br")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const signup = document.querySelector('.c-top-signup');
|
|
|
|
|
removeDOMElement(signup);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("cen.acs.org")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
const meteredBar = document.querySelector('.meteredBar');
|
|
|
|
|
removeDOMElement(meteredBar);
|
|
|
|
|
});
|
2020-01-13 22:23:03 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-08-17 23:04:51 +02:00
|
|
|
|
else if (matchDomain("lesechos.fr") && window.location.href.match(/-\d{6,}/)) {
|
2020-05-01 17:50:15 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let url = window.location.href;
|
|
|
|
|
let html = document.documentElement.outerHTML;
|
|
|
|
|
let split1 = html.split('window.__PRELOADED_STATE__')[1];
|
|
|
|
|
let split2 = split1.split('</script>')[0].trim();
|
|
|
|
|
let state = split2.substr(1, split2.length - 2);
|
2020-05-01 17:50:15 +02:00
|
|
|
|
try {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let data = JSON.parse(state);
|
|
|
|
|
let article = data.article.data.stripes[0].mainContent[0].data.description;
|
|
|
|
|
let url_loaded = data.article.data.path;
|
|
|
|
|
if (!url.includes(url_loaded))
|
|
|
|
|
document.location.reload(true);
|
|
|
|
|
let paywallNode = document.querySelector('.post-paywall');
|
2020-05-01 17:50:15 +02:00
|
|
|
|
if (paywallNode) {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let contentNode = document.createElement('div');
|
|
|
|
|
let parser = new DOMParser();
|
|
|
|
|
let article_html = parser.parseFromString('<div id="bpc">' + article + '</div>', 'text/html');
|
|
|
|
|
let article_par = article_html.querySelector('div#bpc');
|
|
|
|
|
if (article_par) {
|
|
|
|
|
contentNode.appendChild(article_par);
|
|
|
|
|
contentNode.className = paywallNode.className;
|
|
|
|
|
paywallNode.parentNode.insertBefore(contentNode, paywallNode);
|
|
|
|
|
removeDOMElement(paywallNode);
|
|
|
|
|
let paywallLastChildNode = document.querySelector('.post-paywall > :last-child');
|
|
|
|
|
if (paywallLastChildNode) {
|
|
|
|
|
paywallLastChildNode.setAttribute('style', 'height: auto !important; overflow: hidden !important; max-height: none !important;');
|
|
|
|
|
}
|
2020-05-01 17:50:15 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.warn('unable to parse lesechos text');
|
|
|
|
|
console.warn(err);
|
|
|
|
|
}
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let ad_blocks = document.querySelectorAll('.jzxvkd-1');
|
2020-07-09 19:52:37 +02:00
|
|
|
|
for (let ad_block of ad_blocks) {
|
|
|
|
|
ad_block.setAttribute('style', 'display:none');
|
2020-05-02 15:46:52 +02:00
|
|
|
|
}
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let abo_banner = document.querySelector('[class^="pgxf3b"]');
|
2020-05-02 15:46:52 +02:00
|
|
|
|
removeDOMElement(abo_banner);
|
2020-07-09 19:52:37 +02:00
|
|
|
|
}, 1000); // Delay (in milliseconds)
|
2020-01-28 23:06:25 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain(["lc.nl", "dvhn.nl"])) {
|
2020-07-25 15:05:27 +02:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
if (window.location.href.includes('?'))
|
|
|
|
|
window.location.href = window.location.href.split('?')[0];
|
|
|
|
|
});
|
2020-06-17 16:29:36 +02:00
|
|
|
|
let top_ad = document.querySelector('.top__ad');
|
|
|
|
|
let plus = document.querySelector('.plusJustRead');
|
|
|
|
|
removeDOMElement(top_ad, plus);
|
2020-02-12 18:55:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("newyorker.com")) {
|
2020-02-22 13:11:00 +01:00
|
|
|
|
const paywall_bar = document.querySelector('.paywall-bar');
|
|
|
|
|
removeDOMElement(paywall_bar);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("americanaffairsjournal.org")) {
|
2020-03-08 23:16:17 +01:00
|
|
|
|
const paywall_bar = document.querySelector('.paywall-notification-bar-wrapper');
|
|
|
|
|
removeDOMElement(paywall_bar);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain('ladepeche.fr')) {
|
2020-04-29 20:46:44 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-03-21 15:48:04 +01:00
|
|
|
|
const hidden_section = document.querySelector('.article-full__body-content');
|
2020-04-29 20:46:44 +02:00
|
|
|
|
if (hidden_section) {
|
2020-03-21 15:48:04 +01:00
|
|
|
|
hidden_section.classList.remove('article-full__body-content');
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let pars = hidden_section.querySelectorAll("p, h2, div");
|
|
|
|
|
for (let par of pars) {
|
|
|
|
|
par.removeAttribute('style');
|
2020-04-29 20:46:44 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
const abon = document.querySelector('#noscript-paywall-content, #noscript-paywall');
|
|
|
|
|
removeDOMElement(abon);
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
2020-03-21 15:48:04 +01:00
|
|
|
|
}
|
|
|
|
|
|
2020-03-30 19:59:29 +02:00
|
|
|
|
else if (matchDomain('challenges.fr')) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-05-02 21:55:47 +02:00
|
|
|
|
const amorce = document.querySelector('.user-paying-amorce');
|
|
|
|
|
if (amorce)
|
|
|
|
|
amorce.setAttribute('style', 'display:none !important');
|
|
|
|
|
const content = document.querySelector('.user-paying-content');
|
|
|
|
|
if (content)
|
|
|
|
|
content.setAttribute('style', 'display: block !important');
|
|
|
|
|
const paywall = document.querySelector('.temp-paywall');
|
|
|
|
|
removeDOMElement(paywall);
|
2020-03-30 19:59:29 +02:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-25 17:18:12 +02:00
|
|
|
|
else if (matchDomain('barrons.com')) {
|
2020-06-15 22:21:42 +02:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
let body_continuous = document.querySelector('body.is-continuous');
|
|
|
|
|
let snippet = document.querySelector('meta[content="snippet"]');
|
|
|
|
|
if (body_continuous && snippet) {
|
|
|
|
|
window.location.href = window.location.href.replace('barrons.com', 'barrons.com/amp');
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
if (!window.location.href.includes('barrons.com/amp/')) {
|
|
|
|
|
var href = '';
|
|
|
|
|
let signin_links = document.querySelectorAll('a.primary-button--link');
|
|
|
|
|
for (let signin_link of signin_links) {
|
|
|
|
|
href = signin_link.href;
|
|
|
|
|
if (href.includes('target=')) {
|
|
|
|
|
href = href.split('target')[1].split('%3F')[0];
|
|
|
|
|
href = href.replace('=', '').replace('%3A', ':').replace(/%2F/g, '/');
|
|
|
|
|
signin_link.href = href;
|
|
|
|
|
signin_link.text = 'Click';
|
|
|
|
|
}
|
2020-03-30 20:50:55 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-04 19:42:04 +02:00
|
|
|
|
else if (matchDomain('lescienze.it')) {
|
|
|
|
|
const paywall = document.querySelector('.paywall-adagio');
|
|
|
|
|
const body_paywall = document.getElementById('detail-body-paywall');
|
|
|
|
|
const shade = document.querySelector('.shade');
|
|
|
|
|
removeDOMElement(paywall, body_paywall, shade);
|
2020-07-09 19:52:37 +02:00
|
|
|
|
const hidden_bodies = document.querySelectorAll('.detail_body');
|
|
|
|
|
for (let hidden_body of hidden_bodies) {
|
|
|
|
|
hidden_body.removeAttribute('hidden');
|
|
|
|
|
hidden_body.setAttribute('style', 'display:block; max-height:auto; overflow:visible');
|
2020-04-04 19:42:04 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-25 17:18:12 +02:00
|
|
|
|
else if (matchDomain('faz.net')) {
|
|
|
|
|
let paywall = document.querySelector('#paywall-form-container-outer,.atc-ContainerPaywall');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
let url = new URL(window.location.href);
|
|
|
|
|
let mUrl = new URL(url.pathname, "https://m.faz.net/");
|
|
|
|
|
fetch(mUrl)
|
|
|
|
|
.then(response => {
|
|
|
|
|
if (response.ok) {
|
|
|
|
|
response.text().then(html => {
|
|
|
|
|
var parser = new DOMParser();
|
|
|
|
|
var doc = parser.parseFromString(html, 'text/html');
|
|
|
|
|
let json = doc.querySelector('script[id="schemaOrgJson"]');
|
|
|
|
|
if (json) {
|
|
|
|
|
var json_text = JSON.parse(json.text).ArticleBody;
|
|
|
|
|
let article_text = document.querySelector('.art_txt.paywall,.atc-Text.js-atc-Text');
|
|
|
|
|
article_text.innerText = '';
|
|
|
|
|
|
|
|
|
|
const breakText = (str) => {
|
2020-09-10 21:22:33 +02:00
|
|
|
|
str = str.replace(/(?:^|[\w\"\“])(\.|\?|!)(?=[A-Z\„][A-Za-zÀ-ÿ\„]{1,})/gm, "$&\n\n");
|
2020-04-30 20:49:35 +02:00
|
|
|
|
str = str.replace(/([a-z\"\“])(?=[A-Z](?=[A-Za-zÀ-ÿ]+))/gm, "$&\n\n");
|
2020-04-25 17:18:12 +02:00
|
|
|
|
// exceptions: names with alternating lower/uppercase (no general fix)
|
|
|
|
|
str = str.replace(/Glaxo\n\nSmith\n\nKline/g, "GlaxoSmithKline");
|
2020-05-14 20:58:55 +02:00
|
|
|
|
str = str.replace(/Eu\n\nGH/g, "EuGH");
|
2020-04-25 17:18:12 +02:00
|
|
|
|
str = str.replace(/If\n\nSG/g, "IfSG");
|
2020-09-10 21:22:33 +02:00
|
|
|
|
str = str.replace(/m\n\nRNA/g, "mNRA");
|
2020-09-24 20:50:29 +02:00
|
|
|
|
str = str.replace(/St\n\nVO/g, "StVO");
|
|
|
|
|
str = str.replace(/De\n\n([A-Z])/g, "De$1");
|
|
|
|
|
str = str.replace(/La\n\n([A-Z])/g, "La$1");
|
|
|
|
|
str = str.replace(/Le\n\n([A-Z])/g, "Le$1");
|
|
|
|
|
str = str.replace(/Mc\n\n([A-Z])/g, "Mc$1");
|
2020-04-25 17:18:12 +02:00
|
|
|
|
return str;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
json_text = breakText(json_text);
|
|
|
|
|
json_text.split("\n\n").forEach(
|
|
|
|
|
(p_text) => {
|
|
|
|
|
let elem;
|
|
|
|
|
if (p_text.length < 80) {
|
|
|
|
|
elem = document.createElement("h2");
|
|
|
|
|
elem.setAttribute('class', 'atc-SubHeadline');
|
|
|
|
|
} else {
|
|
|
|
|
elem = document.createElement("p");
|
|
|
|
|
elem.setAttribute('class', 'atc-TextParagraph');
|
|
|
|
|
};
|
|
|
|
|
elem.innerText = p_text;
|
|
|
|
|
article_text.appendChild(elem);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-18 07:47:47 +02:00
|
|
|
|
else if (matchDomain(['elcomercio.pe', 'gestion.pe'])) {
|
2020-04-25 20:41:55 +02:00
|
|
|
|
const paywall = document.querySelector('.story-content__nota-premium');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
paywall.classList.remove('story-content__nota-premium');
|
2020-05-18 07:47:47 +02:00
|
|
|
|
paywall.removeAttribute('style');
|
2020-04-25 20:41:55 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-02 09:16:41 +02:00
|
|
|
|
else if (matchDomain('journaldunet.com')) {
|
|
|
|
|
const reg_wall = document.querySelector('.reg_wall');
|
|
|
|
|
removeDOMElement(reg_wall);
|
|
|
|
|
const entry_reg_wall = document.querySelector('.entry_reg_wall');
|
|
|
|
|
if (entry_reg_wall) {
|
|
|
|
|
entry_reg_wall.removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-06 21:07:57 +02:00
|
|
|
|
else if (matchDomain('nzz.ch')) {
|
2020-07-08 17:58:08 +02:00
|
|
|
|
let regwall = document.querySelector('.dynamic-regwall');
|
|
|
|
|
removeDOMElement(regwall);
|
2020-05-06 21:07:57 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-05-20 17:02:34 +02:00
|
|
|
|
else if (matchDomain('lejdd.fr')) {
|
|
|
|
|
let poool_banner = document.querySelector('#poool-container');
|
|
|
|
|
removeDOMElement(poool_banner);
|
|
|
|
|
let bottom_hide = document.querySelector('.cnt[data-poool-mode="hide"]');
|
|
|
|
|
if (bottom_hide) {
|
|
|
|
|
bottom_hide.removeAttribute('data-poool-mode');
|
|
|
|
|
bottom_hide.removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-25 21:01:41 +02:00
|
|
|
|
else if (matchDomain('elmundo.es')) {
|
|
|
|
|
let premium = document.querySelector('.ue-c-article__premium');
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
if (premium && window.location.href.includes('/www.elmundo.es/')) {
|
|
|
|
|
window.location.href = window.location.href.replace('/www.', '/amp.');
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
if (window.location.href.includes('/amp.elmundo.es/')) {
|
|
|
|
|
let paywall = document.querySelector('div[amp-access="authorized!=true"]');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
let div_hidden = document.querySelector('div[amp-access="authorized=true"]');
|
|
|
|
|
if (div_hidden) {
|
|
|
|
|
div_hidden.removeAttribute('amp-access-hide');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-27 07:41:46 +02:00
|
|
|
|
else if (matchDomain('spectator.co.uk')) {
|
|
|
|
|
let premium = document.querySelector('.HardPayWallContainer-module__overlay');
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
if (premium && window.location.href.includes('/www.spectator.co.uk/')) {
|
|
|
|
|
window.location.href = window.location.href + '/amp';
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-06 16:46:56 +02:00
|
|
|
|
else if (matchDomain('historyextra.com')) {
|
|
|
|
|
let article_masked = document.querySelector('.template-article__masked');
|
|
|
|
|
if (article_masked) {
|
|
|
|
|
let extra_pars = document.querySelectorAll('div.template-article__masked > p');
|
2020-08-22 20:25:53 +02:00
|
|
|
|
removeDOMElement(...extra_pars);
|
2020-06-06 16:46:56 +02:00
|
|
|
|
article_masked.classList.remove('template-article__masked');
|
|
|
|
|
}
|
|
|
|
|
let ad_banner = document.querySelector('.ad-banner-container');
|
|
|
|
|
removeDOMElement(ad_banner);
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-14 18:37:06 +02:00
|
|
|
|
else if (matchDomain('republic.ru')) {
|
|
|
|
|
let paywall = document.querySelector('.paywall-section');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-18 20:55:18 +02:00
|
|
|
|
else if (matchDomain('ftm.nl')) {
|
|
|
|
|
let banner_pp = document.querySelector('div.banner-pp');
|
|
|
|
|
removeDOMElement(banner_pp);
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-20 09:43:02 +02:00
|
|
|
|
else if (matchDomain('inkl.com')) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-07-25 15:31:58 +02:00
|
|
|
|
if (window.location.href.includes('?'))
|
|
|
|
|
window.location.href = window.location.href.split('?')[0];
|
2020-06-21 23:03:07 +02:00
|
|
|
|
let menu_btn = document.querySelector('div.left-buttons-container button.menu-btn');
|
|
|
|
|
if (!menu_btn) {
|
|
|
|
|
let article_container = document.querySelector('div.article-content-container');
|
|
|
|
|
if (article_container)
|
|
|
|
|
article_container.setAttribute("style", "overflow: visible; max-height: none;");
|
|
|
|
|
let gradient_container = document.querySelector('div.gradient-container');
|
|
|
|
|
if (gradient_container)
|
|
|
|
|
gradient_container.setAttribute("style", "height:auto;");
|
|
|
|
|
}
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let what_is_inkl = document.querySelector('.what-is-inkl-container');
|
|
|
|
|
let signup = document.querySelector('.article-signup-container');
|
|
|
|
|
removeDOMElement(what_is_inkl, signup);
|
2020-06-20 09:43:02 +02:00
|
|
|
|
});
|
2020-07-02 16:53:52 +02:00
|
|
|
|
let dismiss_button = document.querySelector('div.dismiss-button-container button.btn');
|
|
|
|
|
if (dismiss_button)
|
|
|
|
|
dismiss_button.click();
|
|
|
|
|
let shared_banner = document.querySelector('div.shared-article-inline-banner');
|
|
|
|
|
removeDOMElement(shared_banner);
|
2020-06-21 23:03:07 +02:00
|
|
|
|
let dive_deeper_summary_bodies = document.querySelectorAll('div.dive-deeper-container div.summary-body');
|
|
|
|
|
if (dive_deeper_summary_bodies) {
|
|
|
|
|
for (summary_body of dive_deeper_summary_bodies) {
|
2020-07-02 16:53:52 +02:00
|
|
|
|
if (!summary_body.querySelector('a')) {
|
2020-06-21 23:03:07 +02:00
|
|
|
|
var ng_click = summary_body.getAttribute('ng-click').replace("showArticle('", '').replace("')", '');
|
|
|
|
|
var weblink = document.createElement('a');
|
|
|
|
|
weblink.text = 'open';
|
|
|
|
|
weblink.href = 'https://www.inkl.com/news/' + ng_click;
|
|
|
|
|
summary_body.appendChild(weblink);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-06-20 09:43:02 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-06-26 18:54:43 +02:00
|
|
|
|
else if (matchDomain('slader.com')) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let paywall = document.querySelector('.Paywall');
|
|
|
|
|
let paywall_footer = document.querySelector('.Paywall__footer-counter');
|
|
|
|
|
removeDOMElement(paywall, paywall_footer);
|
|
|
|
|
let blur = document.querySelector('section.Paywall__blur');
|
|
|
|
|
if (blur)
|
|
|
|
|
blur.classList.remove('Paywall__blur');
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-26 19:56:58 +02:00
|
|
|
|
else if (matchDomain('knack.be')) {
|
|
|
|
|
let paywall = document.querySelector('.rmgPaywall');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
let hidden_body = document.querySelector('div.rmgDetail-body div');
|
|
|
|
|
if (hidden_body) {
|
|
|
|
|
hidden_body.removeAttribute('class');
|
|
|
|
|
let body_text = hidden_body.innerText.replace(/(?:^|[\w\"\'])(\.|\?|!)(?=[A-Za-zÀ-ÿ\"\']{2,})/gm, "$&\n\n");
|
|
|
|
|
hidden_body.innerText = body_text;
|
|
|
|
|
let intro_par = document.querySelector('div.rmgDetail-body p');
|
|
|
|
|
if (intro_par && intro_par.innerText.length > 200)
|
|
|
|
|
removeDOMElement(intro_par);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-27 13:49:37 +02:00
|
|
|
|
else if (matchDomain('ilfattoquotidiano.it')) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let subscribe = document.querySelector('.article-ifq-bottom-pro-sostenitore');
|
|
|
|
|
removeDOMElement(subscribe);
|
|
|
|
|
let paywall = document.querySelector('.read-more');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
if (window.location.href.includes('?'))
|
|
|
|
|
window.location.href = window.location.href.replace('?', 'amp/?');
|
|
|
|
|
else
|
|
|
|
|
window.location.href = window.location.href + 'amp';
|
|
|
|
|
}
|
|
|
|
|
if (window.location.href.includes('/amp/')) {
|
|
|
|
|
let section_not_granted = document.querySelector('section[subscriptions-section="content-not-granted"]');
|
|
|
|
|
let comments = document.querySelector('div.content.comments');
|
|
|
|
|
removeDOMElement(section_not_granted, comments);
|
|
|
|
|
let hidden_content = document.querySelector('section[subscriptions-section="content"]');
|
|
|
|
|
if (hidden_content)
|
|
|
|
|
hidden_content.setAttribute('style', 'display:block !important;');
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-06-28 17:41:37 +02:00
|
|
|
|
else if (matchDomain('qz.com')) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
if (pageContains('._33dc2 h2', 'Become a member, and we promise').length)
|
2020-09-19 10:16:23 +02:00
|
|
|
|
window.location.reload(true);
|
2020-06-28 17:41:37 +02:00
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-02 12:43:12 +02:00
|
|
|
|
else if (matchDomain("magazine.atavist.com")) {
|
|
|
|
|
let bottom_notification = document.querySelector('div.bottom-notification');
|
|
|
|
|
let overlay = document.querySelector('div.notification-overlay');
|
|
|
|
|
removeDOMElement(bottom_notification, overlay);
|
|
|
|
|
let paywall = document.querySelector('body.paywall-notification-visible');
|
|
|
|
|
if (paywall)
|
|
|
|
|
paywall.classList.remove('paywall-notification-visible');
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-04 13:33:25 +02:00
|
|
|
|
else if (matchDomain("business-standard.com")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let skip_button = document.querySelector('a.btn_skip');
|
|
|
|
|
if (skip_button)
|
|
|
|
|
skip_button.click();
|
2020-07-04 13:33:25 +02:00
|
|
|
|
let paywall = document.querySelector('div.sbc_panel');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
removeDOMElement(paywall.parentElement);
|
|
|
|
|
let scripts = document.querySelectorAll('script[type="application/ld+json"]');
|
|
|
|
|
let json;
|
|
|
|
|
for (let script of scripts) {
|
|
|
|
|
if (script.innerText.includes('articleBody'))
|
|
|
|
|
json = script;
|
|
|
|
|
}
|
|
|
|
|
if (json) {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let json_text = JSON.parse(json.text.replace(/(\r\n|\n|\r|\t)/gm, ''))[0].articleBody;
|
|
|
|
|
json_text = parseHtmlEntities(json_text);
|
|
|
|
|
json_text = json_text.replace(/(?:^|[\w\"\'\’])(\.|\?|!)(?=[A-Z\"\”\“\‘\’\'][A-Za-zÀ-ÿ\"\”\“\‘\’\']{1,})/gm, "$&</br></br>") + '</br></br>';
|
|
|
|
|
let parser = new DOMParser();
|
|
|
|
|
let html = parser.parseFromString('<div id="bpc">' + json_text + '</div>', 'text/html');
|
|
|
|
|
let article = html.querySelector('div#bpc');
|
|
|
|
|
if (article) {
|
|
|
|
|
let p_content = document.querySelector('span.p-content.paywall');
|
|
|
|
|
if (p_content) {
|
|
|
|
|
let old_pars = p_content.querySelectorAll('p');
|
|
|
|
|
for (let old_par of old_pars) {
|
|
|
|
|
if (!old_par.querySelector('img'))
|
|
|
|
|
removeDOMElement(old_par);
|
|
|
|
|
}
|
|
|
|
|
p_content.appendChild(article);
|
2020-07-04 13:33:25 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-09 19:52:37 +02:00
|
|
|
|
else if (matchDomain("theatlantic.com")) {
|
|
|
|
|
let banner = document.querySelector('.c-nudge__container,.c-non-metered-nudge');
|
|
|
|
|
removeDOMElement(banner);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
else if (matchDomain("harpers.org")) {
|
|
|
|
|
let overlay = document.querySelector('div[id^="pum-"]');
|
|
|
|
|
removeDOMElement(overlay);
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-18 08:42:02 +02:00
|
|
|
|
else if (matchDomain("irishtimes.com")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
let stub_article_msg = document.querySelector('div.stub-article-msg');
|
|
|
|
|
let url = window.location.href;
|
|
|
|
|
if (url.includes('mode=sample') || stub_article_msg)
|
|
|
|
|
window.location.href = new URL(url).pathname + '?mode=amp';
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-22 19:38:49 +02:00
|
|
|
|
else if (matchDomain("sueddeutsche.de")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
let reduced_par = document.querySelector('div.sz-article-body__paragraph--reduced');
|
|
|
|
|
let url = window.location.href;
|
|
|
|
|
if (url.includes('reduced=true') || reduced_par)
|
|
|
|
|
window.location.href = url.split('?')[0].replace('www.', 'amphtml.');
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-07-25 09:06:49 +02:00
|
|
|
|
else if (matchDomain("charliehebdo.fr")) {
|
2020-07-26 20:55:20 +02:00
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let paywalled_content = document.querySelector('div.ch-paywalled-content');
|
|
|
|
|
if (paywalled_content)
|
|
|
|
|
paywalled_content.removeAttribute('style');
|
|
|
|
|
let poool_widget = document.querySelector('div#poool-widget');
|
|
|
|
|
removeDOMElement(poool_widget);
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
2020-07-25 09:06:49 +02:00
|
|
|
|
}
|
|
|
|
|
|
2020-07-25 15:05:27 +02:00
|
|
|
|
else if (matchDomain("fd.nl")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
if (window.location.href.includes('?'))
|
|
|
|
|
window.location.href = window.location.href.split('?')[0];
|
|
|
|
|
let reg_modal = document.querySelector('div.modal.upsell');
|
|
|
|
|
if (reg_modal)
|
|
|
|
|
window.location.reload(true);
|
|
|
|
|
});
|
|
|
|
|
}
|
2020-07-25 09:06:49 +02:00
|
|
|
|
|
2020-08-02 12:35:09 +02:00
|
|
|
|
else if (matchDomain("noordhollandsdagblad.nl")) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let close_button = document.querySelector('button[data-testid="button-close"]');
|
|
|
|
|
if (close_button)
|
|
|
|
|
close_button.click();
|
|
|
|
|
let premium = document.querySelector('div.common-components-plus_pluslabel--container');
|
|
|
|
|
if (premium) {
|
|
|
|
|
let hidden_article = document.querySelector('div[data-auth-body="article"]');
|
|
|
|
|
if (hidden_article)
|
|
|
|
|
hidden_article.removeAttribute('style');
|
|
|
|
|
let paywall = document.querySelector('div[data-auth-root="paywall"]');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
let auth_body = document.querySelector('div[data-auth-body="article"]');
|
|
|
|
|
if (auth_body) {
|
|
|
|
|
let auth_body_par_count = auth_body.querySelectorAll('p');
|
2020-08-09 10:57:27 +02:00
|
|
|
|
if (auth_body_par_count.length < 2) {
|
2020-08-02 12:35:09 +02:00
|
|
|
|
let url = window.location.href;
|
|
|
|
|
let html = document.documentElement.outerHTML;
|
|
|
|
|
let split1 = html.split('window["__PRELOADED_STATE_GRAPH__')[1];
|
|
|
|
|
let split2 = split1.split('</script>')[0].trim();
|
|
|
|
|
let split3 = split2.split('"body":')[1];
|
|
|
|
|
let state = split3.split('},"')[0] + '}';
|
|
|
|
|
try {
|
|
|
|
|
let data = JSON.parse(state);
|
|
|
|
|
let article = data.json;
|
|
|
|
|
auth_body.innerHTML = '';
|
2020-08-17 23:04:51 +02:00
|
|
|
|
let par_html, par_dom, par_elem, par_div;
|
|
|
|
|
let parser = new DOMParser();
|
2020-08-02 12:35:09 +02:00
|
|
|
|
for (let par of article) {
|
|
|
|
|
for (let key in par) {
|
2020-08-17 23:04:51 +02:00
|
|
|
|
par_dom = document.createElement("p");
|
|
|
|
|
par_elem = '';
|
|
|
|
|
par_key = par[key];
|
|
|
|
|
if (key === 'subhead') {
|
|
|
|
|
par_elem = document.createElement("strong");
|
|
|
|
|
par_elem.innerText = par_key;
|
|
|
|
|
} else if (key === 'twitter' || key === 'instagram') {
|
|
|
|
|
par_elem = document.createElement("a");
|
|
|
|
|
Object.assign(par_elem, {
|
|
|
|
|
href: par_key,
|
|
|
|
|
innerText: par_key,
|
|
|
|
|
target: '_blank'
|
|
|
|
|
});
|
|
|
|
|
} else if (key === 'youtube') {
|
|
|
|
|
par_elem = document.createElement("iframe");
|
|
|
|
|
Object.assign(par_elem, {
|
|
|
|
|
src: 'https://www.youtube.com/embed/' + par_key.id,
|
|
|
|
|
id: 'ytplayer',
|
|
|
|
|
type: 'text/html',
|
|
|
|
|
width: 640,
|
|
|
|
|
height: 360,
|
|
|
|
|
frameborder: 0
|
|
|
|
|
});
|
|
|
|
|
} else if (key === 'streamone') {
|
|
|
|
|
par_elem = document.createElement("iframe");
|
|
|
|
|
Object.assign(par_elem, {
|
|
|
|
|
src: 'https://content.tmgvideo.nl/embed/item=' + par_key.id,
|
|
|
|
|
type: 'text/html',
|
|
|
|
|
width: 640,
|
|
|
|
|
height: 360,
|
|
|
|
|
frameborder: 0
|
|
|
|
|
});
|
|
|
|
|
} else if (key === 'image') {
|
|
|
|
|
par_elem = document.createElement("div");
|
|
|
|
|
let par_img = document.createElement("img");
|
|
|
|
|
par_img.src = par_key.url;
|
|
|
|
|
par_elem.appendChild(par_img)
|
|
|
|
|
par_div = document.createElement("div");
|
|
|
|
|
par_div.innerText = par[key].caption ? par[key].caption : '';
|
|
|
|
|
par_div.innerText += par[key].credit ? '\n' + par[key].credit : '';
|
|
|
|
|
par_elem.appendChild(par_div);
|
|
|
|
|
} else {
|
|
|
|
|
par_html = parser.parseFromString('<div id="bpc">' + par_key + '</div>', 'text/html');
|
|
|
|
|
par_elem = par_html.querySelector('div#bpc');
|
2020-08-02 12:35:09 +02:00
|
|
|
|
}
|
2020-08-17 23:04:51 +02:00
|
|
|
|
if (par_elem)
|
|
|
|
|
par_dom.appendChild(par_elem);
|
|
|
|
|
auth_body.appendChild(par_dom);
|
2020-08-02 12:35:09 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.warn('unable to parse noordhollands dagblad text');
|
|
|
|
|
console.warn(err);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-08-21 09:41:41 +02:00
|
|
|
|
else if (matchDomain("limesonline.com")) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
let url = window.location.href;
|
|
|
|
|
if (url.includes('prv=true'))
|
|
|
|
|
window.location.href = new URL(url).pathname;
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
|
2020-08-26 17:18:51 +02:00
|
|
|
|
else if (matchDomain("mercuriovalpo.cl")) {
|
|
|
|
|
let content = document.querySelector('div.content');
|
|
|
|
|
if (content)
|
|
|
|
|
content.setAttribute('id', 'content_new');
|
|
|
|
|
let modal_wrapper = document.querySelector('div.modal-wrapper');
|
|
|
|
|
removeDOMElement(modal_wrapper);
|
|
|
|
|
let body_modal = document.querySelector('body.modal-open');
|
|
|
|
|
if (body_modal)
|
|
|
|
|
body_modal.classList.remove('modal-open');
|
|
|
|
|
}
|
|
|
|
|
|
2020-08-27 21:16:38 +02:00
|
|
|
|
else if (matchDomain("discovermagazine.com")) {
|
|
|
|
|
let banner = document.querySelector('div.hWOjDZ, div.qa7yll-1');
|
|
|
|
|
removeDOMElement(banner);
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-05 16:59:14 +02:00
|
|
|
|
else if (domain = matchDomain(["fresnobee.com", "sacbee.com"])) {
|
2020-09-04 19:08:36 +02:00
|
|
|
|
let url = window.location.href;
|
2020-09-05 16:59:14 +02:00
|
|
|
|
if (url.includes('account.' + domain + '/paywall/')) {
|
2020-09-04 19:08:36 +02:00
|
|
|
|
window.setTimeout(function () {
|
2020-09-05 16:59:14 +02:00
|
|
|
|
window.location.href = 'https://amp.' + domain + '/article' + url.split('resume=')[1].split('#')[0] + '.html';
|
2020-09-04 19:08:36 +02:00
|
|
|
|
}, 500); // Delay (in milliseconds)
|
2020-09-05 16:59:14 +02:00
|
|
|
|
} else if (url.includes('amp.' + domain)) {
|
2020-09-04 19:08:36 +02:00
|
|
|
|
let subscr_sections = document.querySelectorAll('div[subscriptions-section="content"]');
|
|
|
|
|
for (let subscr_section of subscr_sections) {
|
|
|
|
|
subscr_section.removeAttribute('subscriptions-section');
|
|
|
|
|
}
|
|
|
|
|
let subscr_tag = document.querySelector('div#subscriber-exclusive-tag');
|
|
|
|
|
let amp_players = document.querySelectorAll('amp-connatix-player');
|
|
|
|
|
removeDOMElement(subscr_tag, ...amp_players);
|
|
|
|
|
}
|
|
|
|
|
let premium_svgs = document.querySelectorAll('h3 > a > svg');
|
|
|
|
|
let premium_link;
|
|
|
|
|
for (let premium_svg of premium_svgs) {
|
|
|
|
|
premium_link = premium_svg.parentElement;
|
|
|
|
|
if (premium_link.href.includes('www.'))
|
|
|
|
|
premium_link.href = premium_link.href.replace('www.', 'amp.');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-12 15:40:50 +02:00
|
|
|
|
else if (matchDomain("nknews.org")) {
|
|
|
|
|
let full_content = document.querySelector('div#fullContent');
|
|
|
|
|
if (full_content)
|
|
|
|
|
full_content.removeAttribute('style');
|
|
|
|
|
let excerpt = document.querySelector('div#excerptContent');
|
|
|
|
|
let mobile_widget = document.querySelector('div.mobile-widget');
|
|
|
|
|
removeDOMElement(excerpt, mobile_widget);
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-14 21:50:13 +02:00
|
|
|
|
else if (matchDomain("startribune.com")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
let react_modal_portal = document.querySelectorAll('div.ReactModalPortal');
|
|
|
|
|
removeDOMElement(...react_modal_portal);
|
|
|
|
|
let body_modal = document.querySelector('body.ReactModal__Body--open');
|
|
|
|
|
if (body_modal)
|
|
|
|
|
body_modal.classList.remove('ReactModal__Body--open');
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-16 16:40:41 +02:00
|
|
|
|
else if (domain = matchDomain("businesstimes.com.sg")) {
|
|
|
|
|
let url = window.location.href;
|
|
|
|
|
let paywall_login = document.querySelector('div.paywall-login');
|
|
|
|
|
if (paywall_login) {
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
window.location.href = url + '?amp';
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
}
|
|
|
|
|
let cx_custom = document.querySelector('div#cx_custom');
|
|
|
|
|
if (cx_custom)
|
|
|
|
|
cx_custom.setAttribute('style', 'display:none');
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-22 21:06:28 +02:00
|
|
|
|
else if (matchDomain("nationalreview.com")) {
|
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
let url = window.location.href;
|
|
|
|
|
let article_truncated = document.querySelector('div#article-content-truncate-wrap');
|
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
if (article_truncated && !url.includes('/amp/')) {
|
|
|
|
|
if (url.includes('?'))
|
|
|
|
|
window.location.href = url.replace('?', 'amp/?')
|
|
|
|
|
else
|
|
|
|
|
window.location.href = url + 'amp';
|
|
|
|
|
}
|
|
|
|
|
}, 500); // Delay (in milliseconds)
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-25 14:59:06 +02:00
|
|
|
|
else if (matchDomain("timeshighereducation.com")) {
|
|
|
|
|
let paywall_cta = document.querySelector('div.paywall-cta');
|
|
|
|
|
if (paywall_cta) {
|
|
|
|
|
paywall_cta.removeAttribute('style');
|
|
|
|
|
let hidden_divs = document.querySelectorAll('div[style="display: none;"]');
|
|
|
|
|
for (let hidden_div of hidden_divs)
|
|
|
|
|
hidden_div.removeAttribute('style');
|
|
|
|
|
let paywall_fade = document.querySelector('div.paywall-fade');
|
|
|
|
|
if (paywall_fade)
|
|
|
|
|
paywall_fade.classList.remove('paywall-fade');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-26 17:27:41 +02:00
|
|
|
|
else if (matchDomain("stocknews.com")) {
|
|
|
|
|
let hideme = document.querySelector('div#hideme');
|
|
|
|
|
removeDOMElement(hideme);
|
|
|
|
|
let blurmes = document.querySelectorAll('div[id^="blurme"]');
|
|
|
|
|
for (let i = 0; i < blurmes.length; i++)
|
|
|
|
|
blurmes[i].setAttribute('id', 'blurmenot' + i);
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-28 20:43:29 +02:00
|
|
|
|
else if (matchDomain("waz.de")) {
|
|
|
|
|
let obfuscated_elems = document.querySelectorAll('.obfuscated');
|
2020-09-30 16:52:37 +02:00
|
|
|
|
let parser = new DOMParser();
|
2020-09-28 20:43:29 +02:00
|
|
|
|
for (let obfuscated_elem of obfuscated_elems) {
|
2020-09-30 16:52:37 +02:00
|
|
|
|
let html = parser.parseFromString('<div>' + deobfuscateFUNKE(obfuscated_elem.innerText) + '</div>', 'text/html');
|
|
|
|
|
let par = html.querySelector('div');
|
2020-09-28 20:43:29 +02:00
|
|
|
|
obfuscated_elem.classList.remove('obfuscated');
|
2020-09-30 16:52:37 +02:00
|
|
|
|
obfuscated_elem.innerHTML = '';
|
|
|
|
|
obfuscated_elem.appendChild(par);
|
2020-09-28 20:43:29 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-01-28 23:06:25 +01:00
|
|
|
|
// General Functions
|
2019-11-23 05:53:56 +01:00
|
|
|
|
function removeDOMElement(...elements) {
|
|
|
|
|
for (let element of elements) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (element)
|
|
|
|
|
element.remove();
|
2019-11-23 05:53:56 +01:00
|
|
|
|
}
|
2019-10-06 19:28:18 +02:00
|
|
|
|
}
|
2019-10-08 17:41:09 +02:00
|
|
|
|
|
2020-05-01 12:58:36 +02:00
|
|
|
|
function matchDomain(domains, hostname) {
|
|
|
|
|
var matched_domain = false;
|
|
|
|
|
if (!hostname)
|
|
|
|
|
hostname = window.location.hostname;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
if (typeof domains === 'string')
|
|
|
|
|
domains = [domains];
|
2020-05-01 12:58:36 +02:00
|
|
|
|
domains.some(domain => (hostname === domain || hostname.endsWith('.' + domain)) && (matched_domain = domain));
|
|
|
|
|
return matched_domain;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
}
|
|
|
|
|
|
2019-11-23 05:53:56 +01:00
|
|
|
|
function removeClassesByPrefix(el, prefix) {
|
2020-07-09 19:52:37 +02:00
|
|
|
|
let el_classes = el.classList;
|
|
|
|
|
for (let el_class of el_classes) {
|
|
|
|
|
if (el_class.startsWith(prefix)) {
|
|
|
|
|
el_classes.remove(el_class);
|
2019-11-23 05:53:56 +01:00
|
|
|
|
}
|
2019-11-22 05:17:21 +01:00
|
|
|
|
}
|
2019-11-21 03:19:36 +01:00
|
|
|
|
}
|
2019-11-11 01:37:41 +01:00
|
|
|
|
|
2020-06-08 16:44:46 +02:00
|
|
|
|
function cookieExists(name) {
|
|
|
|
|
return document.cookie.split(';').some(function(item) { return item.trim().indexOf(name + '=') === 0 })
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function setCookie(name, value, domain, path, days) {
|
|
|
|
|
var max_age = days * 24 * 60 * 60;
|
|
|
|
|
document.cookie = name + "=" + (value || "") + "; domain=" + domain + "; path=" + path + "; max-age=" + max_age;
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-12 15:40:50 +02:00
|
|
|
|
function insert_script(func, insertAfterDom) {
|
2020-07-15 18:45:37 +02:00
|
|
|
|
let bpc_script = document.querySelector('script#bpc_script');
|
|
|
|
|
if (!bpc_script) {
|
|
|
|
|
let script = document.createElement('script');
|
|
|
|
|
script.setAttribute('id', 'bpc_script');
|
|
|
|
|
script.appendChild(document.createTextNode('(' + func + ')();'));
|
2020-09-12 15:40:50 +02:00
|
|
|
|
let insertAfter = insertAfterDom ? insertAfterDom : (document.body || document.head || document.documentElement);
|
|
|
|
|
insertAfter.appendChild(script);
|
2020-07-15 18:45:37 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-05-29 15:34:02 +02:00
|
|
|
|
function genHexString(len) {
|
|
|
|
|
let output = '';
|
|
|
|
|
for (let i = 0; i < len; i++) {
|
|
|
|
|
output += (Math.floor(Math.random() * 16)).toString(16);
|
|
|
|
|
}
|
|
|
|
|
return output;
|
|
|
|
|
}
|
|
|
|
|
|
2020-01-28 23:06:25 +01:00
|
|
|
|
function pageContains(selector, text) {
|
|
|
|
|
let elements = document.querySelectorAll(selector);
|
|
|
|
|
return Array.prototype.filter.call(elements, function(element){
|
|
|
|
|
return RegExp(text).test(element.textContent);
|
|
|
|
|
});
|
|
|
|
|
}
|
2020-07-04 13:33:25 +02:00
|
|
|
|
|
2020-08-17 23:04:51 +02:00
|
|
|
|
function parseHtmlEntities(encodedString) {
|
|
|
|
|
var translate_re = /&(nbsp|amp|quot|lt|gt|deg|hellip|laquo|raquo|ldquo|rdquo|lsquo|rsquo|mdash);/g;
|
|
|
|
|
var translate = {"nbsp": " ", "amp": "&", "quot": "\"", "lt": "<", "gt": ">", "deg": "°", "hellip": "…",
|
|
|
|
|
"laquo": "«", "raquo": "»", "ldquo": "“", "rdquo": "”", "lsquo": "‘", "rsquo": "’", "mdash": "—"};
|
|
|
|
|
return encodedString.replace(translate_re, function (match, entity) {
|
|
|
|
|
return translate[entity];
|
|
|
|
|
}).replace(/&#(\d+);/gi, function (match, numStr) {
|
|
|
|
|
var num = parseInt(numStr, 10);
|
|
|
|
|
return String.fromCharCode(num);
|
|
|
|
|
});
|
2020-07-04 13:33:25 +02:00
|
|
|
|
}
|
2020-09-28 20:43:29 +02:00
|
|
|
|
|
|
|
|
|
function deobfuscateFUNKE(str) {
|
2020-09-30 16:52:37 +02:00
|
|
|
|
return str.replace(/[0-9A-ZÅÝÀµ×#@$²±:`^'´\\,{[/.÷;=?)*\-]/gi, c =>
|
|
|
|
|
'012345678@ABCDEFGHIJKLMNOPQRSTUVWXYÄöÜẞZzabcdefghijklmnopqrstuvwxyäüößz,+.-:<>/()!"=[;9]&_?%#\''['123456789ABCDEFGHIJKLMNOPQRSTUVWXYZÅ×ÝÀ[abcdefghijklmnopqrstuvwxyzåý÷à{-,/.;=?0)*²#µ\\´:^\'`@±$'.indexOf(c)])
|
2020-09-28 20:43:29 +02:00
|
|
|
|
}
|