Fix Humanite.fr (json)

merge-requests/20/head
magnolia1234 3 months ago
parent ff1104a13d
commit 1c7e99b513

@ -6,6 +6,7 @@ Post-release
Add Forbes.com.au
Add Vogue.co.uk (Conde Nast)
Fix Haaretz Group (disable bot)
Fix Humanite.fr (json)
* v3.5.6.0 (2024-02-18)
Add 3 more Gannett sites

@ -1923,18 +1923,30 @@ else if (matchDomain(fr_groupe_nice_matin_domains)) {
}
else if (matchDomain('humanite.fr')) {
if (window.location.search.startsWith('?amp')) {
let qiota_script = document.querySelector('amp-script[src^="https://www.qiota.com/"]');
if (qiota_script) {
let amphtml_fill_content = qiota_script.querySelector('div.i-amphtml-fill-content');
if (amphtml_fill_content)
amphtml_fill_content.removeAttribute('class');
let i_amphtml_sizer = qiota_script.querySelector('i-amphtml-sizer');
removeDOMElement(i_amphtml_sizer);
let paywall = document.querySelector('div.single__categories svg');
if (paywall && dompurify_loaded) {
let json_script = document.querySelector('script[id="module-sage-index.js-js-extra"]');
if (json_script) {
csDoneOnce = true;
if (json_script.text.match(/js_vars\s?=\s?/)) {
try {
let json = JSON.parse(json_script.text.split(/js_vars\s?=\s?/)[1].split('};')[0] + '}');
let json_text = json.post.post_content.split('<!-- /wp:huma/featured-media -->')[1];
let article = document.querySelector('div.rich-text > div.gs-row');
if (article) {
let parser = new DOMParser();
let doc = parser.parseFromString('<div>' + DOMPurify.sanitize(json_text, dompurify_options) + '</div>', 'text/html');
let article_new = doc.querySelector('div');
if (article_new) {
article.innerHTML = '';
article.appendChild(article_new);
}
}
} catch (err) {
console.log(err);
}
}
}
} else {
let banner = document.querySelector('div.qiota');
removeDOMElement(banner);
}
}

4
lib/purify.min.js vendored

File diff suppressed because one or more lines are too long

@ -1371,7 +1371,8 @@ var defaultSites = {
"L'Humanité": {
domain: "humanite.fr",
allow_cookies: 1,
block_regex: /\.qiota\.com\//
block_regex: /\.qiota\.com\//,
cs_dompurify: 1
},
"L'Informé": {
domain: "linforme.com",

Loading…
Cancel
Save