From 1749dd67dee01a2711c3afeb6f4d52205cbe134a Mon Sep 17 00:00:00 2001 From: magnolia1234 <7676006-magnolia1234@users.noreply.gitlab.com> Date: Sat, 13 May 2023 19:13:03 +0200 Subject: [PATCH] Fix El Mercurio (Inversiones) --- background.js | 25 ++++++++++--------------- changelog.txt | 1 + contentScript.js | 19 ++++++++++--------- contentScript_once.js | 2 +- custom/manifest.json | 2 +- manifest.json | 2 +- sites.js | 18 +++++++++++++----- sites_updated.json | 12 ++++++++++++ 8 files changed, 49 insertions(+), 32 deletions(-) diff --git a/background.js b/background.js index 72770107..4aae07a3 100644 --- a/background.js +++ b/background.js @@ -25,7 +25,6 @@ var restrictions = { 'dailywire.com': /^((?!\.dailywire\.com\/(episode|show|videos|watch)).)*$/, 'economictimes.com': /\.economictimes\.com($|\/($|(__assets|prime)(\/.+)?|.+\.cms))/, 'elespanol.com': /^((?!\/cronicaglobal\.elespanol\.com\/).)*$/, - 'elmercurio.com': /^((?!\.elmercurio\.com\/inversiones\/).)*$/, 'espn.com': /^((?!espn\.com\/watch).)*$/, 'esquire.com': /^((?!\/classic\.esquire\.com\/).)*$/, 'foreignaffairs.com': /^((?!\/reader\.foreignaffairs\.com\/).)*$/, @@ -186,8 +185,9 @@ function set_rules(sites, sites_updated, sites_custom) { let site_default = defaultSites.hasOwnProperty(site) ? site : Object.keys(defaultSites).find(default_key => compareKey(default_key, site)); if (site_default) { rule = defaultSites[site_default]; - if (sites_updated.hasOwnProperty(site_default) && !sites_updated[site_default].new_site) - rule = sites_updated[site_default]; + let site_updated = Object.keys(sites_updated).find(updated_key => compareKey(updated_key, site)); + if (site_updated && !sites_updated[site_updated].new_site) + rule = sites_updated[site_updated]; } else if (sites_updated.hasOwnProperty(site)) { // updated (new) sites rule = sites_updated[site]; } else if (sites_custom.hasOwnProperty(site)) { // custom (new) sites @@ -1363,18 +1363,13 @@ ext_api.runtime.onMessage.addListener(function (message, sender) { let nofix_groups = ['###_be_mediahuis', '###_ch_tamedia', '###_de_rp_aachen_medien', '###_fi_alma_talent', '###_it_citynews']; if (!custom_flex_domains.includes(custom_domain)) { if (enabledSites.includes(group)) { - let rules; - if (group === 'elmercurio.com') - rules = {block_regex: "(\\.{domain}\\/impresa\\/.+\\/assets\\/(vendor|\\d)\\.js|pram\\.pasedigital\\.cl\\/API\\/User\\/Status\\?)"}; - else { - rules = Object.values(defaultSites).filter(x => x.domain === group)[0]; - if (rules) { - if (group === '###_de_madsack') - if (!set_var_sites.includes(custom_domain)) - set_var_sites.push(custom_domain); - } else - rules = Object.values(customSites).filter(x => x.domain === group)[0]; - } + let rules = Object.values(defaultSites).filter(x => x.domain === group)[0]; + if (rules) { + if (group === '###_de_madsack') + if (!set_var_sites.includes(custom_domain)) + set_var_sites.push(custom_domain); + } else + rules = Object.values(customSites).filter(x => x.domain === group)[0]; if (rules) { custom_flex_domains.push(custom_domain); if (!enabledSites.includes(custom_domain)) diff --git a/changelog.txt b/changelog.txt index 126016c9..11aadf30 100644 --- a/changelog.txt +++ b/changelog.txt @@ -8,6 +8,7 @@ Add Monocle (UK) Add Stylist.co.uk Fix Advance Local (no amp) Fix El Espanol (js) +Fix El Mercurio (Inversiones) * v3.1.7.3 (2023-05-08) Remove Medienhaus Aachen (fix obsolete) diff --git a/contentScript.js b/contentScript.js index eafce695..3a81c836 100644 --- a/contentScript.js +++ b/contentScript.js @@ -2177,7 +2177,7 @@ else if (matchDomain(['lc.nl', 'dvhn.nl'])) { try { let pars = JSON.parse(json_text); function addParText(elem, par_text, add_br = false) { - if (par_text.length > 1) { + if (par_text.length > 2) { let span = document.createElement('span'); span.innerText = par_text; elem.appendChild(span); @@ -3024,14 +3024,15 @@ else if (matchDomain('valor.globo.com')) { } else if (window.location.hostname.endsWith('.cl') && document.querySelector('meta[property="og:image"][content*="://impresa.soy-chile.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'); + window.setTimeout(function () { + let content = document.querySelector('div.content'); + if (content) + content.setAttribute('id', 'content_new'); + let modal_wrapper = document.querySelector('div.modal-wrapper'); + removeDOMElement(modal_wrapper); + }, 1000); + waitDOMAttribute('body', 'BODY', 'class', node => node.removeAttribute('class'), true); + csDoneOnce = true; } else diff --git a/contentScript_once.js b/contentScript_once.js index 0a6630c4..a0668067 100644 --- a/contentScript_once.js +++ b/contentScript_once.js @@ -52,7 +52,7 @@ window.setTimeout(function () { if (matchDomain(['gva.be', 'hbvl.be', 'nieuwsblad.be', 'standaard.be'])) group = '###_be_mediahuis';// no fix } else if (hostname.endsWith('.cl')) { - if (document.querySelector('meta[content*="/impresa.soy-chile.cl/"]')) + if (document.querySelector('meta[property="og:image"][content*="/impresa.soy-chile.cl/"]')) group = 'elmercurio.com'; } else if (hostname.match(/\.(de|at|ch)$/) || matchDomain(['horizont.net', 'lebensmittelzeitung.net'])) { if (document.querySelector('script[data-cmp-src*=".funkedigital.de/"], div#fmg-markenanker > a[href="https://www.funkemedien.de/"]')) diff --git a/custom/manifest.json b/custom/manifest.json index 53f339da..38054b55 100644 --- a/custom/manifest.json +++ b/custom/manifest.json @@ -51,5 +51,5 @@ "webRequestBlocking", "*://*/*" ], - "version": "3.1.7.6" + "version": "3.1.7.7" } diff --git a/manifest.json b/manifest.json index b6e65c3a..f4e713ff 100644 --- a/manifest.json +++ b/manifest.json @@ -757,5 +757,5 @@ "*://html.onlineviewer.net/*", "*://webcache.googleusercontent.com/*" ], - "version": "3.1.7.6" + "version": "3.1.7.7" } diff --git a/sites.js b/sites.js index 3c582b54..4b659876 100644 --- a/sites.js +++ b/sites.js @@ -481,11 +481,19 @@ var defaultSites = { allow_cookies: 1, block_regex: /(\.tinypass\.com\/|cdn\.cxense\.com\/|cdn\.ampproject\.org\/v\d\/amp-subscriptions-.+\.js)/ }, - "El Mercurio (not Inversiones; + regional/opt-in to custom sites)": { + "El Mercurio (+ regional/opt-in to custom sites)": { domain: "elmercurio.com", - allow_cookies: 1, - block_regex: /\.(elmercurio\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/, - useragent: "googlebot" + group: [ + "elmercurio.com" + ], + block_regex: "(\\.{domain}\\/impresa\\/.+\\/assets\\/(vendor|\\d)\\.js|pram\\.pasedigital\\.cl\\/API\\/User\\/Status\\?)", + exception: [{ + domain: "elmercurio.com", + allow_cookies: 1, + block_regex: /\.(elmercurio\.com|emol\.cl)\/(.+\/)?js\/(.+\/)?(modal|merPramV\d|PramModal\.min)\.js/, + useragent: "facebookbot" + } + ] }, "El Observador.com.uy": { domain: "elobservador.com.uy", @@ -2553,4 +2561,4 @@ init_custom_flex_domains(); // sites with no fix (background) var it_gedi_nofix_domains = ['gelocal.it', 'huffingtonpost.it', 'ilsecoloxix.it', 'lastampa.it', 'limesonline.com', 'repubblica.it']; -var nofix_sites = ['aamulehti.fi', 'africaintelligence.com', 'africaintelligence.fr', 'aftenposten.no', 'asiatimes.com', 'badische-zeitung.de', 'bild.de', 'bloomberglaw.com', 'bloombergtax.com', 'borsen.dk', 'business-standard.com', 'businessinsider.de', 'businesstimes.com.sg', 'caixin.com', 'caixinglobal.com', 'caravanmagazine.in', 'catalyst-journal.com', 'courrierinternational.com', 'deutsche-wirtschafts-nachrichten.de', 'diepresse.com', 'elordenmundial.com', 'epw.in', 'expresso.pt', 'finance.si', 'ftchinese.com', 'gamestar.de', 'golem.de', 'handelsblatt.com', 'heise.de', 'hln.be', 'hs.fi', 'ilsole24ore.com', 'investors.com', 'iltalehti.fi', 'jacobinmag.com', 'jeuneafrique.com', 'kleinezeitung.at', 'lavie.fr', 'lavozdegalicia.es', 'law360.com', 'le1hebdo.fr', 'leconomiste.com', 'lemonde.fr', 'lequipe.fr', 'letemps.ch', 'liberation.fr', 'lopinion.fr', 'medianama.com', 'mediapart.fr', 'milanofinanza.it', 'mittelbayerische.de', 'monde-diplomatique.fr', 'mondediplo.com', 'moneycontrol.com', 'nationaljournal.com', 'manager-magazin.de', 'nature.com', 'nbr.co.nz', 'nn.de', 'nwzonline.de', 'ouest-france.fr', 'philonomist.com', 'pnp.de', 'politicopro.com', 'politiken.dk', 'pressreader.com', 'publico.pt', 'puck.news', 'republic.ru', 'rheinpfalz.de', 'risk.net', 'rnz.de', 'ruhrnachrichten.de', 'saechsische.de', 'schwarzwaelder-bote.de', 'statnews.com', 'stern.de', 'stimme.de', 'straitstimes.com', 'stuttgarter-nachrichten.de', 'stuttgarter-zeitung.de', 'suedkurier.de', 'swp.de', 'techcrunch.com', 'the-ken.com', 'thedispatch.com', 'theinformation.com', 'themorningcontext.com', 'theparisreview.org', 'thewirechina.com', 'welt.de', 'weser-kurier.de', 'wiwo.de', 'worldpoliticsreview.com', 'ynet.co.il', 'zeit.de'].concat(it_gedi_nofix_domains); +var nofix_sites = ['aamulehti.fi', 'africaintelligence.com', 'africaintelligence.fr', 'aftenposten.no', 'asiatimes.com', 'badische-zeitung.de', 'bild.de', 'bloomberglaw.com', 'bloombergtax.com', 'borsen.dk', 'business-standard.com', 'businessinsider.de', 'businesstimes.com.sg', 'caixin.com', 'caixinglobal.com', 'caravanmagazine.in', 'catalyst-journal.com', 'courrierinternational.com', 'deutsche-wirtschafts-nachrichten.de', 'diepresse.com', 'elordenmundial.com', 'epw.in', 'expresso.pt', 'finance.si', 'ftchinese.com', 'gamestar.de', 'golem.de', 'handelsblatt.com', 'heise.de', 'hln.be', 'hs.fi', 'ilsole24ore.com', 'investors.com', 'iltalehti.fi', 'jacobinmag.com', 'jeuneafrique.com', 'kleinezeitung.at', 'lavie.fr', 'lavozdegalicia.es', 'law360.com', 'le1hebdo.fr', 'leconomiste.com', 'lefilmfrancais.com', 'lemonde.fr', 'lequipe.fr', 'letemps.ch', 'liberation.fr', 'lopinion.fr', 'medianama.com', 'mediapart.fr', 'milanofinanza.it', 'mittelbayerische.de', 'monde-diplomatique.fr', 'mondediplo.com', 'moneycontrol.com', 'morningstar.com', 'nationaljournal.com', 'manager-magazin.de', 'nature.com', 'nbr.co.nz', 'nn.de', 'nwzonline.de', 'ouest-france.fr', 'philonomist.com', 'pnp.de', 'politicopro.com', 'politiken.dk', 'pressreader.com', 'publico.pt', 'puck.news', 'republic.ru', 'rheinpfalz.de', 'risk.net', 'rnz.de', 'ruhrnachrichten.de', 'saechsische.de', 'schwarzwaelder-bote.de', 'statnews.com', 'stern.de', 'stimme.de', 'straitstimes.com', 'stuttgarter-nachrichten.de', 'stuttgarter-zeitung.de', 'suedkurier.de', 'swp.de', 'techcrunch.com', 'the-ken.com', 'thedispatch.com', 'theinformation.com', 'themorningcontext.com', 'theparisreview.org', 'thewirechina.com', 'welt.de', 'weser-kurier.de', 'wiwo.de', 'worldpoliticsreview.com', 'ynet.co.il', 'zeit.de'].concat(it_gedi_nofix_domains); diff --git a/sites_updated.json b/sites_updated.json index 3002bb4c..6199367c 100644 --- a/sites_updated.json +++ b/sites_updated.json @@ -14,6 +14,18 @@ "allow_cookies": 1, "block_regex": "(\\.tinypass\\.com\\/|cdn\\.ampproject\\.org\\/v\\d\\/amp-(access|subscriptions)-.+\\.js)" }, + "El Mercurio (+ regional/opt-in to custom sites)": { + "domain": "elmercurio.com", + "allow_cookies": 1, + "block_regex": "\\.(elmercurio\\.com|emol\\.cl)\\/(.+\\/)?js\\/(.+\\/)?(modal|merPramV\\d|PramModal\\.min)\\.js", + "useragent": "facebookbot" + }, + "El Mercurio (not Inversiones; + regional/opt-in to custom sites)": { + "domain": "elmercurio.com", + "allow_cookies": 1, + "block_regex": "\\.(elmercurio\\.com|emol\\.cl)\\/(.+\\/)?js\\/(.+\\/)?(modal|merPramV\\d|PramModal\\.min)\\.js", + "useragent": "facebookbot" + }, "Il Messaggero (+ regional)": { "domain": "###_it_ilmessaggero", "group": [