Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name Youtube login block
- // @namespace
- // @version 0.1
- // @description try to take over the world!
- // @author unknown reddit user
- // @match https://www.youtube.com/*
- // @grant none
- // ==/UserScript==
- // SentinelJS is a JavaScript library that lets you detect new DOM nodes
- this.sentinel||function(e,n){var a,o,r,s,l,f;sentinel=(s=Array.isArray,l={},f={},{on:function(e,i){if(i){if(!a){var n=document,t=n.head;n.addEventListener("animationstart",function(e,n,t,i){if(n=f[e.animationName])for(e.stopImmediatePropagation(),t=n.length,i=0;i<t;i++)n[i](e.target)},!0),a=n.createElement("style"),t.insertBefore(a,t.firstChild),o=a.sheet,r=o.cssRules}(s(e)?e:[e]).map(function(e,n,t){(n=l[e])||(t="!"==e[0],l[e]=n=t?e.slice(1):"sentinel-"+Math.random().toString(16).slice(2),r[o.insertRule("@keyframes "+n+"{from{transform:none;}to{transform:none;}}",r.length)]._id=e,t||(r[o.insertRule(e+"{animation-duration:0.0001s;animation-name:"+n+";}",r.length)]._id=e),l[e]=n),(f[n]=f[n]||[]).push(i)})}},off:function(e,a){(s(e)?e:[e]).map(function(e,n,t,i){if(n=l[e]){if(t=f[n],a)for(i=t.length;i--;)t[i]===a&&t.splice(i,1);else t=[];if(!t.length){for(i=r.length;i--;)r[i]._id==e&&o.deleteRule(i);delete l[e],delete f[n]}}})},reset:function(){l={},f={},a&&a.parentNode.removeChild(a),a=0}}),(n=e.createEvent("HTMLEvents")).initEvent?n.initEvent("sentinel-load",!1,!1):n=new Event("sentinel-load"),e.dispatchEvent(n)}(document);
- (() => {
- const isSignedIn = document.cookie.includes('APISID=');
- if (isSignedIn) return;
- addStyles();
- addScript();
- const observer = new MutationObserver(() => {
- const dismissButton = document.querySelector(
- 'yt-upsell-dialog-renderer #dismiss-button'
- );
- dismissButton && dismissButton.click();
- const consentBump = document.querySelector('#consent-bump');
- if (consentBump) {
- consentBump.remove();
- const video = document.querySelector('video');
- const onVideoPauseAfterConsentBump = () => {
- video.play();
- video.removeEventListener('pause', onVideoPauseAfterConsentBump);
- setPopupContainerDisplay();
- };
- video.addEventListener('pause', onVideoPauseAfterConsentBump);
- }
- });
- observer.observe(document.querySelector('ytd-app'), { childList: true });
- sentinel.on('.ytp-large-play-button', (button) => {
- let searchTime;
- try {
- searchTime = parseInt(location.search.match(/&t=(\d+)/)[1]);
- } catch {}
- button.click();
- searchTime && (document.querySelector('video').currentTime = searchTime);
- setPopupContainerDisplay();
- });
- function setPopupContainerDisplay() {
- const popupContainer = document.querySelector('.ytd-popup-container');
- popupContainer && (popupContainer.style.display = 'none');
- }
- function addStyles() {
- const style = document.createElement('style');
- style.innerHTML = /* css */ `
- #consent-bump,
- iron-overlay-backdrop,
- yt-upsell-dialog-renderer {
- display: none !important;
- }
- `;
- document.head.append(style);
- }
- function addScript() {
- const script = document.createElement('script');
- script.innerHTML = /* javascript */ `
- const player = document.querySelector('#movie_player');
- player && (player.stopVideo = function() { console.log("Don't stop!"); });
- `;
- document.body.append(script);
- }
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement