Greasy Fork is available in English.
Removes playback limitation and dialog "The time has come to open thy heart/wallet"
当前为
// ==UserScript==
// @name Bandcamp: I'm Not A Fan
// @name:ru Bandcamp: Я не фанат
// @description Removes playback limitation and dialog "The time has come to open thy heart/wallet"
// @description:ru Снимает ограничение воспроизведений и убирает диалог "Пришло время открыть свое сердце/кошелек"
// @namespace bc-inotafan.user.js
// @version 1.0.2
// @license MIT
// @author askornot
// @icon https://s4.bcbits.com/img/favicon/safari-pinned-tab.svg
// @match https://*.bandcamp.com/*
// @homepageURL http://greasyfork.icu/ru/scripts/438039-bandcamp-i-m-not-a-fan
// @supportURL http://greasyfork.icu/ru/scripts/438039-bandcamp-i-m-not-a-fan/feedback
// @grant unsafeWindow
// @run-at document-end
// @compatible chrome Violentmonkey 2.13.0
// @compatible firefox Tampermonkey 4.13.6136
// ==/UserScript==
'use strict';
const W = unsafeWindow || window;
const player = W.Player;
if (player === undefined) return;
const proxy = (target, index, fn) => {
target = new Proxy(target, {
apply(...args) {
fn(args[index]);
return Reflect.apply(...args);
},
});
};
const target = 'copy';
const proto = player.TrackInfo.prototype;
const uncap = (o) => (o.is_capped = false);
proxy(proto[target], 1, uncap);
const tralbum = W.TralbumData;
if (tralbum === undefined) return;
const value = Object.freeze({
streaming_limits_enabled: false,
streaming_limit: Infinity,
});
Object.defineProperty(tralbum, 'play_cap_data', {
configurable: false,
enumerable: true,
writable: false,
value,
});