// ==UserScript== // @name Pobieranie z CDA.pl // @namespace https://www.cda.pl // @version 4.1 // @description Dodaje przycisk do pobierania filmu na stronie cda.pl i w osadzonych odtwarzaczach // @author Kizior // @match http*://www.cda.pl/video/* // @match http*://ebd.cda.pl/* // @grant none // @license MIT // @downloadURL none // ==/UserScript== (function() { 'use strict'; const modal = `
`; const modalButtonStyle = `padding: 2%; margin: 1%; border-radius: 10%; font-size: 20px; font-weight: bold; background-color: darkgray; color: rgb(64, 64, 64); border-color: orange; font-family: Arial, Helvetica, sans-serif;`; function initializeModal() { document.body.innerHTML += modal; document.querySelector("#cdaDownloaderStartButton").addEventListener("click", () => { document.querySelector('#cdaDownloader').style.display = 'block'; }); const buttons = document.querySelector("#cdaDownloaderButtons"); document.querySelector('#cdaDownloaderClose').addEventListener("click", () => { document.querySelector('#cdaDownloader').style.display = 'none'; }) const qualities = getQualityModes(); for(const q of Object.keys(qualities)) { const buttonElement = document.createElement('button'); buttonElement.style = modalButtonStyle; buttonElement.innerHTML = q; buttonElement.addEventListener("click", () => { getVideoUrl(q); }); buttons.appendChild(buttonElement); } } function getQualityModes() { const playerData = document.querySelector("[id^='mediaplayer']").attributes['player_data'].value; if(!playerData) { return []; } const playerDataJSON = JSON.parse(playerData); return playerDataJSON.video.qualities; } async function getVideoUrl(quality) { const qualityCode = getQualityModes()[quality]; const loadingElement = document.querySelector('#cdaDownloaderLoading'); loadingElement.innerHTML = `Ładowanie...