Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name StreamCloud Enhancer
- // @namespace http://greasyfork.org/scripts/16496
- // @description Prepares video for playback and enables download.
- // @include *streamcloud.eu/*
- // @copyright 2015, schwarztee / 2018, Djamana
- // @license MIT
- // @version 0.2
- // @icon http://i.imgur.com/MTTvgbC.png
- // @grant GM_getValue
- // @grant GM_setValue
- // ==/UserScript==
- // jQuery ist auf streamcloud.eu verfügbar und kann genutzt werden
- //
- // include #1
- // Tiny jQuery Plugin https://css-tricks.com/snippets/jquery/check-if-element-exists/
- // by Chris Goodchild
- $.fn.exists = function(callback) {
- var args = [].slice.call(arguments, 1);
- if (this.length) {
- callback.call(this, args);
- }
- return this;
- };
- //
- // =======================================================
- // Allgemeine Kosmetik: Mehr Platz für's Video
- (function Slim_Header() {
- try {
- $('#header') .height(70);
- $('#header ul') .css( "margin-top","10px");
- $('.logo') .css( "margin-top","0px");
- $('.alert-message,.msgboxinfo') .remove();
- } catch(e) {
- }
- })();
- //
- // =======================================================
- // Warteseite?
- //
- $( '#btn_download' ).exists( function () {
- (function submitForm() {
- // Event-Handler entfernen, der Absenden des Formulars verhindert
- $(document).off( 'submit', 'form.proform' );
- // go to download page (download2) -
- //( note: download1 will just trigger a reload if server countdown is not finished
- // but download2 doesn't have that checking )
- $( '[name=op]' ).val("download2");
- // store original FileName for later
- GM_setValue("SC_fname", $('[name=fname]').val() );
- // Formular absenden
- $( 'form.proform' ).submit();
- })();
- // 11 Sekunden warten (unvermeidbar, wird serverseitig kontrolliert)
- // ABER nur für op=download1 bei op=download2 können wir uns ohne Warten durchmogeln
- // Zudem ist eine on hide eventprozedure an den countdownButton anhängen die ausgrufen wird wenn den verschwindet direkter
- // als ein Timeer bzw das via MutationObserver tiggern( https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver)
- // setTimeout( submitForm, 11000 );
- });
- //
- // =======================================================
- // Videoseite?
- //setTimeout( _ => {
- debugger;
- if ( unsafeWindow.jwplayer )
- {
- // Referenz auf Player zurechtlegen
- var player = jwplayer( 'mediaplayer' );
- // 'richtigen' Dateiname holen
- var fname = GM_getValue("SC_fname","Somevideo.mp4");
- // Dateiname links über dem Fenster anzeigen
- $( '.header h1' )
- .text(fname);
- // Dateiname in die DownloadUrl einbauen
- var videoURL = player.config.file;
- videoURL = videoURL.replace("video.mp4", fname);
- // Link des Download-Button korrigieren
- $( '.header ul li:last-child a' )
- .attr( {
- href: videoURL,
- title: "Direktlink zum Video"
- });
- // Pausenfunktion an 'fnPause' binden
- fnPause = player.pause;
- // Wiedergabe anhalten, sobald bereit zum Abspielen
- player.onPlay( _ =>
- {
- // pausieren
- fnPause();
- // Pausenfunktion entfernen
- fnPause = undefined;
- });
- // Laden des Videos starten
- player.play();
- }
- //},1000);
- /*
- // Funzt nicht wirklich gut - Besser 'ne Adblocker verwenden
- // Problem: Klicken innerhalb des fortschrittsbalkens der Players geht nicht
- // Workaround: Klicken und gleichzeitig die Maus bewegen sodass ein 'drag' event draus wird
- function RemoveAds () {
- setTimeout( function() {
- try {
- debugger;
- // Popunder mousedown EventListener überlagern
- //document.removeEventListener("mousedown",T4,true);
- //^ Löschen leider nicht möglich ohne Verbindung zu T4
- window.addEventListener("mousedown", event => {
- if (event.target.tagName != "SPAN")
- event.stopPropagation();
- // ^- Problem: das verhindert auch das Klicken innerhalb des Fortschrittsbalkens der Players
- }, false);
- // Kill smartOverlay
- $('[style*=z-index][style*=2000]')[0].remove();
- // die TimerID 'erraten' und killen
- for( i=0 ; i < 200; i++) {
- clearTimeout(i);
- };
- } catch (e){
- }
- },4000 );
- }
- */
Add Comment
Please, Sign In to add comment