MediathekViewWeb - Single Click Download

Direct download of shows via single click

À partir de 2022-01-19. Voir la dernière version.

Vous devrez installer une extension telle que Tampermonkey, Greasemonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Violentmonkey pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey ou Userscripts pour installer ce script.

Vous devrez installer une extension telle que Tampermonkey pour installer ce script.

Vous devrez installer une extension de gestionnaire de script utilisateur pour installer ce script.

(J'ai déjà un gestionnaire de scripts utilisateur, laissez-moi l'installer !)

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension telle que Stylus pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

Vous devrez installer une extension du gestionnaire de style pour utilisateur pour installer ce style.

(J'ai déjà un gestionnaire de style utilisateur, laissez-moi l'installer!)

// ==UserScript==
// @name          MediathekViewWeb - Single Click Download
// @description   Direct download of shows via single click
// @author        TheRealHawk
// @license       MIT
// @namespace     https://greasyfork.org/en/users/18936-therealhawk
// @match         https://mediathekviewweb.de/*
// @version       1.1
// @require       https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js
// @require       https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js
// @require       https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js
// @grant         GM_download
// ==/UserScript==

// Workaround to get rid of "'$' is not defined" warnings
var $ = window.jQuery;

function modTitleCol() {
    $('#mediathek > tbody > tr > td:nth-child(3n)').hover(
        // Mouseover
        function() {
            $(this).css(
                {color:'#0ce3ac'}
            );
        },
        // Mouseout
        function() {
            $(this).css(
                {color:'#ffffff'}
            );
        }
    );

    $('#mediathek > tbody > tr').each( function() {
        const url = $('td', this).last().find('a').attr('href');
        const title = $('td', this).eq(2).text();
        const orgTime = $('td', this).eq(4).text();
        const modTime = moment(orgTime, 'DD.MM.YYYY').format('YYYY-MM-DD');

        $('td', this).eq(2).bind('click', function() {
            $(this).effect('pulsate');

            const details = { url: url,
                              name: modTime + ' - ' + title.replace(/[\\\|\?\.\*:<>/]/g, '').replace(/"/g, '\'').replace(/[\s]{2,}/g, ' ') + '.mp4',
                              saveAs: true
                            };
            GM_download(details);
        } );
    } );
}

const observer = new MutationObserver( function() {
    modTitleCol();
} );

observer.observe($('#mediathek')[0], {childList: true});