2020-03-27 21:13:28 +01:00
|
|
|
|
// clean local storage of sites (with an exemption for hold-list)
|
2020-01-28 23:06:25 +01:00
|
|
|
|
var arr_localstorage_hold = ['sfchronicle.com'];
|
2019-12-06 16:15:49 +01:00
|
|
|
|
var localstorage_hold = arr_localstorage_hold.some(function(url) {
|
2020-03-27 21:13:28 +01:00
|
|
|
|
return matchDomain(url);
|
2019-12-06 16:15:49 +01:00
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if (!localstorage_hold){
|
|
|
|
|
window.localStorage.clear();
|
|
|
|
|
}
|
2019-12-10 20:08:01 +01:00
|
|
|
|
|
2020-01-28 23:06:25 +01:00
|
|
|
|
// Content workarounds/domain
|
2020-03-27 21:13:28 +01:00
|
|
|
|
|
|
|
|
|
// Australian Community Media newspapers
|
|
|
|
|
if (window.location.hostname.endsWith(".com.au") || window.location.hostname.endsWith(".net.au")) {
|
|
|
|
|
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'];
|
|
|
|
|
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');
|
|
|
|
|
const subscriber_hider = document.querySelectorAll('.subscriber-hider');
|
|
|
|
|
for (let i = 0; i < subscriber_hider.length; i++) {
|
|
|
|
|
subscriber_hider[i].classList.remove('subscriber-hider');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
else if (matchDomain("thesaturdaypaper.com.au")) {
|
|
|
|
|
const expand_button = document.querySelector('.continue-reading-button');
|
|
|
|
|
if (expand_button)
|
|
|
|
|
expand_button.click();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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) {
|
|
|
|
|
let article_body_old = document.querySelector('[id^=articleBody]');
|
|
|
|
|
removeDOMElement(article_body_old);
|
|
|
|
|
let json = document.querySelector('script[type="application/ld+json"][data-react-helmet="true"]');
|
|
|
|
|
if (json) {
|
|
|
|
|
json_text = JSON.parse(json.text).articleBody;
|
|
|
|
|
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")) {
|
2019-11-23 05:53:56 +01:00
|
|
|
|
if (location.href.includes('/gdpr-consent/')) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const free_button = document.querySelector('.gdpr-consent-container .continue-btn.button.free');
|
|
|
|
|
if (free_button)
|
|
|
|
|
free_button.click();
|
2020-04-05 08:33:24 +02:00
|
|
|
|
window.setTimeout(function () {
|
2019-11-23 05:53:56 +01:00
|
|
|
|
const gdprcheckbox = document.querySelector('.gdpr-consent-container .consent-page:not(.hide) #agree');
|
|
|
|
|
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-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("wsj.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
if (location.href.includes('/articles/')) {
|
|
|
|
|
const close_button = document.querySelector('.close-btn');
|
|
|
|
|
if (close_button)
|
|
|
|
|
close_button.click();
|
|
|
|
|
}
|
|
|
|
|
}
|
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');
|
|
|
|
|
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-01-28 23:06:25 +01:00
|
|
|
|
const paywall = document.getElementById('article-content');
|
|
|
|
|
if (paywall) {
|
2020-03-27 21:13:28 +01:00
|
|
|
|
const premium = document.querySelector('.premium-sub');
|
2020-01-28 23:06:25 +01:00
|
|
|
|
removeDOMElement(premium);
|
|
|
|
|
paywall.classList.remove('premium-content');
|
|
|
|
|
paywall.classList.add('full-content');
|
|
|
|
|
removeClassesByPrefix(paywall, 'QUnW');
|
|
|
|
|
let paras = paywall.querySelectorAll("p, span, h2, div");
|
|
|
|
|
for (let i = 0; i < paras.length; i++){
|
|
|
|
|
removeClassesByPrefix(paras[i], 'QUnW');
|
|
|
|
|
paras[i].classList.remove("ellipsis");
|
|
|
|
|
paras[i].removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
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', () => {
|
|
|
|
|
const paywall = document.querySelector('div[data-temptation-position="ARTICLE_BOTTOM"]');
|
|
|
|
|
const hidden_section = document.querySelector('div[data-temptation-position="ARTICLE_INLINE"]');
|
|
|
|
|
removeDOMElement(paywall, hidden_section);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
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-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("medium.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const bottomMessageText = 'Get one more story in your member preview when you sign up. It’s free.';
|
|
|
|
|
const DOMElementsToTextDiv = pageContains('div', bottomMessageText);
|
|
|
|
|
if (DOMElementsToTextDiv[2]) removeDOMElement(DOMElementsToTextDiv[2]);
|
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-01-28 23:06:25 +01:00
|
|
|
|
const cookie_banner = document.querySelector('.n-messaging-banner__outer');
|
|
|
|
|
removeDOMElement(cookie_banner);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("thehindu.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const paywall = document.getElementById('test');
|
|
|
|
|
removeDOMElement(paywall);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("nytimes.com")) {
|
2019-11-23 05:53:56 +01:00
|
|
|
|
const 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 advert = document.querySelector('.advert');
|
|
|
|
|
const wrapper = document.getElementById('bottom-page-wrapper');
|
|
|
|
|
removeDOMElement(subscribe, advert, wrapper);
|
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-03-08 23:16:17 +01:00
|
|
|
|
const p_article = document.querySelectorAll('p.article__body-text');
|
|
|
|
|
var href;
|
|
|
|
|
for (let i = 0; i < p_article.length; i++) {
|
|
|
|
|
const anchor = document.querySelectorAll('a');
|
|
|
|
|
href = '';
|
|
|
|
|
for (let j = 0; j < anchor.length; j++) {
|
|
|
|
|
if (anchor[j].href) {
|
|
|
|
|
href = anchor[j].href;
|
|
|
|
|
} else {
|
|
|
|
|
anchor[j].href = href;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
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("bizjournals.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const sheet_overlay = document.querySelector('.sheet-overlay');
|
|
|
|
|
const chunk_paywall = document.querySelector('.chunk--paywall');
|
|
|
|
|
removeDOMElement(sheet_overlay, chunk_paywall);
|
|
|
|
|
const overlaid = document.querySelectorAll('.is-overlaid');
|
|
|
|
|
for (let i = 0; i < overlaid.length; i++) {
|
|
|
|
|
overlaid[i].classList.remove('is-overlaid');
|
|
|
|
|
}
|
|
|
|
|
const body_hidden = document.querySelector('.js-pre-chunks__story-body');
|
|
|
|
|
body_hidden.removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
|
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-01-28 23:06:25 +01:00
|
|
|
|
const pay_tip = document.querySelectorAll('.cons-pay-tip');
|
|
|
|
|
for (let i = 0; i < pay_tip.length; i++) {
|
|
|
|
|
pay_tip[i].removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
const appContent = document.getElementById('appContent');
|
|
|
|
|
if (appContent) {
|
|
|
|
|
const p_hidden = document.querySelectorAll('p:not([style="display:block;"]');
|
|
|
|
|
for (let i = 0; i < p_hidden.length; i++) {
|
|
|
|
|
p_hidden[i].setAttribute('style', 'display:block;');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("nrc.nl")) {
|
2019-12-24 14:10:43 +01:00
|
|
|
|
const paywall = document.querySelector('.has-paywall');
|
|
|
|
|
if (paywall)
|
|
|
|
|
paywall.classList.remove("has-paywall");
|
|
|
|
|
const paywall_overlay = document.querySelector('.has-paywall-overlay');
|
|
|
|
|
if (paywall_overlay)
|
|
|
|
|
paywall_overlay.classList.remove("has-paywall-overlay");
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("scribd.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const blur = document.querySelectorAll('.blurred_page');
|
|
|
|
|
for (let i = 0; i < blur.length; i++) {
|
|
|
|
|
blur[i].classList.remove('blurred_page');
|
|
|
|
|
}
|
|
|
|
|
const portal = document.querySelector('.between_page_portal_root');
|
|
|
|
|
const page_module = document.querySelector('.between_page_module');
|
|
|
|
|
const promo = document.querySelector('.auto__doc_page_webpack_doc_page_body_static_promo_study');
|
|
|
|
|
const ad = document.querySelector('.auto__explain_scribd_v2_advertisement');
|
|
|
|
|
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-01-28 23:06:25 +01:00
|
|
|
|
const read_story = document.querySelector('.storyExpanderButton');
|
|
|
|
|
if (read_story)
|
|
|
|
|
read_story.click();
|
|
|
|
|
const meter = document.querySelector('.meter');
|
|
|
|
|
removeDOMElement(meter);
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("haaretz.com")) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const popup = document.querySelector('.footer-ruler');
|
|
|
|
|
removeDOMElement(popup);
|
|
|
|
|
}
|
|
|
|
|
|
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-01-05 17:08:07 +01:00
|
|
|
|
const paywall = document.querySelector('.basic-paywall-new');
|
|
|
|
|
removeDOMElement(paywall);
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const tbc = document.querySelectorAll('.text-block-container');
|
2020-01-05 17:08:07 +01:00
|
|
|
|
for (let i = 0; i < tbc.length; i++) {
|
|
|
|
|
tbc[i].removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("afr.com")) {
|
2020-01-05 17:16:32 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
const hidden_image = document.querySelectorAll('img');
|
|
|
|
|
for (let i = 0; i < hidden_image.length; i++) {
|
|
|
|
|
var src = hidden_image[i].src;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
if (src.includes(".gif")) {
|
2020-01-05 17:16:32 +01:00
|
|
|
|
var data_src = hidden_image[i].getAttribute("data-src");
|
|
|
|
|
if (data_src)
|
|
|
|
|
hidden_image[i].setAttribute('src', data_src);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
const plista = document.querySelector('div[data-plista-placement="underArticle_Group"]');
|
|
|
|
|
removeDOMElement(plista);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("theglobeandmail.com")) {
|
2020-02-20 19:19:29 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-01-05 17:23:28 +01:00
|
|
|
|
const lazy_image = document.querySelectorAll('.js-lazyimage');
|
|
|
|
|
for (let i = 0; i < lazy_image.length; i++) {
|
|
|
|
|
lazy_image[i].classList.remove('js-lazyimage');
|
|
|
|
|
}
|
|
|
|
|
const hidden_image = document.querySelectorAll('img');
|
|
|
|
|
for (let i = 0; i < hidden_image.length; i++) {
|
|
|
|
|
var src = hidden_image[i].src;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
if (src.includes("data:image/gif")) {
|
2020-01-05 17:23:28 +01:00
|
|
|
|
var data_src = hidden_image[i].getAttribute("data-src");
|
|
|
|
|
if (data_src)
|
|
|
|
|
hidden_image[i].setAttribute('src', data_src);
|
2020-01-11 21:16:10 +01:00
|
|
|
|
var data_bg = hidden_image[i].getAttribute("data-bg");
|
|
|
|
|
if (data_bg)
|
|
|
|
|
hidden_image[i].setAttribute('src', data_bg);
|
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(["theathletic.com", "theathletic.co.uk"])) {
|
2020-01-28 23:06:25 +01:00
|
|
|
|
const landing_banner = document.querySelector('.logged-out-landing-banner');
|
|
|
|
|
const sample_banner = document.querySelector('.main-sample-banner');
|
|
|
|
|
const bottom_banner = document.querySelector('.border-bottom-cc');
|
|
|
|
|
const subscribe = document.querySelector('.subscribe-ad-text');
|
|
|
|
|
removeDOMElement(landing_banner, sample_banner, bottom_banner, subscribe);
|
2020-01-05 18:04:40 +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-03-27 21:13:28 +01:00
|
|
|
|
else if (matchDomain("lesechos.fr")) {
|
2020-05-01 17:50:15 +02:00
|
|
|
|
window.setTimeout(function () {
|
|
|
|
|
const url = window.location.href;
|
|
|
|
|
const html = document.documentElement.outerHTML;
|
2020-05-02 15:46:52 +02:00
|
|
|
|
// refresh cache
|
|
|
|
|
if (!window.location.hash) {
|
|
|
|
|
window.location.href = url + '#loaded'
|
|
|
|
|
}
|
2020-05-01 17:50:15 +02:00
|
|
|
|
const split1 = html.split('window.__PRELOADED_STATE__')[1];
|
|
|
|
|
const split2 = split1.split('</script>')[0].trim();
|
|
|
|
|
const state = split2.substr(1, split2.length - 2);
|
|
|
|
|
try {
|
|
|
|
|
const data = JSON.parse(state);
|
|
|
|
|
const article = data.article.data.stripes[0].mainContent[0].data.description;
|
|
|
|
|
const paywallNode = document.querySelector('.post-paywall');
|
|
|
|
|
if (paywallNode) {
|
|
|
|
|
const contentNode = document.createElement('div');
|
|
|
|
|
contentNode.innerHTML = article;
|
|
|
|
|
contentNode.className = paywallNode.className;
|
2020-05-02 16:26:22 +02:00
|
|
|
|
paywallNode.parentNode.insertBefore(contentNode, paywallNode);
|
2020-05-01 17:50:15 +02:00
|
|
|
|
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;');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (err) {
|
|
|
|
|
console.warn('unable to parse lesechos text');
|
|
|
|
|
console.warn(err);
|
|
|
|
|
}
|
2020-05-02 15:46:52 +02:00
|
|
|
|
const ad_block = document.querySelectorAll('.jzxvkd-1');
|
|
|
|
|
for (let i = 0; i < ad_block.length; i++) {
|
|
|
|
|
ad_block[i].setAttribute('style', 'display:none');
|
|
|
|
|
}
|
|
|
|
|
const abo_banner = document.querySelector('[class^=pgxf3b]');
|
|
|
|
|
removeDOMElement(abo_banner);
|
2020-05-01 17:50:15 +02:00
|
|
|
|
}, 500); // 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-02-12 18:55:28 +01:00
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
2020-03-03 19:15:10 +01:00
|
|
|
|
var new_location = window.location.href;
|
2020-03-27 21:13:28 +01:00
|
|
|
|
if (new_location.includes("utm_source="))
|
2020-03-03 19:15:10 +01:00
|
|
|
|
var new_location = new_location.split('?')[0];
|
2020-02-12 18:55:28 +01:00
|
|
|
|
const preview = document.querySelector('.preview');
|
2020-03-03 19:15:10 +01:00
|
|
|
|
if (preview && new_location.indexOf("harvest_referrer=") === -1)
|
|
|
|
|
window.location.href = new_location + '?harvest_referrer=https%3A%2F%2Fnos.nl%2Fplus.html';
|
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-04-29 20:46:44 +02:00
|
|
|
|
let paras = hidden_section.querySelectorAll("p, h2, div");
|
|
|
|
|
for (let i = 0; i < paras.length; i++) {
|
|
|
|
|
paras[i].removeAttribute('style');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
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-04-29 20:10:51 +02:00
|
|
|
|
const hidden_par = document.querySelector('.corps[style="display:none"]');
|
|
|
|
|
if (hidden_par) {
|
|
|
|
|
hidden_par.removeAttribute('style');
|
|
|
|
|
}
|
2020-05-01 12:58:36 +02:00
|
|
|
|
if (typeof browser === 'object'){
|
2020-03-30 19:59:29 +02:00
|
|
|
|
const hidden_image = document.querySelectorAll('img.lazyload');
|
|
|
|
|
for (let i = 0; i < hidden_image.length; i++) {
|
|
|
|
|
var src = hidden_image[i].src;
|
|
|
|
|
if (src.includes("/placeholders/") || src === '') {
|
|
|
|
|
var data_src = hidden_image[i].getAttribute("data-src");
|
|
|
|
|
if (data_src)
|
|
|
|
|
hidden_image[i].setAttribute('src', data_src);
|
|
|
|
|
}
|
|
|
|
|
}
|
2020-05-01 12:58:36 +02:00
|
|
|
|
}
|
2020-03-30 19:59:29 +02:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-25 17:18:12 +02:00
|
|
|
|
else if (matchDomain('barrons.com')) {
|
2020-03-30 20:50:55 +02:00
|
|
|
|
var href = '';
|
|
|
|
|
const signin_links = document.querySelectorAll('a.primary-button--link');
|
|
|
|
|
for (let i = 0; i < signin_links.length; i++) {
|
|
|
|
|
href = signin_links[i].href;
|
|
|
|
|
if (href.includes('target=')) {
|
|
|
|
|
href = href.split('target')[1].split('%3F')[0];
|
|
|
|
|
href = href.replace('=', '').replace('%3A', ':');
|
|
|
|
|
href = href.replace('%2F', '/').replace('%2F', '/').replace('%2F', '/').replace('%2F', '/');
|
|
|
|
|
signin_links[i].href = href;
|
|
|
|
|
signin_links[i].text = 'Click';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
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);
|
|
|
|
|
const hidden_body = document.querySelectorAll('.detail_body');
|
|
|
|
|
for (let i = 0; i < hidden_body.length; i++) {
|
|
|
|
|
hidden_body[i].removeAttribute('hidden');
|
|
|
|
|
hidden_body[i].setAttribute('style', 'display:block; max-height:auto; overflow:visible');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
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) => {
|
|
|
|
|
str = str.replace(/(?:^|[\w\"\“])(\.|\?|!)(?=[A-Za-zÀ-ÿ\„]{2,})/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");
|
|
|
|
|
str = str.replace(/If\n\nSG/g, "IfSG");
|
|
|
|
|
str = str.replace(/La\n\nPierre/g, "LaPierre");
|
|
|
|
|
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-04-25 20:41:55 +02:00
|
|
|
|
else if (matchDomain('gestion.pe')) {
|
|
|
|
|
const paywall = document.querySelector('.story-content__nota-premium');
|
|
|
|
|
if (paywall) {
|
|
|
|
|
paywall.classList.remove('story-content__nota-premium');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
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-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-01-28 23:06:25 +01:00
|
|
|
|
for (let i = 0; i < el.classList.length; i++){
|
2019-11-23 05:53:56 +01:00
|
|
|
|
if (el.classList[i].startsWith(prefix)) {
|
|
|
|
|
el.classList.remove(el.classList[i]);
|
|
|
|
|
}
|
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-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);
|
|
|
|
|
});
|
|
|
|
|
}
|