您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Για να γουστάρουμε..
// ==UserScript== // @name Pr0γκραμ TV // @namespace GamateKID // @version 3.4 // @description Για να γουστάρουμε.. // @author GamateKID // @match http*://pr0gramm.com/* // @icon https://s12.postimg.org/qnz4gpyzh/pr0gramm_favicon.png // @grant none // ==/UserScript== (function() { 'use strict'; let img; let vid; let timerTimeout; let nextTimeout; let timer = null; let browsing = false; let paused = false; let replay = false; const imgDelay = 3000; console.log('Pr0γκραμ is running\n'); customize(); var favicon = document.querySelector("link[rel*='icon']") || document.createElement('favicon'); favicon.type = 'image/x-icon'; favicon.rel = 'shortcut icon'; favicon.href = 'https://s12.postimg.org/qnz4gpyzh/pr0gramm_favicon.png'; document.getElementsByTagName('head')[0].appendChild(favicon); const overlay = document.createElement('div'); overlay.className = 'overlay'; overlay.style.display = 'none'; const overlayLoading = document.createElement('div'); overlayLoading.className = 'loading'; overlayLoading.innerHTML = 'φορτώνει...'; overlay.appendChild(overlayLoading); const menu = document.getElementById("head-menu"); var toggle = document.createElement("a"); toggle.setAttribute("id", "tab-tv"); toggle.className = 'head-tab link'; toggle.innerHTML = 'TV'; toggle.addEventListener('click', toggleRunning); insertAfter(document.getElementById('tab-top'), toggle); const style = document.createElement('style'); document.querySelector('head').appendChild(style); const body = document.querySelector('body'); body.insertBefore(overlay, body.firstChild); if($('#filter-link-name').html()==='nsfw'){ const troll_left = document.createElement('img'); troll_left.setAttribute("src", "http://i63.tinypic.com/2r389li.png"); troll_left.setAttribute("id", "troll-left"); troll_left.setAttribute("style", "width:300px;height:310px;position:absolute;left:50px;top:180px;filter:alpha(opacity=10);"); body.insertBefore(troll_left, document.getElementById('page')); const troll_right = document.createElement('img'); troll_right.setAttribute("src", "http://i64.tinypic.com/2hq427c.png"); troll_right.setAttribute("id", "troll-right"); troll_right.setAttribute("style", "width:300px;height:310px;position:absolute;right:50px;top:180px;filter: alpha(opacity=10);"); body.insertBefore(troll_right, document.getElementById('page')); troll_left.addEventListener('click', function(){window.location.replace("http://2girls1cup.ca/wp-content/uploads/2015/03/2girls1cupvideo.mp4?_=1");}); troll_right.addEventListener('click', function(){window.location.replace("http://www.1man1jar.org/1man1jar.mp4");}); $(window).bind("load resize scroll",function(e) { var y = $(window).scrollTop(); $("#troll-left").css("margin-top", y+"px"); $("#troll-right").css("margin-top", y+"px"); }); const trololo1 = document.createElement('img'); trololo1.setAttribute("src", "http://i65.tinypic.com/s6t2s4.png"); trololo1.setAttribute("style", "width:20px;height:30px;position:absolute;margin-left:5px;margin-top:-4px;"); trololo1.addEventListener('click', toggleRunning); document.getElementById('head-menu').insertBefore(trololo1, document.getElementById('tab-tv')); } initStyles(); window.onresize = initStyles; window.onload = disableAds; document.addEventListener("keydown", (event) => { if (event.keyCode === 80 /*P*/ ) { toggleRunning(); } if (browsing) { if (event.keyCode === 32 /*Space*/ ) { if (timer) { toggleTimer(); } else { togglePauseVideo(); } event.preventDefault(); } if (event.keyCode === 82 /*R*/ ) { replay = !replay; } if (event.keyCode === 27 && browsing /*Esc*/ ) { event.preventDefault(); event.stopPropagation(); stop(); } if (event.keyCode === 37 /*left*/ || event.keyCode === 39 /*right*/ || event.keyCode === 65 /*left*/ || event.keyCode === 68 /*right*/ ) { if (vid) { clearTimeout(nextTimeout); browse(); } else { clearTimeout(timerTimeout); timer = null; browse(); } } if (event.keyCode === 100 /*NUM4*/ ) { if (vid) { event.preventDefault(); vid.currentTime -= 5; } } if (event.keyCode === 102 /*NUM6*/ ) { if (vid) { event.preventDefault(); vid.currentTime += 5; } } if (event.keyCode === 104 /*NUM8*/ ) { if (vid) { if (vid.muted) { vid.muted = false; } if (vid.volume < 0.9) { event.preventDefault(); vid.volume += 0.1; } moveVolumeSlider(vid.volume); } } if (event.keyCode === 98 /*NUM2*/ ) { if (vid) { if (vid.volume > 0.1) { event.preventDefault(); vid.volume -= 0.1; } else { vid.muted = true; vid.volume = 0; } moveVolumeSlider(vid.volume); } } if (event.keyCode == 87 /*w*/) { $("#key-indicator").appendTo(overlay); } } }, false); function toggleRunning() { if (/^\/(top|new)\//.test(window.location.pathname)) { if (!browsing) { $('#troll-left').hide(); $('#troll-right').hide(); toggleFullScreen(document.documentElement); browse(); overlay.style.display = ''; body.style.overflowY = 'hidden'; } else { $('#troll-left').show(); $('#troll-right').show(); toggleFullScreen(document.documentElement); body.style.overflowY = ''; stop(); } browsing = !browsing; }else{ overlay.style.display = 'none'; } console.log(browsing? 'Pr0γκραμ browser started' : 'Pr0γκραμ browser stopped'); } function stop() { if(vid!==null && vid !== undefined){ vid.setAttributeNode(document.createAttribute('loop')); } clearTimeout(nextTimeout); clearTimeout(timerTimeout); var item = document.querySelector('.item-container-content'); if (vid) { item.insertBefore(vid.parentElement, item.firstChild); vid.play(); } else { if (img) { item.insertBefore(img.parentElement, item.firstChild); } } // vid.pause(); overlay.style.display = 'none'; body.style.overflowY = ''; } //continuesly browsing the elements function browse() { timer = null; vid=null; img= null; clearTimeout(nextTimeout); var lastchild = overlay.lastChild; if ((overlay.children.length > 1) && browsing) overlay.removeChild(lastchild); vid = document.querySelector('video'); img = document.querySelector('img.item-image'); if (vid!==null) { var volumeBar = document.getElementsByClassName('audio-volume-controls')[0]; if(volumeBar!==null && volumeBar !== undefined){ var stl = document.createAttribute('style'); stl.value = 'opacity: 1;'; volumeBar.setAttributeNode(stl); } overlay.appendChild(vid.parentElement); vid.removeAttribute('loop'); vid.removeAttribute('style'); vid.parentElement.querySelector('.video-controls').style.width = ''; vid.addEventListener('ended', (event) => { if (replay) vid.play(); else nextTimeout = setTimeout(clickNext, 50); }, false); vid.play(); } else if(img!==null){ overlay.appendChild(img.parentElement); timer = new Timer(function() { nextTimeout = setTimeout(clickNext, 50); }, imgDelay); }else{ overlay.appendChild(lastchild); } } //Secondary functions //Update Volume Control Bar function moveVolumeSlider(value){ var volumeBarSlider = document.getElementsByClassName('audio-volume-slider')[0]; // var currLeft = volumeBarSlider.style.left; // var currLeftValue = parseInt(currLeft.substring(0, currLeft.indexOf('%'))); // volumeBarSlider.style.left = currLeftValue+value+'%'; // volumeBarIcon.className = 'audio-state audio-volume-33'; volumeBarSlider.style.left = value*100+'%'; var volumeBarIcon = document.getElementsByClassName('audio-state')[0]; if(value === 0){ $(".audio-state").attr('class', 'audio-state audio-volume-0'); }else if(value*100<=33){ $(".audio-state").attr('class', 'audio-state audio-volume-33'); }else if(value*100<=66){ $(".audio-state").attr('class', 'audio-state audio-volume-66'); }else{ $(".audio-state").attr('class', 'audio-state audio-volume-99'); } } function togglePauseVideo() { if (vid) { if (vid.paused) { vid.play(); } else { vid.pause(); } } } //Delay a function call //@callback: callback function //@delay: time delay in ms function Timer(callback, delay) { var start, remaining = delay; this.pause = function() { window.clearTimeout(timerTimeout); //remaining -= new Date() - start; remaining = 0; }; this.resume = function() { start = new Date(); window.clearTimeout(timerTimeout); timerTimeout = window.setTimeout(callback, remaining); }; this.resume(); } function toggleTimer() { if (paused) { timer.resume(); paused = false; console.log('resumed!'); } else { timer.pause(); paused = true; console.log('paused!'); } } function eventFire(elem, etype) { if (elem.fireEvent) { elem.fireEvent('on' + etype); } else { const evObj = document.createEvent('Events'); evObj.initEvent(etype, true, false); elem.dispatchEvent(evObj); } } function clickNext() { if (browsing) { eventFire(document.querySelector('.stream-next'), 'click'); browse(); } } function getViewportSize() { var w = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], x = w.innerWidth || e.clientWidth || g.clientWidth, y = w.innerHeight || e.clientHeight || g.clientHeight; return { x, y }; } function toggleFullScreen(elem){ if ((document.fullScreenElement !== undefined && document.fullScreenElement === null) || (document.msFullscreenElement !== undefined && document.msFullscreenElement === null) || (document.mozFullScreen !== undefined && !document.mozFullScreen) || (document.webkitIsFullScreen !== undefined && !document.webkitIsFullScreen)) { if (elem.requestFullScreen) { elem.requestFullScreen(); } else if (elem.mozRequestFullScreen) { elem.mozRequestFullScreen(); } else if (elem.webkitRequestFullScreen) { elem.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT); } else if (elem.msRequestFullscreen) { elem.msRequestFullscreen(); } } else { if (document.cancelFullScreen) { document.cancelFullScreen(); } else if (document.mozCancelFullScreen) { document.mozCancelFullScreen(); } else if (document.webkitCancelFullScreen) { document.webkitCancelFullScreen(); } else if (document.msExitFullscreen) { document.msExitFullscreen(); } } } function insertAfter(referenceNode, newNode) { referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling); } function disableAds(){ var ads = document.getElementById("ads"); if(ads !== null && ads !== undefined){ ads.style.display = "none"; } var ads2 = document.getElementById("adunit"); if(ads2 !== null && ads2 !== undefined){ ads2.style.display = "none"; } var moreAds = document.getElementsByTagName('iframe')[0]; if(moreAds!==null && moreAds!==undefined){ var i; for(i=0;i<moreAds.length;i++){ if(moreAds[i] !== null && moreAds[i] !== undefined){ moreAds[i].style.display = "none"; } } } } function customize(){ try { document.getElementById("tab-new").innerHTML = 'πρόσφατα'; document.getElementById("tab-new").addEventListener('click', function(){ document.getElementsByName("q")[0].placeholder = "Αναζήτηση στα πρόσφατα.."; }); document.getElementById("tab-top").innerHTML = 'δημοφιλή'; document.getElementById("tab-top").addEventListener('click', function(){ document.getElementsByName("q")[0].placeholder = "Αναζήτηση στα δημοφιλη.."; }); document.getElementById("tab-stalk").style.display = 'none'; document.getElementById("secret-santa-badge").style.display = 'none'; document.getElementsByClassName("filter-desc")[0].innerHTML = "Safe For Work (απλά)"; document.getElementsByClassName("filter-desc")[1].innerHTML = "Not Safe For Work (πορνό)"; document.getElementsByClassName("filter-desc")[2].innerHTML = "Not Safe For Life (αηδίες)"; document.getElementById("filter-save").innerHTML = "εφαρμογή φίλτρου"; if (/^\/(top)/.test(window.location.pathname)) { document.getElementsByName("q")[0].placeholder = "Αναζήτηση στα δημοφιλη.."; }else{ document.getElementsByName("q")[0].placeholder = "Αναζήτηση στα πρόσφατα.."; } var msg = document.getElementsByClassName("main-message")[0]; if(msg!==null && msg!== undefined){ msg.innerHTML = "Ξαναεπέλεξε μια κατηγορία."; } }catch(err){console.log(err.message);} } //CSS styles override function initStyles() { const viewportSize = getViewportSize(); style.innerHTML = ` body { position: relative; } .overlay { position: fixed; background-color: rgba(0,0,0,0.9); width: ${viewportSize.x}px; height: ${viewportSize.y}px; z-index: 99999990; display: flex; align-items: center; justify-content: center; top: 0; left: 0; overflow: auto; } .overlay video { width: ${viewportSize.x}px; height: ${viewportSize.y-3}px; /*so we can still see the progress bar*/ pointer-events: none; } .overlay .video-controls { width: 100%; } .overlay h1 { font-size: 120px; } .overlay div.video-controls { cursor: pointer; } .overlay div.video-controls:hover div.video-position-bar-background { height: 8px; opacity: 0.8; transition: height 0.2s ease; } .overlay div.video-controls:hover div.audio-controls, .tv-overlay div.video-controls:hover div.audio-volume-controls { opacity: 1; transition: opacity 0.2s ease; } .overlay .loading { position: absolute; left: 50%; right: 50%; top: 50%; bottom: 50%; font-size: 22px; color: #008FFF; white-space: nowrap; } .control { position: fixed; z-index: 99999991; top: 5px; left: 5px; border: 3px solid #008FFF; color: #008FFF; border-radius: 5px; width: 80px; height: 80px; background: rgba(0,0,0,0.3); padding: 3px 5px; cursor: pointer; display: flex; justify-content: center; align-items: center; } #head-menu a:hover, #filter-link-name:hover, #user-profile-name:hover, .comment-reply-link, .tags-expand, .add-tags-link, .vote-up:hover, .vote-fav:hover, #search-submit-inline:hover, .tab-bar a:hover, .tab-bar a:active, .pict .vote-fav.faved, .head-link.empty:hover, .head-link:hover, .tag a[title="Removing tag"], .filter-setting.active, .active .filter-name, a.active, .faved, .voted-up .vote-up, .warn, #settings-logout-link, .action.expand-thread, a[href='/inbox/unread'] .pict, a[href='/inbox/unread'] #inbox-count, #key-indicator{ color: #008fff !important; } .confirm-button:hover{ color: #000 !important; } a:hover, .tags-expand:hover, #settings-logout-link:hover, .action.expand-thread:hover{ color: #FFF !important; } .confirm, .confirm-button, #loader div{ background: #008fff; } input[value=Abschicken], .search-submit, input[value='Nachricht senden'], .user-follow, input[value='Einstellungen speichern'], input[value='E-Mail Adresse ändern'], input[value='Passwort ändern'], input[value='Einladung verschicken'], input[value='Tags speichern'], .user-comment-op, input[value='Anmelden'], .confirm-button.product-select, input[value='Bild Hochladen']{ background: #008fff !important; opacity:1; } input.q{ width: 200px; } #filter-save:hover, .user-follow:hover, .confirm-button.product-select:hover, input[value='Einladung verschicken']:hover, input[value='E-Mail Adresse ändern']:hover, input[value='Passwort ändern']:hover, input[value='Einstellungen speichern']:hover, input[value='Anmelden']:hover, input[value='Tags speichern']:hover, input[value=Abschicken]:hover, input[value='Nachricht senden']:hover, input[value='Einladung verschicken']:hover, input[value='Bild Hochladen']:hover{ background: #fff !important; } input[value='Bild Hochladen']:disabled{ background: #5e5e5e !important; } #filter-save{ background: #008fff !important; } .stream-prev .stream-prev-icon, .stream-next .stream-next-icon{ background: #008fff !important; } .filter-setting.active .filter-check{ background: #008fff !important; border-color:#008fff !important; } #upload-droparea{ border: 1px #008fff solid !important; } #pr0gramm-logo-background{ fill: #008fff !important; } #gpt-divider-rectangle{ display:none !important; } #gpt-skyscraper-left{ display:none !important; } #gpt-skyscraper-right{ display:none !important; } `;} })();