Greasy Fork

Rock Paper Shotgun [RPS] & Eurogamer embed fix

Enable embedded third party content on RPS & Eurogamer despite having rejected cookies

目前为 2023-10-31 提交的版本。查看 最新版本

// ==UserScript==
// @name         Rock Paper Shotgun [RPS] & Eurogamer embed fix
// @version      7
// @description  Enable embedded third party content on RPS & Eurogamer despite having rejected cookies
// @author       Tim Smith
// @license      GPL-3.0 License
// @namespace    https://greasyfork.org/users/945293
// @match        *://www.rockpapershotgun.com/*
// @match        *://www.eurogamer.net/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=rockpapershotgun.com
// ==/UserScript==

(function() {

function dashStyle(camelCase) {
	return camelCase.replaceAll(/[A-Z]/g, letter => `-${letter.toLowerCase()}`);
}

const sources = [
	['iframe', 'src', 'embed.acast.com'],
	['script', 'src', 'apester.com'],
	['iframe', 'src', 'bandcamp.com'],
	['iframe', 'src', 'efmfeedback.com'],
	['iframe', 'src', 'docs.google.com'],
	['iframe', 'src', 'gfycat.com'],
	['iframe', 'src', 'giphy.com'],
	['iframe', 'src', 'libsyn.com'],
	['iframe', 'src', 'megaphone.fm'],
	['script', 'cookiesSrc', 'primis.tech'],
	['iframe', 'src', 'redditmedia.com'],
	['iframe', 'src', 'soundcloud.com'],
	['iframe', 'src', 'spotify.com'],
	['iframe', 'src', 'twitch.tv'],
	['iframe', 'src', 'youtube']
];
const selectors = sources.map(source => `${source[0]}[data-${dashStyle(source[1])}*="${source[2]}"]`);
document.querySelectorAll(selectors.join()).forEach(element => {
	const source = sources.find(source => source[1] in element.dataset && element.dataset[source[1]].includes(source[2]));
	element.src = element.dataset[source[1]];
});

if (document.querySelector('blockquote.twitter-tweet') !== null) {
	const widgetScript = document.createElement('script');
	widgetScript.async = true;
	widgetScript.src = 'https://platform.twitter.com/widgets.js';
	widgetScript.charset = 'utf-8';
	document.head.appendChild(widgetScript);
}

})();